i.MX8 驱动调试丨基于 NXP i.MX8QM TJA1101 AUTO-PHY 调试

上一期我们以 【i.MX8QM Standalone 方式搭建开发环境】开启了 i.MX8 系列的介绍,本期将给大家推出 基于 NXP i.MX8QM TJA1101 AUTO-PHY 调试。

一. 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文件 COPY 到 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



3.3设置 eth0 的 IP 地址

设置 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 TJA1043-CAN 通信。

接下来我们也会不断更新更多关于 i.MX8 系列的开发博文,同时我们也会持续推出更多 ADAS 相关(S32V234、Hi3566V100、Hi3559AV100、Hi3518EV300、硬件、软件、算法等)的技术开发博文,如需更深入的技术交流,欢迎在博文下方评论或者关注给我留言。

★博文内容均由个人提供,与平台无关,如有违法或侵权,请与网站管理员联系。

★文明上网,请理性发言。内容一周内被举报5次,发文人进小黑屋喔~

评论