[U-Boot] [linux-sunxi] [PATCH 00/12] sunxi: Add support for R40 SoC
Icenowy Zheng
icenowy at aosc.xyz
Wed Mar 1 10:15:28 UTC 2017
2017年3月1日 15:04于 Chen-Yu Tsai <wens at csie.org>写道:
>
> Hi everyone,
>
> This series adds support for the new R40 SoC. The R40 is marketed as the
> successor to the A20. It is mostly pin compatible (in software) with the
> A20. It has a somewhat similar memory layout, a hybrid of A20 and newer
> sun6i gen.. Like the A20, it does not have a PRCM block.
>
> This series makes checkpatch throw out a lot of errors, mostly "no spaces
> at the start of a line" or "space prohibited after that open parenthesis
> '('", but fixing them does not improve the readability of the code.
>
> Patch 1 introduces the R40 to U-boot, by adding a Kconfig symbol, fixing
> up any SoC depends on in Kconfig to disable unsupported features, and
> reworking board level pinmuxes.
>
> Patch 2 enables using the AXP221s PMIC in I2C mode. The R40 is paired
> with this PMIC, but it does not have a P2WI controller.
>
> Patch 3 fixes the watchdog reset function for R40. The R40's watchdog
> register layout is like the A10/A20.
>
> Patch 4 adds mmc pinmux settings for R40.
>
> Patch 5 fixes the PLL lock settings for the R40. The R40's CCU has a
> new mode for PLL lock, which can be configured and also switched back
> to the old mode. Here we just use the old mode, which is the same as
> the other sun6i gen. SoCs.
The definition of PLL6 is also changed, please also check the default value of PLL6.
>
> Patch 6 provides some default DRAM settings for the R40. These were
> taken from the Bananapi M2 Ultra, the only R40 board available.
>
> Patch 7 adds the compatible string for the R40 PIO. It is mostly
> compatible with the A20, with a few functions gone, and a few new
> ones.
>
> Patch 8 adds DRAM initialization support for the R40. The DRAM
> controller is very similar to the A64 and H5, however the A15 line
> and CSC1 line are muxed on the same pin. Also the PIR_QSGATE bit
> must not be set, or DRAM init fails.
>
> Patch 9 enables SPL for R40.
>
> Patch 10 fixes the address of the CPUCFG block on the R40. It is
> the same as on the A20.
>
> Patch 11 adds a PSCI implementation for the R40. As the register
> layout is slightly erratic, we just use a macro for the ones that
> can't fit into the cpucfg register definition structure.
>
> Patch 12 adds a board dts and defconfig for the Bananapi M2 Ultra.
>
> Please have a look.
>
> Regards
> ChenYu
>
> Chen-Yu Tsai (12):
> sunxi: Add initial support for R40
> sunxi: Enable AXP221s in I2C mode with the R40 SoC
> sunxi: Fix watchdog reset function for R40
> sunxi: Add mmc[1-3] pinmux settings for R40
> sunxi: Set PLL lock enable bits for R40
> sunxi: Provide defaults for R40 DRAM settings
> gpio: sunxi: Add compatible string for R40 PIO
> sunxi: Use H3/A64 DRAM initialization code for R40
> sunxi: Enable SPL for R40
> sunxi: Fix CPUCFG address for R40
> sunxi: Add PSCI support for R40
> sunxi: Add support for Bananapi M2 Ultra
>
> arch/arm/cpu/armv7/sunxi/psci.c | 35 ++++-
> arch/arm/dts/Makefile | 2 +
> arch/arm/dts/sun8i-r40-bananapi-m2-ultra.dts | 69 +++++++++
> arch/arm/dts/sun8i-r40.dtsi | 183 ++++++++++++++++++++++++
> arch/arm/include/asm/arch-sunxi/clock_sun6i.h | 2 +
> arch/arm/include/asm/arch-sunxi/cpu.h | 1 +
> arch/arm/include/asm/arch-sunxi/cpu_sun4i.h | 6 +-
> arch/arm/include/asm/arch-sunxi/dram.h | 4 +-
> arch/arm/include/asm/arch-sunxi/dram_sun8i_h3.h | 20 ++-
> arch/arm/include/asm/arch-sunxi/timer.h | 5 +-
> arch/arm/include/asm/arch-sunxi/watchdog.h | 5 +-
> arch/arm/mach-sunxi/Makefile | 1 +
> arch/arm/mach-sunxi/board.c | 15 +-
> arch/arm/mach-sunxi/clock_sun6i.c | 9 +-
> arch/arm/mach-sunxi/cpu_info.c | 2 +
> arch/arm/mach-sunxi/dram_sun8i_h3.c | 121 ++++++++++++++--
> arch/arm/mach-sunxi/pmic_bus.c | 7 +
> board/sunxi/Kconfig | 18 ++-
> board/sunxi/MAINTAINERS | 6 +
> board/sunxi/board.c | 36 ++++-
> configs/Bananapi_M2_Ultra_defconfig | 15 ++
> drivers/gpio/sunxi_gpio.c | 1 +
> drivers/power/Kconfig | 16 ++-
> 23 files changed, 530 insertions(+), 49 deletions(-)
> create mode 100644 arch/arm/dts/sun8i-r40-bananapi-m2-ultra.dts
> create mode 100644 arch/arm/dts/sun8i-r40.dtsi
> create mode 100644 configs/Bananapi_M2_Ultra_defconfig
>
> --
> 2.11.0
>
> --
> You received this message because you are subscribed to the Google Groups "linux-sunxi" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to linux-sunxi+unsubscribe at googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
More information about the U-Boot
mailing list