From 0b6d57e7d8797005ab7bb5609765c55535389d79 Mon Sep 17 00:00:00 2001 From: Igor Date: Tue, 13 Jun 2023 16:24:22 +0200 Subject: [PATCH] u-boot bpi r2 fixing broken u-boot patch CSC target, not tested on hardware --- config/sources/families/mt7623.conf | 1 + .../enable-boot-from-ext4.patch | 166 ++++++++++++++++++ .../fix-dependencies-ugly-boot.patch | 96 ---------- 3 files changed, 167 insertions(+), 96 deletions(-) create mode 100644 patch/u-boot/legacy/board_bananapir2/enable-boot-from-ext4.patch delete mode 100644 patch/u-boot/legacy/board_bananapir2/fix-dependencies-ugly-boot.patch diff --git a/config/sources/families/mt7623.conf b/config/sources/families/mt7623.conf index 3d2850c472..814f206e8e 100644 --- a/config/sources/families/mt7623.conf +++ b/config/sources/families/mt7623.conf @@ -10,6 +10,7 @@ BOOTSCRIPT='boot-mt7623.cmd:boot.cmd' BOOTENV_FILE='mt7623.txt' UBOOT_TARGET_MAP=";;$SRC/packages/blobs/mt7623n/BPI-R2-HEAD440-0k.img $SRC/packages/blobs/mt7623n/BPI-R2-HEAD1-512b.img $SRC/packages/blobs/mt7623n/BPI-R2-preloader-2k.img $SRC/packages/blobs/mt7623n/BPI-R2-EMMC-boot0-0K-0905.img u-boot.bin" BOOTPATCHDIR='legacy' +BOOTBRANCH='tag:v2023.04' ARCH=armhf ATF_COMPILE="no" diff --git a/patch/u-boot/legacy/board_bananapir2/enable-boot-from-ext4.patch b/patch/u-boot/legacy/board_bananapir2/enable-boot-from-ext4.patch new file mode 100644 index 0000000000..7fda489ed5 --- /dev/null +++ b/patch/u-boot/legacy/board_bananapir2/enable-boot-from-ext4.patch @@ -0,0 +1,166 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Igor Pecovnik +Date: Tue, 13 Jun 2023 14:21:30 +0000 +Subject: Patching u-boot mt7623 files include/configs/mt7623.h + mt7623n_bpir2_defconfig + +Signed-off-by: Igor Pecovnik +--- + include/configs/mt7623.h | 48 ++++++- + mt7623n_bpir2_defconfig | 70 ++++++++++ + 2 files changed, 113 insertions(+), 5 deletions(-) + +diff --git a/include/configs/mt7623.h b/include/configs/mt7623.h +index db12377b00..3fb983060f 100644 +--- a/include/configs/mt7623.h ++++ b/include/configs/mt7623.h +@@ -22,15 +22,31 @@ + + /* DRAM */ + #define CFG_SYS_SDRAM_BASE 0x80000000 + + /* This is needed for kernel booting */ +-#define FDT_HIGH "0xac000000" ++#define SCRIPT_BOOT \ ++ "fileload=${mmctype}load mmc ${devnum}:${mmcpart} " \ ++ "${loadaddr} ${mmcfile}\0" \ ++ "kernload=setenv loadaddr ${kernel_addr_r};" \ ++ "setenv mmcfile ${mmckernfile};" \ ++ "run fileload\0" \ ++ "initrdload=setenv loadaddr ${rdaddr};" \ ++ "setenv mmcfile ${mmcinitrdfile};" \ ++ "run fileload\0" \ ++ "fdtload=setenv loadaddr ${fdtaddr};" \ ++ "setenv mmcfile ${mmcfdtfile};" \ ++ "run fileload\0" \ ++ "scriptload=setenv loadaddr ${scriptaddr};" \ ++ "setenv mmcfile ${mmcscriptfile};" \ ++ "run fileload\0" \ ++ "scriptboot=echo Running ${mmcscriptfile} from: mmc ${devnum}:${mmcpart} using ${mmcscriptfile};" \ ++ "source ${scriptaddr};" \ + + #define ENV_MEM_LAYOUT_SETTINGS \ + "fdt_high=" FDT_HIGH "\0" \ +- "kernel_addr_r=0x84000000\0" \ ++ "kernel_addr_r=0x82000000\0" \ + "fdt_addr_r=" FDT_HIGH "\0" \ + "fdtfile=" CONFIG_DEFAULT_FDT_FILE "\0" + + /* Ethernet */ + +@@ -41,11 +57,33 @@ + + #include + + /* Extra environment variables */ + #define CFG_EXTRA_ENV_SETTINGS \ +- ENV_MEM_LAYOUT_SETTINGS \ +- BOOTENV +- ++ "loadaddr=0x82000000\0" \ ++ "kernel_addr_r=0x82000000\0" \ ++ "scriptaddr=0x85F80000\0" \ ++ "fdtaddr=0x86000000\0" \ ++ "fdt_addr_r=0x86000000\0" \ ++ "rdaddr=0x86080000\0" \ ++ "ramdisk_addr_r=0x86080000\0" \ ++ "bootm_size=0x10000000\0" \ ++ "mmckernfile=boot/zImage\0" \ ++ "mmcinitrdfile= boot/uInitrd\0" \ ++ "mmcfdtfile=boot/dtb/mt7623n-bananapi-bpi-r2.dtb\0" \ ++ "mmcscriptfile=boot/boot.scr\0" \ ++ "mmctype=ext4\0" \ ++ "devnum=1\0" \ ++ "mmcpart=1\0" \ ++ SCRIPT_BOOT ++ ++#define CONFIG_BOOTCOMMAND \ ++ "mmc dev 1;" \ ++ "run scriptload;" \ ++ "run scriptboot;" \ ++ "setenv devnum 0;" \ ++ "mmc dev 0;" \ ++ "run scriptload;" \ ++ "run scriptboot" + #endif /* ifdef CONFIG_DISTRO_DEFAULTS*/ + + #endif +diff --git a/mt7623n_bpir2_defconfig b/mt7623n_bpir2_defconfig +new file mode 100644 +index 0000000000..ea8301a604 +--- /dev/null ++++ b/mt7623n_bpir2_defconfig +@@ -0,0 +1,70 @@ ++CONFIG_ARM=y ++CONFIG_SYS_HAS_NONCACHED_MEMORY=y ++CONFIG_SYS_THUMB_BUILD=y ++CONFIG_ARCH_MEDIATEK=y ++CONFIG_TEXT_BASE=0x81e00000 ++CONFIG_SYS_MALLOC_F_LEN=0x4000 ++CONFIG_NR_DRAM_BANKS=1 ++CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y ++CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x81ffff10 ++CONFIG_ENV_SIZE=0x1000 ++CONFIG_ENV_OFFSET=0x100000 ++CONFIG_DEFAULT_DEVICE_TREE="mt7623n-bananapi-bpi-r2" ++CONFIG_SYS_PROMPT="U-Boot> " ++CONFIG_CMD_BOOTZ=y ++CONFIG_TARGET_MT7623=y ++CONFIG_SYS_LOAD_ADDR=0x84000000 ++CONFIG_FIT=y ++CONFIG_FIT_VERBOSE=y ++CONFIG_DISTRO_DEFAULTS=y ++CONFIG_BOOTDELAY=3 ++CONFIG_DEFAULT_FDT_FILE="mt7623n-bananapi-bpi-r2.dtb" ++CONFIG_SYS_CONSOLE_IS_IN_ENV=y ++# CONFIG_DISPLAY_BOARDINFO is not set ++CONFIG_SYS_MAXARGS=8 ++CONFIG_SYS_PBSIZE=1049 ++CONFIG_SYS_BOOTM_LEN=0x4000000 ++CONFIG_CMD_BOOTMENU=y ++# CONFIG_CMD_ELF is not set ++# CONFIG_CMD_XIMG is not set ++CONFIG_CMD_GPIO=y ++CONFIG_CMD_GPT=y ++CONFIG_CMD_MMC=y ++CONFIG_CMD_READ=y ++CONFIG_CMD_EXT4=y ++CONFIG_CMD_EXT4_WRITE=y ++CONFIG_FS_EXT4=y ++CONFIG_EXT4_WRITE=y ++# CONFIG_CMD_SETEXPR is not set ++# CONFIG_CMD_NFS is not set ++CONFIG_ENV_OVERWRITE=y ++CONFIG_ENV_IS_IN_MMC=y ++CONFIG_SYS_RELOC_GD_ENV_ADDR=y ++CONFIG_NET_RANDOM_ETHADDR=y ++CONFIG_USE_IPADDR=y ++CONFIG_IPADDR="192.168.1.1" ++CONFIG_USE_SERVERIP=y ++CONFIG_SERVERIP="192.168.1.2" ++CONFIG_REGMAP=y ++CONFIG_SYSCON=y ++CONFIG_CLK=y ++# CONFIG_MMC_QUIRKS is not set ++CONFIG_SUPPORT_EMMC_BOOT=y ++CONFIG_MMC_HS400_SUPPORT=y ++CONFIG_MMC_MTK=y ++CONFIG_PHY_FIXED=y ++CONFIG_MEDIATEK_ETH=y ++CONFIG_PINCTRL=y ++CONFIG_PINCONF=y ++CONFIG_PINCTRL_MT7623=y ++CONFIG_POWER_DOMAIN=y ++CONFIG_MTK_POWER_DOMAIN=y ++CONFIG_DM_SERIAL=y ++CONFIG_MTK_SERIAL=y ++CONFIG_SYSRESET=y ++CONFIG_SYSRESET_WATCHDOG=y ++CONFIG_TIMER=y ++CONFIG_MTK_TIMER=y ++CONFIG_WDT_MTK=y ++CONFIG_LZMA=y ++# CONFIG_EFI_GRUB_ARM32_WORKAROUND is not set +-- +Created with Armbian build tools https://github.com/armbian/build + diff --git a/patch/u-boot/legacy/board_bananapir2/fix-dependencies-ugly-boot.patch b/patch/u-boot/legacy/board_bananapir2/fix-dependencies-ugly-boot.patch deleted file mode 100644 index 9c429527b9..0000000000 --- a/patch/u-boot/legacy/board_bananapir2/fix-dependencies-ugly-boot.patch +++ /dev/null @@ -1,96 +0,0 @@ -diff --git a/configs/mt7623n_bpir2_defconfig b/configs/mt7623n_bpir2_defconfig -index ae4fb28..ea7f7aa 100644 ---- a/configs/mt7623n_bpir2_defconfig -+++ b/configs/mt7623n_bpir2_defconfig -@@ -12,6 +12,7 @@ CONFIG_DEFAULT_FDT_FILE="mt7623n-bananapi-bpi-r2" - # CONFIG_DISPLAY_BOARDINFO is not set - CONFIG_HUSH_PARSER=y - CONFIG_SYS_PROMPT="U-Boot> " -+CONFIG_CMD_BOOTZ=y - CONFIG_CMD_BOOTMENU=y - # CONFIG_CMD_ELF is not set - # CONFIG_CMD_XIMG is not set -@@ -24,6 +25,8 @@ CONFIG_CMD_READ=y - # CONFIG_CMD_SETEXPR is not set - # CONFIG_CMD_NFS is not set - CONFIG_CMD_PING=y -+CONFIG_CMD_EXT4=y -+CONFIG_CMD_EXT4_WRITE=y - CONFIG_CMD_FAT=y - CONFIG_CMD_FS_GENERIC=y - CONFIG_OF_EMBED=y -@@ -49,5 +52,7 @@ CONFIG_SYSRESET_WATCHDOG=y - CONFIG_TIMER=y - CONFIG_MTK_TIMER=y - CONFIG_WDT_MTK=y -+CONFIG_FS_EXT4=y -+CONFIG_EXT4_WRITE=y - CONFIG_LZMA=y - # CONFIG_EFI_LOADER is not set -diff --git a/include/configs/mt7623.h b/include/configs/mt7623.h -index ba76350..50c742e 100644 ---- a/include/configs/mt7623.h -+++ b/include/configs/mt7623.h -@@ -36,7 +36,7 @@ - GENERATED_GBL_DATA_SIZE) - - /* UBoot -> Kernel */ --#define CONFIG_LOADADDR 0x84000000 -+#define CONFIG_LOADADDR 0x82000000 - #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR - - /* MMC */ -@@ -46,11 +46,50 @@ - /* DRAM */ - #define CONFIG_SYS_SDRAM_BASE 0x80000000 - --/* This is needed for kernel booting */ --#define FDT_HIGH "fdt_high=0xac000000\0" -+#define SCRIPT_BOOT \ -+ "fileload=${mmctype}load mmc ${devnum}:${mmcpart} " \ -+ "${loadaddr} ${mmcfile}\0" \ -+ "kernload=setenv loadaddr ${kernel_addr_r};" \ -+ "setenv mmcfile ${mmckernfile};" \ -+ "run fileload\0" \ -+ "initrdload=setenv loadaddr ${rdaddr};" \ -+ "setenv mmcfile ${mmcinitrdfile};" \ -+ "run fileload\0" \ -+ "fdtload=setenv loadaddr ${fdtaddr};" \ -+ "setenv mmcfile ${mmcfdtfile};" \ -+ "run fileload\0" \ -+ "scriptload=setenv loadaddr ${scriptaddr};" \ -+ "setenv mmcfile ${mmcscriptfile};" \ -+ "run fileload\0" \ -+ "scriptboot=echo Running ${mmcscriptfile} from: mmc ${devnum}:${mmcpart} using ${mmcscriptfile};" \ -+ "source ${scriptaddr};" \ - - /* Extra environment variables */ - #define CONFIG_EXTRA_ENV_SETTINGS \ -- FDT_HIGH -+ "loadaddr=0x82000000\0" \ -+ "kernel_addr_r=0x82000000\0" \ -+ "scriptaddr=0x85F80000\0" \ -+ "fdtaddr=0x86000000\0" \ -+ "fdt_addr_r=0x86000000\0" \ -+ "rdaddr=0x86080000\0" \ -+ "ramdisk_addr_r=0x86080000\0" \ -+ "bootm_size=0x10000000\0" \ -+ "mmckernfile=boot/zImage\0" \ -+ "mmcinitrdfile= boot/uInitrd\0" \ -+ "mmcfdtfile=boot/dtb/mt7623n-bananapi-bpi-r2.dtb\0" \ -+ "mmcscriptfile=boot/boot.scr\0" \ -+ "mmctype=ext4\0" \ -+ "devnum=1\0" \ -+ "mmcpart=1\0" \ -+ SCRIPT_BOOT -+ -+#define CONFIG_BOOTCOMMAND \ -+ "mmc dev 1;" \ -+ "run scriptload;" \ -+ "run scriptboot;" \ -+ "setenv devnum 0;" \ -+ "mmc dev 0;" \ -+ "run scriptload;" \ -+ "run scriptboot" - - #endif