1 Star 1 Fork 0

繁盾/繁花遁的Linux驱动学习

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
Uboot编辑及移植.txt 4.18 KB
一键复制 编辑 原始数据 按行查看 历史
xiyantao 提交于 2021-09-04 22:51 . 继续学习设备树
第一次移植失败 移植官方的mx6ull_14x14_evk_emmc
1.在configs目录下复制 官方的deconfig 这个是用来 make xxxconfig 做Uboot配置
~/XYT_Linux/UBOOt/configs$ cp mx6ull_14x14_evk_emmc_defconfig xyt_mx6ull_emmc_deconfig
2.对编辑自己的deconfig
vim xyt_mx6ull_emmc_deconfig
CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/xyt_mx6ull_emmc/imximage.cfg,MX6ULL_EVK_EMMC_REWORK"
CONFIG_ARM=y
CONFIG_ARCH_MX6=y
CONFIG_TARGET_XYT_MX6ULL_EMMC=y
CONFIG_CMD_GPIO=y
3.添加自己的对应的头文件 cd ./include/configs/
cp mx6ullevk.h xyt_mx6ull_emmc.h
vim xyt_mx6ull_emmc.h
8 #ifndef __XYT_MX6ULL_EMMC_CONFIG_H
9 #define __XYT_MX6ULL_EMMC_CONFIG_H
4.添加自己对应的版级文件夹 cd ./board/freescale/
cp mx6ullevk/ -r xyt_mx6ull_emmc
vim imximage.cfg
34 PLUGIN board/freescale/xyt_mx6ull_emmc/plugin.bin 0x00907000
vim Kconfig
1 if CONFIG_TARGET_XYT_MX6ULL_EMMC (应该是) TARGET_MX6ULL_XYT_EMMC
2
3 config SYS_BOARD
4 default "xyt_mx6ull_emmc"
5
6 config SYS_VENDOR
7 default "freescale"
8
9 config SYS_CONFIG_NAME
10 default "xyt_mx6ull_emmc"
11
12 config SYS_SOC
13 default "mx6"
vim Makefile
6 obj-y := xyt_mx6ull_emmc.o
vim MAINTAINERS
1 XYT_MX6ULL_EMMC BOARD
2 M: Peng Fan <peng.fan@nxp.com>
3 S: Maintained
4 F: board/freescale/xyt_mx6ull_emmc/
5 F: include/configs/xyt_mx6ull_emmc.h
6 F: configs/mx6ull_14x14_evk_defconfig (这后面的应该删除)
7 F: configs/mx6ull_9x9_evk_defconfig
mv mx6ullevk.c xyt_mx6ull_emmc.c
5.添加Uboot图形化配置文件
cd ./arch/arm/cpu/armv7/mx6/
vim Kconfig
207 config TARGET_XYT_MX6ULL_EMMC
208 bool "Support xyt_mx6ull_emmc"
209 select MX6ULL
210 select DM
211 select DM_THERMAL
252 source "board/freescale/xyt_mx6ull_emmc/Kconfig"
6.进入根目录 建立编译脚本 build.sh
#!/bin/bash
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- distclean
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- xyt_mx6ull_emmc_defconfig
make V=1 ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j16
第二次移植
一在uboot/configs目录下添加自己的配置文件
cp mx6ull_14x14_evk_emmc_defconfig mx6ull_xyt_emmc_defconfig
并更改内容为
1 CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx6ull_xyt_emmc/imximage.cfg,MX6ULL_EVK_EMMC_REWORK"
2 CONFIG_ARM=y
3 CONFIG_ARCH_MX6=y
4 CONFIG_TARGET_MX6ULL_XYT_EMMC=y
5 CONFIG_CMD_GPIO=y
二 在uboot/include/configs/ 目录先添加自己的.h头文件
cp mx6ullevk.h mx6ull_xyt_emmc.h
修改文件内容
#ifndef __MX6ULL_XYT_EMMC_CONFIG_H
#define __MX6ULL_XYT_EMMC_CONFIG_H
三 添加自己对应的版级文件夹
cd ./board/freescale/
cp mx6ullevk/ -r mx6ull_xyt_emmc
mv mx6ullevk.c mx6ull_xyt_emmc.c
vi imximage.cfg
PLUGIN board/freescale/mx6ull_xyt_emmc/plugin.bin 0x00907000
vim Kconfig
1 if TARGET_MX6ULL_XYT_EMMC
2
3 config SYS_BOARD
4 default "mx6ull_xyt_emmc"
5
6 config SYS_VENDOR
7 default "freescale"
8
9 config SYS_CONFIG_NAME
10 default "mx6ull_xyt_emmc"
11
12 endif
vim MAINTAINERS
1 MX6ULL_XYT_EMMC BOARD
2 M: Peng Fan <peng.fan@nxp.com>
3 S: Maintained
4 F: board/freescale/mx6ull_xyt_emmc/
5 F: include/configs/mx6ull_xyt_emmc.h
6 F: configs/mx6ull_14x14_evk_defconfig
vim Makefile
6 obj-y := mx6ull_xyt_emmc.o
arch/arm/cpu/armv7/mx6/Kconfig
1 config TARGET_MX6ULL_XYT_EMMC
2 bool "Support mx6ull_xyt_emmc"
3 select MX6ULL
4 select DM
5 select DM_THERMAL
source "board/freescale/mx6ull_xyt_emmc/Kconfig"
grep -nR "mx6ull_xyt_emmc.h"
查看是否包含成功
setenv bootargs 'console=ttymxc0,115200 root=/dev/nfs nfsroot=192.168.2.140:/home/alientek/linux/nfs/rootfs,proto=tcp rw ip=192.168.2.220:192.168.2.140:192.168.2.1:255.255.255.0::eth0:off'
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C++
1
https://gitee.com/xi_yantao/fanhuadundelinuxqudongxuexi.git
git@gitee.com:xi_yantao/fanhuadundelinuxqudongxuexi.git
xi_yantao
fanhuadundelinuxqudongxuexi
繁花遁的Linux驱动学习
master

搜索帮助