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-01 21:14:15 -06:00
|
|
|
CONFIG_ARM=y
|
2019-08-14 08:29:25 -05: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-01 21:14:15 -06:00
|
|
|
CONFIG_ARCH_BCM283X=y
|
2022-10-20 18:22:39 -06:00
|
|
|
CONFIG_TEXT_BASE=0x00080000
|
2021-11-01 12:19:22 +00:00
|
|
|
CONFIG_TARGET_RPI_3=y
|
2018-08-16 08:16:24 -04:00
|
|
|
CONFIG_NR_DRAM_BANKS=1
|
2023-02-17 09:58:06 -05:00
|
|
|
CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
|
|
|
|
CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x7fffe40
|
2020-08-10 15:31:07 -04:00
|
|
|
CONFIG_ENV_SIZE=0x4000
|
2020-07-28 08:46:52 -04:00
|
|
|
CONFIG_DEFAULT_DEVICE_TREE="bcm2837-rpi-3-b"
|
2023-05-01 11:50:26 -04:00
|
|
|
CONFIG_OF_LIBFDT_OVERLAY=y
|
2021-08-23 10:25:31 -04:00
|
|
|
CONFIG_SYS_LOAD_ADDR=0x1000000
|
2023-07-27 15:54:28 -06:00
|
|
|
CONFIG_BOOTSTD_DEFAULTS=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-01 21:14:15 -06:00
|
|
|
CONFIG_OF_BOARD_SETUP=y
|
2023-10-02 13:58:20 -04:00
|
|
|
CONFIG_FDT_SIMPLEFB=y
|
2019-07-20 20:51:14 -06:00
|
|
|
CONFIG_USE_PREBOOT=y
|
2016-10-08 14:41:44 -04:00
|
|
|
# CONFIG_DISPLAY_CPUINFO is not set
|
2016-10-11 21:33:46 -04:00
|
|
|
# CONFIG_DISPLAY_BOARDINFO is not set
|
2020-10-09 12:22:06 -04:00
|
|
|
CONFIG_MISC_INIT_R=y
|
2023-10-02 10:35:27 -04:00
|
|
|
CONFIG_SYS_PROMPT="U-Boot> "
|
2022-05-11 17:38:09 -04: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-01 21:14:15 -06:00
|
|
|
CONFIG_CMD_GPIO=y
|
2017-08-14 19:58:53 -04:00
|
|
|
CONFIG_CMD_MMC=y
|
|
|
|
CONFIG_CMD_USB=y
|
2018-10-23 10:35:52 -03:00
|
|
|
CONFIG_CMD_FS_UUID=y
|
2017-09-08 10:14:49 -04:00
|
|
|
CONFIG_OF_EMBED=y
|
2017-08-28 07:16:32 -04:00
|
|
|
CONFIG_ENV_FAT_DEVICE_AND_PART="0:1"
|
2019-11-12 22:46:36 -05: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 11:03:04 +03:00
|
|
|
CONFIG_TFTP_TSIZE=y
|
2022-03-21 21:33:30 -04:00
|
|
|
CONFIG_BCM2835_GPIO=y
|
2016-12-07 22:10:28 +09:00
|
|
|
CONFIG_MMC_SDHCI=y
|
2016-12-07 22:10:29 +09:00
|
|
|
CONFIG_MMC_SDHCI_BCM2835=y
|
2018-04-07 20:27:54 -04:00
|
|
|
CONFIG_PHYLIB=y
|
2018-02-10 20:27:45 -05:00
|
|
|
CONFIG_PINCTRL=y
|
|
|
|
# CONFIG_PINCTRL_GENERIC is not set
|
2016-09-08 16:11:59 -04:00
|
|
|
# CONFIG_REQUIRE_SERIAL_CONSOLE is not set
|
2021-04-12 15:38:52 +02:00
|
|
|
CONFIG_SYSINFO=y
|
|
|
|
CONFIG_SYSINFO_SMBIOS=y
|
2016-09-08 16:31:26 -04:00
|
|
|
CONFIG_USB=y
|
2017-07-03 18:30:06 +02:00
|
|
|
CONFIG_USB_DWC2=y
|
2016-10-17 20:13:01 -06:00
|
|
|
CONFIG_USB_KEYBOARD=y
|
2017-08-28 20:50:45 +12:00
|
|
|
CONFIG_USB_HOST_ETHER=y
|
2018-04-07 20:27:54 -04:00
|
|
|
CONFIG_USB_ETHER_LAN78XX=y
|
2017-08-28 20:50:46 +12:00
|
|
|
CONFIG_USB_ETHER_SMSC95XX=y
|
2022-10-18 07:46:31 -06:00
|
|
|
CONFIG_VIDEO=y
|
2020-02-04 22:43:06 +01:00
|
|
|
# CONFIG_VIDEO_BPP8 is not set
|
|
|
|
# CONFIG_VIDEO_BPP16 is not set
|
2017-04-26 22:27:57 -06:00
|
|
|
CONFIG_SYS_WHITE_ON_BLACK=y
|
2022-01-23 07:04:14 -07:00
|
|
|
CONFIG_VIDEO_BCM2835=y
|
2016-11-29 09:14:57 -05: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-01 21:14:15 -06:00
|
|
|
CONFIG_PHYS_TO_BUS=y
|