QNX调试笔记[IMX6Q/TQIMX6Q]---网卡驱动调试

本文档详细记录了在QNX7.0环境下,针对IMX6Q/TQIMX6Q平台进行网卡驱动的调试过程,包括配置mux引脚、修改build文件以设定MAC地址,以及增加网卡芯片复位步骤。通过这些调整,成功解决了启动时的MAC地址问题和125MHz信号错误。
摘要由CSDN通过智能技术生成

采用QNX7.0,采用的BSP为sabreARD.

1.配置mux引脚

由于sabreARD BSP使用的网卡芯片与天嵌的不同,使用的时AR8035,因此需要对引脚进行配置。
在BSP startup 中找到了

mx6q_init_enet();

函数,即为网卡引脚配置函数,根据TQIMX的原理图,将配置函数修改如下:

void mx6q_init_enet(void)
{
    uint32_t reg;
    //modified to TQIMX.6q by zoutianming 2018.8.30

    // RGMII MDIO - transfers control info between MAC and PHY
    pinmux_set_swmux(SWMUX_ENET_MDIO, MUX_CTL_MUX_MODE_ALT1);
    pinmux_set_input(SWINPUT_ENET_IPP_IND_MAC0_MDIO,0);

    // RGMII MDC - output from MAC to PHY, provides clock reference for MDIO
    pinmux_set_swmux(SWMUX_ENET_MDC, MUX_CTL_MUX_MODE_ALT1);

    // RGMII TXC - output from MAC, provides clock used by RGMII_TXD[3:0], RGMII_TX_CTL
    pinmux_set_swmux(SWMUX_RGMII_TXC, MUX_CTL_MUX_MODE_ALT1);
    pinmux_set_padcfg(SWPAD_RGMII_TXC, MX6X_PAD_SETTINGS_ENET);

    // RGMII TXD[3:0] - Transmit Data Output
    pinmux_set_swmux(SWMUX_RGMII_TD0, MUX_CTL_MUX_MODE_ALT1);
    pinmux_set_padcfg(SWPAD_RGMII_TD0, MX6X_PAD_SETTINGS_ENET);

    pinmux_set_swmux(SWMUX_RGMII_TD1, MUX_CTL_MUX_MODE_ALT1);
    pinmux_set_padcfg(SWPAD_RGMII_TD1, MX6X_PAD_SETTINGS_ENET);

    pinmux_set_swmux(SWMUX_RGMII_TD2, MUX_CTL_MUX_MODE_ALT1);
    pinmux_set_padcfg(SWPAD_RGMII_TD2, MX6X_PAD_SETTINGS_ENET);

    pinmux_set_swmux(SWMUX_RGMII_TD3, MUX_CTL_MUX_MODE_ALT1);
   
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值