一. i.MX8QM AUTO-PHY开发环境
1.1 硬件平台环境
i.MX8QM BumbleBee 项目增加了 TJA1101 AUTO-PHY 模块 ,需要对这个模块进行驱动调试BumbleBee 硬件平台环境 :i.MX8QM Bumblebee_V1.0 PN :P19-091( WPI ATU 智能座舱项目 )TJA1101 使用的 25M 的外部晶振 ,使用的接口为 ETH0 RMII 模式
1.2 软件平台环境
Android p9.0.0_2.0.0 Lunch mek_8q_car-userdebug :
二.TJA1101 驱动移植
Lunch 为 mek_8q_car-userdebug 时 ,ETH0 默认没有挂载 ,需要做以下配置
2.1 配置 defconfig
在 arch/arm64/configs目录下对 android_car_defconfig 进行配置 :
2.1.1 打开 CONFIG_ETHERNET 和 CONFIG_PHYLIB 定义
2.1.2 打开 CONFIG_NETWORK_FILESYSTEMS 定义
2.2 复制 android.hardware.ethernet.xml
把 frameworks/native/data/etc android.hardware.ethernet.xml 文件拷贝到 out/target/product/mek_8q/vendor/etc/permissions 目录下
经过以上步骤 ,在开机系统运行后通过 ifconfig 命令 ,可以看到 eth0 已经挂载
2.3 修改 DTS 文件
在 /arch/arm64/boot/dts/freescale/fsl-imx8qm-mek.dtsi 目录下
2.3.1 对 i.MX8QM 与 TJA1101连接的 PIN 脚进行设置
2.3.2 对 PHY-MODE ,CLK , Reset PIN 进行设置
2.3.3 删除 at803x 相关配置
三. TJA1101 AUTO PHY 测试
我们测试是通过电脑的以太网口转 AUTO-PHY 的一个工具进行测试的
3.1 配置 Master / Slave 模式
电脑端作为 Slave 模式 ,iMX8QM 端作为 Master ,对master_cfg 进行配置
3.2查看 AUTO-PHY 的连接状态
通过命令 cat link_status 查看到 AUTO-PHY 的连接状态为 UP
设置 eth0 的 IP 地址为 192.168.1.1
3.4 查看 AUTO-PHY 通信结果
i.MX8QM Ping 电脑端 IP 可以正常 Ping通
四.参考文档
【1】 i.MX Linux User's Guide , NXP Semiconductor ,Rev. 1 ,04/2019,Rev. L4.14.98-2.0.0_ga
Document Number: IMXLUG
五. 预告
通过 “ NXP i.MX8QM TJA1101 AUTO-PHY 调试 ”相信大家对怎么调试 AUTO-PHY 部分已经有所了解 , NXP i.MX8QM驱动调试系列暂时告一段落 ,
接下来将会有新的系列《 Hisilicon BSP 驱动调试 》
敬请期待 !
评论