diff -Nuar u-boot-2011.09/build.sh u-boot-2011.09-ok335x/build.sh --- u-boot-2011.09/build.sh 1970-01-01 08:00:00.000000000 +0800 +++ u-boot-2011.09-ok335x/build.sh 2019-08-01 23:06:07.067744283 +0800 @@ -0,0 +1,66 @@ +#!/bin/bash + +TFTP_PATH=/tftp +IMGS_PATH=../images +IMG_NAME="u-boot.img MLO" + +CROSSTOOL=/opt/crosstool/cortex-a7/bin/arm-linux-gnueabi- +JOBS=`cat /proc/cpuinfo |grep "processor"|wc -l` + + +function do_clean() +{ + make CROSS_COMPILE=${CROSSTOOL} distclean + rm -f MLO tags +} + +function do_modify() +{ + grep "export ARCH=arm" Makefile > /dev/null + + if [ $? == 0 ] ; then + return ; + fi + + echo "Modify Makefile for ARCH and cross compiler" + sed -i "/ARCH CPU BOARD VENDOR SOC/a\export CROSS_COMPILE=${CROSSTOOL}" Makefile + sed -i '/ARCH CPU BOARD VENDOR SOC/a\export ARCH=arm' Makefile +} + +function do_build() +{ + make ok335x_config + + make -j${JOBS} + + chmod a-x u-boot + + chmod a+x ${IMG_NAME} +} + +function do_install() +{ + if [ -d $TFTP_PATH ] ;then + cp ${IMG_NAME} $TFTP_PATH + fi + + if [ -d ${IMGS_PATH} ] ; then + cp ${IMG_NAME} $IMGS_PATH + fi +} + +if [ "$1" == "clean" ] ; then + + do_clean + exit 0; +fi + +do_modify + +set -e + +do_build + +do_install + + diff -Nuar u-boot-2011.09/common/cmd_led_flash.c u-boot-2011.09-ok335x/common/cmd_led_flash.c --- u-boot-2011.09/common/cmd_led_flash.c 2014-01-18 11:05:20.000000000 +0800 +++ u-boot-2011.09-ok335x/common/cmd_led_flash.c 2019-08-01 23:06:07.067744283 +0800 @@ -13,6 +13,11 @@ extern int g_on; +void lcd_backlight_on(void) +{ + __raw_writel(1<<7, 0x44E07194); +} + void update_led() { static u32 n = 0; diff -Nuar u-boot-2011.09/drivers/video/cfb_console.c u-boot-2011.09-ok335x/drivers/video/cfb_console.c --- u-boot-2011.09/drivers/video/cfb_console.c 2013-12-04 14:05:19.000000000 +0800 +++ u-boot-2011.09-ok335x/drivers/video/cfb_console.c 2019-08-01 23:06:07.067744283 +0800 @@ -1820,7 +1820,7 @@ return 0; } -int g_on = 0; +int g_on = 1; void show_process(unsigned long a,unsigned long b) { static int last_percent = 100,type = 0; @@ -1833,6 +1833,7 @@ if(percent != last_percent) { update_led(); + lcd_backlight_on(); /*update uart console*/ printf("\r%02d%% complete",percent); @@ -1849,34 +1850,19 @@ switch(type) { case 0: - title = "Erasing nand chip............"; + title = "Burning Env to nand..."; break; case 1: - title = "Reading MLO from MMC........."; + title = "Burning bootloader to nand..."; break; case 2: - title = "Burning MLO to nand.........."; - break; - case 3: - title = "Reading u-boot.img from MMC.."; - break; - case 4: - title = "Burning u-boot.img to nand..."; - break; - case 5: - title = "Reading uImage from MMC......"; - break; - case 6: title = "Burning uImage to nand......."; break; - case 7: - title = "Reading ubi.img from MMC....."; - break; - case 8: + case 3: title = "Burning ubi.img to nand......"; break; default: - title = "env is null.................."; + title = "env TYPE is null.................."; break; } diff -Nuar u-boot-2011.09/include/configs/ok335x.h u-boot-2011.09-ok335x/include/configs/ok335x.h --- u-boot-2011.09/include/configs/ok335x.h 2014-01-23 09:45:03.000000000 +0800 +++ u-boot-2011.09-ok335x/include/configs/ok335x.h 2019-08-02 00:26:56.203837301 +0800 @@ -61,17 +61,11 @@ "nandroot=ubi0:rootfs rw ubi.mtd=7,2048\0" \ "nandrootfstype=ubifs rootwait=1\0" #else -#define CON \ - "console=ttyO0,115200n8\0" \ - "optargs=\0" \ - "mmcroot=/dev/mmcblk0p2 ro\0" \ - "mmcrootfstype=ext3 rootwait\0" \ - "nandroot=ubi0:rootfs rw ubi.mtd=7,2048\0" \ - "nandrootfstype=ubifs rootwait=1\0" +#define CON "console=ttyO0,115200n8\0" #endif /* set to negative value for no autoboot */ -#define CONFIG_BOOTDELAY 3 +#define CONFIG_BOOTDELAY 1 #define CONFIG_MMC #define CONFIG_NAND @@ -81,141 +75,32 @@ #define CONFIG_CFB_CONSOLE #define CONFIG_VGA_AS_SINGLE_DEVICE +#define CONFIG_BOOTARGS "console=ttyO0,115200n8 root=ubi0:rootfs rw ubi.mtd=4,2048 rootfstype=ubifs rootwait=1" +#define CONFIG_BOOTCOMMAND "run confaddr; nandecc hw 2; nand read ${loadaddr} ${kernaddr} ${kernsize}; bootm ${loadaddr}" +#define CONFIG_IPADDR 192.168.2.222 +#define CONFIG_SERVERIP 192.168.2.2 +#define CONFIG_BOOTFILE uImage +#define CONFIG_LOADADDR 0x80200000 -#if 1 #define CONFIG_EXTRA_ENV_SETTINGS \ - CON \ - "screentype=R\0"\ - "screensize=800x480-7\0"\ - "loadaddr=0x80200000\0" \ - "kloadaddr=0x80007fc0\0" \ - "fdtaddr=0x80F80000\0" \ - "fdt_high=0xffffffff\0" \ - "rdaddr=0x81000000\0" \ - "bootdev=MMC\0"\ - "bootfile=uImage\0" \ - "fdtfile=\0" \ - "mmcdev=0\0" \ - "nandsrcaddr=0x280000\0" \ - "nandimgsize=0x500000\0" \ - "rootpath=/export/rootfs\0" \ - "nfsopts=nolock\0" \ - "static_ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}" \ - "::off\0" \ - "ramroot=/dev/ram0 rw ramdisk_size=65536 initrd=${rdaddr},64M\0" \ - "ramrootfstype=ext2\0" \ - "ip_method=none\0" \ - "bootargs_defaults=setenv bootargs " \ - "console=${console} " \ - "${optargs}\0" \ - "mmcargs=run bootargs_defaults;" \ - "setenv bootargs ${bootargs} " \ - "root=${mmcroot} " \ - "rootfstype=${mmcrootfstype} ip=${ip_method} screentype=${screentype} screensize=${screensize}\0" \ - "nandargs=setenv bootargs console=${console} " \ - "${optargs} " \ - "root=${nandroot} " \ - "rootfstype=${nandrootfstype} screentype=${screentype} screensize=${screensize}\0" \ - "spiroot=/dev/mtdblock4 rw\0" \ - "spirootfstype=jffs2\0" \ - "spisrcaddr=0xe0000\0" \ - "spiimgsize=0x362000\0" \ - "spibusno=0\0" \ - "spiargs=setenv bootargs console=${console} " \ - "${optargs} " \ - "root=${spiroot} " \ - "rootfstype=${spirootfstype}\0" \ - "netargs=setenv bootargs console=${console} " \ - "${optargs} " \ - "root=/dev/nfs " \ - "nfsroot=${serverip}:${rootpath},${nfsopts} rw " \ - "ip=dhcp\0" \ - "bootenv=uEnv.txt\0" \ - "loadbootenv=fatload mmc ${mmcdev} ${loadaddr} ${bootenv}\0" \ - "importbootenv=echo Importing environment from mmc ...; " \ - "env import -t $loadaddr $filesize\0" \ - "ramargs=setenv bootargs console=${console} " \ - "${optargs} " \ - "root=${ramroot} " \ - "rootfstype=${ramrootfstype}\0" \ - "loadramdisk=fatload mmc ${mmcdev} ${rdaddr} ramdisk.gz\0" \ - "loaduimagefat=fatload mmc ${mmcdev} ${kloadaddr} ${bootfile}\0" \ - "loaduimage=ext2load mmc ${mmcdev}:2 ${kloadaddr} /boot/${bootfile}\0" \ - "mmcboot=echo Booting from mmc ...; " \ - "run mmcargs; " \ - "bootm ${kloadaddr}\0" \ - "nandboot=echo Booting from nand ...; " \ - "run nandargs; " \ - "nandecc hw 2;"\ - "nand read ${loadaddr} ${nandsrcaddr} ${nandimgsize}; " \ - "bootm ${loadaddr}\0" \ - "spiboot=echo Booting from spi ...; " \ - "run spiargs; " \ - "sf probe ${spibusno}:0; " \ - "sf read ${loadaddr} ${spisrcaddr} ${spiimgsize}; " \ - "bootm ${loadaddr}\0" \ - "netboot=echo Booting from network ...; " \ - "setenv autoload no; " \ - "dhcp; " \ - "tftp ${loadaddr} ${bootfile}; " \ - "run netargs; " \ - "bootm ${loadaddr}\0" \ - "ramboot=echo Booting from ramdisk ...; " \ - "run ramargs; " \ - "bootm ${loadaddr}\0" \ - "findfdt="\ - "if test $board_name = A335BONE; then " \ - "setenv fdtfile am335x-bone.dtb; fi; " \ - "if test $board_name = A33515BB; then " \ - "setenv fdtfile am335x-evm.dtb; fi; " \ - "if test $board_name = A335X_SK; then " \ - "setenv fdtfile am335x-evmsk.dtb; fi\0" \ - "auto_update_nand= echo ---------------Begin update system to Nand---------------;led all on;"\ - "setenv TYPE 0;nand erase.chip;mmc rescan; "\ - "setenv TYPE 1;fatload mmc 0 80A00000 MLO; setenv TYPE 2;nandecc hw 2;nand write.i 80A00000 0 ${filesize}; "\ - "setenv TYPE 3;fatload mmc 0 80A00000 u-boot.img;setenv TYPE 4;nandecc hw 2;nand write.i 80A00000 80000 ${filesize}; "\ - "setenv TYPE 5;fatload mmc 0 80A00000 uImage; setenv TYPE 6;nandecc hw 2;nand write.i 80A00000 280000 ${filesize}; "\ - "setenv TYPE 7;fatload mmc 0 80A00000 ubi.img; setenv TYPE 8;nandecc sw;nand write.i 80A00000 780000 ${filesize};"\ - "echo ;"\ - "echo --------------Update system to Nand success--------------;led flash all;\0"\ - "update_nand= echo ---------------Begin update system to Nand---------------;led all on;"\ - "setenv TYPE 0;nand erase.chip;mmc rescan; "\ - "setenv TYPE 1;fatload mmc 0 80A00000 MLO; setenv TYPE 2;nandecc hw 2;nand write.i 80A00000 0 ${filesize}; "\ - "setenv TYPE 3;fatload mmc 0 80A00000 u-boot.img;setenv TYPE 4;nandecc hw 2;nand write.i 80A00000 80000 ${filesize}; "\ - "setenv TYPE 5;fatload mmc 0 80A00000 uImage; setenv TYPE 6;nandecc hw 2;nand write.i 80A00000 280000 ${filesize}; "\ - "setenv TYPE 7;fatload mmc 0 80A00000 ubi.img; setenv TYPE 8;nandecc sw;nand write.i 80A00000 780000 ${filesize};"\ - "echo ;"\ - "echo --------------Update system to Nand success--------------;led all off;"\ - - -#define CONFIG_BOOTCOMMAND \ - " if test $bootdev = MMC; then " \ - "mmc dev ${mmcdev}; mmc rescan;"\ - "echo SD/MMC found on device ${mmcdev};" \ - "if run loadbootenv; then " \ - "echo Loaded environment from ${bootenv};" \ - "run importbootenv;" \ - "fi;" \ - "if test -n $uenvcmd; then " \ - "echo Running uenvcmd ...;" \ - "run uenvcmd;" \ - "fi;" \ - "if run loaduimagefat; then " \ - "run mmcboot;" \ - "elif run loaduimage; then " \ - "run mmcboot;" \ - "else " \ - "echo Could not find ${bootfile} ;" \ - "fi;" \ - "else " \ - "run nandboot;" \ - "fi;" \ - -#else -#define CONFIG_BOOTARGS "console=ttyO0,115200n8 earlyprintk ubi.mtd=7,2048 root=ubi0:rootfs rootfstype=ubifs init=/init androidboot.console=ttyO0" -#define CONFIG_BOOTCOMMAND "nandecc hw 2;nand read.i 80007fc0 280000 400000;bootm 80007fc0" -#endif + "screentype=C\0" \ + "screensize=800x480-7\0" \ + "confaddr=set spladdr 0x0; set ubootaddr 0x80000; set envaddr 0xc0000; set envsize 0x40000; " \ + "set kernaddr 0x100000; set kernsize 0x500000; set rootaddr 0x600000; set rootsize 0x9600000 \0" \ + "confimgs=set spl 'MLO'; set uboot 'u-boot.img'; set kernel 'uImage'; set rootfs 'ubifs.img' \0" \ + "conf=run confaddr; run confimgs; set filesize 0x20000; \0" \ + "benv=run confaddr; set TYPE 0; nandecc hw 0; nand erase ${envaddr} ${envsize}; save\0" \ + "bbl=run conf; set TYPE 1; nand erase 0 100000; tftp ${loadaddr} ${spl}; " \ + "nandecc hw 2; nand write.i ${loadaddr} ${spladdr} ${filesize}; " \ + "tftp ${uboot}; nandecc hw 2;nand write.i ${loadaddr} ${ubootaddr} ${filesize}\0" \ + "bkr=run conf; set TYPE 2; tftp ${loadaddr} ${kernel}; nand erase ${kernaddr} ${kernsize}; "\ + "nandecc hw 2; nand write.i ${loadaddr} ${kernaddr} ${filesize}\0" \ + "bfs=run conf; set TYPE 3; tftp ${loadaddr} ${rootfs}; nand erase ${rootaddr} ${rootsize}; "\ + "nandecc hw 2; nand write.i ${loadaddr} ${rootaddr} ${filesize}\0" \ + "bsys=nand scrub.chip; run conf; run bbl; run bkr; run bfs; reset\0" \ + "tb=run conf; tftp ${loadaddr} ${kernel}; bootm ${loadaddr} \0" + #define CONFIG_MISC_INIT_R #define CONFIG_SYS_AUTOLOAD "yes" #define CONFIG_CMD_CACHE @@ -412,7 +297,7 @@ #define CONFIG_SYS_MONITOR_LEN (256 << 10) /* Reserve 2 sectors */ #define CONFIG_SYS_FLASH_BASE PISMO1_NAND_BASE #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_FLASH_BASE -#define MNAND_ENV_OFFSET 0x260000 /* environment starts here */ +#define MNAND_ENV_OFFSET 0xC0000 /* environment starts here */ #define CONFIG_SYS_ENV_SECT_SIZE (128 << 10) /* 128 KiB */ #define CONFIG_ENV_OFFSET MNAND_ENV_OFFSET #define CONFIG_ENV_ADDR MNAND_ENV_OFFSET diff -Nuar u-boot-2011.09/Makefile u-boot-2011.09-ok335x/Makefile --- u-boot-2011.09/Makefile 2013-11-20 14:14:16.000000000 +0800 +++ u-boot-2011.09-ok335x/Makefile 2019-08-01 23:06:07.071744283 +0800 @@ -155,6 +155,8 @@ # load ARCH, BOARD, and CPU configuration include $(obj)include/config.mk export ARCH CPU BOARD VENDOR SOC +export ARCH=arm +export CROSS_COMPILE=/opt/crosstool/cortex-a7/bin/arm-linux-gnueabi- # set default to nothing for native builds ifeq ($(HOSTARCH),$(ARCH))