从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(十二)

内核网络驱动修改 - 参考正点原子

使用ST官方YT8511驱动,启动根文件系统后网络会有问题,所以需要修改YT8511驱动源码

复制代码
08、模块驱动源码 -> 01、YT8511驱动源码 -> linux内核下修改方法

找到motorcomm.c替换到drivers/net/phy/motorcomm.c

找到motorcomm_phy.h替换到include/linux/motorcomm_phy.h

重新编译内核源码后正常使用nfsroot启动

复制代码
source ~/sdk6.6
export OUTPUT_BUILD_DIR=$PWD/../build
mkdir -p ${OUTPUT_BUILD_DIR}
make O="${OUTPUT_BUILD_DIR}" defconfig fragment*.config
for f in `ls -1 ../fragment*.config`; do scripts/kconfig/merge_config.sh -m -r -O ${OUTPUT_BUILD_DIR} ${OUTPUT_BUILD_DIR}/.config $f; done
(yes '' || true) | make oldconfig O="${OUTPUT_BUILD_DIR}"


[ "${ARCH}" = "arm" ] && imgtarget="uImage" || imgtarget="Image.gz"
echo $imgtarget
export IMAGE_KERNEL=${imgtarget}
make ${IMAGE_KERNEL} vmlinux dtbs LOADADDR=0xC2000040 O="${OUTPUT_BUILD_DIR}"
make modules O="${OUTPUT_BUILD_DIR}"
make INSTALL_MOD_PATH="${OUTPUT_BUILD_DIR}/install_artifact" modules_install O="${OUTPUT_BUILD_DIR}"
mkdir -p ${OUTPUT_BUILD_DIR}/install_artifact/boot/

cp ${OUTPUT_BUILD_DIR}/arch/${ARCH}/boot/${IMAGE_KERNEL} ${OUTPUT_BUILD_DIR}/install_artifact/boot/

find ${OUTPUT_BUILD_DIR}/arch/${ARCH}/boot/dts/ -name 'st*.dtb' -exec cp '{}' ${OUTPUT_BUILD_DIR}/install_artifact/boot/ \;

make dtbs O="${OUTPUT_BUILD_DIR}"

find ${OUTPUT_BUILD_DIR}/arch/${ARCH}/boot/dts/ -name 'st*.dtb' -exec cp '{}' ${OUTPUT_BUILD_DIR}/install_artifact/boot/ \;

cp /home/niuke/STM32/STM32MP1/develop/linux-stm32mp-6.6.48-stm32mp-r1-r0/linux-6.6.48/../build/arch/arm/boot/dts/st/stm32mp157d-stm32mp157daa1-mx.dtb ~/tftpboot/


setenv bootargs 'console=ttySTM0,115200 root=/dev/nfs nfsroot=192.168.156.10:/home/niuke/nfsroot,nfsvers=3 proto=tcp rw ip=192.168.156.11:192.168.156.10:192.168.156.1:255.255.255.0::eth0:off'

saveenv
相关推荐
Dream of maid7 小时前
Python12(网络编程)
开发语言·网络·php
.Ashy.7 小时前
2026.4.11 蓝桥杯软件类C/C++ G组山东省赛 小记
c语言·c++·蓝桥杯
2401_892070987 小时前
链栈(链式栈) 超详细实现(C 语言 + 逐行精讲)
c语言·数据结构·链栈
嵌入式吴彦祖9 小时前
Luckfox Pico Ultra W WIFI
linux·嵌入式硬件
cmpxr_11 小时前
【C】局部变量和全局变量及同名情况
c语言·开发语言
网域小星球13 小时前
C 语言从 0 入门(十七)|结构体指针 + 动态内存 + 文件综合实战
c语言·开发语言·文件操作·结构体指针·动态内存·综合项目
ipod74113 小时前
电子电路的元器件
单片机·嵌入式硬件
清风66666613 小时前
基于单片机的脉搏与呼吸监测报警设备设计与实现
单片机·嵌入式硬件·毕业设计·课程设计·期末大作业
vortex513 小时前
构建可审计、可分层、可扩展的SSH身份管理体系
网络·ssh·php
Hello_Embed14 小时前
嵌入式上位机开发入门(十九):Socket 状态检测与断线重连
网络·单片机·网络协议·tcp/ip·嵌入式