ARM: add Raspberry Pi 3 64-bit config
On all Pis so far, the VC FW provides a short stub to set up the ARM CPU
before entering the kernel (a/k/a U-Boot for us). This feature is not
currently supported by the VC FW when booting in 64-bit mode. However,
this feature will likely appear in the near future, and this U-Boot port
assumes that such a feature is in place. Without that feature, or a
temporary workaround described below, U-Boot will not boot.
Once the VC FW does provide the ARM stub, u-boot.bin built for rpi_3 can
be used drectly as kernel7.img, in the same way as any other RPi port. The
following config.txt is required:
# Fix mini UART input frequency, and setup/enable up the UART.
# Without this option, U-Boot will not boot, even if you don't care
# about the serial console. This option will always be required for
# all RPi3 use-cases, unless the PL011 UART is used, which is not
# yet supported by rpi_3* builds of U-Boot.
enable_uart=1
# Boot in AArch64 (64-bit) mode.
# It is possible that a future VC FW will remove the need for this
# option, instead auto-setting 32-/64-bit mode based on the "kernel"
# filename present on the SD card.
arm_control=0x200
Prior to the VC FW providing the ARM boot stub, you can use the following
steps to build an equivalent stub into the U-Boot binary:
git clone https://github.com/swarren/rpi-3-aarch64-demo.git \
../rpi-3-aarch64-demo
(cd ../rpi-3-aarch64-demo && ./build.sh)
Build U-Boot for rpi_3 in the usual way
cat ../rpi-3-aarch64-demo/armstub64.bin u-boot.bin > u-boot.bin.stubbed
Use u-boot.bin.stubbed as kernel7.img on the Pi SD card.
In this case, the following additional entries are required in config.txt:
# Tell the FW to load the kernel image at address 0, the reset vector.
kernel_old=1
Signed-off-by: Stephen Warren <swarren@wwwdotorg.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
2016-04-02 03:14:15 +00:00
|
|
|
CONFIG_ARM=y
|
2019-08-14 13:29:25 +00:00
|
|
|
CONFIG_ARCH_CPU_INIT=y
|
ARM: add Raspberry Pi 3 64-bit config
On all Pis so far, the VC FW provides a short stub to set up the ARM CPU
before entering the kernel (a/k/a U-Boot for us). This feature is not
currently supported by the VC FW when booting in 64-bit mode. However,
this feature will likely appear in the near future, and this U-Boot port
assumes that such a feature is in place. Without that feature, or a
temporary workaround described below, U-Boot will not boot.
Once the VC FW does provide the ARM stub, u-boot.bin built for rpi_3 can
be used drectly as kernel7.img, in the same way as any other RPi port. The
following config.txt is required:
# Fix mini UART input frequency, and setup/enable up the UART.
# Without this option, U-Boot will not boot, even if you don't care
# about the serial console. This option will always be required for
# all RPi3 use-cases, unless the PL011 UART is used, which is not
# yet supported by rpi_3* builds of U-Boot.
enable_uart=1
# Boot in AArch64 (64-bit) mode.
# It is possible that a future VC FW will remove the need for this
# option, instead auto-setting 32-/64-bit mode based on the "kernel"
# filename present on the SD card.
arm_control=0x200
Prior to the VC FW providing the ARM boot stub, you can use the following
steps to build an equivalent stub into the U-Boot binary:
git clone https://github.com/swarren/rpi-3-aarch64-demo.git \
../rpi-3-aarch64-demo
(cd ../rpi-3-aarch64-demo && ./build.sh)
Build U-Boot for rpi_3 in the usual way
cat ../rpi-3-aarch64-demo/armstub64.bin u-boot.bin > u-boot.bin.stubbed
Use u-boot.bin.stubbed as kernel7.img on the Pi SD card.
In this case, the following additional entries are required in config.txt:
# Tell the FW to load the kernel image at address 0, the reset vector.
kernel_old=1
Signed-off-by: Stephen Warren <swarren@wwwdotorg.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
2016-04-02 03:14:15 +00:00
|
|
|
CONFIG_ARCH_BCM283X=y
|
2018-02-03 17:10:38 +00:00
|
|
|
CONFIG_SYS_TEXT_BASE=0x00080000
|
2021-11-01 12:19:22 +00:00
|
|
|
CONFIG_TARGET_RPI_3=y
|
2018-08-16 12:16:24 +00:00
|
|
|
CONFIG_NR_DRAM_BANKS=1
|
2020-08-10 19:31:07 +00:00
|
|
|
CONFIG_ENV_SIZE=0x4000
|
2020-07-28 12:46:52 +00:00
|
|
|
CONFIG_DEFAULT_DEVICE_TREE="bcm2837-rpi-3-b"
|
2022-08-23 19:24:14 +00:00
|
|
|
CONFIG_SYS_PROMPT="U-Boot> "
|
2021-08-23 14:25:31 +00:00
|
|
|
CONFIG_SYS_LOAD_ADDR=0x1000000
|
2022-04-08 17:36:51 +00:00
|
|
|
CONFIG_DISTRO_DEFAULTS=y
|
2022-05-25 16:16:03 +00:00
|
|
|
CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
|
|
|
|
CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x7fffe40
|
ARM: add Raspberry Pi 3 64-bit config
On all Pis so far, the VC FW provides a short stub to set up the ARM CPU
before entering the kernel (a/k/a U-Boot for us). This feature is not
currently supported by the VC FW when booting in 64-bit mode. However,
this feature will likely appear in the near future, and this U-Boot port
assumes that such a feature is in place. Without that feature, or a
temporary workaround described below, U-Boot will not boot.
Once the VC FW does provide the ARM stub, u-boot.bin built for rpi_3 can
be used drectly as kernel7.img, in the same way as any other RPi port. The
following config.txt is required:
# Fix mini UART input frequency, and setup/enable up the UART.
# Without this option, U-Boot will not boot, even if you don't care
# about the serial console. This option will always be required for
# all RPi3 use-cases, unless the PL011 UART is used, which is not
# yet supported by rpi_3* builds of U-Boot.
enable_uart=1
# Boot in AArch64 (64-bit) mode.
# It is possible that a future VC FW will remove the need for this
# option, instead auto-setting 32-/64-bit mode based on the "kernel"
# filename present on the SD card.
arm_control=0x200
Prior to the VC FW providing the ARM boot stub, you can use the following
steps to build an equivalent stub into the U-Boot binary:
git clone https://github.com/swarren/rpi-3-aarch64-demo.git \
../rpi-3-aarch64-demo
(cd ../rpi-3-aarch64-demo && ./build.sh)
Build U-Boot for rpi_3 in the usual way
cat ../rpi-3-aarch64-demo/armstub64.bin u-boot.bin > u-boot.bin.stubbed
Use u-boot.bin.stubbed as kernel7.img on the Pi SD card.
In this case, the following additional entries are required in config.txt:
# Tell the FW to load the kernel image at address 0, the reset vector.
kernel_old=1
Signed-off-by: Stephen Warren <swarren@wwwdotorg.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
2016-04-02 03:14:15 +00:00
|
|
|
CONFIG_OF_BOARD_SETUP=y
|
2019-07-21 02:51:14 +00:00
|
|
|
CONFIG_USE_PREBOOT=y
|
2016-10-08 18:41:44 +00:00
|
|
|
# CONFIG_DISPLAY_CPUINFO is not set
|
2016-10-12 01:33:46 +00:00
|
|
|
# CONFIG_DISPLAY_BOARDINFO is not set
|
2020-10-09 16:22:06 +00:00
|
|
|
CONFIG_MISC_INIT_R=y
|
2021-11-15 15:32:17 +00:00
|
|
|
CONFIG_FDT_SIMPLEFB=y
|
2022-05-11 21:38:09 +00:00
|
|
|
CONFIG_SYS_PBSIZE=1049
|
ARM: add Raspberry Pi 3 64-bit config
On all Pis so far, the VC FW provides a short stub to set up the ARM CPU
before entering the kernel (a/k/a U-Boot for us). This feature is not
currently supported by the VC FW when booting in 64-bit mode. However,
this feature will likely appear in the near future, and this U-Boot port
assumes that such a feature is in place. Without that feature, or a
temporary workaround described below, U-Boot will not boot.
Once the VC FW does provide the ARM stub, u-boot.bin built for rpi_3 can
be used drectly as kernel7.img, in the same way as any other RPi port. The
following config.txt is required:
# Fix mini UART input frequency, and setup/enable up the UART.
# Without this option, U-Boot will not boot, even if you don't care
# about the serial console. This option will always be required for
# all RPi3 use-cases, unless the PL011 UART is used, which is not
# yet supported by rpi_3* builds of U-Boot.
enable_uart=1
# Boot in AArch64 (64-bit) mode.
# It is possible that a future VC FW will remove the need for this
# option, instead auto-setting 32-/64-bit mode based on the "kernel"
# filename present on the SD card.
arm_control=0x200
Prior to the VC FW providing the ARM boot stub, you can use the following
steps to build an equivalent stub into the U-Boot binary:
git clone https://github.com/swarren/rpi-3-aarch64-demo.git \
../rpi-3-aarch64-demo
(cd ../rpi-3-aarch64-demo && ./build.sh)
Build U-Boot for rpi_3 in the usual way
cat ../rpi-3-aarch64-demo/armstub64.bin u-boot.bin > u-boot.bin.stubbed
Use u-boot.bin.stubbed as kernel7.img on the Pi SD card.
In this case, the following additional entries are required in config.txt:
# Tell the FW to load the kernel image at address 0, the reset vector.
kernel_old=1
Signed-off-by: Stephen Warren <swarren@wwwdotorg.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
2016-04-02 03:14:15 +00:00
|
|
|
CONFIG_CMD_GPIO=y
|
2017-08-14 23:58:53 +00:00
|
|
|
CONFIG_CMD_MMC=y
|
|
|
|
CONFIG_CMD_USB=y
|
2018-10-23 13:35:52 +00:00
|
|
|
CONFIG_CMD_FS_UUID=y
|
2017-09-08 14:14:49 +00:00
|
|
|
CONFIG_OF_EMBED=y
|
2017-08-28 11:16:32 +00:00
|
|
|
CONFIG_ENV_FAT_DEVICE_AND_PART="0:1"
|
2019-11-13 03:46:36 +00:00
|
|
|
CONFIG_SYS_RELOC_GD_ENV_ADDR=y
|
2018-04-01 16:37:53 +00:00
|
|
|
CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y
|
2021-05-12 08:03:04 +00:00
|
|
|
CONFIG_TFTP_TSIZE=y
|
2022-03-22 01:33:30 +00:00
|
|
|
CONFIG_BCM2835_GPIO=y
|
2016-12-07 13:10:28 +00:00
|
|
|
CONFIG_MMC_SDHCI=y
|
2016-12-07 13:10:29 +00:00
|
|
|
CONFIG_MMC_SDHCI_BCM2835=y
|
2018-04-08 00:27:54 +00:00
|
|
|
CONFIG_PHYLIB=y
|
2018-02-11 01:27:45 +00:00
|
|
|
CONFIG_PINCTRL=y
|
|
|
|
# CONFIG_PINCTRL_GENERIC is not set
|
2016-09-08 20:11:59 +00:00
|
|
|
# CONFIG_REQUIRE_SERIAL_CONSOLE is not set
|
2021-04-12 13:38:52 +00:00
|
|
|
CONFIG_SYSINFO=y
|
|
|
|
CONFIG_SYSINFO_SMBIOS=y
|
2016-09-08 20:31:26 +00:00
|
|
|
CONFIG_USB=y
|
2017-07-03 16:30:06 +00:00
|
|
|
CONFIG_USB_DWC2=y
|
2016-10-18 02:13:01 +00:00
|
|
|
CONFIG_USB_KEYBOARD=y
|
2017-08-28 08:50:45 +00:00
|
|
|
CONFIG_USB_HOST_ETHER=y
|
2018-04-08 00:27:54 +00:00
|
|
|
CONFIG_USB_ETHER_LAN78XX=y
|
2017-08-28 08:50:46 +00:00
|
|
|
CONFIG_USB_ETHER_SMSC95XX=y
|
2017-04-05 22:23:44 +00:00
|
|
|
CONFIG_DM_VIDEO=y
|
2020-02-04 21:43:06 +00:00
|
|
|
# CONFIG_VIDEO_BPP8 is not set
|
|
|
|
# CONFIG_VIDEO_BPP16 is not set
|
2017-04-27 04:27:57 +00:00
|
|
|
CONFIG_SYS_WHITE_ON_BLACK=y
|
2022-01-23 14:04:14 +00:00
|
|
|
CONFIG_VIDEO_BCM2835=y
|
2016-11-29 14:14:57 +00:00
|
|
|
CONFIG_CONSOLE_SCROLL_LINES=10
|
ARM: add Raspberry Pi 3 64-bit config
On all Pis so far, the VC FW provides a short stub to set up the ARM CPU
before entering the kernel (a/k/a U-Boot for us). This feature is not
currently supported by the VC FW when booting in 64-bit mode. However,
this feature will likely appear in the near future, and this U-Boot port
assumes that such a feature is in place. Without that feature, or a
temporary workaround described below, U-Boot will not boot.
Once the VC FW does provide the ARM stub, u-boot.bin built for rpi_3 can
be used drectly as kernel7.img, in the same way as any other RPi port. The
following config.txt is required:
# Fix mini UART input frequency, and setup/enable up the UART.
# Without this option, U-Boot will not boot, even if you don't care
# about the serial console. This option will always be required for
# all RPi3 use-cases, unless the PL011 UART is used, which is not
# yet supported by rpi_3* builds of U-Boot.
enable_uart=1
# Boot in AArch64 (64-bit) mode.
# It is possible that a future VC FW will remove the need for this
# option, instead auto-setting 32-/64-bit mode based on the "kernel"
# filename present on the SD card.
arm_control=0x200
Prior to the VC FW providing the ARM boot stub, you can use the following
steps to build an equivalent stub into the U-Boot binary:
git clone https://github.com/swarren/rpi-3-aarch64-demo.git \
../rpi-3-aarch64-demo
(cd ../rpi-3-aarch64-demo && ./build.sh)
Build U-Boot for rpi_3 in the usual way
cat ../rpi-3-aarch64-demo/armstub64.bin u-boot.bin > u-boot.bin.stubbed
Use u-boot.bin.stubbed as kernel7.img on the Pi SD card.
In this case, the following additional entries are required in config.txt:
# Tell the FW to load the kernel image at address 0, the reset vector.
kernel_old=1
Signed-off-by: Stephen Warren <swarren@wwwdotorg.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
2016-04-02 03:14:15 +00:00
|
|
|
CONFIG_PHYS_TO_BUS=y
|
2017-06-26 13:25:03 +00:00
|
|
|
CONFIG_OF_LIBFDT_OVERLAY=y
|