From patchwork Sat Mar 7 06:41:58 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Amit Tomer X-Patchwork-Id: 243339 List-Id: U-Boot discussion From: amittomer25 at gmail.com (Amit Singh Tomar) Date: Sat, 7 Mar 2020 12:11:58 +0530 Subject: [PATCH v4 00/11] Actions S700 SoC support Message-ID: <1583563329-4801-1-git-send-email-amittomer25@gmail.com> This adds Cubieboard7[1] support based on Action Semi's S700 SoC[2], It's Quad-core ARMv8 SoC with Cortex-A53 cores. Peripheral like UART seems to be compatible with S900 SoC(basic support for it is alreay present in u-boot). This series(v4) is much shorter than the previous series(v3) as patches related to Ethernet support is dropped along with reset driver patches. First few patches(from 1/11 to 3/11) consolidates Actions Semiconductor SoCs support in u-boot(mostly insprired by SUXNI as suggested by Andre). Idea is to move every bit out from board/ucRobotics into arch/arm/mach-owl. It allows different SoCs to be driven by single "soc and Kconfig" file. It also includes common clock driver for S700 and S900. Patches(from 4/11 to 6/11 and 10/21 to 11/11) enables S700 SoC support alongwith Cubieboard7 board. While at it, took the opportunity to sync S900 DT sources and bindings(patches from 7/11 to 8/11) with Linux(tag v5.5-rc6) and it is compiled-tested. S700 support is tested[3] on Cubieboard7 board and S900 support is just compiled tested. This patch series can be tested using below tree: https://github.com/Atomar25/u-boot/commits/s700_v4 [1]: http://www.cubietech.com/product-detail/cubieboard7/ [2]: http://www.actions-semi.com/en/productview.aspx?id=225 [3]: https://paste.ubuntu.com/p/4cpxhSmFg5/ Amit Singh Tomar (11): arm: actions: Add common framework for Actions Owl Semi SoCs arm: actions: rename sysmap-s900 to sysmap-owl clk: actions: Add common clock driver arm: add support Actions Semi S700 arm: actions: add S700 SoC device tree arm: dts: actions: s700: add u-boot specific dtsi file arm: dts: sync dts for Action Semi S900 arm: dts: actions: s900: add u-boot specific dtsi file serial: actions: add uart support for s700 arm: add Cubieboard7 board support doc: boards: add Cubieboard7 documentation MAINTAINERS | 2 + arch/arm/Kconfig | 5 +- arch/arm/dts/Makefile | 6 +- arch/arm/dts/s700-cubieboard7.dts | 92 +++++++ arch/arm/dts/s700-u-boot.dtsi | 18 ++ arch/arm/dts/s700.dtsi | 248 +++++++++++++++++++ arch/arm/dts/s900-u-boot.dtsi | 17 ++ arch/arm/dts/s900.dtsi | 322 +++++++++++++++++++++++-- arch/arm/include/asm/arch-owl/clk_s900.h | 57 ----- arch/arm/include/asm/arch-owl/regs_s700.h | 56 +++++ arch/arm/mach-owl/Kconfig | 35 +-- arch/arm/mach-owl/Makefile | 3 +- arch/arm/mach-owl/soc.c | 57 +++++ arch/arm/mach-owl/sysmap-owl.c | 32 +++ arch/arm/mach-owl/sysmap-s900.c | 32 --- board/ucRobotics/bubblegum_96/Kconfig | 15 -- board/ucRobotics/bubblegum_96/MAINTAINERS | 6 - board/ucRobotics/bubblegum_96/Makefile | 3 - board/ucRobotics/bubblegum_96/bubblegum_96.c | 57 ----- configs/bubblegum_96_defconfig | 7 +- configs/cubieboard7_defconfig | 16 ++ doc/board/actions/cubieboard7.rst | 115 +++++++++ doc/board/actions/index.rst | 10 + doc/board/index.rst | 1 + drivers/clk/owl/Kconfig | 8 +- drivers/clk/owl/Makefile | 2 +- drivers/clk/owl/clk_owl.c | 147 +++++++++++ drivers/clk/owl/clk_owl.h | 65 +++++ drivers/clk/owl/clk_s900.c | 137 ----------- drivers/serial/serial_owl.c | 2 +- include/configs/bubblegum_96.h | 40 --- include/configs/owl-common.h | 40 +++ include/configs/s700.h | 13 + include/configs/s900.h | 16 ++ include/dt-bindings/clock/actions,s700-cmu.h | 118 +++++++++ include/dt-bindings/clock/actions,s900-cmu.h | 129 ++++++++++ include/dt-bindings/clock/s900_cmu.h | 77 ------ include/dt-bindings/reset/actions,s700-reset.h | 34 +++ include/dt-bindings/reset/actions,s900-reset.h | 65 +++++ 39 files changed, 1624 insertions(+), 481 deletions(-) create mode 100644 arch/arm/dts/s700-cubieboard7.dts create mode 100644 arch/arm/dts/s700-u-boot.dtsi create mode 100644 arch/arm/dts/s700.dtsi create mode 100644 arch/arm/dts/s900-u-boot.dtsi delete mode 100644 arch/arm/include/asm/arch-owl/clk_s900.h create mode 100644 arch/arm/include/asm/arch-owl/regs_s700.h create mode 100644 arch/arm/mach-owl/soc.c create mode 100644 arch/arm/mach-owl/sysmap-owl.c delete mode 100644 arch/arm/mach-owl/sysmap-s900.c delete mode 100644 board/ucRobotics/bubblegum_96/Kconfig delete mode 100644 board/ucRobotics/bubblegum_96/MAINTAINERS delete mode 100644 board/ucRobotics/bubblegum_96/Makefile delete mode 100644 board/ucRobotics/bubblegum_96/bubblegum_96.c create mode 100644 configs/cubieboard7_defconfig create mode 100644 doc/board/actions/cubieboard7.rst create mode 100644 doc/board/actions/index.rst create mode 100644 drivers/clk/owl/clk_owl.c create mode 100644 drivers/clk/owl/clk_owl.h delete mode 100644 drivers/clk/owl/clk_s900.c delete mode 100644 include/configs/bubblegum_96.h create mode 100644 include/configs/owl-common.h create mode 100644 include/configs/s700.h create mode 100644 include/configs/s900.h create mode 100644 include/dt-bindings/clock/actions,s700-cmu.h create mode 100644 include/dt-bindings/clock/actions,s900-cmu.h delete mode 100644 include/dt-bindings/clock/s900_cmu.h create mode 100644 include/dt-bindings/reset/actions,s700-reset.h create mode 100644 include/dt-bindings/reset/actions,s900-reset.h