当前位置: 首页 > news >正文

从零开始打造 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

在这里插入图片描述

http://www.dtcms.com/a/237939.html

相关文章:

  • 【iOS】 Block再学习
  • Ubuntu20.04中 Redis 的安装和配置
  • Cursor 编辑器, 使用技巧,简单记录一下
  • 【人工智能 | 项目开发】Python Flask实现本地AI大模型可视化界面
  • 2025年与2030年AI及AI智能体 (Agent) 市场份额分析报告
  • 【GO性能优化】第十五章:性能优化艺术——揭秘Go程序的性能调优技巧
  • CppCon 2015 学习:Live Lock-Free or Deadlock
  • MS39531N 是一款正弦驱动的三相无感直流电机驱动器,具有最小振动和高效率的特点
  • Perplexity AI:重塑你的信息探索之旅
  • 树莓派超全系列教程文档--(57)如何设置 Apache web 服务器
  • VLM引导的矢量草图生成AutoSketch
  • JS手写代码篇---手写ajax
  • 【ROS2】核心概念8——参数设置(Parameters)
  • Java 面向对象进阶之多态:从概念到实践的深度解析
  • ckeditor5的研究 (9):写一个自定义插件,包括自定义的toolbar图标、插入当前时间,并复用 CKEditor5 内置的 UI 组件
  • Unity中的Mathf.Clamp01
  • 端午编程小游戏--艾草驱邪
  • Unity使用代码分析Roslyn Analyzers
  • 【动画】Unity2D骨骼动画-Animation2D
  • Linux系统编程中的_GNU_SOURCE宏
  • 【Blender】Blender 基础:导入导出
  • Unity中如何播放视频
  • WEB3全栈开发——面试专业技能点P1Node.js / Web3.js / Ethers.js
  • webrtc 在线测试, 如何在线拉流测试
  • 建造者模式深度解析与实战应用
  • Framework开发之IMS逻辑浅析1--关键线程及作用
  • 软件工程的软件生命周期通常分为以下主要阶段
  • [论文阅读] 人工智能+软件工程 | 结对编程中的知识转移新图景
  • 基于 Transformer robert的情感分类任务实践总结之三——FGM
  • day 18进行聚类,进而推断出每个簇的实际含义