0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

车联网时代——i.MX6车载以太网移植

UtFs_Zlgmcu7890 来源:YXQ 2019-04-10 14:33 次阅读

使用以太网技术及架构作为下一代车载网络的发展方向受到了汽车行业内部及通讯业技术人员的广泛关注,娱乐系统和高级驾驶辅助系统(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的产品代理商,我们在汽车电子应用领域耕耘已久,希望可以帮助您快速、高效地完成产品设计开发。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 以太网
    +关注

    关注

    40

    文章

    5075

    浏览量

    166216
  • 车载
    +关注

    关注

    17

    文章

    561

    浏览量

    83100
  • i.MX6
    +关注

    关注

    1

    文章

    36

    浏览量

    16228

原文标题:车联网时代——i.MX6车载以太网移植

文章出处:【微信号:Zlgmcu7890,微信公众号:周立功单片机】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    车载以太网快速入门#车载以太网

    车载以太网
    北汇信息POLELINK
    发布于 :2023年09月01日 17:54:31

    车载以太网测试系统组成#车载以太网

    车载以太网
    北汇信息POLELINK
    发布于 :2023年09月05日 16:47:18

    Vector的车载以太网总线接口卡VN5000系列快速入门#车载以太网

    车载以太网
    北汇信息POLELINK
    发布于 :2023年09月12日 11:19:23

    车载以太网测试系统测试实例介绍#车载以太网

    车载以太网
    北汇信息POLELINK
    发布于 :2023年09月12日 17:27:48

    车载以太网基础培训——物理层简介#车载以太网

    车载以太网
    北汇信息POLELINK
    发布于 :2023年09月18日 16:37:56

    车载以太网基础培训——车载以太网的链路层#车载以太网

    车载以太网
    北汇信息POLELINK
    发布于 :2023年09月19日 16:25:21

    车载以太网基础培训——网络层#车载以太网

    车载以太网
    北汇信息POLELINK
    发布于 :2023年09月20日 08:51:32

    车载以太网总线基础培训——传输层#车载以太网

    车载以太网
    北汇信息POLELINK
    发布于 :2023年09月21日 10:57:36

    车载以太网基础视频——应用层#车载以太网

    车载以太网
    北汇信息POLELINK
    发布于 :2023年09月22日 09:05:01

    如何快速开发I.MX6

    信息机,POS机,手持机,医疗设备,车载高清监控等。i.MX6核心板 i.MX6开发板 i.MX6方案四核,飞思卡尔,开发板`
    发表于 08-29 17:18

    Freescale i.MX6主板/工控板,性价比极高

    启扬全新i.MX6工控板正式上市,采用高密度8层板(沉金)设计,板载CPU、DDR3 RAM、EMMC,它扩展了TFT-LCD、LVDS、VGA、网络、HDMI、CAN、矩阵键盘、SATA、高速
    发表于 07-15 09:14

    i.MX6工业级开发板--四核Cortex-A9-Freescale i.MX6 系列

    )USB1个USB2.0主口、1个OTG2.0SDIO2个以太网1个1G以太网miniPCIE1个串口5个(包含1个调试串口)SPI2个i.MX6 软件参数Android4.4U-boot版本
    发表于 05-23 11:24

    车载以太网在未来汽车的应用

    网络,侵删) 左边为传统网线,右边为车载以太网线(图片来自网络,侵删) 4车载以太网和传统以太网有什么不同 4.1 在 IEEE 协议内章
    发表于 09-18 09:05

    有在i.MX6上成功移植好阿里的mqtt驱动的吗

    有在i.MX6上成功移植好阿里的mqtt驱动的么?
    发表于 01-07 07:09

    i.MX6 FEC停止生成接收中断的原因?

    我们在 i.MX6 上看到奇怪的以太网行为。在我们的网络设置中,我们使用交换机连接 Linux PC 和 SabreSD i.MX6 板(见下图)+----------+| 以太网|
    发表于 03-31 07:12