电子说
使用以太网技术及架构作为下一代车载网络的发展方向受到了汽车行业内部及通讯业技术人员的广泛关注,娱乐系统和高级驾驶辅助系统(ADAS)对传输带宽的迫切需求推动了以太网介入汽车网络的进程。本文将介绍如何将NXP的TJA1101移植到i.MX6UL上,并测试其性能。
TJA1101
TJA1101是一款高性能单端口、符合IEEE 100BASE-T1标准的以太网PHY收发器。该器件专为汽车应用而设计且符合相关标准,在长达15米的未屏蔽双绞线(UTP)上,每端口提供100Mbit/s发送和接收能力。高集成度的可靠器件设计,节省了外部元件、成本和空间。其功能框图如图1所示:
图1 TJA1101功能框图
硬件设计:
TJA1101支持MII和RMII接口模式,现以RMII接口为例,介绍其硬件设计方案。RMII接口的典型应用电路如图2所示,相比于MII,RMII仅需要4根数据线、最少7根线,参考时钟由PHY提供,频率为50MHz。
图2 RMII典型应用电路
电路设计:
图3 TJA1101原理图
软件移植:
NXP提供了基于Linux的TJA1101驱动源码,可以在如下地址获取,或者点击“阅读原文”获取:
https://source.codeaurora.org/external/autoivnsw/tja110x_linux_phydev
以4.1.15_2.0.0版本的内核为例,将下载下来的源码复制到kernel/drivers/net/phy/目录下,编辑kernel/drivers/net/phy/Kconfig,添加编译选项:
config NXP_TJA110X_PHY tristate "Driver for TJA110X PHYs" ---help--- Supports the TJA110X PHYs.
编辑kernel/drivers/net/phy/Makefile,添加编译内容:
obj-$(CONFIG_ NXP_TJA110X_PHY) += tja110x.o
配置menuconfig:
Device Drivers ---> [*] Network device support ---> -*- PHY Device support and infrastructure ---> <*> Driver for TJA110X PHYs
(左右滑动可看完整代码)
由于i.MX以太网控制器默认配置为MII模式,enet时钟由MAC向PHY提供,与RMII的时钟方向不一致,因此需要修改kernel/ arch/arm/mach-imx/mach-imx6ul.c, 将时钟方向配置为PHY到MAC:
static void __init imx6ul_enet_clk_init(void) { … if (!IS_ERR(gpr)) { regmap_update_bits(gpr, IOMUXC_GPR1, IMX6UL_GPR1_ENET_CLK_DIR, 0); regmap_update_bits(gpr, IOMUXC_GPR1, (1 << 13), 1); regmap_update_bits(gpr, IOMUXC_GPR1, (1 << 14), 1); } … }
(左右滑动可看完整代码)
修改设备树配置:
&fec1 { … mdio { #address-cells = <1>; #size-cells = <0>; ethphy0: ethernet-phy@0 { compatible = "ethernet-phy-ieee802.3-c22"; reg = <0>; }; };};pinctrl_enet1: enet1grp { fsl,pins = < MX6UL_PAD_GPIO1_IO07__ENET1_MDC 0x1b0b0 MX6UL_PAD_GPIO1_IO06__ENET1_MDIO 0x1b0b0 MX6UL_PAD_ENET1_RX_EN__ENET1_RX_EN 0x1b0b0 MX6UL_PAD_ENET1_RX_DATA0__ENET1_RDATA00 0x1b0b0 MX6UL_PAD_ENET1_RX_DATA1__ENET1_RDATA01 0x1b0b0 MX6UL_PAD_ENET1_TX_EN__ENET1_TX_EN 0x1b0b0 MX6UL_PAD_ENET1_TX_DATA0__ENET1_TDATA00 0x1b0b0 MX6UL_PAD_ENET1_TX_DATA1__ENET1_TDATA01 0x1b0b0 MX6UL_PAD_ENET1_TX_CLK__ENET1_REF_CLK1 0x4001b031 >;
(左右滑动可看完整代码)
带宽测试:
利用iperf3进行带宽测试,其带宽最高可达到96.0Mbps,平均为93.0Mbps,测试结果见图4。
图4 TJA1101带宽测试结果
ZLG一直致力于汽车方案的开发与支持。作为NXP的产品代理商,我们在汽车电子应用领域耕耘已久,希望可以帮助您快速、高效地完成产品设计开发。
全部0条评论
快来发表一下你的评论吧 !