kernel 3.2.0 上加入自己的板级文件
-
第一步、复制自己的参考的板级文件
cp arch/arm/mach-omap2/board-am335xevm.c arch/arm/mach-omap2/board-aplex_ECM_5412.c
-
第二步、在对应的kconfig ,Makefile 里面增加对应的代码
// vim arch/arm/mach-omap2/Makefile
// 这是原来的
257 obj-$(CONFIG_MACH_AM335XIAEVM) += board-am335xevm.o
258 obj-$(CONFIG_MACH_APLEX_ECM_5412) += board-aplex_ECM_5412.o
// 后面增加
// 参考原来的
// vim arch/arm/mach-omap2/Kconfig
347 config MACH_APLEX_ECM_5412
348 bool "Aplex ECM_5412"
349 depends on SOC_OMAPAM33XX
350 default n
351
352 config MACH_AM335XEVM
353 bool "AM335X Evaluation Module"
354 depends on SOC_OMAPAM33XX
355 default n
-
第三步、 修改并添加一些匹配代码
// vim arch/arm/mach-omap2/board-aplex_ECM_5412.c
// 将原来的修改过来
3707 MACHINE_START(APLEX_ECM_5412, "aplex_ECM_5412")
3708 /* Maintainer: Texas Instruments */
3709 .atag_offset = 0x100,
3710 .map_io = am335x_evm_map_io,
3711 .init_early = am33xx_init_early,
3712 .init_irq = ti81xx_init_irq,
3713 .handle_irq = omap3_intc_handle_irq,
3714 .timer = &omap3_am33xx_timer,
3715 .init_machine = am335x_evm_init,
3716 MACHINE_END
// 添加自己的配置
// vim arch/arm/tools/mach-types
1129 am335xevm MACH_AM335XEVM AM335XEVM 3589
1130 am335xiaevm MACH_AM335XIAEVM AM335XIAEVM 3684
1131 aplex_ECM_5412 MACH_APLEX_ECM_5412 APLEX_ECM_5412 3688
vim arch/arm/plat-omap/include/plat/uncompress.h
里面
197 DEBUG_LL_AM33XX(1, aplex_ECM_5412);
-
最后, 在 make menuconfig 里面添加
// make menuconfig
System Type --->
TI OMAP2/3/4 Specific Features --->
[*] Aplex ECM_5412
-
编译
make -j4
-
对应的 uboot 还要作修改。
仅仅只是 kernel 的修改还是不够的,虽然刚才编译通过了,但是将这个镜像烧入,发现还是无法起来,这是为什么呢。
查了一下原因,发现是 uboot 中还要作相对应的修改。
板级文件的复制
board/aplex/ECM_5410
// 在uboot 中添加相对应的宏:
// arch/arm/include/asm/mach-types.h
3315 #define MACH_TYPE_TIAM335EVM 3589
3316 #define MACH_TYPE_TIAM335IAEVM 3684
3317 #define MACH_APLEX_ECM_5412 3688
// 在板级文件中修改相对应的参数。
// vim board/aplex/ECM_5412/evm.c
436 if (board_id == IA_BOARD)
437 gd->bd->bi_arch_number = MACH_TYPE_TIAM335IAEVM;
438 else
439 gd->bd->bi_arch_number = MACH_APLEX_ECM_5412;
cp include/configs/ok335x.h include/configs/ECM_5412.h
最后还要在 boards.cfg 里面加入对应规则
ECM_5416 arm armv7 ECM_5416 aplex ti81xx
make ECM_5412 O=out -j4
Read The Fucking Source Code