[PATCH 00/11] Add support for SUNIV and F1C100s.

Jesse Taube
2022-01-05T00:35:23Z

This patch set aims to add suport for the SUNIV and F1C100s.
Suport has been in linux for a while now, but not in u-boot.

This patchset contains:
- CPU specific initialization code
- SUNIV dram driver
- SUNIV clock driver adaption
- SUNIV gpio driver adaption
- SUNIV uart driver adaption
- F1C100s basic support

I am hoping to get Icenowy's patches in as it seems she hasnt submitted
in a while. The only edits I made to her code is rebasing it against ML
and changing some formating. I also re-grouped her commits.

I am wondering if the dram driver should be moved into device drivers
rather than in mach-sunxi.
I am also wondering if it is okay to submit some one elses code,
and if so how should I do so.

Icenowy Zheng (11):
arm: arm926ej-s: start.S: port save_boot_params support from armv7
code
arm: arm926ej-s: add sunxi code
dt-bindings: clock: Add initial suniv headers
dt-bindings: reset: Add initial suniv headers
ARM: sunxi: Add support for F1C100s
sunxi: Add F1C100s DRAM initial support
sunxi: board: Add support for SUNIV
configs: sunxi: Add common SUNIV header
sunxi: Add support for SUNIV architecture
ARM: dts: suniv: Add device tree files for F1C100s
configs: sunxi: Add support for Lichee Pi Nano

arch/arm/cpu/arm926ejs/Makefile | 1 +
arch/arm/cpu/arm926ejs/start.S | 19 +
arch/arm/cpu/arm926ejs/sunxi/Makefile | 15 +
arch/arm/cpu/arm926ejs/sunxi/config.mk | 6 +
arch/arm/cpu/arm926ejs/sunxi/fel_utils.S | 37 ++
arch/arm/cpu/arm926ejs/sunxi/lowlevel_init.S | 67 +++
arch/arm/cpu/arm926ejs/sunxi/start.c | 1 +
arch/arm/cpu/arm926ejs/sunxi/timer.c | 114 +++++
arch/arm/cpu/arm926ejs/sunxi/u-boot-spl.lds | 62 +++
arch/arm/dts/Makefile | 2 +
arch/arm/dts/suniv-f1c100s-licheepi-nano.dts | 64 +++
arch/arm/dts/suniv-f1c100s.dtsi | 6 +
arch/arm/dts/suniv.dtsi | 224 ++++++++++
arch/arm/include/asm/arch-sunxi/clock.h | 2 +-
arch/arm/include/asm/arch-sunxi/clock_sun6i.h | 25 ++
arch/arm/include/asm/arch-sunxi/cpu_sun4i.h | 8 +
arch/arm/include/asm/arch-sunxi/dram.h | 2 +
arch/arm/include/asm/arch-sunxi/dram_suniv.h | 46 ++
arch/arm/include/asm/arch-sunxi/gpio.h | 1 +
arch/arm/mach-sunxi/Kconfig | 16 +-
arch/arm/mach-sunxi/Makefile | 2 +
arch/arm/mach-sunxi/board.c | 31 +-
arch/arm/mach-sunxi/clock.c | 3 +-
arch/arm/mach-sunxi/clock_sun6i.c | 46 +-
arch/arm/mach-sunxi/cpu_info.c | 2 +
arch/arm/mach-sunxi/dram_helpers.c | 4 +
arch/arm/mach-sunxi/dram_suniv.c | 420 ++++++++++++++++++
board/sunxi/board.c | 4 +-
configs/licheepi_nano_defconfig | 13 +
configs/licheepi_nano_spiflash_defconfig | 25 ++
include/configs/suniv.h | 14 +
include/configs/sunxi-common.h | 67 ++-
include/dt-bindings/clock/suniv-ccu.h | 68 +++
include/dt-bindings/reset/suniv-ccu.h | 36 ++
34 files changed, 1424 insertions(+), 29 deletions(-)
create mode 100644 arch/arm/cpu/arm926ejs/sunxi/Makefile
create mode 100644 arch/arm/cpu/arm926ejs/sunxi/config.mk
create mode 100644 arch/arm/cpu/arm926ejs/sunxi/fel_utils.S
create mode 100644 arch/arm/cpu/arm926ejs/sunxi/lowlevel_init.S
create mode 100644 arch/arm/cpu/arm926ejs/sunxi/start.c
create mode 100644 arch/arm/cpu/arm926ejs/sunxi/timer.c
create mode 100644 arch/arm/cpu/arm926ejs/sunxi/u-boot-spl.lds
create mode 100644 arch/arm/dts/suniv-f1c100s-licheepi-nano.dts
create mode 100644 arch/arm/dts/suniv-f1c100s.dtsi
create mode 100644 arch/arm/dts/suniv.dtsi
create mode 100644 arch/arm/include/asm/arch-sunxi/dram_suniv.h
create mode 100644 arch/arm/mach-sunxi/dram_suniv.c
create mode 100644 configs/licheepi_nano_defconfig
create mode 100644 configs/licheepi_nano_spiflash_defconfig
create mode 100644 include/configs/suniv.h
create mode 100644 include/dt-bindings/clock/suniv-ccu.h
create mode 100644 include/dt-bindings/reset/suniv-ccu.h

--
2.34.1