
On Mon, Oct 25, 2010 at 4:09 PM, Sughosh Ganu urwithsughosh@gmail.com wrote:
The patch adds basic board support for TI's OMAP-L138 based Hawkboard. This board is pretty similar to the da850 EVM. Support for nand and network access is added in this version.
The following bootup procedure is used.
At reset, the Rom Boot Loader(RBL), initialises the ddr and the nand controllers and copies the second stage bootloader(nand_spl) to RAM. The secondary bootloader then copies u-boot from a predefined location in the nand flash to the RAM, and passes control to the u-boot image.
Three config options are supported
- hawkboard_config - Used to create the u-boot.bin. Tftp the
u-boot.bin image to the RAM from u-boot, and flash to the nand flash at address 0xe0000.
- hawkboard_nand_config - Used to generate the secondary
bootloader(nand_spl) image. This creates an elf file u-boot-spl under nand_spl/. Create an AIS signed image using this file, and flash it to the nand flash at address 0x20000. The ais file should fit in one block.
- hawkboard_uart_config - This is same as the first image, but with
the TEXT_BASE as expected by the RBL(0xc1080000). Create the AIS Signed bin, as use the normal UART boot procedure to boot the image.
Signed-off-by: Sughosh Ganu urwithsughosh@gmail.com
Applies to c163f4478ca72f51b28b55f74addc8fe029d7b83 of git://git.denx.de/u-boot.git.
This patch has checkpatch.pl warnings and errors: ERROR: return is not a function, parentheses are not required#456: FILE: board/davinci/da8xxevm/hawkboard.c:58: + return(0);
WARNING: space prohibited between function name and open parenthesis '(' #459: FILE: board/davinci/da8xxevm/hawkboard.c:61: +int misc_init_r (void)
WARNING: line over 80 characters #463: FILE: board/davinci/da8xxevm/hawkboard.c:65: + printf ("ARM Clock : %s MHz\n", strmhz(buf, clk_get(DAVINCI_ARM_CLKID)));
WARNING: space prohibited between function name and open parenthesis '(' #463: FILE: board/davinci/da8xxevm/hawkboard.c:65: + printf ("ARM Clock : %s MHz\n", strmhz(buf, clk_get(DAVINCI_ARM_CLKID)));
ERROR: return is not a function, parentheses are not required #465: FILE: board/davinci/da8xxevm/hawkboard.c:67: + return(0);
ERROR: space required after that ',' (ctx:VxV) #537: FILE: board/davinci/da8xxevm/hawkboard_nand_spl.c:65: + { pinmux(12),1, 5 }, ^
ERROR: space required after that ',' (ctx:VxV) #538: FILE: board/davinci/da8xxevm/hawkboard_nand_spl.c:66: + { pinmux(12),1, 6 } ^
WARNING: space prohibited between function name and open parenthesis '(' #569: FILE: board/davinci/da8xxevm/hawkboard_nand_spl.c:97: +void board_init_f (ulong bootflag)
ERROR: code indent should use tabs where possible #601: FILE: board/davinci/da8xxevm/hawkboard_nand_spl.c:129: +^I CONFIG_SYS_NS16550_CLK / 16 / CONFIG_BAUDRATE);$
WARNING: space prohibited between function name and open parenthesis '(' #605: FILE: board/davinci/da8xxevm/hawkboard_nand_spl.c:133: + relocate_code (CONFIG_SYS_NAND_U_BOOT_RELOC_SP, (gd_t *)gd,
WARNING: space prohibited between function name and open parenthesis '(' #631: FILE: board/davinci/da8xxevm/hawkboard_nand_spl.c:159: +void hang (void)
WARNING: space prohibited between function name and open parenthesis '(' #633: FILE: board/davinci/da8xxevm/hawkboard_nand_spl.c:161: + puts ("### ERROR ### Please RESET the board ###\n");
ERROR: trailing statements should be on next line #634: FILE: board/davinci/da8xxevm/hawkboard_nand_spl.c:162: + for (;;); + for (;;); WARNING: line over 80 characters #721: FILE: include/configs/hawkboard.h:54: +#define PHYS_SDRAM_1 DAVINCI_DDR_EMIF_DATA_BASE /* DDR Start */
WARNING: line over 80 characters #725: FILE: include/configs/hawkboard.h:58: +#define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_SDRAM_BASE + 0x1000 - \
WARNING: line over 80 characters #842: FILE: include/configs/hawkboard.h:175: + "mem=128M console=ttyS2,115200n8 root=/dev/ram0 rw initrd=0xc1180000," \
total: 6 errors, 10 warnings, 823 lines checked
../sugosh-da8xx-v2/3of3.patch has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS.
I was also unable to build the da850evm u-boot with this patch applied: $make mrproper ; make da850evm_config ; make -j9 all|grep -E '( error| warning)' awk '(NF && $1 !~ /^#/) { print $1 ": " $1 "_config; $(MAKE)" }' boards.cfg > .boards.depend Configuring for da850evm board... davinci_pinmux.c:30:26: error: davinci_misc.h: No such file or directory make[1]: *** No rule to make target `.depend', needed by `libdavinci.a'. Stop. make: *** [board/davinci/common/libdavinci.a] Error 2 make: *** Waiting for unfinished jobs.... make: *** wait: No child processes. Stop.
For your next patch submission, I recommend running checkpatch.pl (from a recent linux kernel scripts/ directory) on your patches and also using the ./MAKEALL script [1] to test that your changes haven't broken other boards.
Best Regards, Ben Gardiner
[1] http://www.denx.de/wiki/U-Boot/Patches
--- Nanometrics Inc. http://www.nanometrics.ca