yong_leave
yong_leave
2016-04-16 02:00
采纳率: 0%
浏览 3.3k

linux 下怎么访问phy层的硬件(比如dp83640芯片)以及该硬件的驱动程序

am335系列的开发板,网口芯片用的是dp83640,现在整个网络可以运行,但是我想修改dp83640芯片寄存器的内容,以及关于dp83640的驱动程序,该怎么弄,像字符设备我们可以用open函数来打开这个设备,再用write等函数进行操作,但是这个网口芯片没有设备名,只有网络设备节点eth0,我该怎么访问到dp83640呢.以及如何使用驱动里面的函数(比如下面的驱动)?请大神解答。
static struct phy_driver dp83640_driver = {
.phy_id = DP83640_PHY_ID,
.phy_id_mask = 0xfffffff0,
.name = "NatSemi DP83640",
.features = PHY_BASIC_FEATURES,
.flags = 0,
.probe = dp83640_probe,
.remove = dp83640_remove,
.config_aneg = genphy_config_aneg,
.read_status = genphy_read_status,
.hwtstamp = dp83640_hwtstamp,
.rxtstamp = dp83640_rxtstamp,
.txtstamp = dp83640_txtstamp,
.driver = {.owner = THIS_MODULE,}
};


  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • yong_leave
    yong_leave 2016-04-16 07:49

    没明白什么意思,感觉不是同一个问题图片说明

    点赞 1 评论
  • z617490935
    Femx 2016-04-20 02:17

    这颗PHY和CPU有两个接口,一个是控制口就是我们常说的MDIO,另一个介质独立接口,就是MII的一类。配置PHY寄存器使用的MDIO,你应该从系统设备中的MDIO总线来入手

    点赞 评论
  • drhejw
    drhejw 2016-05-16 05:45

    调用cpu MDIO接口函数,按照PHY datasheet的寄存器说明配置PHY即可

    点赞 评论
  • drhejw
    drhejw 2016-05-16 05:47

    续:按照手册寄存器说明对PHY进行复位、初始化、模式设置,这样编出来的代码就是所谓“该硬件的驱动程序”了。

    点赞 评论

相关推荐