129 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			129 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| config BCM2835
 | |
| 	bool "Broadcom BCM2835 SoC support"
 | |
| 	depends on ARCH_BCM283X
 | |
| 	select CPU_ARM1176
 | |
| 
 | |
| config BCM2836
 | |
| 	bool "Broadcom BCM2836 SoC support"
 | |
| 	depends on ARCH_BCM283X
 | |
| 	select ARMV7_LPAE
 | |
| 	select CPU_V7
 | |
| 
 | |
| config BCM2837
 | |
| 	bool "Broadcom BCM2837 SoC support"
 | |
| 	depends on ARCH_BCM283X
 | |
| 
 | |
| config BCM2837_32B
 | |
| 	bool "Broadcom BCM2837 SoC 32-bit support"
 | |
| 	depends on ARCH_BCM283X
 | |
| 	select BCM2837
 | |
| 	select ARMV7_LPAE
 | |
| 	select CPU_V7
 | |
| 
 | |
| config BCM2837_64B
 | |
| 	bool "Broadcom BCM2837 SoC 64-bit support"
 | |
| 	depends on ARCH_BCM283X
 | |
| 	select BCM2837
 | |
| 	select ARM64
 | |
| 
 | |
| menu "Broadcom BCM283X family"
 | |
| 	depends on ARCH_BCM283X
 | |
| 
 | |
| choice
 | |
| 	prompt "Broadcom BCM283X board select"
 | |
| 	optional
 | |
| 
 | |
| config TARGET_RPI
 | |
| 	bool "Raspberry Pi (all BCM2835 variants)"
 | |
| 	help
 | |
| 	  Support for all ARM1176-/BCM2835-based Raspberry Pi variants, such as
 | |
| 	  the A, A+, B, B+, Compute Module, and Zero. This option cannot
 | |
| 	  support BCM2836/BCM2837-based Raspberry Pis such as the RPi 2 and
 | |
| 	  RPi 3 due to different peripheral address maps.
 | |
| 
 | |
| 	  This option creates a build targetting the ARM1176 ISA.
 | |
| 	select BCM2835
 | |
| 
 | |
| config TARGET_RPI_2
 | |
| 	bool "Raspberry Pi 2"
 | |
| 	help
 | |
| 	  Support for all BCM2836-based Raspberry Pi variants, such as
 | |
| 	  the RPi 2 model B.
 | |
| 
 | |
| 	  This option also supports BCM2837-based variants such as the RPi 3
 | |
| 	  Model B, when run in 32-bit mode, provided you have configured the
 | |
| 	  VideoCore firmware to select the PL011 UART for the console by:
 | |
| 	  a) config.txt should contain dtoverlay=pi3-miniuart-bt.
 | |
| 	  b) You should run the following to tell the VC FW to process DT when
 | |
| 	  booting, and copy u-boot.bin.img (rather than u-boot.bin) to the SD
 | |
| 	  card as the kernel image:
 | |
| 
 | |
| 	       path/to/kernel/scripts/mkknlimg --dtok u-boot.bin u-boot.bin.img
 | |
| 
 | |
| 	  This works as of firmware.git commit 046effa13ebc "firmware:
 | |
| 	  arm_loader: emmc clock depends on core clock See:
 | |
| 	  https://github.com/raspberrypi/firmware/issues/572".
 | |
| 
 | |
| 	  This option creates a build targetting the ARMv7/AArch32 ISA.
 | |
| 	select BCM2836
 | |
| 
 | |
| config TARGET_RPI_3_32B
 | |
| 	bool "Raspberry Pi 3 32-bit build"
 | |
| 	help
 | |
| 	  Support for all BCM2837-based Raspberry Pi variants, such as
 | |
| 	  the RPi 3 model B, in AArch32 (32-bit) mode.
 | |
| 
 | |
| 	  This option assumes the VideoCore firmware is configured to use the
 | |
| 	  mini UART (rather than PL011) for the serial console. This is the
 | |
| 	  default on the RPi 3. To enable the UART console, the following non-
 | |
| 	  default option must be present in config.txt: enable_uart=1. This is
 | |
| 	  required for U-Boot to operate correctly, even if you only care
 | |
| 	  about the HDMI/usbkbd console.
 | |
| 
 | |
| 	  This option creates a build targetting the ARMv7/AArch32 ISA.
 | |
| 	select BCM2837_32B
 | |
| 
 | |
| config TARGET_RPI_3
 | |
| 	bool "Raspberry Pi 3 64-bit build"
 | |
| 	help
 | |
| 	  Support for all BCM2837-based Raspberry Pi variants, such as
 | |
| 	  the RPi 3 model B, in AArch64 (64-bit) mode.
 | |
| 
 | |
| 	  This option assumes the VideoCore firmware is configured to use the
 | |
| 	  mini UART (rather than PL011) for the serial console. This is the
 | |
| 	  default on the RPi 3. To enable the UART console, the following non-
 | |
| 	  default option must be present in config.txt: enable_uart=1. This is
 | |
| 	  required for U-Boot to operate correctly, even if you only care
 | |
| 	  about the HDMI/usbkbd console.
 | |
| 
 | |
| 	  At the time of writing, the VC FW requires a non-default option in
 | |
| 	  config.txt to request the ARM CPU boot in 64-bit mode:
 | |
| 	  arm_control=0x200
 | |
| 
 | |
| 	  The VC FW typically provides ARM "stub" code to set up the CPU and
 | |
| 	  quiesce secondary SMP CPUs. This is not currently true in 64-bit
 | |
| 	  mode. In order to boot U-Boot before the VC FW is enhanced, please
 | |
| 	  see the commit description for the commit which added RPi3 support
 | |
| 	  for a workaround. Since the instructions are temporary, they are not
 | |
| 	  duplicated here. The VC FW enhancement is tracked in
 | |
| 	  https://github.com/raspberrypi/firmware/issues/579.
 | |
| 
 | |
| 	  This option creates a build targetting the ARMv8/AArch64 ISA.
 | |
| 	select BCM2837_64B
 | |
| 
 | |
| endchoice
 | |
| 
 | |
| config SYS_BOARD
 | |
| 	default "rpi"
 | |
| 
 | |
| config SYS_VENDOR
 | |
| 	default "raspberrypi"
 | |
| 
 | |
| config SYS_SOC
 | |
| 	default "bcm283x"
 | |
| 
 | |
| config SYS_CONFIG_NAME
 | |
| 	default "rpi"
 | |
| 
 | |
| endmenu
 |