这块IMX6Q的板子是当时在成都工作的时候接触到nxp的SOC,自己感觉nxp的SOC比较有趣,所以就买来玩一玩,但是刚刚玩了没有多久就过年回家了,过年回家再来到成都的时候就忙着工作,忙着靠驾校,忙着准备来魔都,七月份裸辞来到魔都又忙着找工作,一晃就现在了,在魔都赶飞的节奏中我更感自己能力的不足和周围人的优秀奋进,也在这国际化的大都市中感受到了成都不能感受到的一些东西,同样也是在这大环境中刺激了我更大的欲望与那所谓的理想……,所以啊,所以键盘还是得敲起来,今天下午在抢到19年春节前最后一张回家的票后心情大好,也终于开始了新的一波……
1:解压:
tar -xjvf u-boot-2018.09.tar.bz2
2:进入uboot根目录
cd u-boot-2018.09/
3:添加SOC体系结构和交叉编译器
vim Makefile
在
VERSION = 2018
PATCHLEVEL = 09
SUBLEVEL =
EXTRAVERSION =
NAME =
后添加:
ARCH=arm
CROSS_COMPILE=arm-linux-gnueabihf-//这个是自己交叉编译工具跟着自己的修改
4:在./board/freescale/中看见mx6qarm2单板,不知道为啥第一眼看上去就比较亲切所以就用它作为新单板的模板吧!
复制:cp board/freescale/mx6qarm2/ board/freescale/tqmx6q -rf
进入我们的单板目录:cd board/freescale/tqmx6q/
修改我们的单板目录下的文件:
1)vim Kconfig
修改为:
if TARGET_TQMX6Q
config SYS_BOARD
default "tqmx6q"
config SYS_VENDOR
default "freescale"
config SYS_CONFIG_NAME
default "tqmx6q"
endif
2)mv mx6qarm2.c tqmx6q.c
3)vim Makefile
修改为:
obj-y := tqmx6q.o
4)vim MAINTAINERS
修改为:
TQMX6Q BOARD
M: Jason Liu <jason.hui.liu@nxp.com>
M: Ye Li <ye.li@nxp.com>
S: Maintained
F: board/freescale/tqmx6q/
F: include/configs/tqmx6q.h
F: configs/tqmx6q_defconfig
5:根据MAINTAINERS中的内容去修改我们相关联的文件
首先回到uboot的根目录cd -
cp include/configs/mx6qarm2.h include/configs/tqmx6q.h
cp configs/mx6qarm2_defconfig configs/tqmx6q_defconfig
vim configs/tqmx6q_defconfig
修改为
CONFIG_ARM=y
CONFIG_ARCH_MX6=y
CONFIG_SYS_TEXT_BASE=0x17800000
CONFIG_TARGET_TQMX6Q=y
# CONFIG_CMD_BMODE is not set
CONFIG_NR_DRAM_BANKS=1
CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/tqmx6q/imximage.cfg,MX6Q,DDR_MB=2048"
CONFIG_BOOTDELAY=3
CONFIG_SUPPORT_RAW_INITRD=y
CONFIG_BOARD_EARLY_INIT_F=y
CONFIG_HUSH_PARSER=y
CONFIG_CMD_BOOTZ=y
# CONFIG_CMD_FLASH is not set
CONFIG_CMD_GPIO=y
CONFIG_CMD_MMC=y
CONFIG_CMD_USB=y
# CONFIG_CMD_SETEXPR is not set
CONFIG_CMD_DHCP=y
CONFIG_CMD_MII=y
CONFIG_CMD_PING=y
CONFIG_CMD_CACHE=y
CONFIG_CMD_EXT2=y
CONFIG_CMD_EXT4=y
CONFIG_CMD_EXT4_WRITE=y
CONFIG_CMD_FAT=y
CONFIG_CMD_FS_GENERIC=y
CONFIG_ENV_IS_IN_MMC=y
CONFIG_FSL_ESDHC=y
CONFIG_MII=y
CONFIG_USB=y
CONFIG_USB_STORAGE=y
CONFIG_USB_HOST_ETHER=y
CONFIG_USB_ETHER_ASIX=y
CONFIG_OF_LIBFDT=y
6:添加tqmx6q信息
vim arch/arm/mach-imx/mx6/Kconfig
查找到:
config TARGET_MX6QARM2
bool "mx6qarm2"
在这个下面添加:
config TARGET_TQMX6Q
bool "tqmx6q"
找到
source "board/freescale/mx6qarm2/Kconfig"
在这个下面添加:
source "board/freescale/tqmx6q/Kconfig"
执行:
make tqmx6q_defconfig
make
如果一切顺利就会产生出u-boot.bin代表添加单板成功,有可能有问题,以后遇到再解决。