mbox series

[v9,00/12] Actions S700 SoC support

Message ID 1585725575-8050-1-git-send-email-amittomer25@gmail.com
Headers show
Series Actions S700 SoC support | expand

Message

Amit Tomer April 1, 2020, 7:19 a.m. UTC
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(v9) fixes a Bug that breaks bubblegum96 board boot(reported by Mani). It was
due to fact that driver data read is not proper in the clock driver. There are changes in
patch 06/12 to fix it.

Previous series(v8) removes the SoC specific include instead just uses owl-common. For this
patch 01/12 and 09/12 changes a bit.

Series(v7) fixes a serious Bug that breaks S900, it was there since v5.Thanks to Andre
for pointing it out. 

Series(v6)[3] does following changes:

* [PATCH v5 06/11] becomes [PATCH v6 03/11]
* [PATCH v5 03/11] becomes [PATCH v6 04/11]
* Introduce a new patch to move defconfig options to Kconfig which is [PATCH v6 10/12]

Series(v5)[4] just re-orders the patches so that U-BOOT(with bubblegum96_defconfig) builds
after every patch of the series(suggested by Andre).

S700 support is tested[5] 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_v9

[1]: http://www.cubietech.com/product-detail/cubieboard7/
[2]: http://www.actions-semi.com/en/productview.aspx?id=225
[3]: http://u-boot.10912.n7.nabble.com/PATCH-v6-00-12-Actions-S700-SoC-support-td403562.html#a403567
[4]: http://u-boot.10912.n7.nabble.com/PATCH-v5-00-11-Actions-S700-SoC-support-td402752.html#a402762
[5]: https://paste.ubuntu.com/p/6HWYM3bwr6/

Amit Singh Tomar (12):
  arm: actions: Add common framework for Actions Owl Semi SoCs
  arm: actions: rename sysmap-s900 to sysmap-owl
  serial: actions: add compatible string
  arm: dts: sync dts for Action Semi S900
  arm: dts: actions: s900: add u-boot specific dtsi file
  clk: actions: Add common clock driver
  arm: actions: add S700 SoC device tree
  arm: dts: actions: s700: add u-boot specific dtsi file
  arm: add support Actions Semi S700
  actions: Move defconfig options to Kconfig
  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                      |  50 ++--
 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                 |  12 +-
 configs/cubieboard7_defconfig                  |   9 +
 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                      | 153 ++++++++++++
 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, 1638 insertions(+), 486 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

Comments

Manivannan Sadhasivam April 5, 2020, 7:25 a.m. UTC | #1
Hi Amit,

On Wed, Apr 01, 2020 at 12:49:23PM +0530, Amit Singh Tomar wrote:
> 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(v9) fixes a Bug that breaks bubblegum96 board boot(reported by Mani). It was
> due to fact that driver data read is not proper in the clock driver. There are changes in
> patch 06/12 to fix it.
> 
> Previous series(v8) removes the SoC specific include instead just uses owl-common. For this
> patch 01/12 and 09/12 changes a bit.
> 
> Series(v7) fixes a serious Bug that breaks S900, it was there since v5.Thanks to Andre
> for pointing it out. 
> 
> Series(v6)[3] does following changes:
> 
> * [PATCH v5 06/11] becomes [PATCH v6 03/11]
> * [PATCH v5 03/11] becomes [PATCH v6 04/11]
> * Introduce a new patch to move defconfig options to Kconfig which is [PATCH v6 10/12]
> 
> Series(v5)[4] just re-orders the patches so that U-BOOT(with bubblegum96_defconfig) builds
> after every patch of the series(suggested by Andre).
> 
> S700 support is tested[5] 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_v9
> 

Many thanks for your patience and continuous effort! I have now reviewed the
series. Mostly is looks very good now. I just had few nit picks which you can
address in v10.

This series won't make it for v2020.04 but that's not critical IMO.

Andre, thanks to you too for helping with the reviews. Much appreciated!

Thanks,
Mani

> [1]: http://www.cubietech.com/product-detail/cubieboard7/
> [2]: http://www.actions-semi.com/en/productview.aspx?id=225
> [3]: http://u-boot.10912.n7.nabble.com/PATCH-v6-00-12-Actions-S700-SoC-support-td403562.html#a403567
> [4]: http://u-boot.10912.n7.nabble.com/PATCH-v5-00-11-Actions-S700-SoC-support-td402752.html#a402762
> [5]: https://paste.ubuntu.com/p/6HWYM3bwr6/
> 
> Amit Singh Tomar (12):
>   arm: actions: Add common framework for Actions Owl Semi SoCs
>   arm: actions: rename sysmap-s900 to sysmap-owl
>   serial: actions: add compatible string
>   arm: dts: sync dts for Action Semi S900
>   arm: dts: actions: s900: add u-boot specific dtsi file
>   clk: actions: Add common clock driver
>   arm: actions: add S700 SoC device tree
>   arm: dts: actions: s700: add u-boot specific dtsi file
>   arm: add support Actions Semi S700
>   actions: Move defconfig options to Kconfig
>   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                      |  50 ++--
>  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                 |  12 +-
>  configs/cubieboard7_defconfig                  |   9 +
>  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                      | 153 ++++++++++++
>  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, 1638 insertions(+), 486 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
> 
> -- 
> 2.7.4
>
Amit Tomer April 6, 2020, 12:45 p.m. UTC | #2
Hi,

> Mostly is looks very good now. I just had few nit picks which you can
> address in v10.

Thanks for providing review comments, just sent the v10 addressing
the comments.

> This series won't make it for v2020.04 but that's not critical IMO.

No issues, It would be good if it gets merge in next cycle.

> Andre, thanks to you too for helping with the reviews. Much appreciated!

Yeah, Thanks for Andre for detailed review and guiding me along the way.

Thanks
-Amit