13abfd887SMasahiro Yamadaif ARCH_SUNXI 23abfd887SMasahiro Yamada 3b529993eSPhilipp Tomsichconfig SPL_LDSCRIPT 4b529993eSPhilipp Tomsich default "arch/arm/cpu/armv7/sunxi/u-boot-spl.lds" if !ARM64 5b529993eSPhilipp Tomsich 63abfd887SMasahiro Yamadaconfig IDENT_STRING 73abfd887SMasahiro Yamada default " Allwinner Technology" 83abfd887SMasahiro Yamada 9dd928bfbSJagan Tekiconfig DRAM_SUN4I 10dd928bfbSJagan Teki bool 11dd928bfbSJagan Teki help 12dd928bfbSJagan Teki Select this dram controller driver for Sun4/5/7i platforms, 13dd928bfbSJagan Teki like A10/A13/A20. 14dd928bfbSJagan Teki 15fdfa934eSJagan Tekiconfig DRAM_SUN6I 16fdfa934eSJagan Teki bool 17fdfa934eSJagan Teki help 18fdfa934eSJagan Teki Select this dram controller driver for Sun6i platforms, 19fdfa934eSJagan Teki like A31/A31s. 20fdfa934eSJagan Teki 21af30393cSJagan Tekiconfig DRAM_SUN8I_A23 22af30393cSJagan Teki bool 23af30393cSJagan Teki help 24af30393cSJagan Teki Select this dram controller driver for Sun8i platforms, 25af30393cSJagan Teki for A23 SOC. 26af30393cSJagan Teki 27c335e990SJagan Tekiconfig DRAM_SUN8I_A33 28c335e990SJagan Teki bool 29c335e990SJagan Teki help 30c335e990SJagan Teki Select this dram controller driver for Sun8i platforms, 31c335e990SJagan Teki for A33 SOC. 32c335e990SJagan Teki 330354f4beSJagan Tekiconfig DRAM_SUN8I_A83T 340354f4beSJagan Teki bool 350354f4beSJagan Teki help 360354f4beSJagan Teki Select this dram controller driver for Sun8i platforms, 370354f4beSJagan Teki for A83T SOC. 380354f4beSJagan Teki 397d0b165dSJagan Tekiconfig DRAM_SUN9I 407d0b165dSJagan Teki bool 417d0b165dSJagan Teki help 427d0b165dSJagan Teki Select this dram controller driver for Sun9i platforms, 437d0b165dSJagan Teki like A80. 447d0b165dSJagan Teki 45da261654SIcenowy Zhengconfig DRAM_SUN50I_H6 46da261654SIcenowy Zheng bool 47da261654SIcenowy Zheng help 48da261654SIcenowy Zheng Select this dram controller driver for some sun50i platforms, 49da261654SIcenowy Zheng like H6. 50da261654SIcenowy Zheng 5171d9edf4SJagan Tekiconfig SUN6I_P2WI 5271d9edf4SJagan Teki bool "Allwinner sun6i internal P2WI controller" 5371d9edf4SJagan Teki help 5471d9edf4SJagan Teki If you say yes to this option, support will be included for the 5571d9edf4SJagan Teki P2WI (Push/Pull 2 Wire Interface) controller embedded in some sunxi 5671d9edf4SJagan Teki SOCs. 5771d9edf4SJagan Teki The P2WI looks like an SMBus controller (which supports only byte 5871d9edf4SJagan Teki accesses), except that it only supports one slave device. 5971d9edf4SJagan Teki This interface is used to connect to specific PMIC devices (like the 6071d9edf4SJagan Teki AXP221). 6171d9edf4SJagan Teki 622aa697a4SJagan Tekiconfig SUN6I_PRCM 632aa697a4SJagan Teki bool 642aa697a4SJagan Teki help 652aa697a4SJagan Teki Support for the PRCM (Power/Reset/Clock Management) unit available 662aa697a4SJagan Teki in A31 SoC. 672aa697a4SJagan Teki 68735fb252SJagan Tekiconfig AXP_PMIC_BUS 69735fb252SJagan Teki bool "Sunxi AXP PMIC bus access helpers" 70735fb252SJagan Teki help 71735fb252SJagan Teki Select this PMIC bus access helpers for Sunxi platform PRCM or other 72735fb252SJagan Teki AXP family PMIC devices. 73735fb252SJagan Teki 746f6f8839SJagan Tekiconfig SUN8I_RSB 756f6f8839SJagan Teki bool "Allwinner sunXi Reduced Serial Bus Driver" 766f6f8839SJagan Teki help 776f6f8839SJagan Teki Say y here to enable support for Allwinner's Reduced Serial Bus 786f6f8839SJagan Teki (RSB) support. This controller is responsible for communicating 796f6f8839SJagan Teki with various RSB based devices, such as AXP223, AXP8XX PMICs, 806f6f8839SJagan Teki and AC100/AC200 ICs. 816f6f8839SJagan Teki 82cadc7c20SIcenowy Zhengconfig SUNXI_SRAM_ADDRESS 83cadc7c20SIcenowy Zheng hex 84cadc7c20SIcenowy Zheng default 0x10000 if MACH_SUN9I || MACH_SUN50I || MACH_SUN50I_H5 856f796a9bSIcenowy Zheng default 0x20000 if MACH_SUN50I_H6 86cadc7c20SIcenowy Zheng default 0x0 873abfd887SMasahiro Yamada ---help--- 883abfd887SMasahiro Yamada Older Allwinner SoCs have their mask boot ROM mapped just below 4GB, 893abfd887SMasahiro Yamada with the first SRAM region being located at address 0. 903abfd887SMasahiro Yamada Some newer SoCs map the boot ROM at address 0 instead and move the 91cadc7c20SIcenowy Zheng SRAM to a different address. 923abfd887SMasahiro Yamada 93be0d2179SAndre Przywaraconfig SUNXI_A64_TIMER_ERRATUM 94be0d2179SAndre Przywara bool 95be0d2179SAndre Przywara 963abfd887SMasahiro Yamada# Note only one of these may be selected at a time! But hidden choices are 973abfd887SMasahiro Yamada# not supported by Kconfig 983abfd887SMasahiro Yamadaconfig SUNXI_GEN_SUN4I 993abfd887SMasahiro Yamada bool 1003abfd887SMasahiro Yamada ---help--- 1013abfd887SMasahiro Yamada Select this for sunxi SoCs which have resets and clocks set up 1023abfd887SMasahiro Yamada as the original A10 (mach-sun4i). 1033abfd887SMasahiro Yamada 1043abfd887SMasahiro Yamadaconfig SUNXI_GEN_SUN6I 1053abfd887SMasahiro Yamada bool 1063abfd887SMasahiro Yamada ---help--- 1073abfd887SMasahiro Yamada Select this for sunxi SoCs which have sun6i like periphery, like 1083abfd887SMasahiro Yamada separate ahb reset control registers, custom pmic bus, new style 1093abfd887SMasahiro Yamada watchdog, etc. 1103abfd887SMasahiro Yamada 1119934aba4SIcenowy Zhengconfig SUNXI_DRAM_DW 1129934aba4SIcenowy Zheng bool 1139934aba4SIcenowy Zheng ---help--- 1149934aba4SIcenowy Zheng Select this for sunxi SoCs which uses a DRAM controller like the 1159934aba4SIcenowy Zheng DesignWare controller used in H3, mainly SoCs after H3, which do 1169934aba4SIcenowy Zheng not have official open-source DRAM initialization code, but can 1179934aba4SIcenowy Zheng use modified H3 DRAM initialization code. 1183abfd887SMasahiro Yamada 11987098d70SIcenowy Zhengif SUNXI_DRAM_DW 12087098d70SIcenowy Zhengconfig SUNXI_DRAM_DW_16BIT 12187098d70SIcenowy Zheng bool 12287098d70SIcenowy Zheng ---help--- 12387098d70SIcenowy Zheng Select this for sunxi SoCs with DesignWare DRAM controller and 12487098d70SIcenowy Zheng have only 16-bit memory buswidth. 12587098d70SIcenowy Zheng 12687098d70SIcenowy Zhengconfig SUNXI_DRAM_DW_32BIT 12787098d70SIcenowy Zheng bool 12887098d70SIcenowy Zheng ---help--- 12987098d70SIcenowy Zheng Select this for sunxi SoCs with DesignWare DRAM controller with 13087098d70SIcenowy Zheng 32-bit memory buswidth. 13187098d70SIcenowy Zhengendif 13287098d70SIcenowy Zheng 1333abfd887SMasahiro Yamadaconfig MACH_SUNXI_H3_H5 1343abfd887SMasahiro Yamada bool 1353abfd887SMasahiro Yamada select DM_I2C 136dd322817SJagan Teki select PHY_SUN4I_USB 1373abfd887SMasahiro Yamada select SUNXI_DE2 1389934aba4SIcenowy Zheng select SUNXI_DRAM_DW 13987098d70SIcenowy Zheng select SUNXI_DRAM_DW_32BIT 1403abfd887SMasahiro Yamada select SUNXI_GEN_SUN6I 1413abfd887SMasahiro Yamada select SUPPORT_SPL 1423abfd887SMasahiro Yamada 143f8aa3f8dSIcenowy Zheng# TODO: try out A80's 8GiB DRAM space 144f8aa3f8dSIcenowy Zhengconfig SUNXI_DRAM_MAX_SIZE 145f8aa3f8dSIcenowy Zheng hex 146f8aa3f8dSIcenowy Zheng default 0xC0000000 if MACH_SUN50I || MACH_SUN50I_H5 || MACH_SUN50I_H6 147f8aa3f8dSIcenowy Zheng default 0x80000000 148f8aa3f8dSIcenowy Zheng 1493abfd887SMasahiro Yamadachoice 1503abfd887SMasahiro Yamada prompt "Sunxi SoC Variant" 1513abfd887SMasahiro Yamada optional 1523abfd887SMasahiro Yamada 1533abfd887SMasahiro Yamadaconfig MACH_SUN4I 1543abfd887SMasahiro Yamada bool "sun4i (Allwinner A10)" 155acf15001SLokesh Vutla select CPU_V7A 1563abfd887SMasahiro Yamada select ARM_CORTEX_CPU_IS_UP 157df63fcc0SAdam Sampson select DM_MMC if MMC 158df63fcc0SAdam Sampson select DM_SCSI if SCSI 159dd322817SJagan Teki select PHY_SUN4I_USB 160dd928bfbSJagan Teki select DRAM_SUN4I 1613abfd887SMasahiro Yamada select SUNXI_GEN_SUN4I 1623abfd887SMasahiro Yamada select SUPPORT_SPL 1633abfd887SMasahiro Yamada 1643abfd887SMasahiro Yamadaconfig MACH_SUN5I 1653abfd887SMasahiro Yamada bool "sun5i (Allwinner A13)" 166acf15001SLokesh Vutla select CPU_V7A 1673abfd887SMasahiro Yamada select ARM_CORTEX_CPU_IS_UP 168dd928bfbSJagan Teki select DRAM_SUN4I 169dd322817SJagan Teki select PHY_SUN4I_USB 1703abfd887SMasahiro Yamada select SUNXI_GEN_SUN4I 1713abfd887SMasahiro Yamada select SUPPORT_SPL 1726f6b7cfaSTom Rini imply CONS_INDEX_2 if !DM_SERIAL 1733abfd887SMasahiro Yamada 1743abfd887SMasahiro Yamadaconfig MACH_SUN6I 1753abfd887SMasahiro Yamada bool "sun6i (Allwinner A31)" 176acf15001SLokesh Vutla select CPU_V7A 1773abfd887SMasahiro Yamada select CPU_V7_HAS_NONSEC 1783abfd887SMasahiro Yamada select CPU_V7_HAS_VIRT 1793abfd887SMasahiro Yamada select ARCH_SUPPORT_PSCI 180fdfa934eSJagan Teki select DRAM_SUN6I 181dd322817SJagan Teki select PHY_SUN4I_USB 18271d9edf4SJagan Teki select SUN6I_P2WI 1832aa697a4SJagan Teki select SUN6I_PRCM 1843abfd887SMasahiro Yamada select SUNXI_GEN_SUN6I 1853abfd887SMasahiro Yamada select SUPPORT_SPL 1863abfd887SMasahiro Yamada select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT 1873abfd887SMasahiro Yamada 1883abfd887SMasahiro Yamadaconfig MACH_SUN7I 1893abfd887SMasahiro Yamada bool "sun7i (Allwinner A20)" 190acf15001SLokesh Vutla select CPU_V7A 1913abfd887SMasahiro Yamada select CPU_V7_HAS_NONSEC 1923abfd887SMasahiro Yamada select CPU_V7_HAS_VIRT 1933abfd887SMasahiro Yamada select ARCH_SUPPORT_PSCI 194dd928bfbSJagan Teki select DRAM_SUN4I 195dd322817SJagan Teki select PHY_SUN4I_USB 1963abfd887SMasahiro Yamada select SUNXI_GEN_SUN4I 1973abfd887SMasahiro Yamada select SUPPORT_SPL 1983abfd887SMasahiro Yamada select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT 1993abfd887SMasahiro Yamada 2003abfd887SMasahiro Yamadaconfig MACH_SUN8I_A23 2013abfd887SMasahiro Yamada bool "sun8i (Allwinner A23)" 202acf15001SLokesh Vutla select CPU_V7A 2033abfd887SMasahiro Yamada select CPU_V7_HAS_NONSEC 2043abfd887SMasahiro Yamada select CPU_V7_HAS_VIRT 2053abfd887SMasahiro Yamada select ARCH_SUPPORT_PSCI 206af30393cSJagan Teki select DRAM_SUN8I_A23 207dd322817SJagan Teki select PHY_SUN4I_USB 2083abfd887SMasahiro Yamada select SUNXI_GEN_SUN6I 2093abfd887SMasahiro Yamada select SUPPORT_SPL 2103abfd887SMasahiro Yamada select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT 2116f6b7cfaSTom Rini imply CONS_INDEX_5 if !DM_SERIAL 2123abfd887SMasahiro Yamada 2133abfd887SMasahiro Yamadaconfig MACH_SUN8I_A33 2143abfd887SMasahiro Yamada bool "sun8i (Allwinner A33)" 215acf15001SLokesh Vutla select CPU_V7A 2163abfd887SMasahiro Yamada select CPU_V7_HAS_NONSEC 2173abfd887SMasahiro Yamada select CPU_V7_HAS_VIRT 2183abfd887SMasahiro Yamada select ARCH_SUPPORT_PSCI 219c335e990SJagan Teki select DRAM_SUN8I_A33 220dd322817SJagan Teki select PHY_SUN4I_USB 2213abfd887SMasahiro Yamada select SUNXI_GEN_SUN6I 2223abfd887SMasahiro Yamada select SUPPORT_SPL 2233abfd887SMasahiro Yamada select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT 2246f6b7cfaSTom Rini imply CONS_INDEX_5 if !DM_SERIAL 2253abfd887SMasahiro Yamada 2263abfd887SMasahiro Yamadaconfig MACH_SUN8I_A83T 2273abfd887SMasahiro Yamada bool "sun8i (Allwinner A83T)" 228acf15001SLokesh Vutla select CPU_V7A 2290354f4beSJagan Teki select DRAM_SUN8I_A83T 230dd322817SJagan Teki select PHY_SUN4I_USB 2313abfd887SMasahiro Yamada select SUNXI_GEN_SUN6I 232343ff161SMaxime Ripard select MMC_SUNXI_HAS_NEW_MODE 2332a8882ecSVasily Khoruzhick select MMC_SUNXI_HAS_MODE_SWITCH 2343abfd887SMasahiro Yamada select SUPPORT_SPL 2353abfd887SMasahiro Yamada 2363abfd887SMasahiro Yamadaconfig MACH_SUN8I_H3 2373abfd887SMasahiro Yamada bool "sun8i (Allwinner H3)" 238acf15001SLokesh Vutla select CPU_V7A 2393abfd887SMasahiro Yamada select CPU_V7_HAS_NONSEC 2403abfd887SMasahiro Yamada select CPU_V7_HAS_VIRT 2413abfd887SMasahiro Yamada select ARCH_SUPPORT_PSCI 2423abfd887SMasahiro Yamada select MACH_SUNXI_H3_H5 2433abfd887SMasahiro Yamada select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT 2443abfd887SMasahiro Yamada 2453abfd887SMasahiro Yamadaconfig MACH_SUN8I_R40 2463abfd887SMasahiro Yamada bool "sun8i (Allwinner R40)" 247acf15001SLokesh Vutla select CPU_V7A 2483abfd887SMasahiro Yamada select CPU_V7_HAS_NONSEC 2493abfd887SMasahiro Yamada select CPU_V7_HAS_VIRT 2503abfd887SMasahiro Yamada select ARCH_SUPPORT_PSCI 2513abfd887SMasahiro Yamada select SUNXI_GEN_SUN6I 2523abfd887SMasahiro Yamada select SUPPORT_SPL 2539934aba4SIcenowy Zheng select SUNXI_DRAM_DW 25487098d70SIcenowy Zheng select SUNXI_DRAM_DW_32BIT 2553abfd887SMasahiro Yamada 2563abfd887SMasahiro Yamadaconfig MACH_SUN8I_V3S 2573abfd887SMasahiro Yamada bool "sun8i (Allwinner V3s)" 258acf15001SLokesh Vutla select CPU_V7A 2593abfd887SMasahiro Yamada select CPU_V7_HAS_NONSEC 2603abfd887SMasahiro Yamada select CPU_V7_HAS_VIRT 2613abfd887SMasahiro Yamada select ARCH_SUPPORT_PSCI 2623abfd887SMasahiro Yamada select SUNXI_GEN_SUN6I 2637d06e59fSIcenowy Zheng select SUNXI_DRAM_DW 2647d06e59fSIcenowy Zheng select SUNXI_DRAM_DW_16BIT 2657d06e59fSIcenowy Zheng select SUPPORT_SPL 2663abfd887SMasahiro Yamada select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT 2673abfd887SMasahiro Yamada 2683abfd887SMasahiro Yamadaconfig MACH_SUN9I 2693abfd887SMasahiro Yamada bool "sun9i (Allwinner A80)" 270acf15001SLokesh Vutla select CPU_V7A 2717d0b165dSJagan Teki select DRAM_SUN9I 27263928fa6SJagan Teki select SUN6I_PRCM 2733abfd887SMasahiro Yamada select SUNXI_GEN_SUN6I 2746f6f8839SJagan Teki select SUN8I_RSB 2753abfd887SMasahiro Yamada select SUPPORT_SPL 2763abfd887SMasahiro Yamada 2773abfd887SMasahiro Yamadaconfig MACH_SUN50I 2783abfd887SMasahiro Yamada bool "sun50i (Allwinner A64)" 2793abfd887SMasahiro Yamada select ARM64 2803abfd887SMasahiro Yamada select DM_I2C 281dd322817SJagan Teki select PHY_SUN4I_USB 28231a4ac4dSVasily Khoruzhick select SUN6I_PRCM 2833abfd887SMasahiro Yamada select SUNXI_DE2 2843abfd887SMasahiro Yamada select SUNXI_GEN_SUN6I 285*0e21a2ffSVasily Khoruzhick select MMC_SUNXI_HAS_NEW_MODE 2863abfd887SMasahiro Yamada select SUPPORT_SPL 2879934aba4SIcenowy Zheng select SUNXI_DRAM_DW 28887098d70SIcenowy Zheng select SUNXI_DRAM_DW_32BIT 289d29adf8eSAndre Przywara select FIT 290d29adf8eSAndre Przywara select SPL_LOAD_FIT 291be0d2179SAndre Przywara select SUNXI_A64_TIMER_ERRATUM 2923abfd887SMasahiro Yamada 2933abfd887SMasahiro Yamadaconfig MACH_SUN50I_H5 2943abfd887SMasahiro Yamada bool "sun50i (Allwinner H5)" 2953abfd887SMasahiro Yamada select ARM64 2963abfd887SMasahiro Yamada select MACH_SUNXI_H3_H5 297d29adf8eSAndre Przywara select FIT 298d29adf8eSAndre Przywara select SPL_LOAD_FIT 2993abfd887SMasahiro Yamada 3006f796a9bSIcenowy Zhengconfig MACH_SUN50I_H6 3016f796a9bSIcenowy Zheng bool "sun50i (Allwinner H6)" 3026f796a9bSIcenowy Zheng select ARM64 3036f796a9bSIcenowy Zheng select SUPPORT_SPL 3046f796a9bSIcenowy Zheng select FIT 3056f796a9bSIcenowy Zheng select SPL_LOAD_FIT 3066f796a9bSIcenowy Zheng select DRAM_SUN50I_H6 3076f796a9bSIcenowy Zheng 3083abfd887SMasahiro Yamadaendchoice 3093abfd887SMasahiro Yamada 3103abfd887SMasahiro Yamada# The sun8i SoCs share a lot, this helps to avoid a lot of "if A23 || A33" 3113abfd887SMasahiro Yamadaconfig MACH_SUN8I 3123abfd887SMasahiro Yamada bool 3136f6f8839SJagan Teki select SUN8I_RSB 31463928fa6SJagan Teki select SUN6I_PRCM 3153abfd887SMasahiro Yamada default y if MACH_SUN8I_A23 3163abfd887SMasahiro Yamada default y if MACH_SUN8I_A33 3173abfd887SMasahiro Yamada default y if MACH_SUN8I_A83T 3183abfd887SMasahiro Yamada default y if MACH_SUNXI_H3_H5 3193abfd887SMasahiro Yamada default y if MACH_SUN8I_R40 3203abfd887SMasahiro Yamada default y if MACH_SUN8I_V3S 3213abfd887SMasahiro Yamada 3223abfd887SMasahiro Yamadaconfig RESERVE_ALLWINNER_BOOT0_HEADER 3233abfd887SMasahiro Yamada bool "reserve space for Allwinner boot0 header" 3243abfd887SMasahiro Yamada select ENABLE_ARM_SOC_BOOT0_HOOK 3253abfd887SMasahiro Yamada ---help--- 3263abfd887SMasahiro Yamada Prepend a 1536 byte (empty) header to the U-Boot image file, to be 3273abfd887SMasahiro Yamada filled with magic values post build. The Allwinner provided boot0 3283abfd887SMasahiro Yamada blob relies on this information to load and execute U-Boot. 3293abfd887SMasahiro Yamada Only needed on 64-bit Allwinner boards so far when using boot0. 3303abfd887SMasahiro Yamada 3313abfd887SMasahiro Yamadaconfig ARM_BOOT_HOOK_RMR 3323abfd887SMasahiro Yamada bool 3333abfd887SMasahiro Yamada depends on ARM64 3343abfd887SMasahiro Yamada default y 3353abfd887SMasahiro Yamada select ENABLE_ARM_SOC_BOOT0_HOOK 3363abfd887SMasahiro Yamada ---help--- 3373abfd887SMasahiro Yamada Insert some ARM32 code at the very beginning of the U-Boot binary 3383abfd887SMasahiro Yamada which uses an RMR register write to bring the core into AArch64 mode. 3393abfd887SMasahiro Yamada The very first instruction acts as a switch, since it's carefully 3403abfd887SMasahiro Yamada chosen to be a NOP in one mode and a branch in the other, so the 3413abfd887SMasahiro Yamada code would only be executed if not already in AArch64. 3423abfd887SMasahiro Yamada This allows both the SPL and the U-Boot proper to be entered in 3433abfd887SMasahiro Yamada either mode and switch to AArch64 if needed. 3443abfd887SMasahiro Yamada 345f6457ce5SIcenowy Zhengif SUNXI_DRAM_DW 346f6457ce5SIcenowy Zhengconfig SUNXI_DRAM_DDR3 347f6457ce5SIcenowy Zheng bool 348f6457ce5SIcenowy Zheng 34967337e68SIcenowy Zhengconfig SUNXI_DRAM_DDR2 35067337e68SIcenowy Zheng bool 35167337e68SIcenowy Zheng 35272cc9870SIcenowy Zhengconfig SUNXI_DRAM_LPDDR3 35372cc9870SIcenowy Zheng bool 35472cc9870SIcenowy Zheng 355f6457ce5SIcenowy Zhengchoice 356f6457ce5SIcenowy Zheng prompt "DRAM Type and Timing" 3573ec0698bSIcenowy Zheng default SUNXI_DRAM_DDR3_1333 if !MACH_SUN8I_V3S 3583ec0698bSIcenowy Zheng default SUNXI_DRAM_DDR2_V3S if MACH_SUN8I_V3S 359f6457ce5SIcenowy Zheng 360f6457ce5SIcenowy Zhengconfig SUNXI_DRAM_DDR3_1333 361f6457ce5SIcenowy Zheng bool "DDR3 1333" 362f6457ce5SIcenowy Zheng select SUNXI_DRAM_DDR3 3633ec0698bSIcenowy Zheng depends on !MACH_SUN8I_V3S 364f6457ce5SIcenowy Zheng ---help--- 365f6457ce5SIcenowy Zheng This option is the original only supported memory type, which suits 366f6457ce5SIcenowy Zheng many H3/H5/A64 boards available now. 367f6457ce5SIcenowy Zheng 368ec4670a1SIcenowy Zhengconfig SUNXI_DRAM_LPDDR3_STOCK 369ec4670a1SIcenowy Zheng bool "LPDDR3 with Allwinner stock configuration" 370ec4670a1SIcenowy Zheng select SUNXI_DRAM_LPDDR3 371ec4670a1SIcenowy Zheng ---help--- 372ec4670a1SIcenowy Zheng This option is the LPDDR3 timing used by the stock boot0 by 373ec4670a1SIcenowy Zheng Allwinner. 374ec4670a1SIcenowy Zheng 37567337e68SIcenowy Zhengconfig SUNXI_DRAM_DDR2_V3S 37667337e68SIcenowy Zheng bool "DDR2 found in V3s chip" 37767337e68SIcenowy Zheng select SUNXI_DRAM_DDR2 3783ec0698bSIcenowy Zheng depends on MACH_SUN8I_V3S 37967337e68SIcenowy Zheng ---help--- 38067337e68SIcenowy Zheng This option is only for the DDR2 memory chip which is co-packaged in 38167337e68SIcenowy Zheng Allwinner V3s SoC. 38267337e68SIcenowy Zheng 383f6457ce5SIcenowy Zhengendchoice 384f6457ce5SIcenowy Zhengendif 385f6457ce5SIcenowy Zheng 3863abfd887SMasahiro Yamadaconfig DRAM_TYPE 3873abfd887SMasahiro Yamada int "sunxi dram type" 3883abfd887SMasahiro Yamada depends on MACH_SUN8I_A83T 3893abfd887SMasahiro Yamada default 3 3903abfd887SMasahiro Yamada ---help--- 3913abfd887SMasahiro Yamada Set the dram type, 3: DDR3, 7: LPDDR3 3923abfd887SMasahiro Yamada 3933abfd887SMasahiro Yamadaconfig DRAM_CLK 3943abfd887SMasahiro Yamada int "sunxi dram clock speed" 3953abfd887SMasahiro Yamada default 792 if MACH_SUN9I 3963abfd887SMasahiro Yamada default 648 if MACH_SUN8I_R40 3973abfd887SMasahiro Yamada default 312 if MACH_SUN6I || MACH_SUN8I 3987d06e59fSIcenowy Zheng default 360 if MACH_SUN4I || MACH_SUN5I || MACH_SUN7I || \ 3997d06e59fSIcenowy Zheng MACH_SUN8I_V3S 4003abfd887SMasahiro Yamada default 672 if MACH_SUN50I 4016f796a9bSIcenowy Zheng default 744 if MACH_SUN50I_H6 4023abfd887SMasahiro Yamada ---help--- 4033abfd887SMasahiro Yamada Set the dram clock speed, valid range 240 - 480 (prior to sun9i), 4043abfd887SMasahiro Yamada must be a multiple of 24. For the sun9i (A80), the tested values 4053abfd887SMasahiro Yamada (for DDR3-1600) are 312 to 792. 4063abfd887SMasahiro Yamada 4073abfd887SMasahiro Yamadaif MACH_SUN5I || MACH_SUN7I 4083abfd887SMasahiro Yamadaconfig DRAM_MBUS_CLK 4093abfd887SMasahiro Yamada int "sunxi mbus clock speed" 4103abfd887SMasahiro Yamada default 300 4113abfd887SMasahiro Yamada ---help--- 4123abfd887SMasahiro Yamada Set the mbus clock speed. The maximum on sun5i hardware is 300MHz. 4133abfd887SMasahiro Yamada 4143abfd887SMasahiro Yamadaendif 4153abfd887SMasahiro Yamada 4163abfd887SMasahiro Yamadaconfig DRAM_ZQ 4173abfd887SMasahiro Yamada int "sunxi dram zq value" 4183abfd887SMasahiro Yamada default 123 if MACH_SUN4I || MACH_SUN5I || MACH_SUN6I || MACH_SUN8I 4193abfd887SMasahiro Yamada default 127 if MACH_SUN7I 4207d06e59fSIcenowy Zheng default 14779 if MACH_SUN8I_V3S 4216f796a9bSIcenowy Zheng default 3881979 if MACH_SUN8I_R40 || MACH_SUN50I_H6 4223abfd887SMasahiro Yamada default 4145117 if MACH_SUN9I 4233abfd887SMasahiro Yamada default 3881915 if MACH_SUN50I 4243abfd887SMasahiro Yamada ---help--- 4253abfd887SMasahiro Yamada Set the dram zq value. 4263abfd887SMasahiro Yamada 4273abfd887SMasahiro Yamadaconfig DRAM_ODT_EN 4283abfd887SMasahiro Yamada bool "sunxi dram odt enable" 4293abfd887SMasahiro Yamada default y if MACH_SUN8I_A23 4303abfd887SMasahiro Yamada default y if MACH_SUN8I_R40 4313abfd887SMasahiro Yamada default y if MACH_SUN50I 4326f796a9bSIcenowy Zheng default y if MACH_SUN50I_H6 4333abfd887SMasahiro Yamada ---help--- 4343abfd887SMasahiro Yamada Select this to enable dram odt (on die termination). 4353abfd887SMasahiro Yamada 4363abfd887SMasahiro Yamadaif MACH_SUN4I || MACH_SUN5I || MACH_SUN7I 4373abfd887SMasahiro Yamadaconfig DRAM_EMR1 4383abfd887SMasahiro Yamada int "sunxi dram emr1 value" 4393abfd887SMasahiro Yamada default 0 if MACH_SUN4I 4403abfd887SMasahiro Yamada default 4 if MACH_SUN5I || MACH_SUN7I 4413abfd887SMasahiro Yamada ---help--- 4423abfd887SMasahiro Yamada Set the dram controller emr1 value. 4433abfd887SMasahiro Yamada 4443abfd887SMasahiro Yamadaconfig DRAM_TPR3 4453abfd887SMasahiro Yamada hex "sunxi dram tpr3 value" 4463abfd887SMasahiro Yamada default 0 4473abfd887SMasahiro Yamada ---help--- 4483abfd887SMasahiro Yamada Set the dram controller tpr3 parameter. This parameter configures 4493abfd887SMasahiro Yamada the delay on the command lane and also phase shifts, which are 4503abfd887SMasahiro Yamada applied for sampling incoming read data. The default value 0 4513abfd887SMasahiro Yamada means that no phase/delay adjustments are necessary. Properly 4523abfd887SMasahiro Yamada configuring this parameter increases reliability at high DRAM 4533abfd887SMasahiro Yamada clock speeds. 4543abfd887SMasahiro Yamada 4553abfd887SMasahiro Yamadaconfig DRAM_DQS_GATING_DELAY 4563abfd887SMasahiro Yamada hex "sunxi dram dqs_gating_delay value" 4573abfd887SMasahiro Yamada default 0 4583abfd887SMasahiro Yamada ---help--- 4593abfd887SMasahiro Yamada Set the dram controller dqs_gating_delay parmeter. Each byte 4603abfd887SMasahiro Yamada encodes the DQS gating delay for each byte lane. The delay 4613abfd887SMasahiro Yamada granularity is 1/4 cycle. For example, the value 0x05060606 4623abfd887SMasahiro Yamada means that the delay is 5 quarter-cycles for one lane (1.25 4633abfd887SMasahiro Yamada cycles) and 6 quarter-cycles (1.5 cycles) for 3 other lanes. 4643abfd887SMasahiro Yamada The default value 0 means autodetection. The results of hardware 4653abfd887SMasahiro Yamada autodetection are not very reliable and depend on the chip 4663abfd887SMasahiro Yamada temperature (sometimes producing different results on cold start 4673abfd887SMasahiro Yamada and warm reboot). But the accuracy of hardware autodetection 4683abfd887SMasahiro Yamada is usually good enough, unless running at really high DRAM 4693abfd887SMasahiro Yamada clocks speeds (up to 600MHz). If unsure, keep as 0. 4703abfd887SMasahiro Yamada 4713abfd887SMasahiro Yamadachoice 4723abfd887SMasahiro Yamada prompt "sunxi dram timings" 4733abfd887SMasahiro Yamada default DRAM_TIMINGS_VENDOR_MAGIC 4743abfd887SMasahiro Yamada ---help--- 4753abfd887SMasahiro Yamada Select the timings of the DDR3 chips. 4763abfd887SMasahiro Yamada 4773abfd887SMasahiro Yamadaconfig DRAM_TIMINGS_VENDOR_MAGIC 4783abfd887SMasahiro Yamada bool "Magic vendor timings from Android" 4793abfd887SMasahiro Yamada ---help--- 4803abfd887SMasahiro Yamada The same DRAM timings as in the Allwinner boot0 bootloader. 4813abfd887SMasahiro Yamada 4823abfd887SMasahiro Yamadaconfig DRAM_TIMINGS_DDR3_1066F_1333H 4833abfd887SMasahiro Yamada bool "JEDEC DDR3-1333H with down binning to DDR3-1066F" 4843abfd887SMasahiro Yamada ---help--- 4853abfd887SMasahiro Yamada Use the timings of the standard JEDEC DDR3-1066F speed bin for 4863abfd887SMasahiro Yamada DRAM_CLK <= 533MHz and the timings of the DDR3-1333H speed bin 4873abfd887SMasahiro Yamada for DRAM_CLK > 533MHz. This covers the majority of DDR3 chips 4883abfd887SMasahiro Yamada used in Allwinner A10/A13/A20 devices. In the case of DDR3-1333 4893abfd887SMasahiro Yamada or DDR3-1600 chips, be sure to check the DRAM datasheet to confirm 4903abfd887SMasahiro Yamada that down binning to DDR3-1066F is supported (because DDR3-1066F 4913abfd887SMasahiro Yamada uses a bit faster timings than DDR3-1333H). 4923abfd887SMasahiro Yamada 4933abfd887SMasahiro Yamadaconfig DRAM_TIMINGS_DDR3_800E_1066G_1333J 4943abfd887SMasahiro Yamada bool "JEDEC DDR3-800E / DDR3-1066G / DDR3-1333J" 4953abfd887SMasahiro Yamada ---help--- 4963abfd887SMasahiro Yamada Use the timings of the slowest possible JEDEC speed bin for the 4973abfd887SMasahiro Yamada selected DRAM_CLK. Depending on the DRAM_CLK value, it may be 4983abfd887SMasahiro Yamada DDR3-800E, DDR3-1066G or DDR3-1333J. 4993abfd887SMasahiro Yamada 5003abfd887SMasahiro Yamadaendchoice 5013abfd887SMasahiro Yamada 5023abfd887SMasahiro Yamadaendif 5033abfd887SMasahiro Yamada 5043abfd887SMasahiro Yamadaif MACH_SUN8I_A23 5053abfd887SMasahiro Yamadaconfig DRAM_ODT_CORRECTION 5063abfd887SMasahiro Yamada int "sunxi dram odt correction value" 5073abfd887SMasahiro Yamada default 0 5083abfd887SMasahiro Yamada ---help--- 5093abfd887SMasahiro Yamada Set the dram odt correction value (range -255 - 255). In allwinner 5103abfd887SMasahiro Yamada fex files, this option is found in bits 8-15 of the u32 odt_en variable 5113abfd887SMasahiro Yamada in the [dram] section. When bit 31 of the odt_en variable is set 5123abfd887SMasahiro Yamada then the correction is negative. Usually the value for this is 0. 5133abfd887SMasahiro Yamadaendif 5143abfd887SMasahiro Yamada 5153abfd887SMasahiro Yamadaconfig SYS_CLK_FREQ 5163abfd887SMasahiro Yamada default 1008000000 if MACH_SUN4I 5173abfd887SMasahiro Yamada default 1008000000 if MACH_SUN5I 5183abfd887SMasahiro Yamada default 1008000000 if MACH_SUN6I 5193abfd887SMasahiro Yamada default 912000000 if MACH_SUN7I 5203cfecee4SIcenowy Zheng default 816000000 if MACH_SUN50I || MACH_SUN50I_H5 5213abfd887SMasahiro Yamada default 1008000000 if MACH_SUN8I 5223abfd887SMasahiro Yamada default 1008000000 if MACH_SUN9I 5236f796a9bSIcenowy Zheng default 888000000 if MACH_SUN50I_H6 5243abfd887SMasahiro Yamada 5253abfd887SMasahiro Yamadaconfig SYS_CONFIG_NAME 5263abfd887SMasahiro Yamada default "sun4i" if MACH_SUN4I 5273abfd887SMasahiro Yamada default "sun5i" if MACH_SUN5I 5283abfd887SMasahiro Yamada default "sun6i" if MACH_SUN6I 5293abfd887SMasahiro Yamada default "sun7i" if MACH_SUN7I 5303abfd887SMasahiro Yamada default "sun8i" if MACH_SUN8I 5313abfd887SMasahiro Yamada default "sun9i" if MACH_SUN9I 5323abfd887SMasahiro Yamada default "sun50i" if MACH_SUN50I 5336f796a9bSIcenowy Zheng default "sun50i" if MACH_SUN50I_H6 5343abfd887SMasahiro Yamada 5353abfd887SMasahiro Yamadaconfig SYS_BOARD 5363abfd887SMasahiro Yamada default "sunxi" 5373abfd887SMasahiro Yamada 5383abfd887SMasahiro Yamadaconfig SYS_SOC 5393abfd887SMasahiro Yamada default "sunxi" 5403abfd887SMasahiro Yamada 5413abfd887SMasahiro Yamadaconfig UART0_PORT_F 5423abfd887SMasahiro Yamada bool "UART0 on MicroSD breakout board" 5433abfd887SMasahiro Yamada default n 5443abfd887SMasahiro Yamada ---help--- 5453abfd887SMasahiro Yamada Repurpose the SD card slot for getting access to the UART0 serial 5463abfd887SMasahiro Yamada console. Primarily useful only for low level u-boot debugging on 5473abfd887SMasahiro Yamada tablets, where normal UART0 is difficult to access and requires 5483abfd887SMasahiro Yamada device disassembly and/or soldering. As the SD card can't be used 5493abfd887SMasahiro Yamada at the same time, the system can be only booted in the FEL mode. 5503abfd887SMasahiro Yamada Only enable this if you really know what you are doing. 5513abfd887SMasahiro Yamada 5523abfd887SMasahiro Yamadaconfig OLD_SUNXI_KERNEL_COMPAT 5533abfd887SMasahiro Yamada bool "Enable workarounds for booting old kernels" 5543abfd887SMasahiro Yamada default n 5553abfd887SMasahiro Yamada ---help--- 5563abfd887SMasahiro Yamada Set this to enable various workarounds for old kernels, this results in 5573abfd887SMasahiro Yamada sub-optimal settings for newer kernels, only enable if needed. 5583abfd887SMasahiro Yamada 5593abfd887SMasahiro Yamadaconfig MACPWR 5603abfd887SMasahiro Yamada string "MAC power pin" 5613abfd887SMasahiro Yamada default "" 5623abfd887SMasahiro Yamada help 5633abfd887SMasahiro Yamada Set the pin used to power the MAC. This takes a string in the format 5643abfd887SMasahiro Yamada understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H. 5653abfd887SMasahiro Yamada 5663abfd887SMasahiro Yamadaconfig MMC0_CD_PIN 5673abfd887SMasahiro Yamada string "Card detect pin for mmc0" 5683abfd887SMasahiro Yamada default "PF6" if MACH_SUN8I_A83T || MACH_SUNXI_H3_H5 || MACH_SUN50I 5693abfd887SMasahiro Yamada default "" 5703abfd887SMasahiro Yamada ---help--- 5713abfd887SMasahiro Yamada Set the card detect pin for mmc0, leave empty to not use cd. This 5723abfd887SMasahiro Yamada takes a string in the format understood by sunxi_name_to_gpio, e.g. 5733abfd887SMasahiro Yamada PH1 for pin 1 of port H. 5743abfd887SMasahiro Yamada 5753abfd887SMasahiro Yamadaconfig MMC1_CD_PIN 5763abfd887SMasahiro Yamada string "Card detect pin for mmc1" 5773abfd887SMasahiro Yamada default "" 5783abfd887SMasahiro Yamada ---help--- 5793abfd887SMasahiro Yamada See MMC0_CD_PIN help text. 5803abfd887SMasahiro Yamada 5813abfd887SMasahiro Yamadaconfig MMC2_CD_PIN 5823abfd887SMasahiro Yamada string "Card detect pin for mmc2" 5833abfd887SMasahiro Yamada default "" 5843abfd887SMasahiro Yamada ---help--- 5853abfd887SMasahiro Yamada See MMC0_CD_PIN help text. 5863abfd887SMasahiro Yamada 5873abfd887SMasahiro Yamadaconfig MMC3_CD_PIN 5883abfd887SMasahiro Yamada string "Card detect pin for mmc3" 5893abfd887SMasahiro Yamada default "" 5903abfd887SMasahiro Yamada ---help--- 5913abfd887SMasahiro Yamada See MMC0_CD_PIN help text. 5923abfd887SMasahiro Yamada 5933abfd887SMasahiro Yamadaconfig MMC1_PINS 5943abfd887SMasahiro Yamada string "Pins for mmc1" 5953abfd887SMasahiro Yamada default "" 5963abfd887SMasahiro Yamada ---help--- 5973abfd887SMasahiro Yamada Set the pins used for mmc1, when applicable. This takes a string in the 5983abfd887SMasahiro Yamada format understood by sunxi_name_to_gpio_bank, e.g. PH for port H. 5993abfd887SMasahiro Yamada 6003abfd887SMasahiro Yamadaconfig MMC2_PINS 6013abfd887SMasahiro Yamada string "Pins for mmc2" 6023abfd887SMasahiro Yamada default "" 6033abfd887SMasahiro Yamada ---help--- 6043abfd887SMasahiro Yamada See MMC1_PINS help text. 6053abfd887SMasahiro Yamada 6063abfd887SMasahiro Yamadaconfig MMC3_PINS 6073abfd887SMasahiro Yamada string "Pins for mmc3" 6083abfd887SMasahiro Yamada default "" 6093abfd887SMasahiro Yamada ---help--- 6103abfd887SMasahiro Yamada See MMC1_PINS help text. 6113abfd887SMasahiro Yamada 6123abfd887SMasahiro Yamadaconfig MMC_SUNXI_SLOT_EXTRA 6133abfd887SMasahiro Yamada int "mmc extra slot number" 6143abfd887SMasahiro Yamada default -1 6153abfd887SMasahiro Yamada ---help--- 6163abfd887SMasahiro Yamada sunxi builds always enable mmc0, some boards also have a second sdcard 6173abfd887SMasahiro Yamada slot or emmc on mmc1 - mmc3. Setting this to 1, 2 or 3 will enable 6183abfd887SMasahiro Yamada support for this. 6193abfd887SMasahiro Yamada 6203abfd887SMasahiro Yamadaconfig INITIAL_USB_SCAN_DELAY 6213abfd887SMasahiro Yamada int "delay initial usb scan by x ms to allow builtin devices to init" 6223abfd887SMasahiro Yamada default 0 6233abfd887SMasahiro Yamada ---help--- 6243abfd887SMasahiro Yamada Some boards have on board usb devices which need longer than the 6253abfd887SMasahiro Yamada USB spec's 1 second to connect from board powerup. Set this config 6263abfd887SMasahiro Yamada option to a non 0 value to add an extra delay before the first usb 6273abfd887SMasahiro Yamada bus scan. 6283abfd887SMasahiro Yamada 6293abfd887SMasahiro Yamadaconfig USB0_VBUS_PIN 6303abfd887SMasahiro Yamada string "Vbus enable pin for usb0 (otg)" 6313abfd887SMasahiro Yamada default "" 6323abfd887SMasahiro Yamada ---help--- 6333abfd887SMasahiro Yamada Set the Vbus enable pin for usb0 (otg). This takes a string in the 6343abfd887SMasahiro Yamada format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H. 6353abfd887SMasahiro Yamada 6363abfd887SMasahiro Yamadaconfig USB0_VBUS_DET 6373abfd887SMasahiro Yamada string "Vbus detect pin for usb0 (otg)" 6383abfd887SMasahiro Yamada default "" 6393abfd887SMasahiro Yamada ---help--- 6403abfd887SMasahiro Yamada Set the Vbus detect pin for usb0 (otg). This takes a string in the 6413abfd887SMasahiro Yamada format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H. 6423abfd887SMasahiro Yamada 6433abfd887SMasahiro Yamadaconfig USB0_ID_DET 6443abfd887SMasahiro Yamada string "ID detect pin for usb0 (otg)" 6453abfd887SMasahiro Yamada default "" 6463abfd887SMasahiro Yamada ---help--- 6473abfd887SMasahiro Yamada Set the ID detect pin for usb0 (otg). This takes a string in the 6483abfd887SMasahiro Yamada format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H. 6493abfd887SMasahiro Yamada 6503abfd887SMasahiro Yamadaconfig USB1_VBUS_PIN 6513abfd887SMasahiro Yamada string "Vbus enable pin for usb1 (ehci0)" 6523abfd887SMasahiro Yamada default "PH6" if MACH_SUN4I || MACH_SUN7I 6533abfd887SMasahiro Yamada default "PH27" if MACH_SUN6I 6543abfd887SMasahiro Yamada ---help--- 6553abfd887SMasahiro Yamada Set the Vbus enable pin for usb1 (ehci0, usb0 is the otg). This takes 6563abfd887SMasahiro Yamada a string in the format understood by sunxi_name_to_gpio, e.g. 6573abfd887SMasahiro Yamada PH1 for pin 1 of port H. 6583abfd887SMasahiro Yamada 6593abfd887SMasahiro Yamadaconfig USB2_VBUS_PIN 6603abfd887SMasahiro Yamada string "Vbus enable pin for usb2 (ehci1)" 6613abfd887SMasahiro Yamada default "PH3" if MACH_SUN4I || MACH_SUN7I 6623abfd887SMasahiro Yamada default "PH24" if MACH_SUN6I 6633abfd887SMasahiro Yamada ---help--- 6643abfd887SMasahiro Yamada See USB1_VBUS_PIN help text. 6653abfd887SMasahiro Yamada 6663abfd887SMasahiro Yamadaconfig USB3_VBUS_PIN 6673abfd887SMasahiro Yamada string "Vbus enable pin for usb3 (ehci2)" 6683abfd887SMasahiro Yamada default "" 6693abfd887SMasahiro Yamada ---help--- 6703abfd887SMasahiro Yamada See USB1_VBUS_PIN help text. 6713abfd887SMasahiro Yamada 6723abfd887SMasahiro Yamadaconfig I2C0_ENABLE 6733abfd887SMasahiro Yamada bool "Enable I2C/TWI controller 0" 6743abfd887SMasahiro Yamada default y if MACH_SUN4I || MACH_SUN5I || MACH_SUN7I || MACH_SUN8I_R40 6753abfd887SMasahiro Yamada default n if MACH_SUN6I || MACH_SUN8I 6763abfd887SMasahiro Yamada select CMD_I2C 6773abfd887SMasahiro Yamada ---help--- 6783abfd887SMasahiro Yamada This allows enabling I2C/TWI controller 0 by muxing its pins, enabling 6793abfd887SMasahiro Yamada its clock and setting up the bus. This is especially useful on devices 6803abfd887SMasahiro Yamada with slaves connected to the bus or with pins exposed through e.g. an 6813abfd887SMasahiro Yamada expansion port/header. 6823abfd887SMasahiro Yamada 6833abfd887SMasahiro Yamadaconfig I2C1_ENABLE 6843abfd887SMasahiro Yamada bool "Enable I2C/TWI controller 1" 6853abfd887SMasahiro Yamada default n 6863abfd887SMasahiro Yamada select CMD_I2C 6873abfd887SMasahiro Yamada ---help--- 6883abfd887SMasahiro Yamada See I2C0_ENABLE help text. 6893abfd887SMasahiro Yamada 6903abfd887SMasahiro Yamadaconfig I2C2_ENABLE 6913abfd887SMasahiro Yamada bool "Enable I2C/TWI controller 2" 6923abfd887SMasahiro Yamada default n 6933abfd887SMasahiro Yamada select CMD_I2C 6943abfd887SMasahiro Yamada ---help--- 6953abfd887SMasahiro Yamada See I2C0_ENABLE help text. 6963abfd887SMasahiro Yamada 6973abfd887SMasahiro Yamadaif MACH_SUN6I || MACH_SUN7I 6983abfd887SMasahiro Yamadaconfig I2C3_ENABLE 6993abfd887SMasahiro Yamada bool "Enable I2C/TWI controller 3" 7003abfd887SMasahiro Yamada default n 7013abfd887SMasahiro Yamada select CMD_I2C 7023abfd887SMasahiro Yamada ---help--- 7033abfd887SMasahiro Yamada See I2C0_ENABLE help text. 7043abfd887SMasahiro Yamadaendif 7053abfd887SMasahiro Yamada 7063abfd887SMasahiro Yamadaif SUNXI_GEN_SUN6I 7073abfd887SMasahiro Yamadaconfig R_I2C_ENABLE 7083abfd887SMasahiro Yamada bool "Enable the PRCM I2C/TWI controller" 7093abfd887SMasahiro Yamada # This is used for the pmic on H3 7103abfd887SMasahiro Yamada default y if SY8106A_POWER 7113abfd887SMasahiro Yamada select CMD_I2C 7123abfd887SMasahiro Yamada ---help--- 7133abfd887SMasahiro Yamada Set this to y to enable the I2C controller which is part of the PRCM. 7143abfd887SMasahiro Yamadaendif 7153abfd887SMasahiro Yamada 7163abfd887SMasahiro Yamadaif MACH_SUN7I 7173abfd887SMasahiro Yamadaconfig I2C4_ENABLE 7183abfd887SMasahiro Yamada bool "Enable I2C/TWI controller 4" 7193abfd887SMasahiro Yamada default n 7203abfd887SMasahiro Yamada select CMD_I2C 7213abfd887SMasahiro Yamada ---help--- 7223abfd887SMasahiro Yamada See I2C0_ENABLE help text. 7233abfd887SMasahiro Yamadaendif 7243abfd887SMasahiro Yamada 7253abfd887SMasahiro Yamadaconfig AXP_GPIO 7263abfd887SMasahiro Yamada bool "Enable support for gpio-s on axp PMICs" 7273abfd887SMasahiro Yamada default n 7283abfd887SMasahiro Yamada ---help--- 7293abfd887SMasahiro Yamada Say Y here to enable support for the gpio pins of the axp PMIC ICs. 7303abfd887SMasahiro Yamada 731401a3ca0SIcenowy Zhengconfig VIDEO_SUNXI 7323abfd887SMasahiro Yamada bool "Enable graphical uboot console on HDMI, LCD or VGA" 7333abfd887SMasahiro Yamada depends on !MACH_SUN8I_A83T 7343abfd887SMasahiro Yamada depends on !MACH_SUNXI_H3_H5 7353abfd887SMasahiro Yamada depends on !MACH_SUN8I_R40 7363abfd887SMasahiro Yamada depends on !MACH_SUN8I_V3S 7373abfd887SMasahiro Yamada depends on !MACH_SUN9I 7383abfd887SMasahiro Yamada depends on !MACH_SUN50I 7396f796a9bSIcenowy Zheng depends on !MACH_SUN50I_H6 740401a3ca0SIcenowy Zheng select VIDEO 741f6bdddc9SIcenowy Zheng imply VIDEO_DT_SIMPLEFB 7423abfd887SMasahiro Yamada default y 7433abfd887SMasahiro Yamada ---help--- 7443abfd887SMasahiro Yamada Say Y here to add support for using a cfb console on the HDMI, LCD 7453abfd887SMasahiro Yamada or VGA output found on most sunxi devices. See doc/README.video for 7463abfd887SMasahiro Yamada info on how to select the video output and mode. 7473abfd887SMasahiro Yamada 7483abfd887SMasahiro Yamadaconfig VIDEO_HDMI 7493abfd887SMasahiro Yamada bool "HDMI output support" 750401a3ca0SIcenowy Zheng depends on VIDEO_SUNXI && !MACH_SUN8I 7513abfd887SMasahiro Yamada default y 7523abfd887SMasahiro Yamada ---help--- 7533abfd887SMasahiro Yamada Say Y here to add support for outputting video over HDMI. 7543abfd887SMasahiro Yamada 7553abfd887SMasahiro Yamadaconfig VIDEO_VGA 7563abfd887SMasahiro Yamada bool "VGA output support" 757401a3ca0SIcenowy Zheng depends on VIDEO_SUNXI && (MACH_SUN4I || MACH_SUN7I) 7583abfd887SMasahiro Yamada default n 7593abfd887SMasahiro Yamada ---help--- 7603abfd887SMasahiro Yamada Say Y here to add support for outputting video over VGA. 7613abfd887SMasahiro Yamada 7623abfd887SMasahiro Yamadaconfig VIDEO_VGA_VIA_LCD 7633abfd887SMasahiro Yamada bool "VGA via LCD controller support" 764401a3ca0SIcenowy Zheng depends on VIDEO_SUNXI && (MACH_SUN5I || MACH_SUN6I || MACH_SUN8I) 7653abfd887SMasahiro Yamada default n 7663abfd887SMasahiro Yamada ---help--- 7673abfd887SMasahiro Yamada Say Y here to add support for external DACs connected to the parallel 7683abfd887SMasahiro Yamada LCD interface driving a VGA connector, such as found on the 7693abfd887SMasahiro Yamada Olimex A13 boards. 7703abfd887SMasahiro Yamada 7713abfd887SMasahiro Yamadaconfig VIDEO_VGA_VIA_LCD_FORCE_SYNC_ACTIVE_HIGH 7723abfd887SMasahiro Yamada bool "Force sync active high for VGA via LCD controller support" 7733abfd887SMasahiro Yamada depends on VIDEO_VGA_VIA_LCD 7743abfd887SMasahiro Yamada default n 7753abfd887SMasahiro Yamada ---help--- 7763abfd887SMasahiro Yamada Say Y here if you've a board which uses opendrain drivers for the vga 7773abfd887SMasahiro Yamada hsync and vsync signals. Opendrain drivers cannot generate steep enough 7783abfd887SMasahiro Yamada positive edges for a stable video output, so on boards with opendrain 7793abfd887SMasahiro Yamada drivers the sync signals must always be active high. 7803abfd887SMasahiro Yamada 7813abfd887SMasahiro Yamadaconfig VIDEO_VGA_EXTERNAL_DAC_EN 7823abfd887SMasahiro Yamada string "LCD panel power enable pin" 7833abfd887SMasahiro Yamada depends on VIDEO_VGA_VIA_LCD 7843abfd887SMasahiro Yamada default "" 7853abfd887SMasahiro Yamada ---help--- 7863abfd887SMasahiro Yamada Set the enable pin for the external VGA DAC. This takes a string in the 7873abfd887SMasahiro Yamada format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H. 7883abfd887SMasahiro Yamada 7893abfd887SMasahiro Yamadaconfig VIDEO_COMPOSITE 7903abfd887SMasahiro Yamada bool "Composite video output support" 791401a3ca0SIcenowy Zheng depends on VIDEO_SUNXI && (MACH_SUN4I || MACH_SUN5I || MACH_SUN7I) 7923abfd887SMasahiro Yamada default n 7933abfd887SMasahiro Yamada ---help--- 7943abfd887SMasahiro Yamada Say Y here to add support for outputting composite video. 7953abfd887SMasahiro Yamada 7963abfd887SMasahiro Yamadaconfig VIDEO_LCD_MODE 7973abfd887SMasahiro Yamada string "LCD panel timing details" 798401a3ca0SIcenowy Zheng depends on VIDEO_SUNXI 7993abfd887SMasahiro Yamada default "" 8003abfd887SMasahiro Yamada ---help--- 8013abfd887SMasahiro Yamada LCD panel timing details string, leave empty if there is no LCD panel. 8023abfd887SMasahiro Yamada This is in drivers/video/videomodes.c: video_get_params() format, e.g. 8033abfd887SMasahiro Yamada x:800,y:480,depth:18,pclk_khz:33000,le:16,ri:209,up:22,lo:22,hs:30,vs:1,sync:0,vmode:0 8043abfd887SMasahiro Yamada Also see: http://linux-sunxi.org/LCD 8053abfd887SMasahiro Yamada 8063abfd887SMasahiro Yamadaconfig VIDEO_LCD_DCLK_PHASE 8073abfd887SMasahiro Yamada int "LCD panel display clock phase" 8081d7eef3fSVasily Khoruzhick depends on VIDEO_SUNXI || DM_VIDEO 8093abfd887SMasahiro Yamada default 1 8103abfd887SMasahiro Yamada ---help--- 8113abfd887SMasahiro Yamada Select LCD panel display clock phase shift, range 0-3. 8123abfd887SMasahiro Yamada 8133abfd887SMasahiro Yamadaconfig VIDEO_LCD_POWER 8143abfd887SMasahiro Yamada string "LCD panel power enable pin" 815401a3ca0SIcenowy Zheng depends on VIDEO_SUNXI 8163abfd887SMasahiro Yamada default "" 8173abfd887SMasahiro Yamada ---help--- 8183abfd887SMasahiro Yamada Set the power enable pin for the LCD panel. This takes a string in the 8193abfd887SMasahiro Yamada format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H. 8203abfd887SMasahiro Yamada 8213abfd887SMasahiro Yamadaconfig VIDEO_LCD_RESET 8223abfd887SMasahiro Yamada string "LCD panel reset pin" 823401a3ca0SIcenowy Zheng depends on VIDEO_SUNXI 8243abfd887SMasahiro Yamada default "" 8253abfd887SMasahiro Yamada ---help--- 8263abfd887SMasahiro Yamada Set the reset pin for the LCD panel. This takes a string in the format 8273abfd887SMasahiro Yamada understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H. 8283abfd887SMasahiro Yamada 8293abfd887SMasahiro Yamadaconfig VIDEO_LCD_BL_EN 8303abfd887SMasahiro Yamada string "LCD panel backlight enable pin" 831401a3ca0SIcenowy Zheng depends on VIDEO_SUNXI 8323abfd887SMasahiro Yamada default "" 8333abfd887SMasahiro Yamada ---help--- 8343abfd887SMasahiro Yamada Set the backlight enable pin for the LCD panel. This takes a string in the 8353abfd887SMasahiro Yamada the format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of 8363abfd887SMasahiro Yamada port H. 8373abfd887SMasahiro Yamada 8383abfd887SMasahiro Yamadaconfig VIDEO_LCD_BL_PWM 8393abfd887SMasahiro Yamada string "LCD panel backlight pwm pin" 840401a3ca0SIcenowy Zheng depends on VIDEO_SUNXI 8413abfd887SMasahiro Yamada default "" 8423abfd887SMasahiro Yamada ---help--- 8433abfd887SMasahiro Yamada Set the backlight pwm pin for the LCD panel. This takes a string in the 8443abfd887SMasahiro Yamada format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H. 8453abfd887SMasahiro Yamada 8463abfd887SMasahiro Yamadaconfig VIDEO_LCD_BL_PWM_ACTIVE_LOW 8473abfd887SMasahiro Yamada bool "LCD panel backlight pwm is inverted" 848401a3ca0SIcenowy Zheng depends on VIDEO_SUNXI 8493abfd887SMasahiro Yamada default y 8503abfd887SMasahiro Yamada ---help--- 8513abfd887SMasahiro Yamada Set this if the backlight pwm output is active low. 8523abfd887SMasahiro Yamada 8533abfd887SMasahiro Yamadaconfig VIDEO_LCD_PANEL_I2C 8543abfd887SMasahiro Yamada bool "LCD panel needs to be configured via i2c" 855401a3ca0SIcenowy Zheng depends on VIDEO_SUNXI 8563abfd887SMasahiro Yamada default n 8573abfd887SMasahiro Yamada select CMD_I2C 8583abfd887SMasahiro Yamada ---help--- 8593abfd887SMasahiro Yamada Say y here if the LCD panel needs to be configured via i2c. This 8603abfd887SMasahiro Yamada will add a bitbang i2c controller using gpios to talk to the LCD. 8613abfd887SMasahiro Yamada 8623abfd887SMasahiro Yamadaconfig VIDEO_LCD_PANEL_I2C_SDA 8633abfd887SMasahiro Yamada string "LCD panel i2c interface SDA pin" 8643abfd887SMasahiro Yamada depends on VIDEO_LCD_PANEL_I2C 8653abfd887SMasahiro Yamada default "PG12" 8663abfd887SMasahiro Yamada ---help--- 8673abfd887SMasahiro Yamada Set the SDA pin for the LCD i2c interface. This takes a string in the 8683abfd887SMasahiro Yamada format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H. 8693abfd887SMasahiro Yamada 8703abfd887SMasahiro Yamadaconfig VIDEO_LCD_PANEL_I2C_SCL 8713abfd887SMasahiro Yamada string "LCD panel i2c interface SCL pin" 8723abfd887SMasahiro Yamada depends on VIDEO_LCD_PANEL_I2C 8733abfd887SMasahiro Yamada default "PG10" 8743abfd887SMasahiro Yamada ---help--- 8753abfd887SMasahiro Yamada Set the SCL pin for the LCD i2c interface. This takes a string in the 8763abfd887SMasahiro Yamada format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H. 8773abfd887SMasahiro Yamada 8783abfd887SMasahiro Yamada 8793abfd887SMasahiro Yamada# Note only one of these may be selected at a time! But hidden choices are 8803abfd887SMasahiro Yamada# not supported by Kconfig 8813abfd887SMasahiro Yamadaconfig VIDEO_LCD_IF_PARALLEL 8823abfd887SMasahiro Yamada bool 8833abfd887SMasahiro Yamada 8843abfd887SMasahiro Yamadaconfig VIDEO_LCD_IF_LVDS 8853abfd887SMasahiro Yamada bool 8863abfd887SMasahiro Yamada 8873abfd887SMasahiro Yamadaconfig SUNXI_DE2 8883abfd887SMasahiro Yamada bool 8893abfd887SMasahiro Yamada default n 8903abfd887SMasahiro Yamada 8913abfd887SMasahiro Yamadaconfig VIDEO_DE2 8923abfd887SMasahiro Yamada bool "Display Engine 2 video driver" 8933abfd887SMasahiro Yamada depends on SUNXI_DE2 8943abfd887SMasahiro Yamada select DM_VIDEO 8953abfd887SMasahiro Yamada select DISPLAY 896be5b96f0SIcenowy Zheng imply VIDEO_DT_SIMPLEFB 8973abfd887SMasahiro Yamada default y 8983abfd887SMasahiro Yamada ---help--- 8993abfd887SMasahiro Yamada Say y here if you want to build DE2 video driver which is present on 9003abfd887SMasahiro Yamada newer SoCs. Currently only HDMI output is supported. 9013abfd887SMasahiro Yamada 9023abfd887SMasahiro Yamada 9033abfd887SMasahiro Yamadachoice 9043abfd887SMasahiro Yamada prompt "LCD panel support" 905401a3ca0SIcenowy Zheng depends on VIDEO_SUNXI 9063abfd887SMasahiro Yamada ---help--- 9073abfd887SMasahiro Yamada Select which type of LCD panel to support. 9083abfd887SMasahiro Yamada 9093abfd887SMasahiro Yamadaconfig VIDEO_LCD_PANEL_PARALLEL 9103abfd887SMasahiro Yamada bool "Generic parallel interface LCD panel" 9113abfd887SMasahiro Yamada select VIDEO_LCD_IF_PARALLEL 9123abfd887SMasahiro Yamada 9133abfd887SMasahiro Yamadaconfig VIDEO_LCD_PANEL_LVDS 9143abfd887SMasahiro Yamada bool "Generic lvds interface LCD panel" 9153abfd887SMasahiro Yamada select VIDEO_LCD_IF_LVDS 9163abfd887SMasahiro Yamada 9173abfd887SMasahiro Yamadaconfig VIDEO_LCD_PANEL_MIPI_4_LANE_513_MBPS_VIA_SSD2828 9183abfd887SMasahiro Yamada bool "MIPI 4-lane, 513Mbps LCD panel via SSD2828 bridge chip" 9193abfd887SMasahiro Yamada select VIDEO_LCD_SSD2828 9203abfd887SMasahiro Yamada select VIDEO_LCD_IF_PARALLEL 9213abfd887SMasahiro Yamada ---help--- 9223abfd887SMasahiro Yamada 7.85" 768x1024 LCD panels, such as LG LP079X01 or AUO B079XAN01.0 9233abfd887SMasahiro Yamada 9243abfd887SMasahiro Yamadaconfig VIDEO_LCD_PANEL_EDP_4_LANE_1620M_VIA_ANX9804 9253abfd887SMasahiro Yamada bool "eDP 4-lane, 1.62G LCD panel via ANX9804 bridge chip" 9263abfd887SMasahiro Yamada select VIDEO_LCD_ANX9804 9273abfd887SMasahiro Yamada select VIDEO_LCD_IF_PARALLEL 9283abfd887SMasahiro Yamada select VIDEO_LCD_PANEL_I2C 9293abfd887SMasahiro Yamada ---help--- 9303abfd887SMasahiro Yamada Select this for eDP LCD panels with 4 lanes running at 1.62G, 9313abfd887SMasahiro Yamada connected via an ANX9804 bridge chip. 9323abfd887SMasahiro Yamada 9333abfd887SMasahiro Yamadaconfig VIDEO_LCD_PANEL_HITACHI_TX18D42VM 9343abfd887SMasahiro Yamada bool "Hitachi tx18d42vm LCD panel" 9353abfd887SMasahiro Yamada select VIDEO_LCD_HITACHI_TX18D42VM 9363abfd887SMasahiro Yamada select VIDEO_LCD_IF_LVDS 9373abfd887SMasahiro Yamada ---help--- 9383abfd887SMasahiro Yamada 7.85" 1024x768 Hitachi tx18d42vm LCD panel support 9393abfd887SMasahiro Yamada 9403abfd887SMasahiro Yamadaconfig VIDEO_LCD_TL059WV5C0 9413abfd887SMasahiro Yamada bool "tl059wv5c0 LCD panel" 9423abfd887SMasahiro Yamada select VIDEO_LCD_PANEL_I2C 9433abfd887SMasahiro Yamada select VIDEO_LCD_IF_PARALLEL 9443abfd887SMasahiro Yamada ---help--- 9453abfd887SMasahiro Yamada 6" 480x800 tl059wv5c0 panel support, as used on the Utoo P66 and 9463abfd887SMasahiro Yamada Aigo M60/M608/M606 tablets. 9473abfd887SMasahiro Yamada 9483abfd887SMasahiro Yamadaendchoice 9493abfd887SMasahiro Yamada 9503abfd887SMasahiro Yamadaconfig SATAPWR 9513abfd887SMasahiro Yamada string "SATA power pin" 9523abfd887SMasahiro Yamada default "" 9533abfd887SMasahiro Yamada help 9543abfd887SMasahiro Yamada Set the pins used to power the SATA. This takes a string in the 9553abfd887SMasahiro Yamada format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of 9563abfd887SMasahiro Yamada port H. 9573abfd887SMasahiro Yamada 9583abfd887SMasahiro Yamadaconfig GMAC_TX_DELAY 9593abfd887SMasahiro Yamada int "GMAC Transmit Clock Delay Chain" 9603abfd887SMasahiro Yamada default 0 9613abfd887SMasahiro Yamada ---help--- 9623abfd887SMasahiro Yamada Set the GMAC Transmit Clock Delay Chain value. 9633abfd887SMasahiro Yamada 9643abfd887SMasahiro Yamadaconfig SPL_STACK_R_ADDR 9653abfd887SMasahiro Yamada default 0x4fe00000 if MACH_SUN4I 9663abfd887SMasahiro Yamada default 0x4fe00000 if MACH_SUN5I 9673abfd887SMasahiro Yamada default 0x4fe00000 if MACH_SUN6I 9683abfd887SMasahiro Yamada default 0x4fe00000 if MACH_SUN7I 9693abfd887SMasahiro Yamada default 0x4fe00000 if MACH_SUN8I 9703abfd887SMasahiro Yamada default 0x2fe00000 if MACH_SUN9I 9713abfd887SMasahiro Yamada default 0x4fe00000 if MACH_SUN50I 9726f796a9bSIcenowy Zheng default 0x4fe00000 if MACH_SUN50I_H6 9733abfd887SMasahiro Yamada 974c2a7a7efSJagan Tekiconfig SPL_SPI_SUNXI 975c2a7a7efSJagan Teki bool "Support for SPI Flash on Allwinner SoCs in SPL" 976c2a7a7efSJagan Teki depends on MACH_SUN4I || MACH_SUN5I || MACH_SUN7I || MACH_SUNXI_H3_H5 || MACH_SUN50I 977c2a7a7efSJagan Teki help 978c2a7a7efSJagan Teki Enable support for SPI Flash. This option allows SPL to read from 979c2a7a7efSJagan Teki sunxi SPI Flash. It uses the same method as the boot ROM, so does 980c2a7a7efSJagan Teki not need any extra configuration. 981c2a7a7efSJagan Teki 982c6c2c85eSIcenowy Zhengconfig PINE64_DT_SELECTION 983c6c2c85eSIcenowy Zheng bool "Enable Pine64 device tree selection code" 984c6c2c85eSIcenowy Zheng depends on MACH_SUN50I 985c6c2c85eSIcenowy Zheng help 986c6c2c85eSIcenowy Zheng The original Pine A64 and Pine A64+ are similar but different 987c6c2c85eSIcenowy Zheng boards and can be differed by the DRAM size. Pine A64 has 988c6c2c85eSIcenowy Zheng 512MiB DRAM, and Pine A64+ has 1GiB or 2GiB. By selecting this 989c6c2c85eSIcenowy Zheng option, the device tree selection code specific to Pine64 which 990c6c2c85eSIcenowy Zheng utilizes the DRAM size will be enabled. 991c6c2c85eSIcenowy Zheng 9923abfd887SMasahiro Yamadaendif 993