完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
(1)以太网PHY芯片驱动及接口
瑞芯微在设计RK 系列主控芯片时,有内置以太网MAC 控制器,通常只需要搭配一颗以太网PHY芯片,即可实现以太网卡功能。 根据规范,不同厂家的PHY芯片,一般有一部分寄存器的定义是通用的,只需配置了这些通用的寄存器,基本上PHY 就可以正常工作。对应Linux 系统,一般驱动中会自带有通用的PHY 驱动。特另是RK3288之前芯片所配套的SDK 中使用的都是通用驱动,如果不需要使用PHY 厂家提供的自定义的寄存器配置实现一些个性化的功能,那么PHY 的驱动就不需要修改。从RK3288 之后的SDK 开始,原厂则带有各个PHY 厂家在Linux 上提供驱动的配置,但基本上,各家的驱动差异很小,基本上也是调用通用驱动的接口,像目前10/100M 以太网PHY 与MAC 之间的接口主要有MII 和RMII,而 10/100/1000M 以太网PHY 与MAC 之间的接口则主要为RGMII。从这个角度来讲,RK主控基本上是支持大部分PHY芯片。 (2)RK3288常配合的以太网PHY芯片 10M/100M网络PHY芯片:LAN8720(SMSC,目前属于MicroChip)、RTL8201F (REALTEK)、AR8032(Atheros)、IP101GR(ICPLUS)、DM9161(Davicom); 10M/100M/1000M网络PHY芯片:RTL8211E(REALTEK)、RTL8211F(REALTEK); ( 3 ) MAC地址设置问题 每个以太网设备只有唯一的MAC 地址,所以需要有一个地方用来存储这个唯一的地址,同时在打开以太网时读取出这个地址,并写入PHY 寄存器。SDK 提供了四种获取以太网MAC 地址的方法: a.存储在NAND的IDB中 首先要保证kernel 中的配置CONFIG_ETH_MAC_FROM_IDB 已打开其次要使用烧,写工具UpgradeDllTool将地址写入,烧写工具在SDK 中有提供。 b.存储在EEPROM中 首先要保证kernel 中的配置CONFIG_ETH_MAC_FROM_EEPROM 已打开,其次EEPROM 的驱动见drivers/staging/rk29/eeprom,根据不同型号请自行作相应修改 c.使用WiFi的MAC地址 该种方法的原理是在系统启动时自动加载一次Wi-Fi 驱动,同时将Wi-Fi 的MAC 地址 读出并存储在/data 分区的一个文件中,以太网打开时,读取该文件中的地址。首先要保证kernel 中的配置CONFIG_ETH_MAC_FROM_WIFI_MAC 已打开,其次要保证Android 上wlan_mac 程序存在,且已在init.rc 或init.rkxx.rc 中已添加如下 脚本 service wlan_mac /system/bin/wlan_mac class main oneshot 以太网驱动读取地址的代码存于drivers/net/eth_mac,请根据实际需求修改此代码。 由于不同的网络设备的MAC 地址必须是唯一的,所以请考虑使用这种方法的风险性。 d.使用随机地址 |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
基于米尔瑞芯微RK3576核心板/开发板的人脸疲劳检测应用方案
937 浏览 0 评论
1138 浏览 1 评论
935 浏览 1 评论
2163 浏览 1 评论
3475 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-27 21:44 , Processed in 0.574975 second(s), Total 70, Slave 54 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (威廉希尔官方网站 图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号