diff --git a/boards.sh b/boards.sh index e7c6d19b2..faa3feb5e 100644 --- a/boards.sh +++ b/boards.sh @@ -117,6 +117,8 @@ install_board_specific (){ cp $SRC/lib/config/boot-cubox.cmd $DEST/cache/sdcard/boot/boot.cmd elif [[ $BOARD == guitar* ]]; then cp $SRC/lib/config/boot-guitar.cmd $DEST/cache/sdcard/boot/boot.cmd + elif [[ $BOARD == armada* ]]; then + cp $SRC/lib/config/boot-marvell.cmd $DEST/cache/sdcard/boot/boot.cmd elif [[ $BOARD == odroid* ]]; then cp $SRC/lib/config/boot-odroid.ini $DEST/cache/sdcard/boot/boot.ini else diff --git a/config/boot-marvell.cmd b/config/boot-marvell.cmd new file mode 100644 index 000000000..9c7be1165 --- /dev/null +++ b/config/boot-marvell.cmd @@ -0,0 +1,4 @@ +setenv bootargs "selinux=0 scandelay root=/dev/mmcblk0p1 rw rootfstype=ext4 console=ttyS0,115200 loglevel=1 rootwait" +ext2load mmc 0:1 ${fdtaddr} boot/dtb/armada-388-clearfog.dtb +ext2load mmc 0:1 ${loadaddr} boot/zImage +bootz ${loadaddr} - ${fdtaddr} \ No newline at end of file diff --git a/configuration.sh b/configuration.sh index ed3561aef..04a626b04 100644 --- a/configuration.sh +++ b/configuration.sh @@ -286,7 +286,7 @@ BOOTCONFIG="armada_38x_clearfog_config" MODULES="" MODULES_NEXT="" - SERIALCON="ttymS0" + SERIALCON="ttyS0" ;; *) echo "Board configuration not found" diff --git a/general.sh b/general.sh index 589dfd44f..26927e3a3 100644 --- a/general.sh +++ b/general.sh @@ -34,8 +34,8 @@ cleaning() { case $1 in "make") # clean u-boot and kernel sources - [ -d "$SOURCES/$BOOTSOURCEDIR" ] && display_alert "Cleaning" "$SOURCES/$BOOTSOURCEDIR" "info" && cd $SOURCES/$BOOTSOURCEDIR && make -s ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- clean - [ -d "$SOURCES/$LINUXSOURCEDIR" ] && display_alert "Cleaning" "$SOURCES/$LINUXSOURCEDIR" "info" && cd $SOURCES/$LINUXSOURCEDIR && make -s ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- clean + [ -d "$SOURCES/$BOOTSOURCEDIR" ] && display_alert "Cleaning" "$SOURCES/$BOOTSOURCEDIR" "info" && cd $SOURCES/$BOOTSOURCEDIR && make -s ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- clean >/dev/null 2>&1 + [ -d "$SOURCES/$LINUXSOURCEDIR" ] && display_alert "Cleaning" "$SOURCES/$LINUXSOURCEDIR" "info" && cd $SOURCES/$LINUXSOURCEDIR && make -s ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- clean >/dev/null 2>&1 ;; "debs") # delete output/debs diff --git a/patch/u-boot/u-boot-armada-default/loading-boot.scr.patch b/patch/u-boot/u-boot-armada-default/loading-boot.scr.patch new file mode 100644 index 000000000..835439ca8 --- /dev/null +++ b/patch/u-boot/u-boot-armada-default/loading-boot.scr.patch @@ -0,0 +1,14 @@ +diff --git a/board/mv_ebu/a38x/mv_main_a38x.c b/board/mv_ebu/a38x/mv_main_a38x.c +index 4b43a9c..5489685 100755 +--- a/board/mv_ebu/a38x/mv_main_a38x.c ++++ b/board/mv_ebu/a38x/mv_main_a38x.c +@@ -679,7 +679,8 @@ void misc_init_r_env(void) + #if (CONFIG_BOOTDELAY >= 0) + env = getenv("bootcmd"); + if (!env) +- setenv("bootcmd", "tftpboot 0x2000000 $image_name;tftpboot $fdtaddr $fdtfile;" ++ setenv("bootcmd", "ext2load mmc 0:1 ${script_addr_r} boot/boot.scr;source ${script_addr_r};" ++ "tftpboot 0x2000000 $image_name;tftpboot $fdtaddr $fdtfile;" + "setenv bootargs $console $nandEcc $mtdparts $bootargs_root nfsroot=$serverip:$rootpath " + "ip=$ipaddr:$serverip$bootargs_end $mvNetConfig video=dovefb:lcd0:$lcd0_params " + "clcd.lcd0_enable=$lcd0_enable clcd.lcd_panel=$lcd_panel; bootz 0x2000000 - $fdtaddr;"); diff --git a/patch/u-boot/u-boot-armada-dev/loading-boot.scr.patch b/patch/u-boot/u-boot-armada-dev/loading-boot.scr.patch new file mode 100644 index 000000000..835439ca8 --- /dev/null +++ b/patch/u-boot/u-boot-armada-dev/loading-boot.scr.patch @@ -0,0 +1,14 @@ +diff --git a/board/mv_ebu/a38x/mv_main_a38x.c b/board/mv_ebu/a38x/mv_main_a38x.c +index 4b43a9c..5489685 100755 +--- a/board/mv_ebu/a38x/mv_main_a38x.c ++++ b/board/mv_ebu/a38x/mv_main_a38x.c +@@ -679,7 +679,8 @@ void misc_init_r_env(void) + #if (CONFIG_BOOTDELAY >= 0) + env = getenv("bootcmd"); + if (!env) +- setenv("bootcmd", "tftpboot 0x2000000 $image_name;tftpboot $fdtaddr $fdtfile;" ++ setenv("bootcmd", "ext2load mmc 0:1 ${script_addr_r} boot/boot.scr;source ${script_addr_r};" ++ "tftpboot 0x2000000 $image_name;tftpboot $fdtaddr $fdtfile;" + "setenv bootargs $console $nandEcc $mtdparts $bootargs_root nfsroot=$serverip:$rootpath " + "ip=$ipaddr:$serverip$bootargs_end $mvNetConfig video=dovefb:lcd0:$lcd0_params " + "clcd.lcd0_enable=$lcd0_enable clcd.lcd_panel=$lcd_panel; bootz 0x2000000 - $fdtaddr;"); diff --git a/patch/u-boot/u-boot-armada-next/loading-boot.scr.patch b/patch/u-boot/u-boot-armada-next/loading-boot.scr.patch new file mode 100644 index 000000000..835439ca8 --- /dev/null +++ b/patch/u-boot/u-boot-armada-next/loading-boot.scr.patch @@ -0,0 +1,14 @@ +diff --git a/board/mv_ebu/a38x/mv_main_a38x.c b/board/mv_ebu/a38x/mv_main_a38x.c +index 4b43a9c..5489685 100755 +--- a/board/mv_ebu/a38x/mv_main_a38x.c ++++ b/board/mv_ebu/a38x/mv_main_a38x.c +@@ -679,7 +679,8 @@ void misc_init_r_env(void) + #if (CONFIG_BOOTDELAY >= 0) + env = getenv("bootcmd"); + if (!env) +- setenv("bootcmd", "tftpboot 0x2000000 $image_name;tftpboot $fdtaddr $fdtfile;" ++ setenv("bootcmd", "ext2load mmc 0:1 ${script_addr_r} boot/boot.scr;source ${script_addr_r};" ++ "tftpboot 0x2000000 $image_name;tftpboot $fdtaddr $fdtfile;" + "setenv bootargs $console $nandEcc $mtdparts $bootargs_root nfsroot=$serverip:$rootpath " + "ip=$ipaddr:$serverip$bootargs_end $mvNetConfig video=dovefb:lcd0:$lcd0_params " + "clcd.lcd0_enable=$lcd0_enable clcd.lcd_panel=$lcd_panel; bootz 0x2000000 - $fdtaddr;"); diff --git a/scripts/armhwinfo b/scripts/armhwinfo index bacba0fdd..7cee67a28 100644 --- a/scripts/armhwinfo +++ b/scripts/armhwinfo @@ -48,6 +48,9 @@ if [ "$ARCH" = "armv7l" ]; then if [ $HARDWARE = "ODROID-XU3" ]; then ID="Odroid XU4" fi + if [ $HARDWARE = "Marvell" ]; then + ID="Clearfog" + fi if [ $HARDWARE = "gs705a" ]; then ID="Guitar" fi