From 6a699aae0ccfc66fa031934b5f951f3b3bc25799 Mon Sep 17 00:00:00 2001 From: Thomas Klaehn Date: Tue, 13 Jun 2017 15:01:30 +0200 Subject: [PATCH] u-boot: new boot loader Used to force boot sd card Signed-off-by: Thomas Klaehn --- .../0001-Remove-unused-boot-options.patch | 104 ++++++++++++++++++ ...tom-bootcommand-always-envboot-first.patch | 33 ++++++ .../0003-Skip-check-for-boot-scr.patch | 41 +++++++ recipes-bsp/u-boot/u-boot.inc | 12 ++ recipes-bsp/u-boot/u-boot_2017.05.bb | 21 ++++ 5 files changed, 211 insertions(+) create mode 100644 recipes-bsp/u-boot/u-boot-2017.05/0001-Remove-unused-boot-options.patch create mode 100644 recipes-bsp/u-boot/u-boot-2017.05/0002-Set-custom-bootcommand-always-envboot-first.patch create mode 100644 recipes-bsp/u-boot/u-boot-2017.05/0003-Skip-check-for-boot-scr.patch create mode 100644 recipes-bsp/u-boot/u-boot.inc create mode 100644 recipes-bsp/u-boot/u-boot_2017.05.bb diff --git a/recipes-bsp/u-boot/u-boot-2017.05/0001-Remove-unused-boot-options.patch b/recipes-bsp/u-boot/u-boot-2017.05/0001-Remove-unused-boot-options.patch new file mode 100644 index 0000000..4707e09 --- /dev/null +++ b/recipes-bsp/u-boot/u-boot-2017.05/0001-Remove-unused-boot-options.patch @@ -0,0 +1,104 @@ +From b1b8a09752afa3a9ff3c75f002d4195cf7bfe30b Mon Sep 17 00:00:00 2001 +From: Scott Ellis +Date: Sun, 14 May 2017 09:46:03 -0400 +Subject: [PATCH 1/3] Remove unused boot options + +--- + configs/am335x_boneblack_defconfig | 44 +++++++++++++++++++------------------- + include/configs/am335x_evm.h | 2 ++ + 2 files changed, 24 insertions(+), 22 deletions(-) + +diff --git a/configs/am335x_boneblack_defconfig b/configs/am335x_boneblack_defconfig +index d3cb828..9fae82d 100644 +--- a/configs/am335x_boneblack_defconfig ++++ b/configs/am335x_boneblack_defconfig +@@ -5,13 +5,13 @@ CONFIG_TARGET_AM335X_EVM=y + # CONFIG_SPL_NAND_SUPPORT is not set + CONFIG_SPL_STACK_R_ADDR=0x82000000 + CONFIG_DISTRO_DEFAULTS=y +-CONFIG_SYS_EXTRA_OPTIONS="EMMC_BOOT" ++CONFIG_SYS_EXTRA_OPTIONS="ENV_IS_NOWHERE" + CONFIG_SYS_CONSOLE_INFO_QUIET=y + CONFIG_VERSION_VARIABLE=y + CONFIG_ARCH_MISC_INIT=y + CONFIG_SPL=y + CONFIG_SPL_STACK_R=y +-CONFIG_SPL_MUSB_NEW_SUPPORT=y ++# CONFIG_SPL_MUSB_NEW_SUPPORT is not set + CONFIG_SPL_OS_BOOT=y + CONFIG_AUTOBOOT_KEYED=y + CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n" +@@ -20,30 +20,30 @@ CONFIG_AUTOBOOT_STOP_STR=" " + # CONFIG_CMD_IMLS is not set + CONFIG_CMD_ASKENV=y + # CONFIG_CMD_FLASH is not set +-CONFIG_CMD_GPT=y ++# CONFIG_CMD_GPT is not set + CONFIG_CMD_MMC=y +-CONFIG_CMD_SF=y +-CONFIG_CMD_SPI=y ++# CONFIG_CMD_SF is not set ++# CONFIG_CMD_SPI is not set + CONFIG_CMD_I2C=y +-CONFIG_CMD_USB=y +-CONFIG_CMD_DFU=y ++# CONFIG_CMD_USB is not set ++# CONFIG_CMD_DFU is not set + CONFIG_CMD_GPIO=y + # CONFIG_CMD_SETEXPR is not set +-CONFIG_CMD_EXT4_WRITE=y +-CONFIG_DFU_TFTP=y +-CONFIG_DFU_MMC=y +-CONFIG_DFU_RAM=y ++# CONFIG_CMD_EXT4_WRITE is not set ++# CONFIG_DFU_TFTP is not set ++# CONFIG_DFU_MMC is not set ++# CONFIG_DFU_RAM is not set + CONFIG_MMC_OMAP_HS=y +-CONFIG_SPI_FLASH=y +-CONFIG_SPI_FLASH_WINBOND=y ++# CONFIG_SPI_FLASH is not set ++# CONFIG_SPI_FLASH_WINBOND is not set + CONFIG_SYS_NS16550=y +-CONFIG_USB=y +-CONFIG_USB_MUSB_HOST=y +-CONFIG_USB_MUSB_GADGET=y +-CONFIG_USB_STORAGE=y +-CONFIG_USB_GADGET=y +-CONFIG_USB_GADGET_DOWNLOAD=y +-CONFIG_G_DNL_MANUFACTURER="Texas Instruments" +-CONFIG_G_DNL_VENDOR_NUM=0x0451 +-CONFIG_G_DNL_PRODUCT_NUM=0xd022 ++# CONFIG_USB is not set ++# CONFIG_USB_MUSB_HOST is not set ++# CONFIG_USB_MUSB_GADGET is not set ++# CONFIG_USB_STORAGE is not set ++# CONFIG_USB_GADGET is not set ++# CONFIG_USB_GADGET_DOWNLOAD is not set ++# CONFIG_G_DNL_MANUFACTURER="Texas Instruments" ++# CONFIG_G_DNL_VENDOR_NUM=0x0451 ++# CONFIG_G_DNL_PRODUCT_NUM=0xd022 + CONFIG_OF_LIBFDT=y +diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h +index fc8a08f..d8c18da 100644 +--- a/include/configs/am335x_evm.h ++++ b/include/configs/am335x_evm.h +@@ -254,6 +254,7 @@ + #define CONFIG_SYS_TEXT_BASE 0x08000000 + #endif + ++#ifdef CONFIG_USB + /* + * USB configuration. We enable MUSB support, both for host and for + * gadget. We set USB0 as peripheral and USB1 as host, based on the +@@ -285,6 +286,7 @@ + #define CONFIG_USB_ETH_RNDIS + #define CONFIG_USBNET_HOST_ADDR "de:ad:be:af:00:00" + #endif /* CONFIG_USB_MUSB_GADGET */ ++#endif /* CONFIG_USB */ + + /* + * Disable MMC DM for SPL build and can be re-enabled after adding +-- +2.7.4 + diff --git a/recipes-bsp/u-boot/u-boot-2017.05/0002-Set-custom-bootcommand-always-envboot-first.patch b/recipes-bsp/u-boot/u-boot-2017.05/0002-Set-custom-bootcommand-always-envboot-first.patch new file mode 100644 index 0000000..2cd96ca --- /dev/null +++ b/recipes-bsp/u-boot/u-boot-2017.05/0002-Set-custom-bootcommand-always-envboot-first.patch @@ -0,0 +1,33 @@ +From 72f06747352293575df89c1b4cb833d9e285499f Mon Sep 17 00:00:00 2001 +From: Scott Ellis +Date: Mon, 15 May 2017 04:56:43 -0400 +Subject: [PATCH 2/3] Set custom bootcommand always envboot first + +--- + include/configs/am335x_evm.h | 9 ++++----- + 1 file changed, 4 insertions(+), 5 deletions(-) + +diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h +index d8c18da..0312167 100644 +--- a/include/configs/am335x_evm.h ++++ b/include/configs/am335x_evm.h +@@ -84,12 +84,11 @@ + func(DHCP, dhcp, na) + + #define CONFIG_BOOTCOMMAND \ +- "if test ${boot_fit} -eq 1; then " \ +- "run update_to_fit;" \ +- "fi;" \ +- "run findfdt; " \ +- "run init_console; " \ + "run envboot; " \ ++ "setenv mmcdev 1; " \ ++ "run envboot; " \ ++ "setenv mmcdev 0; " \ ++ "run findfdt; " \ + "run distro_bootcmd" + + #include +-- +2.7.4 + diff --git a/recipes-bsp/u-boot/u-boot-2017.05/0003-Skip-check-for-boot-scr.patch b/recipes-bsp/u-boot/u-boot-2017.05/0003-Skip-check-for-boot-scr.patch new file mode 100644 index 0000000..4c200f5 --- /dev/null +++ b/recipes-bsp/u-boot/u-boot-2017.05/0003-Skip-check-for-boot-scr.patch @@ -0,0 +1,41 @@ +From b384dff87de6c0f56d376429ee66772117122246 Mon Sep 17 00:00:00 2001 +From: Scott Ellis +Date: Mon, 15 May 2017 05:03:51 -0400 +Subject: [PATCH 3/3] Skip check for boot.scr + +--- + include/environment/ti/mmc.h | 18 +++++++----------- + 1 file changed, 7 insertions(+), 11 deletions(-) + +diff --git a/include/environment/ti/mmc.h b/include/environment/ti/mmc.h +index b987f71..56075ce 100644 +--- a/include/environment/ti/mmc.h ++++ b/include/environment/ti/mmc.h +@@ -26,17 +26,13 @@ + "envboot=mmc dev ${mmcdev}; " \ + "if mmc rescan; then " \ + "echo SD/MMC found on device ${mmcdev};" \ +- "if run loadbootscript; then " \ +- "run bootscript;" \ +- "else " \ +- "if run loadbootenv; then " \ +- "echo Loaded env from ${bootenvfile};" \ +- "run importbootenv;" \ +- "fi;" \ +- "if test -n $uenvcmd; then " \ +- "echo Running uenvcmd ...;" \ +- "run uenvcmd;" \ +- "fi;" \ ++ "if run loadbootenv; then " \ ++ "echo Loaded env from ${bootenvfile};" \ ++ "run importbootenv;" \ ++ "fi;" \ ++ "if test -n $uenvcmd; then " \ ++ "echo Running uenvcmd ...;" \ ++ "run uenvcmd;" \ + "fi;" \ + "fi;\0" \ + "mmcloados=run args_mmc; " \ +-- +2.7.4 + diff --git a/recipes-bsp/u-boot/u-boot.inc b/recipes-bsp/u-boot/u-boot.inc new file mode 100644 index 0000000..2e1e9a5 --- /dev/null +++ b/recipes-bsp/u-boot/u-boot.inc @@ -0,0 +1,12 @@ +require ${COREBASE}/meta/recipes-bsp/u-boot/u-boot.inc + +FILESEXTRAPATHS_prepend := "${THISDIR}/u-boot:" + +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://README;beginline=1;endline=6;md5=157ab8408beab40cd8ce1dc69f702a6c" + +PACKAGE_ARCH = "${MACHINE_ARCH}" + +S = "${WORKDIR}/git" + +UBOOT_SUFFIX = "img" diff --git a/recipes-bsp/u-boot/u-boot_2017.05.bb b/recipes-bsp/u-boot/u-boot_2017.05.bb new file mode 100644 index 0000000..d9522fd --- /dev/null +++ b/recipes-bsp/u-boot/u-boot_2017.05.bb @@ -0,0 +1,21 @@ +require u-boot.inc + +FILESEXTRAPATHS_prepend := "${THISDIR}/u-boot-2017.05:" + +PV = "2017.05" +PR = "r1" + +COMPATIBLE_MACHINE = "beaglebone" + +UBOOT_LOCALVERSION = "-jumpnow" + +# v2017.05 +SRCREV = "64c4ffa9fa223f7ae8640f9c8f3044bfa0e3bfda" +SRC_URI = " \ + git://git.denx.de/u-boot.git;branch=master;protocol=git \ + file://0001-Remove-unused-boot-options.patch \ + file://0002-Set-custom-bootcommand-always-envboot-first.patch \ + file://0003-Skip-check-for-boot-scr.patch \ +" + +SPL_BINARY = "MLO"