nvidia xavier平台lan7800网卡驱动调试记录(1)驱动&硬件搭建

free-jdx 2021-01-15 16:31:31 8028
1. 前言

由于xavier平台有双网卡需求,所以需要额外增加一路USB 千兆网卡;
型号使用lan7800芯片;

2. 开启内核驱动支持

进入Linux_for_Tegra/sources/kernel/kernel-4.9

make ARCH=arm64 menuconfig

如上是支持LAN78XX驱动的;
按照上面编译成ko模块即可。

3. 连接硬件&查看网络连接

(1)连接硬件
如下: 使用lan7800 demo板【typec接口】
(插上平板上使用上网正常)

(2)加载驱动
insmod lan78xx.ko

驱动加载log如下:

发现USB部分有报错问题

(3)解决USB报错问题

解决办法如下;
将USB部分的设备树dts全部恢复成官方配置

修改tegra194-p2888-0001-p2822-0000-common.dtsi

    ports {
            usb2-0 {
                mode = "otg";
                status = "okay";
            };
            usb2-1 {
                mode = "host";
                status = "okay";
            };
            usb2-2 {
                mode = "host";
                status = "okay";
            };
            usb2-3 {
                mode = "host";
                status = "okay";
            };
            usb3-0 {
                nvidia,usb2-companion = <1>;
                status = "okay";
            };
            usb3-2 {
                nvidia,usb2-companion = <0>;
                status = "okay";
            };
            usb3-3 {
                nvidia,usb2-companion = <3>;
                nvidia,usb3-gen1-only= <1>;
                status = "okay";
            };
        };
    };

    tegra_xudc: xudc@3550000 {
        extcon-cables = <&typec_port0 0>;
        extcon-cable-names = "vbus";
        #extcon-cells = <1>;
#if TEGRA_XUSB_PADCONTROL_VERSION >= DT_VERSION_2
        phys = <&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-0}>,
            <&{/xusb_padctl@3520000/pads/usb3/lanes/usb3-2}>;
        phy-names = "usb2", "usb3";
        nvidia,xusb-padctl = <&xusb_padctl>;
#endif
        nvidia,boost_cpu_freq = <1200>;
        status = "okay";
    };

    tegra_xhci: xhci@3610000 {
        extcon-cables = <&typec_port0 1>;
        extcon-cable-names = "id";
        #extcon-cells = <1>;
#if TEGRA_XUSB_PADCONTROL_VERSION >= DT_VERSION_2
        phys = <&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-0}>,
            <&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-1}>,
            <&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-3}>,
            <&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-2}>,
            <&{/xusb_padctl@3520000/pads/usb3/lanes/usb3-2}>,
            <&{/xusb_padctl@3520000/pads/usb3/lanes/usb3-0}>,
            <&{/xusb_padctl@3520000/pads/usb3/lanes/usb3-3}>;
        phy-names = "usb2-0", "usb2-1", "usb2-3", "usb2-2",
            "usb3-2", "usb3-0", "usb3-3";
        nvidia,xusb-padctl = <&xusb_padctl>;
#endif
        status = "okay";
    };

    arm-pmu {
        status = "okay";
    };

修改tegra194-power-tree-p2888-0001-p2822-1000.dtsi

    xusb_padctl@3520000 {
        pex_dvdd-supply = <&p2888_spmic_sd0>;
        pex_hvdd-supply = <&p2888_spmic_sd1>;
        pex_pll_hvdd-supply = <&p2888_spmic_sd1>;
        vclamp_usb-supply = <&p2888_spmic_sd3>;
        avdd_usb-supply = <&p2888_spmic_ldo5>;
        avdd_pll_nvhs_eutmip-supply = <&p2888_spmic_sd1>;
        ports {
            usb2-0 {
                vbus-supply = <&battery_reg>;
            };
            usb2-1 {
                vbus-supply = <&battery_reg>;
            };
            usb2-2 {
                vbus-supply = <&battery_reg>;
            };
            usb2-3 {
                vbus-supply = <&p2822_vdd_5v_sata>;
            };
        };
    };

现在加载正常

(4)查看虚拟网卡

如下eth1是 lan7800对应的网卡

(5)查看网络通路情况
a. 插上网线,无法上网

b. 配置静态ip地址,和主机PC直连ping 通路,也无法ping通

设置/etc/network/interfaces

    auto lo
iface lo inet loopback

auto eth1
iface eth1 inet static
address 192.168.10.66
netmask 255.255.255.0
gateway 192.168.10.1
iface eth1 inet6 auto
声明:本文内容由易百纳平台入驻作者撰写,文章观点仅代表作者本人,不代表易百纳立场。如有内容侵权或者其他问题,请联系本站进行删除。
free-jdx
红包 97 5 评论 打赏
评论
0个
内容存在敏感词
手气红包
    易百纳技术社区暂无数据
相关专栏
置顶时间设置
结束时间
删除原因
  • 广告/SPAM
  • 恶意灌水
  • 违规内容
  • 文不对题
  • 重复发帖
打赏作者
易百纳技术社区
free-jdx
您的支持将鼓励我继续创作!
打赏金额:
¥1易百纳技术社区
¥5易百纳技术社区
¥10易百纳技术社区
¥50易百纳技术社区
¥100易百纳技术社区
支付方式:
微信支付
支付宝支付
易百纳技术社区微信支付
易百纳技术社区
打赏成功!

感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~

举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

审核成功

发布时间设置
发布时间:
是否关联周任务-专栏模块

审核失败

失败原因
备注
拼手气红包 红包规则
祝福语
恭喜发财,大吉大利!
红包金额
红包最小金额不能低于5元
红包数量
红包数量范围10~50个
余额支付
当前余额:
可前往问答、专栏板块获取收益 去获取
取 消 确 定

小包子的红包

恭喜发财,大吉大利

已领取20/40,共1.6元 红包规则

    易百纳技术社区