Message ID | 20191106144104.28177-1-matthias.bgg@kernel.org |
---|---|
State | Accepted |
Commit | 5694090670e262b038377bf196188d8089dc90c4 |
Delegated to: | Matthias Brugger |
Headers | show |
Series | [U-Boot] ARM: defconfig: add unified config for RPi3 and RPi4 | expand |
On 11/6/19 3:41 PM, matthias.bgg@kernel.org wrote: > From: Matthias Brugger <mbrugger@suse.com> > > Provide a defconfig which allows us to boot Raspberrry Pi 4 > and Raspberry Pi 3 Model B/B+ > Instead of using the embedded DTB as done in RPi3 we use the > devicetree provided by the firmware. How different are the DTBs provided by different firmware releases? Could we run into problems because some elder or newer firmware releases are not supported by U-Boot? - This prospect is what makes your patch a bit scary to me. Which different firmware releases did you test against? Do you plan to keep the existing defconfigs and dtbs? Best regards Heinrich
On 06/11/2019 19:06, Heinrich Schuchardt wrote: > On 11/6/19 3:41 PM, matthias.bgg@kernel.org wrote: >> From: Matthias Brugger <mbrugger@suse.com> >> >> Provide a defconfig which allows us to boot Raspberrry Pi 4 >> and Raspberry Pi 3 Model B/B+ >> Instead of using the embedded DTB as done in RPi3 we use the >> devicetree provided by the firmware. > > How different are the DTBs provided by different firmware releases? > > Could we run into problems because some elder or newer firmware releases > are not supported by U-Boot? - This prospect is what makes your patch a > bit scary to me. That could happen, but I suppose especially for older releases. Newer releases tend to change in the direction of upstream. > > Which different firmware releases did you test against? > > Do you plan to keep the existing defconfigs and dtbs? > I didn't do any extensive testing to be honest. We are using the DTB from the firmware on RPi4 already, and I expect that newer firmwares won't break U-Boot. My idea is to keep the existing defconfigs. Apart from being a good fallback option if really something breaks, there might be some distros use U-Boot with this config files and I don't want to break the setup for them. Regards, Matthias
diff --git a/arch/arm/mach-bcm283x/Kconfig b/arch/arm/mach-bcm283x/Kconfig index e8e0ff0eb4..00419bf254 100644 --- a/arch/arm/mach-bcm283x/Kconfig +++ b/arch/arm/mach-bcm283x/Kconfig @@ -188,6 +188,13 @@ config TARGET_RPI_4 This option creates a build targeting the ARMv8/AArch64 ISA. select BCM2711_64B +config TARGET_RPI_ARM64 + bool "Raspberry Pi one binary 64-bit build" + help + Support for all armv8 based Raspberry Pi variants, such as + the RPi 4 model B, in AArch64 (64-bit) mode. + select ARM64 + endchoice config SYS_BOARD diff --git a/configs/rpi_arm64_defconfig b/configs/rpi_arm64_defconfig new file mode 100644 index 0000000000..f4e113f58c --- /dev/null +++ b/configs/rpi_arm64_defconfig @@ -0,0 +1,45 @@ +CONFIG_ARM=y +CONFIG_ARM64=y +CONFIG_TARGET_RPI_ARM64=y +CONFIG_ARCH_BCM283X=y +CONFIG_SYS_TEXT_BASE=0x00080000 +CONFIG_SYS_MALLOC_F_LEN=0x2000 +CONFIG_DISTRO_DEFAULTS=y +CONFIG_NR_DRAM_BANKS=2 +CONFIG_OF_BOARD_SETUP=y +CONFIG_USE_PREBOOT=y +CONFIG_PREBOOT="usb start" +CONFIG_MISC_INIT_R=y +# CONFIG_DISPLAY_CPUINFO is not set +# CONFIG_DISPLAY_BOARDINFO is not set +CONFIG_SYS_PROMPT="U-Boot> " +# CONFIG_CMD_FLASH is not set +CONFIG_CMD_GPIO=y +CONFIG_CMD_MMC=y +CONFIG_CMD_USB=y +CONFIG_CMD_FS_UUID=y +CONFIG_OF_BOARD=y +CONFIG_ENV_FAT_INTERFACE="mmc" +CONFIG_ENV_FAT_DEVICE_AND_PART="0:1" +CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y +CONFIG_DM_KEYBOARD=y +CONFIG_DM_MMC=y +CONFIG_MMC_SDHCI=y +CONFIG_MMC_SDHCI_BCM2835=y +CONFIG_PHYLIB=y +CONFIG_DM_ETH=y +CONFIG_PINCTRL=y +# CONFIG_PINCTRL_GENERIC is not set +# CONFIG_REQUIRE_SERIAL_CONSOLE is not set +CONFIG_USB=y +CONFIG_DM_USB=y +CONFIG_USB_DWC2=y +CONFIG_USB_KEYBOARD=y +CONFIG_USB_HOST_ETHER=y +CONFIG_USB_ETHER_LAN78XX=y +CONFIG_USB_ETHER_SMSC95XX=y +CONFIG_DM_VIDEO=y +CONFIG_SYS_WHITE_ON_BLACK=y +CONFIG_CONSOLE_SCROLL_LINES=10 +CONFIG_PHYS_TO_BUS=y +CONFIG_OF_LIBFDT_OVERLAY=y