[v2,0/4] Add basic Rockchip rk3128 DT support

Message ID e83964fe-ad87-0905-4586-e235757c6b2b@gmail.com
Headers
Series Add basic Rockchip rk3128 DT support |

Message

Johan Jonker Oct. 28, 2022, 2:39 p.m. UTC
  Add basic Rockchip rk3128 DT support.

Features:
  Quad-core ARM Cortex-A7MP Core processor
  Clock & reset unit
  Power management unit
  Interrupt controller
  DMAC
  6x 64 bits Timers
  4x PWMs
  1x 32 bits watchdog

Internal memory:
  Internal BootRom
  Internal SRAM 8KB

External memory:
  Dynamic Memory Interface (DDR3/DDR3L/LPDDR2)
  Nand Flash Interface
  eMMC Interface
  SD/MMC Interface

Connectivity:
  SDIO interface
  SPI Controller
  3x UART controller
  4x I2C controllers
  4x groups of GPIO (GPIO0~GPIO3), 32 GPIOs per group
  USB Host2.0
  USB OTG2.0

===

The Linux kernel has added a rk3128 clock driver in the past,
but the DT is still missing.

In U-boot the rk3128 DT doesn't conform the latest bindings
and also the pin definition don't match the TRM.

On request from the U-boot maintainers I submit a basic rk3128 DT.
https://lore.kernel.org/u-boot/258c2dbf-436d-5935-83f5-a2dbb8cf62d7@rock-chips.com/

Based on:
https://source.denx.de/u-boot/u-boot/-/blob/master/arch/arm/dts/rk3128.dtsi
https://github.com/rockchip-linux/kernel/blob/develop-4.4/arch/arm/boot/dts/rk312x.dtsi

rk3128 TRM:
https://rockchip.fr/RK312X%20TRM/

rk3128 datasheet:
https://rockchip.fr/RK3128%20datasheet%20V1.2.pdf

===

NOT TESTED WITH HARDWARE
NO THERMAL PROTECTION

===

Request:
  Help with testing on hardware.

===

Changed V2:
  rk3128.dtsi:
    remove aliases
    add gic interrupts mask defines
    add virtual timer interrupts

  rk3128-evb.dts:
    use generic node names
    remove underscores in node names
    add more aliases
    sort

===

Johan Jonker (4):
  dt-bindings: arm: rockchip: Add Rockchip RK3128 Evaluation board
  dt-bindings: timer: rockchip: add rockchip,rk3128-timer
  ARM: dts: rockchip: add rk3128.dtsi
  ARM: dts: rockchip: add rk3128-evb.dts

 .../devicetree/bindings/arm/rockchip.yaml     |   5 +
 .../bindings/timer/rockchip,rk-timer.yaml     |   1 +
 arch/arm/boot/dts/Makefile                    |   1 +
 arch/arm/boot/dts/rk3128-evb.dts              | 110 +++
 arch/arm/boot/dts/rk3128.dtsi                 | 916 ++++++++++++++++++
 5 files changed, 1033 insertions(+)
 create mode 100644 arch/arm/boot/dts/rk3128-evb.dts
 create mode 100644 arch/arm/boot/dts/rk3128.dtsi

--
2.20.1
  

Comments

Heiko Stübner Dec. 14, 2022, 2:26 p.m. UTC | #1
On Fri, 28 Oct 2022 16:39:04 +0200, Johan Jonker wrote:
> Add basic Rockchip rk3128 DT support.
> 
> Features:
>   Quad-core ARM Cortex-A7MP Core processor
>   Clock & reset unit
>   Power management unit
>   Interrupt controller
>   DMAC
>   6x 64 bits Timers
>   4x PWMs
>   1x 32 bits watchdog
> 
> [...]

Applied for 6.3, thanks!

[1/4] dt-bindings: arm: rockchip: Add Rockchip RK3128 Evaluation board
      commit: a1392d5ac60864a3682c447fe62392eb56e9d93b
[3/4] ARM: dts: rockchip: add rk3128.dtsi
      commit: 9ef609cbdbf7a45599b0c9c21e9e7d2ae625896f
[4/4] ARM: dts: rockchip: add rk3128-evb.dts
      commit: 7232dafab89ac23b570d0adb3402164719fcbe3d

Best regards,