从零开始打造 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
相关推荐
菜鸟江多多15 分钟前
【STM32 Rocket-Pi原理图分享】
c语言·stm32·嵌入式硬件·mcu·智能硬件·原理图
良木生香17 分钟前
【C语言进阶】文件操作的相关详解(1):
c语言·数据结构·c++
运维之美@21 分钟前
运维工程师的 perf 入门实战
运维·网络·php
catchadmin41 分钟前
PHP 8.5 升级生存指南:避免凌晨两点回滚的检查清单
开发语言·php
你怎么知道我是队长1 小时前
C语言---递归
c语言·开发语言
项目題供诗1 小时前
C语言基础(五)
c语言·开发语言
l1t1 小时前
数独优化求解C库tdoku-lib的使用
c语言·开发语言·python·算法·数独
Hello_Embed1 小时前
RS485 双串口通信 + LCD 实时显示(DMA版)
笔记·学习·操作系统·嵌入式·freertos
匀泪1 小时前
CE(NFS服务器)
运维·服务器·php
橘子131 小时前
MySQL基础(一)
数据库·mysql·php