Nand flash 要改 layout include/configs/am335x_evm.h 修改 define 這樣可以影響arch/arm/include/asm/arch-am335x/omap_gpmc.h (之前是 arch-omap3/) DRAM 要改 timing arch/arm/include/asm/arch-am33xx/ddr_defs.h arch/arm/cpu/armv7/am33xx/board.c 中會 invoke config_ddr –> config_sdram

Read More →

In this article we focus on some study notes in linux kernel startup and we mainly focus on start_kernel Specific Arch Initialize in @/init/main.c we could find asmlinkage void __init start_kernel(void) This is the main function to initialize linux kernel. start_kernel() –> setup_arch(&command_line) –> setup_process() will detect the CPU type and invoke high level cpu […]

Read More →

We could know the MTD structure of AM335x via cat /proc/mtd and we will get dev: size      erasesize name mtd0:  00020000  00020000  “SPL”  mtd1:  00020000  00020000  “SPL.backup1” mtd2:  00020000  00020000  “SPL.backup2” mtd3:  00020000  00020000  “SPL.backup3” mtd4:  001e0000  00020000  “U-Boot” mtd5:  00020000  00020000  “U-Boot Env” mtd6:  00500000  00020000  “Kernel” mtd7:  0f880000  00020000  “File System” […]

Read More →

Since I am crazy and would like to know linux kernel porting in more detail. I decided to port TI-AM334x EVM from 32.0 to 3.7.2 (The last stable version I can get now) First check what file located in original TI SDK and not in original linux kernel @/arch/arm/configs amx335x_evm_defconfig @/arch/arm/mach-omap2/ include/mach/board-am335xevm.h board-am335xevm.c clock33xx.h cminst33xx.h […]

Read More →