All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH 0/3] rockchip: correct SYS_SOC name for all rockchip SoCs
@ 2019-03-28  3:01 Kever Yang
  2019-03-28  3:01 ` [U-Boot] [PATCH 1/3] rockchip: arm: use 'arch-rockchip' for common header Kever Yang
                   ` (2 more replies)
  0 siblings, 3 replies; 24+ messages in thread
From: Kever Yang @ 2019-03-28  3:01 UTC (permalink / raw)
  To: u-boot


Rockchip use 'arch-rockchip' instead of arch-$(SOC) as common
header file path, so that we do not need to make folder for
each soc, because many header file are shared for all the SoCs
which not need separate for each SoC.

With the SoC name correct to its own name, the build system
can include the $(SOC)-u-boot.dtsi automatically.



Kever Yang (3):
  rockchip: arm: use 'arch-rockchip' for common header
  rockchip: use 'arch-rockchip' as header file path
  rockchip: correct ARCH_SOC name

 arch/arm/cpu/armv8/start.S                    |  4 ++++
 .../include/asm/arch-rockchip/ddr_rk3188.h    |  2 +-
 arch/arm/include/asm/gpio.h                   |  2 +-
 arch/arm/lib/vectors.S                        |  5 ++++-
 arch/arm/mach-rockchip/Kconfig                |  2 +-
 arch/arm/mach-rockchip/boot_mode.c            |  2 +-
 arch/arm/mach-rockchip/bootrom.c              |  4 ++--
 arch/arm/mach-rockchip/rk3036-board-spl.c     | 12 +++++------
 arch/arm/mach-rockchip/rk3036-board.c         | 10 +++++-----
 arch/arm/mach-rockchip/rk3036/Kconfig         |  2 +-
 arch/arm/mach-rockchip/rk3036/clk_rk3036.c    |  4 ++--
 arch/arm/mach-rockchip/rk3036/sdram_rk3036.c  | 12 +++++------
 arch/arm/mach-rockchip/rk3036/syscon_rk3036.c |  2 +-
 arch/arm/mach-rockchip/rk3128-board.c         | 10 +++++-----
 arch/arm/mach-rockchip/rk3128/Kconfig         |  2 +-
 arch/arm/mach-rockchip/rk3128/clk_rk3128.c    |  4 ++--
 arch/arm/mach-rockchip/rk3128/syscon_rk3128.c |  2 +-
 arch/arm/mach-rockchip/rk3188-board-spl.c     | 16 +++++++--------
 arch/arm/mach-rockchip/rk3188-board.c         | 10 +++++-----
 arch/arm/mach-rockchip/rk3188/Kconfig         |  2 +-
 arch/arm/mach-rockchip/rk3188/clk_rk3188.c    |  4 ++--
 arch/arm/mach-rockchip/rk3188/syscon_rk3188.c |  2 +-
 arch/arm/mach-rockchip/rk322x-board-spl.c     | 12 +++++------
 arch/arm/mach-rockchip/rk322x-board.c         | 10 +++++-----
 arch/arm/mach-rockchip/rk322x/Kconfig         |  2 +-
 arch/arm/mach-rockchip/rk322x/clk_rk322x.c    |  4 ++--
 arch/arm/mach-rockchip/rk322x/syscon_rk322x.c |  2 +-
 arch/arm/mach-rockchip/rk3288-board-spl.c     | 20 +++++++++----------
 arch/arm/mach-rockchip/rk3288-board-tpl.c     | 14 ++++++-------
 arch/arm/mach-rockchip/rk3288-board.c         | 12 +++++------
 arch/arm/mach-rockchip/rk3288/Kconfig         |  2 +-
 arch/arm/mach-rockchip/rk3288/clk_rk3288.c    |  4 ++--
 arch/arm/mach-rockchip/rk3288/rk3288.c        |  2 +-
 arch/arm/mach-rockchip/rk3288/syscon_rk3288.c |  2 +-
 arch/arm/mach-rockchip/rk3328/Kconfig         |  2 +-
 arch/arm/mach-rockchip/rk3328/clk_rk3328.c    |  4 ++--
 arch/arm/mach-rockchip/rk3328/rk3328.c        |  2 +-
 arch/arm/mach-rockchip/rk3328/syscon_rk3328.c |  2 +-
 arch/arm/mach-rockchip/rk3368-board-spl.c     | 10 +++++-----
 arch/arm/mach-rockchip/rk3368-board-tpl.c     | 12 +++++------
 arch/arm/mach-rockchip/rk3368/Kconfig         |  2 +-
 arch/arm/mach-rockchip/rk3368/clk_rk3368.c    |  4 ++--
 arch/arm/mach-rockchip/rk3368/rk3368.c        |  6 +++---
 arch/arm/mach-rockchip/rk3368/syscon_rk3368.c |  2 +-
 arch/arm/mach-rockchip/rk3399-board-spl.c     | 12 +++++------
 arch/arm/mach-rockchip/rk3399-board.c         |  2 +-
 arch/arm/mach-rockchip/rk3399/Kconfig         |  2 +-
 arch/arm/mach-rockchip/rk3399/clk_rk3399.c    |  4 ++--
 arch/arm/mach-rockchip/rk3399/rk3399.c        |  2 +-
 arch/arm/mach-rockchip/rk3399/syscon_rk3399.c |  2 +-
 arch/arm/mach-rockchip/rk_timer.c             |  2 +-
 arch/arm/mach-rockchip/rv1108/Kconfig         |  2 +-
 arch/arm/mach-rockchip/rv1108/clk_rv1108.c    |  4 ++--
 arch/arm/mach-rockchip/rv1108/syscon_rv1108.c |  2 +-
 arch/arm/mach-rockchip/sdram_common.c         |  2 +-
 board/elgin/elgin_rv1108/elgin_rv1108.c       |  4 ++--
 board/rockchip/evb_rk3036/evb_rk3036.c        |  4 ++--
 board/rockchip/evb_rk3229/evb_rk3229.c        |  2 +-
 board/rockchip/evb_rk3399/evb-rk3399.c        |  2 +-
 board/rockchip/evb_rv1108/evb_rv1108.c        |  4 ++--
 board/rockchip/kylin_rk3036/kylin_rk3036.c    |  4 ++--
 board/rockchip/sheep_rk3368/sheep_rk3368.c    |  4 ++--
 .../lion_rk3368/lion_rk3368.c                 |  6 +++---
 .../puma_rk3399/puma-rk3399.c                 | 10 +++++-----
 board/vamrs/rock960_rk3399/rock960-rk3399.c   |  2 +-
 cmd/rockusb.c                                 |  2 +-
 drivers/clk/rockchip/clk_rk3036.c             |  6 +++---
 drivers/clk/rockchip/clk_rk3128.c             |  6 +++---
 drivers/clk/rockchip/clk_rk3188.c             |  8 ++++----
 drivers/clk/rockchip/clk_rk322x.c             |  6 +++---
 drivers/clk/rockchip/clk_rk3288.c             |  8 ++++----
 drivers/clk/rockchip/clk_rk3328.c             |  8 ++++----
 drivers/clk/rockchip/clk_rk3368.c             |  6 +++---
 drivers/clk/rockchip/clk_rk3399.c             |  6 +++---
 drivers/clk/rockchip/clk_rv1108.c             |  6 +++---
 drivers/gpio/rk_gpio.c                        |  3 ++-
 drivers/i2c/rk_i2c.c                          |  6 +++---
 drivers/mmc/rockchip_dw_mmc.c                 |  4 ++--
 drivers/net/gmac_rockchip.c                   | 18 ++++++++---------
 drivers/pwm/rk_pwm.c                          |  2 +-
 drivers/ram/rockchip/dmc-rk3368.c             | 12 +++++------
 drivers/ram/rockchip/sdram_rk3128.c           |  6 +++---
 drivers/ram/rockchip/sdram_rk3188.c           | 14 ++++++-------
 drivers/ram/rockchip/sdram_rk322x.c           | 16 +++++++--------
 drivers/ram/rockchip/sdram_rk3288.c           | 14 ++++++-------
 drivers/ram/rockchip/sdram_rk3328.c           |  6 +++---
 drivers/ram/rockchip/sdram_rk3399.c           | 12 +++++------
 drivers/reset/reset-rockchip.c                |  2 +-
 drivers/serial/serial_rockchip.c              |  2 +-
 drivers/sound/rockchip_sound.c                |  2 +-
 drivers/spi/rk_spi.c                          |  4 ++--
 drivers/sysreset/sysreset_rockchip.c          |  6 +++---
 drivers/timer/rockchip_timer.c                |  2 +-
 drivers/usb/gadget/f_rockusb.c                |  2 +-
 drivers/video/rockchip/rk3288_hdmi.c          |  6 +++---
 drivers/video/rockchip/rk3288_mipi.c          | 10 +++++-----
 drivers/video/rockchip/rk3288_vop.c           |  6 +++---
 drivers/video/rockchip/rk3399_hdmi.c          |  6 +++---
 drivers/video/rockchip/rk3399_mipi.c          | 10 +++++-----
 drivers/video/rockchip/rk3399_vop.c           |  2 +-
 drivers/video/rockchip/rk_edp.c               |  6 +++---
 drivers/video/rockchip/rk_hdmi.c              |  5 ++---
 drivers/video/rockchip/rk_lvds.c              |  6 +++---
 drivers/video/rockchip/rk_mipi.c              |  9 ++++-----
 drivers/video/rockchip/rk_vop.c               |  7 +++----
 drivers/video/rockchip/rk_vop.h               |  2 +-
 include/configs/rk3036_common.h               |  2 +-
 include/configs/rk3188_common.h               |  2 +-
 include/configs/rk322x_common.h               |  2 +-
 include/configs/rk3288_common.h               |  2 +-
 include/configs/rk3368_common.h               |  2 +-
 include/configs/rv1108_common.h               |  2 +-
 112 files changed, 306 insertions(+), 301 deletions(-)

-- 
2.20.1

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [U-Boot] [PATCH 1/3] rockchip: arm: use 'arch-rockchip' for common header
  2019-03-28  3:01 [U-Boot] [PATCH 0/3] rockchip: correct SYS_SOC name for all rockchip SoCs Kever Yang
@ 2019-03-28  3:01 ` Kever Yang
  2019-03-28  7:02   ` Philipp Tomsich
                     ` (2 more replies)
  2019-03-28  3:01 ` [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path Kever Yang
  2019-03-28  3:01 ` [U-Boot] [PATCH 3/3] rockchip: correct ARCH_SOC name Kever Yang
  2 siblings, 3 replies; 24+ messages in thread
From: Kever Yang @ 2019-03-28  3:01 UTC (permalink / raw)
  To: u-boot

rockchip platform header file is in 'arch-rockchip'
instead of arch-$(SOC) for all SoCs.

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
---

 arch/arm/cpu/armv8/start.S  | 4 ++++
 arch/arm/include/asm/gpio.h | 2 +-
 arch/arm/lib/vectors.S      | 5 ++++-
 3 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/arch/arm/cpu/armv8/start.S b/arch/arm/cpu/armv8/start.S
index fe52166e28..ecee9e37a5 100644
--- a/arch/arm/cpu/armv8/start.S
+++ b/arch/arm/cpu/armv8/start.S
@@ -26,7 +26,11 @@ _start:
  * order to boot, allow them to set that in their boot0.h file and then
  * use it here.
  */
+#ifdef CONFIG_ARCH_ROCKCHIP
+#include <asm/arch-rockchip/boot0.h>
+#else
 #include <asm/arch/boot0.h>
+#endif
 #else
 	b	reset
 #endif
diff --git a/arch/arm/include/asm/gpio.h b/arch/arm/include/asm/gpio.h
index 3039e66bf9..b0c8c47c95 100644
--- a/arch/arm/include/asm/gpio.h
+++ b/arch/arm/include/asm/gpio.h
@@ -1,5 +1,5 @@
 #if !defined(CONFIG_ARCH_UNIPHIER) && !defined(CONFIG_ARCH_STI) && \
-	!defined(CONFIG_ARCH_K3)
+	!defined(CONFIG_ARCH_K3) && !defined(CONFIG_ARCH_ROCKCHIP)
 #include <asm/arch/gpio.h>
 #endif
 #include <asm-generic/gpio.h>
diff --git a/arch/arm/lib/vectors.S b/arch/arm/lib/vectors.S
index 2ca6e2494a..20f485142e 100644
--- a/arch/arm/lib/vectors.S
+++ b/arch/arm/lib/vectors.S
@@ -67,8 +67,11 @@
  *   (1) defines '_start:' as appropriate
  *   (2) inserts the vector table using ARM_VECTORS as appropriate
  */
+#ifdef CONFIG_ARCH_ROCKCHIP
+#include <asm/arch-rockchip/boot0.h>
+#else
 #include <asm/arch/boot0.h>
-
+#endif
 #else
 
 /*
-- 
2.20.1

^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path
  2019-03-28  3:01 [U-Boot] [PATCH 0/3] rockchip: correct SYS_SOC name for all rockchip SoCs Kever Yang
  2019-03-28  3:01 ` [U-Boot] [PATCH 1/3] rockchip: arm: use 'arch-rockchip' for common header Kever Yang
@ 2019-03-28  3:01 ` Kever Yang
  2019-03-30 21:18   ` Simon Glass
                     ` (2 more replies)
  2019-03-28  3:01 ` [U-Boot] [PATCH 3/3] rockchip: correct ARCH_SOC name Kever Yang
  2 siblings, 3 replies; 24+ messages in thread
From: Kever Yang @ 2019-03-28  3:01 UTC (permalink / raw)
  To: u-boot

Rockchip use 'arch-rockchip' instead of arch-$(SOC) as common
header file path, so that we can get the correct path directly.

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
---

 .../include/asm/arch-rockchip/ddr_rk3188.h    |  2 +-
 arch/arm/mach-rockchip/Kconfig                |  2 +-
 arch/arm/mach-rockchip/boot_mode.c            |  2 +-
 arch/arm/mach-rockchip/bootrom.c              |  4 ++--
 arch/arm/mach-rockchip/rk3036-board-spl.c     | 12 +++++------
 arch/arm/mach-rockchip/rk3036-board.c         | 10 +++++-----
 arch/arm/mach-rockchip/rk3036/clk_rk3036.c    |  4 ++--
 arch/arm/mach-rockchip/rk3036/sdram_rk3036.c  | 12 +++++------
 arch/arm/mach-rockchip/rk3036/syscon_rk3036.c |  2 +-
 arch/arm/mach-rockchip/rk3128-board.c         | 10 +++++-----
 arch/arm/mach-rockchip/rk3128/clk_rk3128.c    |  4 ++--
 arch/arm/mach-rockchip/rk3128/syscon_rk3128.c |  2 +-
 arch/arm/mach-rockchip/rk3188-board-spl.c     | 16 +++++++--------
 arch/arm/mach-rockchip/rk3188-board.c         | 10 +++++-----
 arch/arm/mach-rockchip/rk3188/clk_rk3188.c    |  4 ++--
 arch/arm/mach-rockchip/rk3188/syscon_rk3188.c |  2 +-
 arch/arm/mach-rockchip/rk322x-board-spl.c     | 12 +++++------
 arch/arm/mach-rockchip/rk322x-board.c         | 10 +++++-----
 arch/arm/mach-rockchip/rk322x/clk_rk322x.c    |  4 ++--
 arch/arm/mach-rockchip/rk322x/syscon_rk322x.c |  2 +-
 arch/arm/mach-rockchip/rk3288-board-spl.c     | 20 +++++++++----------
 arch/arm/mach-rockchip/rk3288-board-tpl.c     | 14 ++++++-------
 arch/arm/mach-rockchip/rk3288-board.c         | 12 +++++------
 arch/arm/mach-rockchip/rk3288/clk_rk3288.c    |  4 ++--
 arch/arm/mach-rockchip/rk3288/rk3288.c        |  2 +-
 arch/arm/mach-rockchip/rk3288/syscon_rk3288.c |  2 +-
 arch/arm/mach-rockchip/rk3328/clk_rk3328.c    |  4 ++--
 arch/arm/mach-rockchip/rk3328/rk3328.c        |  2 +-
 arch/arm/mach-rockchip/rk3328/syscon_rk3328.c |  2 +-
 arch/arm/mach-rockchip/rk3368-board-spl.c     | 10 +++++-----
 arch/arm/mach-rockchip/rk3368-board-tpl.c     | 12 +++++------
 arch/arm/mach-rockchip/rk3368/clk_rk3368.c    |  4 ++--
 arch/arm/mach-rockchip/rk3368/rk3368.c        |  6 +++---
 arch/arm/mach-rockchip/rk3368/syscon_rk3368.c |  2 +-
 arch/arm/mach-rockchip/rk3399-board-spl.c     | 12 +++++------
 arch/arm/mach-rockchip/rk3399-board.c         |  2 +-
 arch/arm/mach-rockchip/rk3399/clk_rk3399.c    |  4 ++--
 arch/arm/mach-rockchip/rk3399/rk3399.c        |  2 +-
 arch/arm/mach-rockchip/rk3399/syscon_rk3399.c |  2 +-
 arch/arm/mach-rockchip/rk_timer.c             |  2 +-
 arch/arm/mach-rockchip/rv1108/clk_rv1108.c    |  4 ++--
 arch/arm/mach-rockchip/rv1108/syscon_rv1108.c |  2 +-
 arch/arm/mach-rockchip/sdram_common.c         |  2 +-
 board/elgin/elgin_rv1108/elgin_rv1108.c       |  4 ++--
 board/rockchip/evb_rk3036/evb_rk3036.c        |  4 ++--
 board/rockchip/evb_rk3229/evb_rk3229.c        |  2 +-
 board/rockchip/evb_rk3399/evb-rk3399.c        |  2 +-
 board/rockchip/evb_rv1108/evb_rv1108.c        |  4 ++--
 board/rockchip/kylin_rk3036/kylin_rk3036.c    |  4 ++--
 board/rockchip/sheep_rk3368/sheep_rk3368.c    |  4 ++--
 .../lion_rk3368/lion_rk3368.c                 |  6 +++---
 .../puma_rk3399/puma-rk3399.c                 | 10 +++++-----
 board/vamrs/rock960_rk3399/rock960-rk3399.c   |  2 +-
 cmd/rockusb.c                                 |  2 +-
 drivers/clk/rockchip/clk_rk3036.c             |  6 +++---
 drivers/clk/rockchip/clk_rk3128.c             |  6 +++---
 drivers/clk/rockchip/clk_rk3188.c             |  8 ++++----
 drivers/clk/rockchip/clk_rk322x.c             |  6 +++---
 drivers/clk/rockchip/clk_rk3288.c             |  8 ++++----
 drivers/clk/rockchip/clk_rk3328.c             |  8 ++++----
 drivers/clk/rockchip/clk_rk3368.c             |  6 +++---
 drivers/clk/rockchip/clk_rk3399.c             |  6 +++---
 drivers/clk/rockchip/clk_rv1108.c             |  6 +++---
 drivers/gpio/rk_gpio.c                        |  3 ++-
 drivers/i2c/rk_i2c.c                          |  6 +++---
 drivers/mmc/rockchip_dw_mmc.c                 |  4 ++--
 drivers/net/gmac_rockchip.c                   | 18 ++++++++---------
 drivers/pwm/rk_pwm.c                          |  2 +-
 drivers/ram/rockchip/dmc-rk3368.c             | 12 +++++------
 drivers/ram/rockchip/sdram_rk3128.c           |  6 +++---
 drivers/ram/rockchip/sdram_rk3188.c           | 14 ++++++-------
 drivers/ram/rockchip/sdram_rk322x.c           | 16 +++++++--------
 drivers/ram/rockchip/sdram_rk3288.c           | 14 ++++++-------
 drivers/ram/rockchip/sdram_rk3328.c           |  6 +++---
 drivers/ram/rockchip/sdram_rk3399.c           | 12 +++++------
 drivers/reset/reset-rockchip.c                |  2 +-
 drivers/serial/serial_rockchip.c              |  2 +-
 drivers/sound/rockchip_sound.c                |  2 +-
 drivers/spi/rk_spi.c                          |  4 ++--
 drivers/sysreset/sysreset_rockchip.c          |  6 +++---
 drivers/timer/rockchip_timer.c                |  2 +-
 drivers/usb/gadget/f_rockusb.c                |  2 +-
 drivers/video/rockchip/rk3288_hdmi.c          |  6 +++---
 drivers/video/rockchip/rk3288_mipi.c          | 10 +++++-----
 drivers/video/rockchip/rk3288_vop.c           |  6 +++---
 drivers/video/rockchip/rk3399_hdmi.c          |  6 +++---
 drivers/video/rockchip/rk3399_mipi.c          | 10 +++++-----
 drivers/video/rockchip/rk3399_vop.c           |  2 +-
 drivers/video/rockchip/rk_edp.c               |  6 +++---
 drivers/video/rockchip/rk_hdmi.c              |  5 ++---
 drivers/video/rockchip/rk_lvds.c              |  6 +++---
 drivers/video/rockchip/rk_mipi.c              |  9 ++++-----
 drivers/video/rockchip/rk_vop.c               |  7 +++----
 drivers/video/rockchip/rk_vop.h               |  2 +-
 include/configs/rk3036_common.h               |  2 +-
 include/configs/rk3188_common.h               |  2 +-
 include/configs/rk322x_common.h               |  2 +-
 include/configs/rk3288_common.h               |  2 +-
 include/configs/rk3368_common.h               |  2 +-
 include/configs/rv1108_common.h               |  2 +-
 100 files changed, 288 insertions(+), 290 deletions(-)

diff --git a/arch/arm/include/asm/arch-rockchip/ddr_rk3188.h b/arch/arm/include/asm/arch-rockchip/ddr_rk3188.h
index a6d66d102b..db83d0e7d3 100644
--- a/arch/arm/include/asm/arch-rockchip/ddr_rk3188.h
+++ b/arch/arm/include/asm/arch-rockchip/ddr_rk3188.h
@@ -6,7 +6,7 @@
 #ifndef _ASM_ARCH_DDR_RK3188_H
 #define _ASM_ARCH_DDR_RK3188_H
 
-#include <asm/arch/ddr_rk3288.h>
+#include <asm/arch-rockchip/ddr_rk3288.h>
 
 /*
  * RK3188 Memory scheduler register map.
diff --git a/arch/arm/mach-rockchip/Kconfig b/arch/arm/mach-rockchip/Kconfig
index 2380e1db17..7e5a73f92c 100644
--- a/arch/arm/mach-rockchip/Kconfig
+++ b/arch/arm/mach-rockchip/Kconfig
@@ -193,7 +193,7 @@ config ROCKCHIP_BOOT_MODE_REG
 	default 0x10300580 if ROCKCHIP_RV1108
 	default 0
 	help
-	  The Soc will enter to different boot mode(defined in asm/arch/boot_mode.h)
+	  The Soc will enter to different boot mode(defined in asm/arch-rockchip/boot_mode.h)
 	  according to the value from this register.
 
 config ROCKCHIP_SPL_RESERVE_IRAM
diff --git a/arch/arm/mach-rockchip/boot_mode.c b/arch/arm/mach-rockchip/boot_mode.c
index d7997d71e3..29e4bccc71 100644
--- a/arch/arm/mach-rockchip/boot_mode.c
+++ b/arch/arm/mach-rockchip/boot_mode.c
@@ -6,7 +6,7 @@
 #include <common.h>
 #include <adc.h>
 #include <asm/io.h>
-#include <asm/arch/boot_mode.h>
+#include <asm/arch-rockchip/boot_mode.h>
 
 #if (CONFIG_ROCKCHIP_BOOT_MODE_REG == 0)
 
diff --git a/arch/arm/mach-rockchip/bootrom.c b/arch/arm/mach-rockchip/bootrom.c
index 2f2f73aedd..9ccb45e6ac 100644
--- a/arch/arm/mach-rockchip/bootrom.c
+++ b/arch/arm/mach-rockchip/bootrom.c
@@ -4,8 +4,8 @@
  */
 
 #include <common.h>
-#include <asm/arch/bootrom.h>
-#include <asm/arch/boot_mode.h>
+#include <asm/arch-rockchip/bootrom.h>
+#include <asm/arch-rockchip/boot_mode.h>
 #include <asm/io.h>
 #include <asm/setjmp.h>
 #include <asm/system.h>
diff --git a/arch/arm/mach-rockchip/rk3036-board-spl.c b/arch/arm/mach-rockchip/rk3036-board-spl.c
index 5ec69f1311..b897ffeae2 100644
--- a/arch/arm/mach-rockchip/rk3036-board-spl.c
+++ b/arch/arm/mach-rockchip/rk3036-board-spl.c
@@ -6,12 +6,12 @@
 #include <common.h>
 #include <debug_uart.h>
 #include <asm/io.h>
-#include <asm/arch/bootrom.h>
-#include <asm/arch/grf_rk3036.h>
-#include <asm/arch/hardware.h>
-#include <asm/arch/sdram_rk3036.h>
-#include <asm/arch/timer.h>
-#include <asm/arch/uart.h>
+#include <asm/arch-rockchip/bootrom.h>
+#include <asm/arch-rockchip/grf_rk3036.h>
+#include <asm/arch-rockchip/hardware.h>
+#include <asm/arch-rockchip/sdram_rk3036.h>
+#include <asm/arch-rockchip/timer.h>
+#include <asm/arch-rockchip/uart.h>
 
 #define GRF_BASE	0x20008000
 
diff --git a/arch/arm/mach-rockchip/rk3036-board.c b/arch/arm/mach-rockchip/rk3036-board.c
index 872bed9606..2094a4336d 100644
--- a/arch/arm/mach-rockchip/rk3036-board.c
+++ b/arch/arm/mach-rockchip/rk3036-board.c
@@ -9,11 +9,11 @@
 #include <ram.h>
 #include <asm/gpio.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/periph.h>
-#include <asm/arch/grf_rk3036.h>
-#include <asm/arch/boot_mode.h>
-#include <asm/arch/sdram_rk3036.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/periph.h>
+#include <asm/arch-rockchip/grf_rk3036.h>
+#include <asm/arch-rockchip/boot_mode.h>
+#include <asm/arch-rockchip/sdram_rk3036.h>
 #include <dm/pinctrl.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/arm/mach-rockchip/rk3036/clk_rk3036.c b/arch/arm/mach-rockchip/rk3036/clk_rk3036.c
index 2145c59fcd..20e2ed6813 100644
--- a/arch/arm/mach-rockchip/rk3036/clk_rk3036.c
+++ b/arch/arm/mach-rockchip/rk3036/clk_rk3036.c
@@ -7,8 +7,8 @@
 #include <common.h>
 #include <dm.h>
 #include <syscon.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk3036.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk3036.h>
 
 int rockchip_get_clk(struct udevice **devp)
 {
diff --git a/arch/arm/mach-rockchip/rk3036/sdram_rk3036.c b/arch/arm/mach-rockchip/rk3036/sdram_rk3036.c
index 2012d9fe04..1d940a0d77 100644
--- a/arch/arm/mach-rockchip/rk3036/sdram_rk3036.c
+++ b/arch/arm/mach-rockchip/rk3036/sdram_rk3036.c
@@ -5,12 +5,12 @@
 #include <common.h>
 #include <asm/io.h>
 #include <asm/types.h>
-#include <asm/arch/cru_rk3036.h>
-#include <asm/arch/grf_rk3036.h>
-#include <asm/arch/hardware.h>
-#include <asm/arch/sdram_rk3036.h>
-#include <asm/arch/timer.h>
-#include <asm/arch/uart.h>
+#include <asm/arch-rockchip/cru_rk3036.h>
+#include <asm/arch-rockchip/grf_rk3036.h>
+#include <asm/arch-rockchip/hardware.h>
+#include <asm/arch-rockchip/sdram_rk3036.h>
+#include <asm/arch-rockchip/timer.h>
+#include <asm/arch-rockchip/uart.h>
 
 /*
  * we can not fit the code to access the device tree in SPL
diff --git a/arch/arm/mach-rockchip/rk3036/syscon_rk3036.c b/arch/arm/mach-rockchip/rk3036/syscon_rk3036.c
index d3f4cc77f1..c2fd160799 100644
--- a/arch/arm/mach-rockchip/rk3036/syscon_rk3036.c
+++ b/arch/arm/mach-rockchip/rk3036/syscon_rk3036.c
@@ -6,7 +6,7 @@
 #include <common.h>
 #include <dm.h>
 #include <syscon.h>
-#include <asm/arch/clock.h>
+#include <asm/arch-rockchip/clock.h>
 
 static const struct udevice_id rk3036_syscon_ids[] = {
 	{ .compatible = "rockchip,rk3036-grf", .data = ROCKCHIP_SYSCON_GRF },
diff --git a/arch/arm/mach-rockchip/rk3128-board.c b/arch/arm/mach-rockchip/rk3128-board.c
index f64ccc51a0..1f7f67e113 100644
--- a/arch/arm/mach-rockchip/rk3128-board.c
+++ b/arch/arm/mach-rockchip/rk3128-board.c
@@ -8,11 +8,11 @@
 #include <ram.h>
 #include <syscon.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/periph.h>
-#include <asm/arch/grf_rk3128.h>
-#include <asm/arch/boot_mode.h>
-#include <asm/arch/timer.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/periph.h>
+#include <asm/arch-rockchip/grf_rk3128.h>
+#include <asm/arch-rockchip/boot_mode.h>
+#include <asm/arch-rockchip/timer.h>
 #include <power/regulator.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/arm/mach-rockchip/rk3128/clk_rk3128.c b/arch/arm/mach-rockchip/rk3128/clk_rk3128.c
index b9b0297579..827750bf98 100644
--- a/arch/arm/mach-rockchip/rk3128/clk_rk3128.c
+++ b/arch/arm/mach-rockchip/rk3128/clk_rk3128.c
@@ -6,8 +6,8 @@
 #include <common.h>
 #include <dm.h>
 #include <syscon.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk3128.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk3128.h>
 
 int rockchip_get_clk(struct udevice **devp)
 {
diff --git a/arch/arm/mach-rockchip/rk3128/syscon_rk3128.c b/arch/arm/mach-rockchip/rk3128/syscon_rk3128.c
index 8117895434..1406d5d0d3 100644
--- a/arch/arm/mach-rockchip/rk3128/syscon_rk3128.c
+++ b/arch/arm/mach-rockchip/rk3128/syscon_rk3128.c
@@ -6,7 +6,7 @@
 #include <common.h>
 #include <dm.h>
 #include <syscon.h>
-#include <asm/arch/clock.h>
+#include <asm/arch-rockchip/clock.h>
 
 static const struct udevice_id rk3128_syscon_ids[] = {
 	{ .compatible = "rockchip,rk3128-grf", .data = ROCKCHIP_SYSCON_GRF },
diff --git a/arch/arm/mach-rockchip/rk3188-board-spl.c b/arch/arm/mach-rockchip/rk3188-board-spl.c
index 5c09b0e4ae..230d69c4c1 100644
--- a/arch/arm/mach-rockchip/rk3188-board-spl.c
+++ b/arch/arm/mach-rockchip/rk3188-board-spl.c
@@ -15,14 +15,14 @@
 #include <syscon.h>
 #include <asm/gpio.h>
 #include <asm/io.h>
-#include <asm/arch/bootrom.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/grf_rk3188.h>
-#include <asm/arch/hardware.h>
-#include <asm/arch/periph.h>
-#include <asm/arch/pmu_rk3188.h>
-#include <asm/arch/sdram.h>
-#include <asm/arch/timer.h>
+#include <asm/arch-rockchip/bootrom.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/grf_rk3188.h>
+#include <asm/arch-rockchip/hardware.h>
+#include <asm/arch-rockchip/periph.h>
+#include <asm/arch-rockchip/pmu_rk3188.h>
+#include <asm/arch-rockchip/sdram.h>
+#include <asm/arch-rockchip/timer.h>
 #include <dm/pinctrl.h>
 #include <dm/root.h>
 #include <dm/test.h>
diff --git a/arch/arm/mach-rockchip/rk3188-board.c b/arch/arm/mach-rockchip/rk3188-board.c
index 3802395bc0..e03759f789 100644
--- a/arch/arm/mach-rockchip/rk3188-board.c
+++ b/arch/arm/mach-rockchip/rk3188-board.c
@@ -10,11 +10,11 @@
 #include <syscon.h>
 #include <asm/gpio.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/grf_rk3188.h>
-#include <asm/arch/periph.h>
-#include <asm/arch/pmu_rk3288.h>
-#include <asm/arch/boot_mode.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/grf_rk3188.h>
+#include <asm/arch-rockchip/periph.h>
+#include <asm/arch-rockchip/pmu_rk3288.h>
+#include <asm/arch-rockchip/boot_mode.h>
 #include <dm/pinctrl.h>
 
 __weak int rk_board_late_init(void)
diff --git a/arch/arm/mach-rockchip/rk3188/clk_rk3188.c b/arch/arm/mach-rockchip/rk3188/clk_rk3188.c
index e8fcec70cd..9d4fc37eda 100644
--- a/arch/arm/mach-rockchip/rk3188/clk_rk3188.c
+++ b/arch/arm/mach-rockchip/rk3188/clk_rk3188.c
@@ -7,8 +7,8 @@
 #include <common.h>
 #include <dm.h>
 #include <syscon.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk3188.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk3188.h>
 
 int rockchip_get_clk(struct udevice **devp)
 {
diff --git a/arch/arm/mach-rockchip/rk3188/syscon_rk3188.c b/arch/arm/mach-rockchip/rk3188/syscon_rk3188.c
index 6572bfa6a2..94f4ec7227 100644
--- a/arch/arm/mach-rockchip/rk3188/syscon_rk3188.c
+++ b/arch/arm/mach-rockchip/rk3188/syscon_rk3188.c
@@ -7,7 +7,7 @@
 #include <common.h>
 #include <dm.h>
 #include <syscon.h>
-#include <asm/arch/clock.h>
+#include <asm/arch-rockchip/clock.h>
 
 static const struct udevice_id rk3188_syscon_ids[] = {
 	{ .compatible = "rockchip,rk3188-noc", .data = ROCKCHIP_SYSCON_NOC },
diff --git a/arch/arm/mach-rockchip/rk322x-board-spl.c b/arch/arm/mach-rockchip/rk322x-board-spl.c
index 1e718f2694..c50130c3b5 100644
--- a/arch/arm/mach-rockchip/rk322x-board-spl.c
+++ b/arch/arm/mach-rockchip/rk322x-board-spl.c
@@ -9,12 +9,12 @@
 #include <ram.h>
 #include <spl.h>
 #include <asm/io.h>
-#include <asm/arch/bootrom.h>
-#include <asm/arch/cru_rk322x.h>
-#include <asm/arch/grf_rk322x.h>
-#include <asm/arch/hardware.h>
-#include <asm/arch/timer.h>
-#include <asm/arch/uart.h>
+#include <asm/arch-rockchip/bootrom.h>
+#include <asm/arch-rockchip/cru_rk322x.h>
+#include <asm/arch-rockchip/grf_rk322x.h>
+#include <asm/arch-rockchip/hardware.h>
+#include <asm/arch-rockchip/timer.h>
+#include <asm/arch-rockchip/uart.h>
 
 u32 spl_boot_device(void)
 {
diff --git a/arch/arm/mach-rockchip/rk322x-board.c b/arch/arm/mach-rockchip/rk322x-board.c
index 0ef53803c2..9aad6bb0bc 100644
--- a/arch/arm/mach-rockchip/rk322x-board.c
+++ b/arch/arm/mach-rockchip/rk322x-board.c
@@ -8,10 +8,10 @@
 #include <ram.h>
 #include <syscon.h>
 #include <asm/io.h>
-#include <asm/arch/boot_mode.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/periph.h>
-#include <asm/arch/grf_rk322x.h>
+#include <asm/arch-rockchip/boot_mode.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/periph.h>
+#include <asm/arch-rockchip/grf_rk322x.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
@@ -29,7 +29,7 @@ int board_late_init(void)
 
 int board_init(void)
 {
-#include <asm/arch/grf_rk322x.h>
+#include <asm/arch-rockchip/grf_rk322x.h>
 	/* Enable early UART2 channel 1 on the RK322x */
 #define GRF_BASE	0x11000000
 	struct rk322x_grf * const grf = (void *)GRF_BASE;
diff --git a/arch/arm/mach-rockchip/rk322x/clk_rk322x.c b/arch/arm/mach-rockchip/rk322x/clk_rk322x.c
index accf9443b0..958c7b82b9 100644
--- a/arch/arm/mach-rockchip/rk322x/clk_rk322x.c
+++ b/arch/arm/mach-rockchip/rk322x/clk_rk322x.c
@@ -6,8 +6,8 @@
 #include <common.h>
 #include <dm.h>
 #include <syscon.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk322x.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk322x.h>
 
 int rockchip_get_clk(struct udevice **devp)
 {
diff --git a/arch/arm/mach-rockchip/rk322x/syscon_rk322x.c b/arch/arm/mach-rockchip/rk322x/syscon_rk322x.c
index 9aa64f8f1f..0d9dca8173 100644
--- a/arch/arm/mach-rockchip/rk322x/syscon_rk322x.c
+++ b/arch/arm/mach-rockchip/rk322x/syscon_rk322x.c
@@ -6,7 +6,7 @@
 #include <common.h>
 #include <dm.h>
 #include <syscon.h>
-#include <asm/arch/clock.h>
+#include <asm/arch-rockchip/clock.h>
 
 static const struct udevice_id rk322x_syscon_ids[] = {
 	{ .compatible = "rockchip,rk3228-grf", .data = ROCKCHIP_SYSCON_GRF },
diff --git a/arch/arm/mach-rockchip/rk3288-board-spl.c b/arch/arm/mach-rockchip/rk3288-board-spl.c
index 93c772184d..937a99db53 100644
--- a/arch/arm/mach-rockchip/rk3288-board-spl.c
+++ b/arch/arm/mach-rockchip/rk3288-board-spl.c
@@ -14,15 +14,15 @@
 #include <spl.h>
 #include <asm/gpio.h>
 #include <asm/io.h>
-#include <asm/arch/bootrom.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/hardware.h>
-#include <asm/arch/periph.h>
-#include <asm/arch/pmu_rk3288.h>
-#include <asm/arch/sdram.h>
-#include <asm/arch/sdram_common.h>
-#include <asm/arch/sys_proto.h>
-#include <asm/arch/timer.h>
+#include <asm/arch-rockchip/bootrom.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/hardware.h>
+#include <asm/arch-rockchip/periph.h>
+#include <asm/arch-rockchip/pmu_rk3288.h>
+#include <asm/arch-rockchip/sdram.h>
+#include <asm/arch-rockchip/sdram_common.h>
+#include <asm/arch-rockchip/sys_proto.h>
+#include <asm/arch-rockchip/timer.h>
 #include <dm/pinctrl.h>
 #include <dm/root.h>
 #include <dm/test.h>
@@ -110,7 +110,7 @@ void board_init_f(ulong dummy)
 	int ret;
 
 	/* Example code showing how to enable the debug UART on RK3288 */
-#include <asm/arch/grf_rk3288.h>
+#include <asm/arch-rockchip/grf_rk3288.h>
 	/* Enable early UART on the RK3288 */
 #define GRF_BASE	0xff770000
 	struct rk3288_grf * const grf = (void *)GRF_BASE;
diff --git a/arch/arm/mach-rockchip/rk3288-board-tpl.c b/arch/arm/mach-rockchip/rk3288-board-tpl.c
index 2aa63f515a..a430bb43ad 100644
--- a/arch/arm/mach-rockchip/rk3288-board-tpl.c
+++ b/arch/arm/mach-rockchip/rk3288-board-tpl.c
@@ -10,13 +10,13 @@
 #include <spl.h>
 #include <version.h>
 #include <asm/io.h>
-#include <asm/arch/bootrom.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/grf_rk3288.h>
-#include <asm/arch/periph.h>
-#include <asm/arch/pmu_rk3288.h>
-#include <asm/arch/sys_proto.h>
-#include <asm/arch/timer.h>
+#include <asm/arch-rockchip/bootrom.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/grf_rk3288.h>
+#include <asm/arch-rockchip/periph.h>
+#include <asm/arch-rockchip/pmu_rk3288.h>
+#include <asm/arch-rockchip/sys_proto.h>
+#include <asm/arch-rockchip/timer.h>
 
 #define GRF_BASE		0xff770000
 void board_init_f(ulong dummy)
diff --git a/arch/arm/mach-rockchip/rk3288-board.c b/arch/arm/mach-rockchip/rk3288-board.c
index 9c4f7f219f..c9b7375f92 100644
--- a/arch/arm/mach-rockchip/rk3288-board.c
+++ b/arch/arm/mach-rockchip/rk3288-board.c
@@ -9,12 +9,12 @@
 #include <ram.h>
 #include <syscon.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk3288.h>
-#include <asm/arch/periph.h>
-#include <asm/arch/pmu_rk3288.h>
-#include <asm/arch/qos_rk3288.h>
-#include <asm/arch/boot_mode.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk3288.h>
+#include <asm/arch-rockchip/periph.h>
+#include <asm/arch-rockchip/pmu_rk3288.h>
+#include <asm/arch-rockchip/qos_rk3288.h>
+#include <asm/arch-rockchip/boot_mode.h>
 #include <asm/gpio.h>
 #include <dm/pinctrl.h>
 #include <dt-bindings/clock/rk3288-cru.h>
diff --git a/arch/arm/mach-rockchip/rk3288/clk_rk3288.c b/arch/arm/mach-rockchip/rk3288/clk_rk3288.c
index 6ca2271869..e64ee86f08 100644
--- a/arch/arm/mach-rockchip/rk3288/clk_rk3288.c
+++ b/arch/arm/mach-rockchip/rk3288/clk_rk3288.c
@@ -7,8 +7,8 @@
 #include <common.h>
 #include <dm.h>
 #include <syscon.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk3288.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk3288.h>
 
 int rockchip_get_clk(struct udevice **devp)
 {
diff --git a/arch/arm/mach-rockchip/rk3288/rk3288.c b/arch/arm/mach-rockchip/rk3288/rk3288.c
index a725abc5a5..af3a465cc3 100644
--- a/arch/arm/mach-rockchip/rk3288/rk3288.c
+++ b/arch/arm/mach-rockchip/rk3288/rk3288.c
@@ -3,7 +3,7 @@
  * Copyright (c) 2016 Rockchip Electronics Co., Ltd
  */
 #include <asm/io.h>
-#include <asm/arch/hardware.h>
+#include <asm/arch-rockchip/hardware.h>
 
 #define GRF_SOC_CON2 0xff77024c
 
diff --git a/arch/arm/mach-rockchip/rk3288/syscon_rk3288.c b/arch/arm/mach-rockchip/rk3288/syscon_rk3288.c
index 3bc80281c7..dff2caa598 100644
--- a/arch/arm/mach-rockchip/rk3288/syscon_rk3288.c
+++ b/arch/arm/mach-rockchip/rk3288/syscon_rk3288.c
@@ -7,7 +7,7 @@
 #include <common.h>
 #include <dm.h>
 #include <syscon.h>
-#include <asm/arch/clock.h>
+#include <asm/arch-rockchip/clock.h>
 
 static const struct udevice_id rk3288_syscon_ids[] = {
 	{ .compatible = "rockchip,rk3288-noc", .data = ROCKCHIP_SYSCON_NOC },
diff --git a/arch/arm/mach-rockchip/rk3328/clk_rk3328.c b/arch/arm/mach-rockchip/rk3328/clk_rk3328.c
index e5c2ce5766..f64f0cbbe5 100644
--- a/arch/arm/mach-rockchip/rk3328/clk_rk3328.c
+++ b/arch/arm/mach-rockchip/rk3328/clk_rk3328.c
@@ -5,8 +5,8 @@
 
 #include <common.h>
 #include <dm.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk3328.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk3328.h>
 
 int rockchip_get_clk(struct udevice **devp)
 {
diff --git a/arch/arm/mach-rockchip/rk3328/rk3328.c b/arch/arm/mach-rockchip/rk3328/rk3328.c
index a519f5fb84..1cf829dc34 100644
--- a/arch/arm/mach-rockchip/rk3328/rk3328.c
+++ b/arch/arm/mach-rockchip/rk3328/rk3328.c
@@ -4,7 +4,7 @@
  */
 
 #include <common.h>
-#include <asm/arch/hardware.h>
+#include <asm/arch-rockchip/hardware.h>
 #include <asm/armv8/mmu.h>
 #include <asm/io.h>
 
diff --git a/arch/arm/mach-rockchip/rk3328/syscon_rk3328.c b/arch/arm/mach-rockchip/rk3328/syscon_rk3328.c
index 28dd8cb20a..8a0eceb178 100644
--- a/arch/arm/mach-rockchip/rk3328/syscon_rk3328.c
+++ b/arch/arm/mach-rockchip/rk3328/syscon_rk3328.c
@@ -4,7 +4,7 @@
  */
 
 #include <common.h>
-#include <asm/arch/clock.h>
+#include <asm/arch-rockchip/clock.h>
 #include <dm.h>
 #include <syscon.h>
 
diff --git a/arch/arm/mach-rockchip/rk3368-board-spl.c b/arch/arm/mach-rockchip/rk3368-board-spl.c
index 230850ad6c..9dea4ed994 100644
--- a/arch/arm/mach-rockchip/rk3368-board-spl.c
+++ b/arch/arm/mach-rockchip/rk3368-board-spl.c
@@ -9,11 +9,11 @@
 #include <ram.h>
 #include <spl.h>
 #include <asm/io.h>
-#include <asm/arch/cru_rk3368.h>
-#include <asm/arch/grf_rk3368.h>
-#include <asm/arch/hardware.h>
-#include <asm/arch/periph.h>
-#include <asm/arch/timer.h>
+#include <asm/arch-rockchip/cru_rk3368.h>
+#include <asm/arch-rockchip/grf_rk3368.h>
+#include <asm/arch-rockchip/hardware.h>
+#include <asm/arch-rockchip/periph.h>
+#include <asm/arch-rockchip/timer.h>
 #include <dm/pinctrl.h>
 
 void board_debug_uart_init(void)
diff --git a/arch/arm/mach-rockchip/rk3368-board-tpl.c b/arch/arm/mach-rockchip/rk3368-board-tpl.c
index f90a1fdca7..373f009414 100644
--- a/arch/arm/mach-rockchip/rk3368-board-tpl.c
+++ b/arch/arm/mach-rockchip/rk3368-board-tpl.c
@@ -10,12 +10,12 @@
 #include <spl.h>
 #include <syscon.h>
 #include <asm/io.h>
-#include <asm/arch/bootrom.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk3368.h>
-#include <asm/arch/grf_rk3368.h>
-#include <asm/arch/hardware.h>
-#include <asm/arch/timer.h>
+#include <asm/arch-rockchip/bootrom.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk3368.h>
+#include <asm/arch-rockchip/grf_rk3368.h>
+#include <asm/arch-rockchip/hardware.h>
+#include <asm/arch-rockchip/timer.h>
 
 /*
  * The SPL (and also the full U-Boot stage on the RK3368) will run in
diff --git a/arch/arm/mach-rockchip/rk3368/clk_rk3368.c b/arch/arm/mach-rockchip/rk3368/clk_rk3368.c
index 722160dfdc..55e5dd768a 100644
--- a/arch/arm/mach-rockchip/rk3368/clk_rk3368.c
+++ b/arch/arm/mach-rockchip/rk3368/clk_rk3368.c
@@ -7,8 +7,8 @@
 #include <common.h>
 #include <dm.h>
 #include <syscon.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk3368.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk3368.h>
 
 int rockchip_get_clk(struct udevice **devp)
 {
diff --git a/arch/arm/mach-rockchip/rk3368/rk3368.c b/arch/arm/mach-rockchip/rk3368/rk3368.c
index 6d5d4cc760..197f0c485a 100644
--- a/arch/arm/mach-rockchip/rk3368/rk3368.c
+++ b/arch/arm/mach-rockchip/rk3368/rk3368.c
@@ -7,9 +7,9 @@
 #include <common.h>
 #include <asm/armv8/mmu.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk3368.h>
-#include <asm/arch/grf_rk3368.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk3368.h>
+#include <asm/arch-rockchip/grf_rk3368.h>
 #include <syscon.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/arch/arm/mach-rockchip/rk3368/syscon_rk3368.c b/arch/arm/mach-rockchip/rk3368/syscon_rk3368.c
index c08ce437ea..4ba94f2e80 100644
--- a/arch/arm/mach-rockchip/rk3368/syscon_rk3368.c
+++ b/arch/arm/mach-rockchip/rk3368/syscon_rk3368.c
@@ -8,7 +8,7 @@
 #include <common.h>
 #include <dm.h>
 #include <syscon.h>
-#include <asm/arch/clock.h>
+#include <asm/arch-rockchip/clock.h>
 
 static const struct udevice_id rk3368_syscon_ids[] = {
 	{ .compatible = "rockchip,rk3368-grf",
diff --git a/arch/arm/mach-rockchip/rk3399-board-spl.c b/arch/arm/mach-rockchip/rk3399-board-spl.c
index ccc136f388..54a4b848a3 100644
--- a/arch/arm/mach-rockchip/rk3399-board-spl.c
+++ b/arch/arm/mach-rockchip/rk3399-board-spl.c
@@ -12,12 +12,12 @@
 #include <spl_gpio.h>
 #include <syscon.h>
 #include <asm/io.h>
-#include <asm/arch/bootrom.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/grf_rk3399.h>
-#include <asm/arch/hardware.h>
-#include <asm/arch/periph.h>
-#include <asm/arch/sys_proto.h>
+#include <asm/arch-rockchip/bootrom.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/grf_rk3399.h>
+#include <asm/arch-rockchip/hardware.h>
+#include <asm/arch-rockchip/periph.h>
+#include <asm/arch-rockchip/sys_proto.h>
 #include <dm/pinctrl.h>
 
 void board_return_to_bootrom(void)
diff --git a/arch/arm/mach-rockchip/rk3399-board.c b/arch/arm/mach-rockchip/rk3399-board.c
index 137ec714c2..443c87cccc 100644
--- a/arch/arm/mach-rockchip/rk3399-board.c
+++ b/arch/arm/mach-rockchip/rk3399-board.c
@@ -4,7 +4,7 @@
  */
 
 #include <common.h>
-#include <asm/arch/boot_mode.h>
+#include <asm/arch-rockchip/boot_mode.h>
 
 int board_late_init(void)
 {
diff --git a/arch/arm/mach-rockchip/rk3399/clk_rk3399.c b/arch/arm/mach-rockchip/rk3399/clk_rk3399.c
index 98f7482f79..f0411c0a21 100644
--- a/arch/arm/mach-rockchip/rk3399/clk_rk3399.c
+++ b/arch/arm/mach-rockchip/rk3399/clk_rk3399.c
@@ -7,8 +7,8 @@
 #include <common.h>
 #include <dm.h>
 #include <syscon.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk3399.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk3399.h>
 
 static int rockchip_get_cruclk(struct udevice **devp)
 {
diff --git a/arch/arm/mach-rockchip/rk3399/rk3399.c b/arch/arm/mach-rockchip/rk3399/rk3399.c
index d8467d7333..7567a4f584 100644
--- a/arch/arm/mach-rockchip/rk3399/rk3399.c
+++ b/arch/arm/mach-rockchip/rk3399/rk3399.c
@@ -6,7 +6,7 @@
 #include <common.h>
 #include <asm/armv8/mmu.h>
 #include <asm/io.h>
-#include <asm/arch/hardware.h>
+#include <asm/arch-rockchip/hardware.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/arch/arm/mach-rockchip/rk3399/syscon_rk3399.c b/arch/arm/mach-rockchip/rk3399/syscon_rk3399.c
index 98f4be970f..a8bb5b11e5 100644
--- a/arch/arm/mach-rockchip/rk3399/syscon_rk3399.c
+++ b/arch/arm/mach-rockchip/rk3399/syscon_rk3399.c
@@ -6,7 +6,7 @@
 #include <common.h>
 #include <dm.h>
 #include <syscon.h>
-#include <asm/arch/clock.h>
+#include <asm/arch-rockchip/clock.h>
 
 static const struct udevice_id rk3399_syscon_ids[] = {
 	{ .compatible = "rockchip,rk3399-grf", .data = ROCKCHIP_SYSCON_GRF },
diff --git a/arch/arm/mach-rockchip/rk_timer.c b/arch/arm/mach-rockchip/rk_timer.c
index e751f29d0f..f20e64f48e 100644
--- a/arch/arm/mach-rockchip/rk_timer.c
+++ b/arch/arm/mach-rockchip/rk_timer.c
@@ -4,7 +4,7 @@
  */
 
 #include <common.h>
-#include <asm/arch/timer.h>
+#include <asm/arch-rockchip/timer.h>
 #include <asm/io.h>
 #include <linux/types.h>
 
diff --git a/arch/arm/mach-rockchip/rv1108/clk_rv1108.c b/arch/arm/mach-rockchip/rv1108/clk_rv1108.c
index 5f3705cc39..58a7e889cc 100644
--- a/arch/arm/mach-rockchip/rv1108/clk_rv1108.c
+++ b/arch/arm/mach-rockchip/rv1108/clk_rv1108.c
@@ -7,8 +7,8 @@
 #include <common.h>
 #include <dm.h>
 #include <syscon.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rv1108.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rv1108.h>
 
 int rockchip_get_clk(struct udevice **devp)
 {
diff --git a/arch/arm/mach-rockchip/rv1108/syscon_rv1108.c b/arch/arm/mach-rockchip/rv1108/syscon_rv1108.c
index 5a0f0a5611..babdf5720b 100644
--- a/arch/arm/mach-rockchip/rv1108/syscon_rv1108.c
+++ b/arch/arm/mach-rockchip/rv1108/syscon_rv1108.c
@@ -6,7 +6,7 @@
 #include <common.h>
 #include <dm.h>
 #include <syscon.h>
-#include <asm/arch/clock.h>
+#include <asm/arch-rockchip/clock.h>
 
 static const struct udevice_id rv1108_syscon_ids[] = {
 	{ .compatible = "rockchip,rv1108-grf", .data = ROCKCHIP_SYSCON_GRF },
diff --git a/arch/arm/mach-rockchip/sdram_common.c b/arch/arm/mach-rockchip/sdram_common.c
index a27138083a..8684dbd4fa 100644
--- a/arch/arm/mach-rockchip/sdram_common.c
+++ b/arch/arm/mach-rockchip/sdram_common.c
@@ -7,7 +7,7 @@
 #include <dm.h>
 #include <ram.h>
 #include <asm/io.h>
-#include <asm/arch/sdram_common.h>
+#include <asm/arch-rockchip/sdram_common.h>
 #include <dm/uclass-internal.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/board/elgin/elgin_rv1108/elgin_rv1108.c b/board/elgin/elgin_rv1108/elgin_rv1108.c
index 3abc514412..0de1f4243e 100644
--- a/board/elgin/elgin_rv1108/elgin_rv1108.c
+++ b/board/elgin/elgin_rv1108/elgin_rv1108.c
@@ -7,8 +7,8 @@
 #include <common.h>
 #include <asm/io.h>
 #include <fdtdec.h>
-#include <asm/arch/grf_rv1108.h>
-#include <asm/arch/hardware.h>
+#include <asm/arch-rockchip/grf_rv1108.h>
+#include <asm/arch-rockchip/hardware.h>
 #include <asm/gpio.h>
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/board/rockchip/evb_rk3036/evb_rk3036.c b/board/rockchip/evb_rk3036/evb_rk3036.c
index d5acc4fe27..8c606463e4 100644
--- a/board/rockchip/evb_rk3036/evb_rk3036.c
+++ b/board/rockchip/evb_rk3036/evb_rk3036.c
@@ -6,8 +6,8 @@
 #include <common.h>
 #include <dm.h>
 #include <asm/io.h>
-#include <asm/arch/uart.h>
-#include <asm/arch/sdram_rk3036.h>
+#include <asm/arch-rockchip/uart.h>
+#include <asm/arch-rockchip/sdram_rk3036.h>
 
 void get_ddr_config(struct rk3036_ddr_config *config)
 {
diff --git a/board/rockchip/evb_rk3229/evb_rk3229.c b/board/rockchip/evb_rk3229/evb_rk3229.c
index 63c84fccfe..c64c62f7b0 100644
--- a/board/rockchip/evb_rk3229/evb_rk3229.c
+++ b/board/rockchip/evb_rk3229/evb_rk3229.c
@@ -6,5 +6,5 @@
 #include <common.h>
 #include <dm.h>
 #include <asm/io.h>
-#include <asm/arch/uart.h>
+#include <asm/arch-rockchip/uart.h>
 
diff --git a/board/rockchip/evb_rk3399/evb-rk3399.c b/board/rockchip/evb_rk3399/evb-rk3399.c
index 3e9e83f3ad..bf2ad98c47 100644
--- a/board/rockchip/evb_rk3399/evb-rk3399.c
+++ b/board/rockchip/evb_rk3399/evb-rk3399.c
@@ -7,7 +7,7 @@
 #include <dm.h>
 #include <dm/pinctrl.h>
 #include <dm/uclass-internal.h>
-#include <asm/arch/periph.h>
+#include <asm/arch-rockchip/periph.h>
 #include <power/regulator.h>
 #include <spl.h>
 
diff --git a/board/rockchip/evb_rv1108/evb_rv1108.c b/board/rockchip/evb_rv1108/evb_rv1108.c
index 107929ee8a..457b110cd5 100644
--- a/board/rockchip/evb_rv1108/evb_rv1108.c
+++ b/board/rockchip/evb_rv1108/evb_rv1108.c
@@ -7,8 +7,8 @@
 #include <common.h>
 #include <asm/io.h>
 #include <fdtdec.h>
-#include <asm/arch/grf_rv1108.h>
-#include <asm/arch/hardware.h>
+#include <asm/arch-rockchip/grf_rv1108.h>
+#include <asm/arch-rockchip/hardware.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/board/rockchip/kylin_rk3036/kylin_rk3036.c b/board/rockchip/kylin_rk3036/kylin_rk3036.c
index 3a2f08354f..2faeab9baf 100644
--- a/board/rockchip/kylin_rk3036/kylin_rk3036.c
+++ b/board/rockchip/kylin_rk3036/kylin_rk3036.c
@@ -6,8 +6,8 @@
 #include <common.h>
 #include <dm.h>
 #include <asm/io.h>
-#include <asm/arch/uart.h>
-#include <asm/arch/sdram_rk3036.h>
+#include <asm/arch-rockchip/uart.h>
+#include <asm/arch-rockchip/sdram_rk3036.h>
 #include <asm/gpio.h>
 
 void get_ddr_config(struct rk3036_ddr_config *config)
diff --git a/board/rockchip/sheep_rk3368/sheep_rk3368.c b/board/rockchip/sheep_rk3368/sheep_rk3368.c
index ea22cb985f..9bb93c7d16 100644
--- a/board/rockchip/sheep_rk3368/sheep_rk3368.c
+++ b/board/rockchip/sheep_rk3368/sheep_rk3368.c
@@ -4,8 +4,8 @@
  */
 #include <common.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/grf_rk3368.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/grf_rk3368.h>
 #include <syscon.h>
 
 int mach_cpu_init(void)
diff --git a/board/theobroma-systems/lion_rk3368/lion_rk3368.c b/board/theobroma-systems/lion_rk3368/lion_rk3368.c
index e207535df0..6cd5a5f18e 100644
--- a/board/theobroma-systems/lion_rk3368/lion_rk3368.c
+++ b/board/theobroma-systems/lion_rk3368/lion_rk3368.c
@@ -6,9 +6,9 @@
 #include <dm.h>
 #include <ram.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/grf_rk3368.h>
-#include <asm/arch/timer.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/grf_rk3368.h>
+#include <asm/arch-rockchip/timer.h>
 #include <syscon.h>
 
 int mach_cpu_init(void)
diff --git a/board/theobroma-systems/puma_rk3399/puma-rk3399.c b/board/theobroma-systems/puma_rk3399/puma-rk3399.c
index 573e691457..c6b509c109 100644
--- a/board/theobroma-systems/puma_rk3399/puma-rk3399.c
+++ b/board/theobroma-systems/puma_rk3399/puma-rk3399.c
@@ -15,11 +15,11 @@
 #include <asm/io.h>
 #include <asm/gpio.h>
 #include <asm/setup.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk3399.h>
-#include <asm/arch/hardware.h>
-#include <asm/arch/grf_rk3399.h>
-#include <asm/arch/periph.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk3399.h>
+#include <asm/arch-rockchip/hardware.h>
+#include <asm/arch-rockchip/grf_rk3399.h>
+#include <asm/arch-rockchip/periph.h>
 #include <power/regulator.h>
 #include <u-boot/sha256.h>
 
diff --git a/board/vamrs/rock960_rk3399/rock960-rk3399.c b/board/vamrs/rock960_rk3399/rock960-rk3399.c
index d3775b2219..0f5ef3a09a 100644
--- a/board/vamrs/rock960_rk3399/rock960-rk3399.c
+++ b/board/vamrs/rock960_rk3399/rock960-rk3399.c
@@ -7,7 +7,7 @@
 #include <dm.h>
 #include <dm/pinctrl.h>
 #include <dm/uclass-internal.h>
-#include <asm/arch/periph.h>
+#include <asm/arch-rockchip/periph.h>
 #include <power/regulator.h>
 #include <spl.h>
 
diff --git a/cmd/rockusb.c b/cmd/rockusb.c
index e0c1480d6d..9b70c6a6af 100644
--- a/cmd/rockusb.c
+++ b/cmd/rockusb.c
@@ -8,7 +8,7 @@
 #include <console.h>
 #include <g_dnl.h>
 #include <usb.h>
-#include <asm/arch/f_rockusb.h>
+#include <asm/arch-rockchip/f_rockusb.h>
 
 static int do_rockusb(cmd_tbl_t *cmdtp, int flag, int argc, char *const argv[])
 {
diff --git a/drivers/clk/rockchip/clk_rk3036.c b/drivers/clk/rockchip/clk_rk3036.c
index 9c4e8901e8..9bf9cedaf8 100644
--- a/drivers/clk/rockchip/clk_rk3036.c
+++ b/drivers/clk/rockchip/clk_rk3036.c
@@ -9,9 +9,9 @@
 #include <errno.h>
 #include <syscon.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk3036.h>
-#include <asm/arch/hardware.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk3036.h>
+#include <asm/arch-rockchip/hardware.h>
 #include <dm/lists.h>
 #include <dt-bindings/clock/rk3036-cru.h>
 #include <linux/log2.h>
diff --git a/drivers/clk/rockchip/clk_rk3128.c b/drivers/clk/rockchip/clk_rk3128.c
index 7da785abc6..efda8c830b 100644
--- a/drivers/clk/rockchip/clk_rk3128.c
+++ b/drivers/clk/rockchip/clk_rk3128.c
@@ -9,9 +9,9 @@
 #include <errno.h>
 #include <syscon.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk3128.h>
-#include <asm/arch/hardware.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk3128.h>
+#include <asm/arch-rockchip/hardware.h>
 #include <bitfield.h>
 #include <dm/lists.h>
 #include <dt-bindings/clock/rk3128-cru.h>
diff --git a/drivers/clk/rockchip/clk_rk3188.c b/drivers/clk/rockchip/clk_rk3188.c
index db7479a237..9bb9959c9d 100644
--- a/drivers/clk/rockchip/clk_rk3188.c
+++ b/drivers/clk/rockchip/clk_rk3188.c
@@ -12,10 +12,10 @@
 #include <mapmem.h>
 #include <syscon.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk3188.h>
-#include <asm/arch/grf_rk3188.h>
-#include <asm/arch/hardware.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk3188.h>
+#include <asm/arch-rockchip/grf_rk3188.h>
+#include <asm/arch-rockchip/hardware.h>
 #include <dt-bindings/clock/rk3188-cru.h>
 #include <dm/device-internal.h>
 #include <dm/lists.h>
diff --git a/drivers/clk/rockchip/clk_rk322x.c b/drivers/clk/rockchip/clk_rk322x.c
index 46a569c9ec..48ed14b2af 100644
--- a/drivers/clk/rockchip/clk_rk322x.c
+++ b/drivers/clk/rockchip/clk_rk322x.c
@@ -9,9 +9,9 @@
 #include <errno.h>
 #include <syscon.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk322x.h>
-#include <asm/arch/hardware.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk322x.h>
+#include <asm/arch-rockchip/hardware.h>
 #include <dm/lists.h>
 #include <dt-bindings/clock/rk3228-cru.h>
 #include <linux/log2.h>
diff --git a/drivers/clk/rockchip/clk_rk3288.c b/drivers/clk/rockchip/clk_rk3288.c
index 930c99f4d9..375d7f8acb 100644
--- a/drivers/clk/rockchip/clk_rk3288.c
+++ b/drivers/clk/rockchip/clk_rk3288.c
@@ -13,10 +13,10 @@
 #include <mapmem.h>
 #include <syscon.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk3288.h>
-#include <asm/arch/grf_rk3288.h>
-#include <asm/arch/hardware.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk3288.h>
+#include <asm/arch-rockchip/grf_rk3288.h>
+#include <asm/arch-rockchip/hardware.h>
 #include <dt-bindings/clock/rk3288-cru.h>
 #include <dm/device-internal.h>
 #include <dm/lists.h>
diff --git a/drivers/clk/rockchip/clk_rk3328.c b/drivers/clk/rockchip/clk_rk3328.c
index 106621fe7c..a89e2ecc4a 100644
--- a/drivers/clk/rockchip/clk_rk3328.c
+++ b/drivers/clk/rockchip/clk_rk3328.c
@@ -9,10 +9,10 @@
 #include <dm.h>
 #include <errno.h>
 #include <syscon.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk3328.h>
-#include <asm/arch/hardware.h>
-#include <asm/arch/grf_rk3328.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk3328.h>
+#include <asm/arch-rockchip/hardware.h>
+#include <asm/arch-rockchip/grf_rk3328.h>
 #include <asm/io.h>
 #include <dm/lists.h>
 #include <dt-bindings/clock/rk3328-cru.h>
diff --git a/drivers/clk/rockchip/clk_rk3368.c b/drivers/clk/rockchip/clk_rk3368.c
index 9492cc2a36..89cbae59c5 100644
--- a/drivers/clk/rockchip/clk_rk3368.c
+++ b/drivers/clk/rockchip/clk_rk3368.c
@@ -13,9 +13,9 @@
 #include <mapmem.h>
 #include <syscon.h>
 #include <bitfield.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk3368.h>
-#include <asm/arch/hardware.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk3368.h>
+#include <asm/arch-rockchip/hardware.h>
 #include <asm/io.h>
 #include <dm/lists.h>
 #include <dt-bindings/clock/rk3368-cru.h>
diff --git a/drivers/clk/rockchip/clk_rk3399.c b/drivers/clk/rockchip/clk_rk3399.c
index cab2bd9943..93a652e5ff 100644
--- a/drivers/clk/rockchip/clk_rk3399.c
+++ b/drivers/clk/rockchip/clk_rk3399.c
@@ -13,9 +13,9 @@
 #include <syscon.h>
 #include <bitfield.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk3399.h>
-#include <asm/arch/hardware.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk3399.h>
+#include <asm/arch-rockchip/hardware.h>
 #include <dm/lists.h>
 #include <dt-bindings/clock/rk3399-cru.h>
 
diff --git a/drivers/clk/rockchip/clk_rv1108.c b/drivers/clk/rockchip/clk_rv1108.c
index 914e2f4b21..3ebb007fab 100644
--- a/drivers/clk/rockchip/clk_rv1108.c
+++ b/drivers/clk/rockchip/clk_rv1108.c
@@ -11,9 +11,9 @@
 #include <errno.h>
 #include <syscon.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rv1108.h>
-#include <asm/arch/hardware.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rv1108.h>
+#include <asm/arch-rockchip/hardware.h>
 #include <dm/lists.h>
 #include <dt-bindings/clock/rv1108-cru.h>
 
diff --git a/drivers/gpio/rk_gpio.c b/drivers/gpio/rk_gpio.c
index 21df227717..3d96678a45 100644
--- a/drivers/gpio/rk_gpio.c
+++ b/drivers/gpio/rk_gpio.c
@@ -12,7 +12,8 @@
 #include <linux/errno.h>
 #include <asm/gpio.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/gpio.h>
 #include <dm/pinctrl.h>
 #include <dt-bindings/clock/rk3288-cru.h>
 
diff --git a/drivers/i2c/rk_i2c.c b/drivers/i2c/rk_i2c.c
index f9a5796b96..cdd94bb05a 100644
--- a/drivers/i2c/rk_i2c.c
+++ b/drivers/i2c/rk_i2c.c
@@ -12,9 +12,9 @@
 #include <errno.h>
 #include <i2c.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/i2c.h>
-#include <asm/arch/periph.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/i2c.h>
+#include <asm/arch-rockchip/periph.h>
 #include <dm/pinctrl.h>
 #include <linux/sizes.h>
 
diff --git a/drivers/mmc/rockchip_dw_mmc.c b/drivers/mmc/rockchip_dw_mmc.c
index bf2d83a52c..b2a1201631 100644
--- a/drivers/mmc/rockchip_dw_mmc.c
+++ b/drivers/mmc/rockchip_dw_mmc.c
@@ -13,8 +13,8 @@
 #include <pwrseq.h>
 #include <syscon.h>
 #include <asm/gpio.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/periph.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/periph.h>
 #include <linux/err.h>
 
 struct rockchip_mmc_plat {
diff --git a/drivers/net/gmac_rockchip.c b/drivers/net/gmac_rockchip.c
index c01ae758c7..26a6121175 100644
--- a/drivers/net/gmac_rockchip.c
+++ b/drivers/net/gmac_rockchip.c
@@ -11,15 +11,15 @@
 #include <phy.h>
 #include <syscon.h>
 #include <asm/io.h>
-#include <asm/arch/periph.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/hardware.h>
-#include <asm/arch/grf_rk322x.h>
-#include <asm/arch/grf_rk3288.h>
-#include <asm/arch/grf_rk3328.h>
-#include <asm/arch/grf_rk3368.h>
-#include <asm/arch/grf_rk3399.h>
-#include <asm/arch/grf_rv1108.h>
+#include <asm/arch-rockchip/periph.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/hardware.h>
+#include <asm/arch-rockchip/grf_rk322x.h>
+#include <asm/arch-rockchip/grf_rk3288.h>
+#include <asm/arch-rockchip/grf_rk3328.h>
+#include <asm/arch-rockchip/grf_rk3368.h>
+#include <asm/arch-rockchip/grf_rk3399.h>
+#include <asm/arch-rockchip/grf_rv1108.h>
 #include <dm/pinctrl.h>
 #include <dt-bindings/clock/rk3288-cru.h>
 #include "designware.h"
diff --git a/drivers/pwm/rk_pwm.c b/drivers/pwm/rk_pwm.c
index 9994cbafbf..88db294cf1 100644
--- a/drivers/pwm/rk_pwm.c
+++ b/drivers/pwm/rk_pwm.c
@@ -12,7 +12,7 @@
 #include <regmap.h>
 #include <syscon.h>
 #include <asm/io.h>
-#include <asm/arch/pwm.h>
+#include <asm/arch-rockchip/pwm.h>
 #include <power/regulator.h>
 
 struct rk_pwm_priv {
diff --git a/drivers/ram/rockchip/dmc-rk3368.c b/drivers/ram/rockchip/dmc-rk3368.c
index 8d1b9faacc..92f584fadc 100644
--- a/drivers/ram/rockchip/dmc-rk3368.c
+++ b/drivers/ram/rockchip/dmc-rk3368.c
@@ -12,12 +12,12 @@
 #include <regmap.h>
 #include <syscon.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk3368.h>
-#include <asm/arch/grf_rk3368.h>
-#include <asm/arch/ddr_rk3368.h>
-#include <asm/arch/sdram.h>
-#include <asm/arch/sdram_common.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk3368.h>
+#include <asm/arch-rockchip/grf_rk3368.h>
+#include <asm/arch-rockchip/ddr_rk3368.h>
+#include <asm/arch-rockchip/sdram.h>
+#include <asm/arch-rockchip/sdram_common.h>
 
 struct dram_info {
 	struct ram_info info;
diff --git a/drivers/ram/rockchip/sdram_rk3128.c b/drivers/ram/rockchip/sdram_rk3128.c
index df7b988703..bfabc22a7d 100644
--- a/drivers/ram/rockchip/sdram_rk3128.c
+++ b/drivers/ram/rockchip/sdram_rk3128.c
@@ -7,9 +7,9 @@
 #include <dm.h>
 #include <ram.h>
 #include <syscon.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/grf_rk3128.h>
-#include <asm/arch/sdram_common.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/grf_rk3128.h>
+#include <asm/arch-rockchip/sdram_common.h>
 
 struct dram_info {
 	struct ram_info info;
diff --git a/drivers/ram/rockchip/sdram_rk3188.c b/drivers/ram/rockchip/sdram_rk3188.c
index fdd500aa47..00e52ec949 100644
--- a/drivers/ram/rockchip/sdram_rk3188.c
+++ b/drivers/ram/rockchip/sdram_rk3188.c
@@ -15,13 +15,13 @@
 #include <regmap.h>
 #include <syscon.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk3188.h>
-#include <asm/arch/ddr_rk3188.h>
-#include <asm/arch/grf_rk3188.h>
-#include <asm/arch/pmu_rk3188.h>
-#include <asm/arch/sdram.h>
-#include <asm/arch/sdram_common.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk3188.h>
+#include <asm/arch-rockchip/ddr_rk3188.h>
+#include <asm/arch-rockchip/grf_rk3188.h>
+#include <asm/arch-rockchip/pmu_rk3188.h>
+#include <asm/arch-rockchip/sdram.h>
+#include <asm/arch-rockchip/sdram_common.h>
 #include <linux/err.h>
 
 struct chan_info {
diff --git a/drivers/ram/rockchip/sdram_rk322x.c b/drivers/ram/rockchip/sdram_rk322x.c
index 53835a9cd0..c596523d4f 100644
--- a/drivers/ram/rockchip/sdram_rk322x.c
+++ b/drivers/ram/rockchip/sdram_rk322x.c
@@ -11,14 +11,14 @@
 #include <regmap.h>
 #include <syscon.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk322x.h>
-#include <asm/arch/grf_rk322x.h>
-#include <asm/arch/hardware.h>
-#include <asm/arch/sdram_rk322x.h>
-#include <asm/arch/timer.h>
-#include <asm/arch/uart.h>
-#include <asm/arch/sdram_common.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk322x.h>
+#include <asm/arch-rockchip/grf_rk322x.h>
+#include <asm/arch-rockchip/hardware.h>
+#include <asm/arch-rockchip/sdram_rk322x.h>
+#include <asm/arch-rockchip/timer.h>
+#include <asm/arch-rockchip/uart.h>
+#include <asm/arch-rockchip/sdram_common.h>
 #include <asm/types.h>
 #include <linux/err.h>
 
diff --git a/drivers/ram/rockchip/sdram_rk3288.c b/drivers/ram/rockchip/sdram_rk3288.c
index d1e52d84e7..6bb025a851 100644
--- a/drivers/ram/rockchip/sdram_rk3288.c
+++ b/drivers/ram/rockchip/sdram_rk3288.c
@@ -15,13 +15,13 @@
 #include <regmap.h>
 #include <syscon.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk3288.h>
-#include <asm/arch/ddr_rk3288.h>
-#include <asm/arch/grf_rk3288.h>
-#include <asm/arch/pmu_rk3288.h>
-#include <asm/arch/sdram.h>
-#include <asm/arch/sdram_common.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk3288.h>
+#include <asm/arch-rockchip/ddr_rk3288.h>
+#include <asm/arch-rockchip/grf_rk3288.h>
+#include <asm/arch-rockchip/pmu_rk3288.h>
+#include <asm/arch-rockchip/sdram.h>
+#include <asm/arch-rockchip/sdram_common.h>
 #include <linux/err.h>
 #include <power/regulator.h>
 #include <power/rk8xx_pmic.h>
diff --git a/drivers/ram/rockchip/sdram_rk3328.c b/drivers/ram/rockchip/sdram_rk3328.c
index e8b234d866..f4e0b18447 100644
--- a/drivers/ram/rockchip/sdram_rk3328.c
+++ b/drivers/ram/rockchip/sdram_rk3328.c
@@ -7,9 +7,9 @@
 #include <dm.h>
 #include <ram.h>
 #include <syscon.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/grf_rk3328.h>
-#include <asm/arch/sdram_common.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/grf_rk3328.h>
+#include <asm/arch-rockchip/sdram_common.h>
 
 struct dram_info {
 	struct ram_info info;
diff --git a/drivers/ram/rockchip/sdram_rk3399.c b/drivers/ram/rockchip/sdram_rk3399.c
index 94dd01156a..05ec5fc28d 100644
--- a/drivers/ram/rockchip/sdram_rk3399.c
+++ b/drivers/ram/rockchip/sdram_rk3399.c
@@ -13,12 +13,12 @@
 #include <regmap.h>
 #include <syscon.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/sdram_common.h>
-#include <asm/arch/sdram_rk3399.h>
-#include <asm/arch/cru_rk3399.h>
-#include <asm/arch/grf_rk3399.h>
-#include <asm/arch/hardware.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/sdram_common.h>
+#include <asm/arch-rockchip/sdram_rk3399.h>
+#include <asm/arch-rockchip/cru_rk3399.h>
+#include <asm/arch-rockchip/grf_rk3399.h>
+#include <asm/arch-rockchip/hardware.h>
 #include <linux/err.h>
 #include <time.h>
 
diff --git a/drivers/reset/reset-rockchip.c b/drivers/reset/reset-rockchip.c
index af07134049..3871fc00d0 100644
--- a/drivers/reset/reset-rockchip.c
+++ b/drivers/reset/reset-rockchip.c
@@ -7,7 +7,7 @@
 #include <dm.h>
 #include <reset-uclass.h>
 #include <linux/io.h>
-#include <asm/arch/hardware.h>
+#include <asm/arch-rockchip/hardware.h>
 #include <dm/lists.h>
 /*
  * Each reg has 16 bits reset signal for devices
diff --git a/drivers/serial/serial_rockchip.c b/drivers/serial/serial_rockchip.c
index 35fefd74c6..b1718f72d1 100644
--- a/drivers/serial/serial_rockchip.c
+++ b/drivers/serial/serial_rockchip.c
@@ -9,7 +9,7 @@
 #include <dt-structs.h>
 #include <ns16550.h>
 #include <serial.h>
-#include <asm/arch/clock.h>
+#include <asm/arch-rockchip/clock.h>
 
 #if defined(CONFIG_ROCKCHIP_RK3188)
 struct rockchip_uart_platdata {
diff --git a/drivers/sound/rockchip_sound.c b/drivers/sound/rockchip_sound.c
index e7fb9fb164..a092dbc445 100644
--- a/drivers/sound/rockchip_sound.c
+++ b/drivers/sound/rockchip_sound.c
@@ -13,7 +13,7 @@
 #include <i2s.h>
 #include <misc.h>
 #include <sound.h>
-#include <asm/arch/periph.h>
+#include <asm/arch-rockchip/periph.h>
 #include <dm/pinctrl.h>
 
 static int rockchip_sound_setup(struct udevice *dev)
diff --git a/drivers/spi/rk_spi.c b/drivers/spi/rk_spi.c
index 14437c0a9a..bcc81adec2 100644
--- a/drivers/spi/rk_spi.c
+++ b/drivers/spi/rk_spi.c
@@ -16,8 +16,8 @@
 #include <spi.h>
 #include <linux/errno.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/periph.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/periph.h>
 #include <dm/pinctrl.h>
 #include "rk_spi.h"
 
diff --git a/drivers/sysreset/sysreset_rockchip.c b/drivers/sysreset/sysreset_rockchip.c
index 93d7cfe463..0fc6b683f2 100644
--- a/drivers/sysreset/sysreset_rockchip.c
+++ b/drivers/sysreset/sysreset_rockchip.c
@@ -8,9 +8,9 @@
 #include <errno.h>
 #include <sysreset.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk3328.h>
-#include <asm/arch/hardware.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk3328.h>
+#include <asm/arch-rockchip/hardware.h>
 #include <linux/err.h>
 
 int rockchip_sysreset_request(struct udevice *dev, enum sysreset_t type)
diff --git a/drivers/timer/rockchip_timer.c b/drivers/timer/rockchip_timer.c
index 69019740b0..54956e557a 100644
--- a/drivers/timer/rockchip_timer.c
+++ b/drivers/timer/rockchip_timer.c
@@ -7,7 +7,7 @@
 #include <dm.h>
 #include <dm/ofnode.h>
 #include <mapmem.h>
-#include <asm/arch/timer.h>
+#include <asm/arch-rockchip/timer.h>
 #include <dt-structs.h>
 #include <timer.h>
 #include <asm/io.h>
diff --git a/drivers/usb/gadget/f_rockusb.c b/drivers/usb/gadget/f_rockusb.c
index e81eb164b0..f3d24772cd 100644
--- a/drivers/usb/gadget/f_rockusb.c
+++ b/drivers/usb/gadget/f_rockusb.c
@@ -15,7 +15,7 @@
 #include <linux/compiler.h>
 #include <version.h>
 #include <g_dnl.h>
-#include <asm/arch/f_rockusb.h>
+#include <asm/arch-rockchip/f_rockusb.h>
 
 static inline struct f_rockusb *func_to_rockusb(struct usb_function *f)
 {
diff --git a/drivers/video/rockchip/rk3288_hdmi.c b/drivers/video/rockchip/rk3288_hdmi.c
index eb3692c387..315d3adf27 100644
--- a/drivers/video/rockchip/rk3288_hdmi.c
+++ b/drivers/video/rockchip/rk3288_hdmi.c
@@ -13,9 +13,9 @@
 #include <syscon.h>
 #include <asm/gpio.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/hardware.h>
-#include <asm/arch/grf_rk3288.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/hardware.h>
+#include <asm/arch-rockchip/grf_rk3288.h>
 #include <power/regulator.h>
 #include "rk_hdmi.h"
 
diff --git a/drivers/video/rockchip/rk3288_mipi.c b/drivers/video/rockchip/rk3288_mipi.c
index d268b46514..7c4a4cc53b 100644
--- a/drivers/video/rockchip/rk3288_mipi.c
+++ b/drivers/video/rockchip/rk3288_mipi.c
@@ -14,14 +14,14 @@
 #include "rk_mipi.h"
 #include <syscon.h>
 #include <asm/gpio.h>
-#include <asm/hardware.h>
 #include <asm/io.h>
 #include <dm/uclass-internal.h>
 #include <linux/kernel.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk3288.h>
-#include <asm/arch/grf_rk3288.h>
-#include <asm/arch/rockchip_mipi_dsi.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk3288.h>
+#include <asm/arch-rockchip/grf_rk3288.h>
+#include <asm/arch-rockchip/hardware.h>
+#include <asm/arch-rockchip/rockchip_mipi_dsi.h>
 
 #define MHz 1000000
 
diff --git a/drivers/video/rockchip/rk3288_vop.c b/drivers/video/rockchip/rk3288_vop.c
index 7e953a628c..0f91dab1f2 100644
--- a/drivers/video/rockchip/rk3288_vop.c
+++ b/drivers/video/rockchip/rk3288_vop.c
@@ -11,10 +11,10 @@
 #include <regmap.h>
 #include <syscon.h>
 #include <video.h>
-#include <asm/hardware.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/grf_rk3288.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/grf_rk3288.h>
+#include <asm/arch-rockchip/hardware.h>
 #include "rk_vop.h"
 
 DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/video/rockchip/rk3399_hdmi.c b/drivers/video/rockchip/rk3399_hdmi.c
index b75efe6fc3..a62be98327 100644
--- a/drivers/video/rockchip/rk3399_hdmi.c
+++ b/drivers/video/rockchip/rk3399_hdmi.c
@@ -13,9 +13,9 @@
 #include <syscon.h>
 #include <asm/gpio.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/hardware.h>
-#include <asm/arch/grf_rk3399.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/hardware.h>
+#include <asm/arch-rockchip/grf_rk3399.h>
 #include <power/regulator.h>
 #include "rk_hdmi.h"
 
diff --git a/drivers/video/rockchip/rk3399_mipi.c b/drivers/video/rockchip/rk3399_mipi.c
index bb9007bf36..a93b73400b 100644
--- a/drivers/video/rockchip/rk3399_mipi.c
+++ b/drivers/video/rockchip/rk3399_mipi.c
@@ -14,14 +14,14 @@
 #include "rk_mipi.h"
 #include <syscon.h>
 #include <asm/gpio.h>
-#include <asm/hardware.h>
 #include <asm/io.h>
 #include <dm/uclass-internal.h>
 #include <linux/kernel.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk3399.h>
-#include <asm/arch/grf_rk3399.h>
-#include <asm/arch/rockchip_mipi_dsi.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk3399.h>
+#include <asm/arch-rockchip/grf_rk3399.h>
+#include <asm/arch-rockchip/hardware.h>
+#include <asm/arch-rockchip/rockchip_mipi_dsi.h>
 
 /* Select mipi dsi source, big or little vop */
 static int rk_mipi_dsi_source_select(struct udevice *dev)
diff --git a/drivers/video/rockchip/rk3399_vop.c b/drivers/video/rockchip/rk3399_vop.c
index 7a02221ae0..81c122d7a9 100644
--- a/drivers/video/rockchip/rk3399_vop.c
+++ b/drivers/video/rockchip/rk3399_vop.c
@@ -10,7 +10,7 @@
 #include <dm.h>
 #include <regmap.h>
 #include <video.h>
-#include <asm/hardware.h>
+#include <asm/arch-rockchip/hardware.h>
 #include <asm/io.h>
 #include "rk_vop.h"
 
diff --git a/drivers/video/rockchip/rk_edp.c b/drivers/video/rockchip/rk_edp.c
index e074107632..4330725a25 100644
--- a/drivers/video/rockchip/rk_edp.c
+++ b/drivers/video/rockchip/rk_edp.c
@@ -14,9 +14,9 @@
 #include <syscon.h>
 #include <asm/gpio.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/edp_rk3288.h>
-#include <asm/arch/grf_rk3288.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/edp_rk3288.h>
+#include <asm/arch-rockchip/grf_rk3288.h>
 #include <dt-bindings/clock/rk3288-cru.h>
 
 #define MAX_CR_LOOP 5
diff --git a/drivers/video/rockchip/rk_hdmi.c b/drivers/video/rockchip/rk_hdmi.c
index 13d07ee304..51931ceefa 100644
--- a/drivers/video/rockchip/rk_hdmi.c
+++ b/drivers/video/rockchip/rk_hdmi.c
@@ -14,10 +14,9 @@
 #include <regmap.h>
 #include <syscon.h>
 #include <asm/gpio.h>
-#include <asm/hardware.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/hardware.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/hardware.h>
 #include "rk_hdmi.h"
 #include "rk_vop.h" /* for rk_vop_probe_regulators */
 
diff --git a/drivers/video/rockchip/rk_lvds.c b/drivers/video/rockchip/rk_lvds.c
index f0a528c0d6..cf5c0439b1 100644
--- a/drivers/video/rockchip/rk_lvds.c
+++ b/drivers/video/rockchip/rk_lvds.c
@@ -12,9 +12,9 @@
 #include <syscon.h>
 #include <asm/gpio.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/lvds_rk3288.h>
-#include <asm/arch/grf_rk3288.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/lvds_rk3288.h>
+#include <asm/arch-rockchip/grf_rk3288.h>
 #include <dt-bindings/clock/rk3288-cru.h>
 #include <dt-bindings/video/rk3288.h>
 
diff --git a/drivers/video/rockchip/rk_mipi.c b/drivers/video/rockchip/rk_mipi.c
index 4f1a0f3a5f..bcd039b7bc 100644
--- a/drivers/video/rockchip/rk_mipi.c
+++ b/drivers/video/rockchip/rk_mipi.c
@@ -14,14 +14,13 @@
 #include "rk_mipi.h"
 #include <syscon.h>
 #include <asm/gpio.h>
-#include <asm/hardware.h>
 #include <asm/io.h>
 #include <dm/uclass-internal.h>
 #include <linux/kernel.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/cru_rk3399.h>
-#include <asm/arch/grf_rk3399.h>
-#include <asm/arch/rockchip_mipi_dsi.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/cru_rk3399.h>
+#include <asm/arch-rockchip/grf_rk3399.h>
+#include <asm/arch-rockchip/rockchip_mipi_dsi.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
diff --git a/drivers/video/rockchip/rk_vop.c b/drivers/video/rockchip/rk_vop.c
index faf4f24db0..b56c3f336c 100644
--- a/drivers/video/rockchip/rk_vop.c
+++ b/drivers/video/rockchip/rk_vop.c
@@ -13,11 +13,10 @@
 #include <syscon.h>
 #include <video.h>
 #include <asm/gpio.h>
-#include <asm/hardware.h>
 #include <asm/io.h>
-#include <asm/arch/clock.h>
-#include <asm/arch/edp_rk3288.h>
-#include <asm/arch/vop_rk3288.h>
+#include <asm/arch-rockchip/clock.h>
+#include <asm/arch-rockchip/edp_rk3288.h>
+#include <asm/arch-rockchip/vop_rk3288.h>
 #include <dm/device-internal.h>
 #include <dm/uclass-internal.h>
 #include <power/regulator.h>
diff --git a/drivers/video/rockchip/rk_vop.h b/drivers/video/rockchip/rk_vop.h
index 828974d394..8fa2f38939 100644
--- a/drivers/video/rockchip/rk_vop.h
+++ b/drivers/video/rockchip/rk_vop.h
@@ -6,7 +6,7 @@
 #ifndef __RK_VOP_H__
 #define __RK_VOP_H__
 
-#include <asm/arch/vop_rk3288.h>
+#include <asm/arch-rockchip/vop_rk3288.h>
 
 struct rk_vop_priv {
 	void *grf;
diff --git a/include/configs/rk3036_common.h b/include/configs/rk3036_common.h
index 4fc9226712..ada3c2a401 100644
--- a/include/configs/rk3036_common.h
+++ b/include/configs/rk3036_common.h
@@ -5,7 +5,7 @@
 #ifndef __CONFIG_RK3036_COMMON_H
 #define __CONFIG_RK3036_COMMON_H
 
-#include <asm/arch/hardware.h>
+#include <asm/arch-rockchip/hardware.h>
 #include "rockchip-common.h"
 
 #define CONFIG_SYS_MALLOC_LEN		(32 << 20)
diff --git a/include/configs/rk3188_common.h b/include/configs/rk3188_common.h
index 36e494ee95..8e5c0ba0f0 100644
--- a/include/configs/rk3188_common.h
+++ b/include/configs/rk3188_common.h
@@ -8,7 +8,7 @@
 
 #define CONFIG_SYS_CACHELINE_SIZE	64
 
-#include <asm/arch/hardware.h>
+#include <asm/arch-rockchip/hardware.h>
 #include "rockchip-common.h"
 
 #define CONFIG_SKIP_LOWLEVEL_INIT_ONLY
diff --git a/include/configs/rk322x_common.h b/include/configs/rk322x_common.h
index e72aa8d2d3..9e1ff17f48 100644
--- a/include/configs/rk322x_common.h
+++ b/include/configs/rk322x_common.h
@@ -5,7 +5,7 @@
 #ifndef __CONFIG_RK322X_COMMON_H
 #define __CONFIG_RK322X_COMMON_H
 
-#include <asm/arch/hardware.h>
+#include <asm/arch-rockchip/hardware.h>
 #include "rockchip-common.h"
 
 #define CONFIG_SKIP_LOWLEVEL_INIT
diff --git a/include/configs/rk3288_common.h b/include/configs/rk3288_common.h
index c59f5eff7a..145215ea03 100644
--- a/include/configs/rk3288_common.h
+++ b/include/configs/rk3288_common.h
@@ -6,7 +6,7 @@
 #ifndef __CONFIG_RK3288_COMMON_H
 #define __CONFIG_RK3288_COMMON_H
 
-#include <asm/arch/hardware.h>
+#include <asm/arch-rockchip/hardware.h>
 #include "rockchip-common.h"
 
 #define CONFIG_SKIP_LOWLEVEL_INIT_ONLY
diff --git a/include/configs/rk3368_common.h b/include/configs/rk3368_common.h
index 88c1af0974..5aa598287a 100644
--- a/include/configs/rk3368_common.h
+++ b/include/configs/rk3368_common.h
@@ -10,7 +10,7 @@
 
 #define CONFIG_SYS_CACHELINE_SIZE	64
 
-#include <asm/arch/hardware.h>
+#include <asm/arch-rockchip/hardware.h>
 #include <linux/sizes.h>
 
 #define CONFIG_SYS_SDRAM_BASE		0
diff --git a/include/configs/rv1108_common.h b/include/configs/rv1108_common.h
index 952ea9fdca..6f61f01538 100644
--- a/include/configs/rv1108_common.h
+++ b/include/configs/rv1108_common.h
@@ -5,7 +5,7 @@
 #ifndef __CONFIG_RV1108_COMMON_H
 #define __CONFIG_RV1108_COMMON_H
 
-#include <asm/arch/hardware.h>
+#include <asm/arch-rockchip/hardware.h>
 #include "rockchip-common.h"
 
 #define CONFIG_SYS_MALLOC_LEN		(32 << 20)
-- 
2.20.1

^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [U-Boot] [PATCH 3/3] rockchip: correct ARCH_SOC name
  2019-03-28  3:01 [U-Boot] [PATCH 0/3] rockchip: correct SYS_SOC name for all rockchip SoCs Kever Yang
  2019-03-28  3:01 ` [U-Boot] [PATCH 1/3] rockchip: arm: use 'arch-rockchip' for common header Kever Yang
  2019-03-28  3:01 ` [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path Kever Yang
@ 2019-03-28  3:01 ` Kever Yang
  2019-03-28  7:02   ` Philipp Tomsich
  2019-05-01 13:06   ` Philipp Tomsich
  2 siblings, 2 replies; 24+ messages in thread
From: Kever Yang @ 2019-03-28  3:01 UTC (permalink / raw)
  To: u-boot

The ARCH_SOC name default as 'rockchip' and we put all the
header file in 'arch/arm/include/asm/arch-rockchip/', but
the 'rockchip' is not the SOC name, let's correct it after
we update all the source file.

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
---

 arch/arm/mach-rockchip/rk3036/Kconfig | 2 +-
 arch/arm/mach-rockchip/rk3128/Kconfig | 2 +-
 arch/arm/mach-rockchip/rk3188/Kconfig | 2 +-
 arch/arm/mach-rockchip/rk322x/Kconfig | 2 +-
 arch/arm/mach-rockchip/rk3288/Kconfig | 2 +-
 arch/arm/mach-rockchip/rk3328/Kconfig | 2 +-
 arch/arm/mach-rockchip/rk3368/Kconfig | 2 +-
 arch/arm/mach-rockchip/rk3399/Kconfig | 2 +-
 arch/arm/mach-rockchip/rv1108/Kconfig | 2 +-
 9 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/arch/arm/mach-rockchip/rk3036/Kconfig b/arch/arm/mach-rockchip/rk3036/Kconfig
index c63db343e2..5e04d20448 100644
--- a/arch/arm/mach-rockchip/rk3036/Kconfig
+++ b/arch/arm/mach-rockchip/rk3036/Kconfig
@@ -9,7 +9,7 @@ config TARGET_KYLIN_RK3036
 	select BOARD_LATE_INIT
 
 config SYS_SOC
-	default "rockchip"
+	default "rk3036"
 
 config SYS_MALLOC_F_LEN
 	default 0x400
diff --git a/arch/arm/mach-rockchip/rk3128/Kconfig b/arch/arm/mach-rockchip/rk3128/Kconfig
index 40655a22b5..a82b7dc063 100644
--- a/arch/arm/mach-rockchip/rk3128/Kconfig
+++ b/arch/arm/mach-rockchip/rk3128/Kconfig
@@ -14,7 +14,7 @@ config TARGET_EVB_RK3128
 endchoice
 
 config SYS_SOC
-	default "rockchip"
+	default "rk3128"
 
 config SYS_MALLOC_F_LEN
 	default 0x0800
diff --git a/arch/arm/mach-rockchip/rk3188/Kconfig b/arch/arm/mach-rockchip/rk3188/Kconfig
index 2bb35662d1..a6fc691fb6 100644
--- a/arch/arm/mach-rockchip/rk3188/Kconfig
+++ b/arch/arm/mach-rockchip/rk3188/Kconfig
@@ -10,7 +10,7 @@ config TARGET_ROCK
 	  UART and GPIOs.
 
 config SYS_SOC
-	default "rockchip"
+	default "rk3188"
 
 config SYS_MALLOC_F_LEN
 	default 0x0800
diff --git a/arch/arm/mach-rockchip/rk322x/Kconfig b/arch/arm/mach-rockchip/rk322x/Kconfig
index dc8071e4f3..8a1f95f785 100644
--- a/arch/arm/mach-rockchip/rk322x/Kconfig
+++ b/arch/arm/mach-rockchip/rk322x/Kconfig
@@ -5,7 +5,7 @@ config TARGET_EVB_RK3229
 	select BOARD_LATE_INIT
 
 config SYS_SOC
-	default "rockchip"
+	default "rk322x"
 
 config SYS_MALLOC_F_LEN
 	default 0x400
diff --git a/arch/arm/mach-rockchip/rk3288/Kconfig b/arch/arm/mach-rockchip/rk3288/Kconfig
index bce8023881..50680ce606 100644
--- a/arch/arm/mach-rockchip/rk3288/Kconfig
+++ b/arch/arm/mach-rockchip/rk3288/Kconfig
@@ -148,7 +148,7 @@ config ROCKCHIP_FAST_SPL
 	  and have the required PMIC code.
 
 config SYS_SOC
-	default "rockchip"
+	default "rk3288"
 
 config SYS_MALLOC_F_LEN
 	default 0x0800
diff --git a/arch/arm/mach-rockchip/rk3328/Kconfig b/arch/arm/mach-rockchip/rk3328/Kconfig
index 43afba2430..6c5c4303a3 100644
--- a/arch/arm/mach-rockchip/rk3328/Kconfig
+++ b/arch/arm/mach-rockchip/rk3328/Kconfig
@@ -13,7 +13,7 @@ config TARGET_EVB_RK3328
 endchoice
 
 config SYS_SOC
-	default "rockchip"
+	default "rk3328"
 
 config SYS_MALLOC_F_LEN
 	default 0x0800
diff --git a/arch/arm/mach-rockchip/rk3368/Kconfig b/arch/arm/mach-rockchip/rk3368/Kconfig
index 7c9b722b00..325572a7e4 100644
--- a/arch/arm/mach-rockchip/rk3368/Kconfig
+++ b/arch/arm/mach-rockchip/rk3368/Kconfig
@@ -43,7 +43,7 @@ config TARGET_EVB_PX5
 endchoice
 
 config SYS_SOC
-	default "rockchip"
+	default "rk3368"
 
 source "board/theobroma-systems/lion_rk3368/Kconfig"
 source "board/rockchip/sheep_rk3368/Kconfig"
diff --git a/arch/arm/mach-rockchip/rk3399/Kconfig b/arch/arm/mach-rockchip/rk3399/Kconfig
index 2408adb420..2c5c93c0b8 100644
--- a/arch/arm/mach-rockchip/rk3399/Kconfig
+++ b/arch/arm/mach-rockchip/rk3399/Kconfig
@@ -65,7 +65,7 @@ config TARGET_CHROMEBOOK_BOB
 endchoice
 
 config SYS_SOC
-	default "rockchip"
+	default "rk3399"
 
 config SYS_MALLOC_F_LEN
 	default 0x0800
diff --git a/arch/arm/mach-rockchip/rv1108/Kconfig b/arch/arm/mach-rockchip/rv1108/Kconfig
index 8883aeae7a..e3a63b80e1 100644
--- a/arch/arm/mach-rockchip/rv1108/Kconfig
+++ b/arch/arm/mach-rockchip/rv1108/Kconfig
@@ -23,7 +23,7 @@ config TARGET_ELGIN_RV1108
 	  RV1108 ELGIN is a board based on the Rockchip RV1108.
 
 config SYS_SOC
-	default "rockchip"
+	default "rv1108"
 
 config SYS_MALLOC_F_LEN
 	default 0x400
-- 
2.20.1

^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [U-Boot] [PATCH 3/3] rockchip: correct ARCH_SOC name
  2019-03-28  3:01 ` [U-Boot] [PATCH 3/3] rockchip: correct ARCH_SOC name Kever Yang
@ 2019-03-28  7:02   ` Philipp Tomsich
  2019-03-28  9:31     ` Kever Yang
  2019-05-01 13:06   ` Philipp Tomsich
  1 sibling, 1 reply; 24+ messages in thread
From: Philipp Tomsich @ 2019-03-28  7:02 UTC (permalink / raw)
  To: u-boot



> On 28.03.2019, at 04:01, Kever Yang <kever.yang@rock-chips.com> wrote:
> 
> The ARCH_SOC name default as 'rockchip' and we put all the
> header file in 'arch/arm/include/asm/arch-rockchip/', but
> the 'rockchip' is not the SOC name, let's correct it after
> we update all the source file.
> 
> Signed-off-by: Kever Yang <kever.yang@rock-chips.com>

Reviewed-by: Philipp Tomsiich <philipp.tomsich@theobroma-systems.com>

Just a style question: most of the documentation refers to the chips as RK3…
while this has them as rk3… (i.e. the differenc eis whether the RK is lower-
or upper-case); is this difference intentional?

Thanks,
Phil.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [U-Boot] [PATCH 1/3] rockchip: arm: use 'arch-rockchip' for common header
  2019-03-28  3:01 ` [U-Boot] [PATCH 1/3] rockchip: arm: use 'arch-rockchip' for common header Kever Yang
@ 2019-03-28  7:02   ` Philipp Tomsich
  2019-04-01  7:12   ` Neil Armstrong
  2019-05-01 13:06   ` Philipp Tomsich
  2 siblings, 0 replies; 24+ messages in thread
From: Philipp Tomsich @ 2019-03-28  7:02 UTC (permalink / raw)
  To: u-boot


> On 28.03.2019, at 04:01, Kever Yang <kever.yang@rock-chips.com> wrote:
> 
> rockchip platform header file is in 'arch-rockchip'
> instead of arch-$(SOC) for all SoCs.
> 
> Signed-off-by: Kever Yang <kever.yang@rock-chips.com>

Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [U-Boot] [PATCH 3/3] rockchip: correct ARCH_SOC name
  2019-03-28  7:02   ` Philipp Tomsich
@ 2019-03-28  9:31     ` Kever Yang
  0 siblings, 0 replies; 24+ messages in thread
From: Kever Yang @ 2019-03-28  9:31 UTC (permalink / raw)
  To: u-boot

Hi Philipp,


On 03/28/2019 03:02 PM, Philipp Tomsich wrote:
>
>> On 28.03.2019, at 04:01, Kever Yang <kever.yang@rock-chips.com> wrote:
>>
>> The ARCH_SOC name default as 'rockchip' and we put all the
>> header file in 'arch/arm/include/asm/arch-rockchip/', but
>> the 'rockchip' is not the SOC name, let's correct it after
>> we update all the source file.
>>
>> Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
> Reviewed-by: Philipp Tomsiich <philipp.tomsich@theobroma-systems.com>
>
> Just a style question: most of the documentation refers to the chips as RK3…
> while this has them as rk3… (i.e. the differenc eis whether the RK is lower-
> or upper-case); is this difference intentional?

This soc name will use to mach rk3...dtsi in source code, and all the
dtsi files are using lower-case.

Thanks,
- Kever
>
> Thanks,
> Phil.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path
  2019-03-28  3:01 ` [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path Kever Yang
@ 2019-03-30 21:18   ` Simon Glass
  2019-04-01  1:02     ` [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path【请注意,邮件由sjg@google.com代发】 Kever Yang
  2019-04-03 19:57     ` [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path Simon Glass
  2019-04-28 23:34   ` [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path Philipp Tomsich
  2019-05-01 13:06   ` Philipp Tomsich
  2 siblings, 2 replies; 24+ messages in thread
From: Simon Glass @ 2019-03-30 21:18 UTC (permalink / raw)
  To: u-boot

Hi Kever,

On Wed, 27 Mar 2019 at 21:01, Kever Yang <kever.yang@rock-chips.com> wrote:
>
> Rockchip use 'arch-rockchip' instead of arch-$(SOC) as common
> header file path, so that we can get the correct path directly.

Can you give a few more details on the reason for this change? I
cannot see the benefit?

Regards,
Simon

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path【请注意,邮件由sjg@google.com代发】
  2019-03-30 21:18   ` Simon Glass
@ 2019-04-01  1:02     ` Kever Yang
  2019-04-01  2:00       ` Simon Glass
  2019-04-03 19:57     ` [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path Simon Glass
  1 sibling, 1 reply; 24+ messages in thread
From: Kever Yang @ 2019-04-01  1:02 UTC (permalink / raw)
  To: u-boot

Hi Simon,


On 03/31/2019 05:18 AM, Simon Glass wrote:
> Hi Kever,
>
> On Wed, 27 Mar 2019 at 21:01, Kever Yang <kever.yang@rock-chips.com> wrote:
>> Rockchip use 'arch-rockchip' instead of arch-$(SOC) as common
>> header file path, so that we can get the correct path directly.
> Can you give a few more details on the reason for this change? I
> cannot see the benefit?

1. 'rockchip' is not SOC name but vendor name, we'd better use correct name;
2. the build system will include $(SOC)-u-boot.dtsi automatically
without modify
    $(SOC).dtsi or $(board).dtsi, if the $(SOC) default to 'rockchip',
we can't use
    this feature.

Thanks,
- Kever
> Regards,
> Simon
>

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path【请注意,邮件由sjg@google.com代发】
  2019-04-01  1:02     ` [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path【请注意,邮件由sjg@google.com代发】 Kever Yang
@ 2019-04-01  2:00       ` Simon Glass
  2019-04-01  2:46         ` Kever Yang
  0 siblings, 1 reply; 24+ messages in thread
From: Simon Glass @ 2019-04-01  2:00 UTC (permalink / raw)
  To: u-boot

Hi Kever,

On Sun, 31 Mar 2019 at 19:03, Kever Yang <kever.yang@rock-chips.com> wrote:
>
> Hi Simon,
>
>
> On 03/31/2019 05:18 AM, Simon Glass wrote:
> > Hi Kever,
> >
> > On Wed, 27 Mar 2019 at 21:01, Kever Yang <kever.yang@rock-chips.com> wrote:
> >> Rockchip use 'arch-rockchip' instead of arch-$(SOC) as common
> >> header file path, so that we can get the correct path directly.
> > Can you give a few more details on the reason for this change? I
> > cannot see the benefit?
>
> 1. 'rockchip' is not SOC name but vendor name, we'd better use correct name;
> 2. the build system will include $(SOC)-u-boot.dtsi automatically
> without modify
>     $(SOC).dtsi or $(board).dtsi, if the $(SOC) default to 'rockchip',
> we can't use
>     this feature.

OK I see.

So far Rockchip has been designed so that a single U-Boot (proper) can
support multiple SoCs, although in practice we don't use that ability.
So I don't think it is a big problem to drop it.

Regards,
Simon

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path【请注意,邮件由sjg@google.com代发】
  2019-04-01  2:00       ` Simon Glass
@ 2019-04-01  2:46         ` Kever Yang
  2019-04-01 19:00           ` Simon Glass
  0 siblings, 1 reply; 24+ messages in thread
From: Kever Yang @ 2019-04-01  2:46 UTC (permalink / raw)
  To: u-boot

Hi Simon,


On 04/01/2019 10:00 AM, Simon Glass wrote:
> Hi Kever,
>
> On Sun, 31 Mar 2019 at 19:03, Kever Yang <kever.yang@rock-chips.com> wrote:
>> Hi Simon,
>>
>>
>> On 03/31/2019 05:18 AM, Simon Glass wrote:
>>> Hi Kever,
>>>
>>> On Wed, 27 Mar 2019 at 21:01, Kever Yang <kever.yang@rock-chips.com> wrote:
>>>> Rockchip use 'arch-rockchip' instead of arch-$(SOC) as common
>>>> header file path, so that we can get the correct path directly.
>>> Can you give a few more details on the reason for this change? I
>>> cannot see the benefit?
>> 1. 'rockchip' is not SOC name but vendor name, we'd better use correct name;
>> 2. the build system will include $(SOC)-u-boot.dtsi automatically
>> without modify
>>     $(SOC).dtsi or $(board).dtsi, if the $(SOC) default to 'rockchip',
>> we can't use
>>     this feature.
> OK I see.
>
> So far Rockchip has been designed so that a single U-Boot (proper) can
> support multiple SoCs, 

I don't understand, how can a single U-Boot(proper) support multiple
Rockchip SoCs,
it sounds awesome which is kernel like. But I thought we need different
build
with different source for different SoCs now.

For $(SOC)-u-boot.dtsi, another way is using $(BOARD)-u-boot.dtsi, but I
think in
most case, we can have one $(SOC)-u-boot.dtsi instead of many
$(BOARD)-u-boot.dtsi
for one SoC, so we need this feature.

Thinks,
- Kever
> although in practice we don't use that ability.
> So I don't think it is a big problem to drop it.
>
> Regards,
> Simon
>

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [U-Boot] [PATCH 1/3] rockchip: arm: use 'arch-rockchip' for common header
  2019-03-28  3:01 ` [U-Boot] [PATCH 1/3] rockchip: arm: use 'arch-rockchip' for common header Kever Yang
  2019-03-28  7:02   ` Philipp Tomsich
@ 2019-04-01  7:12   ` Neil Armstrong
  2019-04-01 13:13     ` Tom Rini
  2019-05-01 13:06   ` Philipp Tomsich
  2 siblings, 1 reply; 24+ messages in thread
From: Neil Armstrong @ 2019-04-01  7:12 UTC (permalink / raw)
  To: u-boot

On 28/03/2019 04:01, Kever Yang wrote:
> rockchip platform header file is in 'arch-rockchip'
> instead of arch-$(SOC) for all SoCs.
> 
> Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
> ---
> 
>  arch/arm/cpu/armv8/start.S  | 4 ++++
>  arch/arm/include/asm/gpio.h | 2 +-
>  arch/arm/lib/vectors.S      | 5 ++++-
>  3 files changed, 9 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/arm/cpu/armv8/start.S b/arch/arm/cpu/armv8/start.S
> index fe52166e28..ecee9e37a5 100644
> --- a/arch/arm/cpu/armv8/start.S
> +++ b/arch/arm/cpu/armv8/start.S
> @@ -26,7 +26,11 @@ _start:
>   * order to boot, allow them to set that in their boot0.h file and then
>   * use it here.
>   */
> +#ifdef CONFIG_ARCH_ROCKCHIP
> +#include <asm/arch-rockchip/boot0.h>
> +#else
>  #include <asm/arch/boot0.h>
> +#endif
>  #else
>  	b	reset
>  #endif
> diff --git a/arch/arm/include/asm/gpio.h b/arch/arm/include/asm/gpio.h
> index 3039e66bf9..b0c8c47c95 100644
> --- a/arch/arm/include/asm/gpio.h
> +++ b/arch/arm/include/asm/gpio.h
> @@ -1,5 +1,5 @@
>  #if !defined(CONFIG_ARCH_UNIPHIER) && !defined(CONFIG_ARCH_STI) && \
> -	!defined(CONFIG_ARCH_K3)
> +	!defined(CONFIG_ARCH_K3) && !defined(CONFIG_ARCH_ROCKCHIP)
>  #include <asm/arch/gpio.h>
>  #endif
>  #include <asm-generic/gpio.h>
> diff --git a/arch/arm/lib/vectors.S b/arch/arm/lib/vectors.S
> index 2ca6e2494a..20f485142e 100644
> --- a/arch/arm/lib/vectors.S
> +++ b/arch/arm/lib/vectors.S
> @@ -67,8 +67,11 @@
>   *   (1) defines '_start:' as appropriate
>   *   (2) inserts the vector table using ARM_VECTORS as appropriate
>   */
> +#ifdef CONFIG_ARCH_ROCKCHIP
> +#include <asm/arch-rockchip/boot0.h>
> +#else
>  #include <asm/arch/boot0.h>
> -
> +#endif
>  #else
>  
>  /*
> 

Hi,

All vendors has the same issue here, like Amlogic, but we use "meson" as $(SOC),
if every vendor add its own specific include in common headers like this,
this won't scale...

We should fix all this CONFIG_SOC instead of adding this, by maybe using the SYS_VENDOR
for the arch include dir ?

Neil

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [U-Boot] [PATCH 1/3] rockchip: arm: use 'arch-rockchip' for common header
  2019-04-01  7:12   ` Neil Armstrong
@ 2019-04-01 13:13     ` Tom Rini
  2019-04-02  0:58       ` Kever Yang
  0 siblings, 1 reply; 24+ messages in thread
From: Tom Rini @ 2019-04-01 13:13 UTC (permalink / raw)
  To: u-boot

On Mon, Apr 01, 2019 at 09:12:07AM +0200, Neil Armstrong wrote:
> On 28/03/2019 04:01, Kever Yang wrote:
> > rockchip platform header file is in 'arch-rockchip'
> > instead of arch-$(SOC) for all SoCs.
> > 
> > Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
> > ---
> > 
> >  arch/arm/cpu/armv8/start.S  | 4 ++++
> >  arch/arm/include/asm/gpio.h | 2 +-
> >  arch/arm/lib/vectors.S      | 5 ++++-
> >  3 files changed, 9 insertions(+), 2 deletions(-)
> > 
> > diff --git a/arch/arm/cpu/armv8/start.S b/arch/arm/cpu/armv8/start.S
> > index fe52166e28..ecee9e37a5 100644
> > --- a/arch/arm/cpu/armv8/start.S
> > +++ b/arch/arm/cpu/armv8/start.S
> > @@ -26,7 +26,11 @@ _start:
> >   * order to boot, allow them to set that in their boot0.h file and then
> >   * use it here.
> >   */
> > +#ifdef CONFIG_ARCH_ROCKCHIP
> > +#include <asm/arch-rockchip/boot0.h>
> > +#else
> >  #include <asm/arch/boot0.h>
> > +#endif
> >  #else
> >  	b	reset
> >  #endif
> > diff --git a/arch/arm/include/asm/gpio.h b/arch/arm/include/asm/gpio.h
> > index 3039e66bf9..b0c8c47c95 100644
> > --- a/arch/arm/include/asm/gpio.h
> > +++ b/arch/arm/include/asm/gpio.h
> > @@ -1,5 +1,5 @@
> >  #if !defined(CONFIG_ARCH_UNIPHIER) && !defined(CONFIG_ARCH_STI) && \
> > -	!defined(CONFIG_ARCH_K3)
> > +	!defined(CONFIG_ARCH_K3) && !defined(CONFIG_ARCH_ROCKCHIP)
> >  #include <asm/arch/gpio.h>
> >  #endif
> >  #include <asm-generic/gpio.h>
> > diff --git a/arch/arm/lib/vectors.S b/arch/arm/lib/vectors.S
> > index 2ca6e2494a..20f485142e 100644
> > --- a/arch/arm/lib/vectors.S
> > +++ b/arch/arm/lib/vectors.S
> > @@ -67,8 +67,11 @@
> >   *   (1) defines '_start:' as appropriate
> >   *   (2) inserts the vector table using ARM_VECTORS as appropriate
> >   */
> > +#ifdef CONFIG_ARCH_ROCKCHIP
> > +#include <asm/arch-rockchip/boot0.h>
> > +#else
> >  #include <asm/arch/boot0.h>
> > -
> > +#endif
> >  #else
> >  
> >  /*
> > 
> 
> Hi,
> 
> All vendors has the same issue here, like Amlogic, but we use "meson" as $(SOC),
> if every vendor add its own specific include in common headers like this,
> this won't scale...
> 
> We should fix all this CONFIG_SOC instead of adding this, by maybe using the SYS_VENDOR
> for the arch include dir ?

We should either:
- Grab the mechanism currently used in the kernel to allow for another
  high-level symlink to happen and re-org our files like this to allow
  for that
- In these cases, at least for now have <asm/arch-$(SOC)/boot0.h> grab
  the appropriate <asm/subdir/boot0.h> like we do on other files, and do
  the first option later.

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20190401/faf8d229/attachment.sig>

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path【请注意,邮件由sjg@google.com代发】
  2019-04-01  2:46         ` Kever Yang
@ 2019-04-01 19:00           ` Simon Glass
  2019-04-02  1:11             ` Kever Yang
  0 siblings, 1 reply; 24+ messages in thread
From: Simon Glass @ 2019-04-01 19:00 UTC (permalink / raw)
  To: u-boot

Hi Kever,

On Sun, 31 Mar 2019 at 20:46, Kever Yang <kever.yang@rock-chips.com> wrote:
>
> Hi Simon,
>
>
> On 04/01/2019 10:00 AM, Simon Glass wrote:
> > Hi Kever,
> >
> > On Sun, 31 Mar 2019 at 19:03, Kever Yang <kever.yang@rock-chips.com> wrote:
> >> Hi Simon,
> >>
> >>
> >> On 03/31/2019 05:18 AM, Simon Glass wrote:
> >>> Hi Kever,
> >>>
> >>> On Wed, 27 Mar 2019 at 21:01, Kever Yang <kever.yang@rock-chips.com> wrote:
> >>>> Rockchip use 'arch-rockchip' instead of arch-$(SOC) as common
> >>>> header file path, so that we can get the correct path directly.
> >>> Can you give a few more details on the reason for this change? I
> >>> cannot see the benefit?
> >> 1. 'rockchip' is not SOC name but vendor name, we'd better use correct name;
> >> 2. the build system will include $(SOC)-u-boot.dtsi automatically
> >> without modify
> >>     $(SOC).dtsi or $(board).dtsi, if the $(SOC) default to 'rockchip',
> >> we can't use
> >>     this feature.
> > OK I see.
> >
> > So far Rockchip has been designed so that a single U-Boot (proper) can
> > support multiple SoCs,
>
> I don't understand, how can a single U-Boot(proper) support multiple
> Rockchip SoCs,
> it sounds awesome which is kernel like. But I thought we need different
> build
> with different source for different SoCs now.

It should be possible simply by enabling multiple SoCs, so long as you
don't try to use both 32/64-bit ones.

I suspect some extra work is needed, but probably not much.

>
> For $(SOC)-u-boot.dtsi, another way is using $(BOARD)-u-boot.dtsi, but I
> think in
> most case, we can have one $(SOC)-u-boot.dtsi instead of many
> $(BOARD)-u-boot.dtsi
> for one SoC, so we need this feature.

Well we can add multiple device-tree files. Each board has its own.
Then at runtime (in SPL) we select the correct one.

Regards,
Simon

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [U-Boot] [PATCH 1/3] rockchip: arm: use 'arch-rockchip' for common header
  2019-04-01 13:13     ` Tom Rini
@ 2019-04-02  0:58       ` Kever Yang
  0 siblings, 0 replies; 24+ messages in thread
From: Kever Yang @ 2019-04-02  0:58 UTC (permalink / raw)
  To: u-boot

Hi Tom, Neil,


On 04/01/2019 09:13 PM, Tom Rini wrote:
> On Mon, Apr 01, 2019 at 09:12:07AM +0200, Neil Armstrong wrote:
>> On 28/03/2019 04:01, Kever Yang wrote:
>>> rockchip platform header file is in 'arch-rockchip'
>>> instead of arch-$(SOC) for all SoCs.
>>>
>>> Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
>>> ---
>>>
>>>  arch/arm/cpu/armv8/start.S  | 4 ++++
>>>  arch/arm/include/asm/gpio.h | 2 +-
>>>  arch/arm/lib/vectors.S      | 5 ++++-
>>>  3 files changed, 9 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/arch/arm/cpu/armv8/start.S b/arch/arm/cpu/armv8/start.S
>>> index fe52166e28..ecee9e37a5 100644
>>> --- a/arch/arm/cpu/armv8/start.S
>>> +++ b/arch/arm/cpu/armv8/start.S
>>> @@ -26,7 +26,11 @@ _start:
>>>   * order to boot, allow them to set that in their boot0.h file and then
>>>   * use it here.
>>>   */
>>> +#ifdef CONFIG_ARCH_ROCKCHIP
>>> +#include <asm/arch-rockchip/boot0.h>
>>> +#else
>>>  #include <asm/arch/boot0.h>
>>> +#endif
>>>  #else
>>>  	b	reset
>>>  #endif
>>> diff --git a/arch/arm/include/asm/gpio.h b/arch/arm/include/asm/gpio.h
>>> index 3039e66bf9..b0c8c47c95 100644
>>> --- a/arch/arm/include/asm/gpio.h
>>> +++ b/arch/arm/include/asm/gpio.h
>>> @@ -1,5 +1,5 @@
>>>  #if !defined(CONFIG_ARCH_UNIPHIER) && !defined(CONFIG_ARCH_STI) && \
>>> -	!defined(CONFIG_ARCH_K3)
>>> +	!defined(CONFIG_ARCH_K3) && !defined(CONFIG_ARCH_ROCKCHIP)
>>>  #include <asm/arch/gpio.h>
>>>  #endif
>>>  #include <asm-generic/gpio.h>
>>> diff --git a/arch/arm/lib/vectors.S b/arch/arm/lib/vectors.S
>>> index 2ca6e2494a..20f485142e 100644
>>> --- a/arch/arm/lib/vectors.S
>>> +++ b/arch/arm/lib/vectors.S
>>> @@ -67,8 +67,11 @@
>>>   *   (1) defines '_start:' as appropriate
>>>   *   (2) inserts the vector table using ARM_VECTORS as appropriate
>>>   */
>>> +#ifdef CONFIG_ARCH_ROCKCHIP
>>> +#include <asm/arch-rockchip/boot0.h>
>>> +#else
>>>  #include <asm/arch/boot0.h>
>>> -
>>> +#endif
>>>  #else
>>>  
>>>  /*
>>>
>> Hi,
>>
>> All vendors has the same issue here, like Amlogic, but we use "meson" as $(SOC),
>> if every vendor add its own specific include in common headers like this,
>> this won't scale...
>>
>> We should fix all this CONFIG_SOC instead of adding this, by maybe using the SYS_VENDOR
>> for the arch include dir ?
> We should either:
> - Grab the mechanism currently used in the kernel to allow for another
>   high-level symlink to happen and re-org our files like this to allow
>   for that
> - In these cases, at least for now have <asm/arch-$(SOC)/boot0.h> grab
>   the appropriate <asm/subdir/boot0.h> like we do on other files, and do
>   the first option later.

Thanks for your comments, I also feel not good with this patch, so I
will make individual
folder for different soc in next version, but I think this make
redundant code in SoC side.
Maybe it will be better when high-level symlink happens.

Thanks,
- Kever

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path【请注意,邮件由sjg@google.com代发】
  2019-04-01 19:00           ` Simon Glass
@ 2019-04-02  1:11             ` Kever Yang
  2019-04-05  2:33               ` Simon Glass
  0 siblings, 1 reply; 24+ messages in thread
From: Kever Yang @ 2019-04-02  1:11 UTC (permalink / raw)
  To: u-boot



On 04/02/2019 03:00 AM, Simon Glass wrote:
> Hi Kever,
>
> On Sun, 31 Mar 2019 at 20:46, Kever Yang <kever.yang@rock-chips.com> wrote:
>> Hi Simon,
>>
>>
>> On 04/01/2019 10:00 AM, Simon Glass wrote:
>>> Hi Kever,
>>>
>>> On Sun, 31 Mar 2019 at 19:03, Kever Yang <kever.yang@rock-chips.com> wrote:
>>>> Hi Simon,
>>>>
>>>>
>>>> On 03/31/2019 05:18 AM, Simon Glass wrote:
>>>>> Hi Kever,
>>>>>
>>>>> On Wed, 27 Mar 2019 at 21:01, Kever Yang <kever.yang@rock-chips.com> wrote:
>>>>>> Rockchip use 'arch-rockchip' instead of arch-$(SOC) as common
>>>>>> header file path, so that we can get the correct path directly.
>>>>> Can you give a few more details on the reason for this change? I
>>>>> cannot see the benefit?
>>>> 1. 'rockchip' is not SOC name but vendor name, we'd better use correct name;
>>>> 2. the build system will include $(SOC)-u-boot.dtsi automatically
>>>> without modify
>>>>     $(SOC).dtsi or $(board).dtsi, if the $(SOC) default to 'rockchip',
>>>> we can't use
>>>>     this feature.
>>> OK I see.
>>>
>>> So far Rockchip has been designed so that a single U-Boot (proper) can
>>> support multiple SoCs,
>> I don't understand, how can a single U-Boot(proper) support multiple
>> Rockchip SoCs,
>> it sounds awesome which is kernel like. But I thought we need different
>> build
>> with different source for different SoCs now.
> It should be possible simply by enabling multiple SoCs, so long as you
> don't try to use both 32/64-bit ones.
>
> I suspect some extra work is needed, but probably not much.

multiple SoCs + multiple boards, I know it sounds very good and we may able
to implement it, but it would be a long time. Kernel already do this,
but we have
to know that it leaves all the one time program init job to U-Boot like
loader and
load/fix a correct dtb for it.

Can we have more common codes first, my patches for common 'board/spl/tpl'
has pending for more than one year, and I split it into pieces and hope
to get
some of then merged in next merge window.

I know there may be change request needed, so I really want to get
patches review
and response a little faster so that I can update a new version.

Well, this patch get reviewed pretty fast, but others seems no one sees
them.

Thanks,
- Kever
>
>> For $(SOC)-u-boot.dtsi, another way is using $(BOARD)-u-boot.dtsi, but I
>> think in
>> most case, we can have one $(SOC)-u-boot.dtsi instead of many
>> $(BOARD)-u-boot.dtsi
>> for one SoC, so we need this feature.
> Well we can add multiple device-tree files. Each board has its own.
> Then at runtime (in SPL) we select the correct one.
>
> Regards,
> Simon
>

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path
  2019-03-30 21:18   ` Simon Glass
  2019-04-01  1:02     ` [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path【请注意,邮件由sjg@google.com代发】 Kever Yang
@ 2019-04-03 19:57     ` Simon Glass
  2019-04-04 13:11       ` [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path【请注意,邮件由sjg@google.com代发】 Kever Yang
  1 sibling, 1 reply; 24+ messages in thread
From: Simon Glass @ 2019-04-03 19:57 UTC (permalink / raw)
  To: u-boot

Hi Kever,

On Sat, 30 Mar 2019 at 15:18, Simon Glass <sjg@chromium.org> wrote:
>
> Hi Kever,
>
> On Wed, 27 Mar 2019 at 21:01, Kever Yang <kever.yang@rock-chips.com> wrote:
> >
> > Rockchip use 'arch-rockchip' instead of arch-$(SOC) as common
> > header file path, so that we can get the correct path directly.
>
> Can you give a few more details on the reason for this change? I
> cannot see the benefit?

OK I figured it out from the context.

Do you have interest in supporting multiple SoCs with a single build?

Regards,
Simon

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path【请注意,邮件由sjg@google.com代发】
  2019-04-03 19:57     ` [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path Simon Glass
@ 2019-04-04 13:11       ` Kever Yang
  2019-04-05  2:33         ` Simon Glass
  0 siblings, 1 reply; 24+ messages in thread
From: Kever Yang @ 2019-04-04 13:11 UTC (permalink / raw)
  To: u-boot

Hi Simon,


On 04/04/2019 03:57 AM, Simon Glass wrote:
> Hi Kever,
>
> On Sat, 30 Mar 2019 at 15:18, Simon Glass <sjg@chromium.org> wrote:
>> Hi Kever,
>>
>> On Wed, 27 Mar 2019 at 21:01, Kever Yang <kever.yang@rock-chips.com> wrote:
>>> Rockchip use 'arch-rockchip' instead of arch-$(SOC) as common
>>> header file path, so that we can get the correct path directly.
>> Can you give a few more details on the reason for this change? I
>> cannot see the benefit?
> OK I figured it out from the context.
>
> Do you have interest in supporting multiple SoCs with a single build?

Is there other vendor support multiple SoCs?
For Rockchip platform, I don't think it's easy to do it now, the different
for different SoCs now:
- SoC init, eg. debug uart init, sgrf setting and other one time init
setting;
- clock driver;
- pinctrl driver, David still working on it, but the target is for
minimum size for
  each SoC, but not enable common code in pinctrl-core as much as possible,
  so this is the opposite way with support multiple SoCs support.

I would like to use common board/spl/tpl files first, and then step to
step to
see what we need to do.

Thanks,
- Kever
> Regards,
> Simon
>

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path【请注意,邮件由sjg@google.com代发】
  2019-04-02  1:11             ` Kever Yang
@ 2019-04-05  2:33               ` Simon Glass
  0 siblings, 0 replies; 24+ messages in thread
From: Simon Glass @ 2019-04-05  2:33 UTC (permalink / raw)
  To: u-boot

Hi Kever,

On Mon, 1 Apr 2019 at 19:11, Kever Yang <kever.yang@rock-chips.com> wrote:
>
>
>
> On 04/02/2019 03:00 AM, Simon Glass wrote:
> > Hi Kever,
> >
> > On Sun, 31 Mar 2019 at 20:46, Kever Yang <kever.yang@rock-chips.com> wrote:
> >> Hi Simon,
> >>
> >>
> >> On 04/01/2019 10:00 AM, Simon Glass wrote:
> >>> Hi Kever,
> >>>
> >>> On Sun, 31 Mar 2019 at 19:03, Kever Yang <kever.yang@rock-chips.com> wrote:
> >>>> Hi Simon,
> >>>>
> >>>>
> >>>> On 03/31/2019 05:18 AM, Simon Glass wrote:
> >>>>> Hi Kever,
> >>>>>
> >>>>> On Wed, 27 Mar 2019 at 21:01, Kever Yang <kever.yang@rock-chips.com> wrote:
> >>>>>> Rockchip use 'arch-rockchip' instead of arch-$(SOC) as common
> >>>>>> header file path, so that we can get the correct path directly.
> >>>>> Can you give a few more details on the reason for this change? I
> >>>>> cannot see the benefit?
> >>>> 1. 'rockchip' is not SOC name but vendor name, we'd better use correct name;
> >>>> 2. the build system will include $(SOC)-u-boot.dtsi automatically
> >>>> without modify
> >>>>     $(SOC).dtsi or $(board).dtsi, if the $(SOC) default to 'rockchip',
> >>>> we can't use
> >>>>     this feature.
> >>> OK I see.
> >>>
> >>> So far Rockchip has been designed so that a single U-Boot (proper) can
> >>> support multiple SoCs,
> >> I don't understand, how can a single U-Boot(proper) support multiple
> >> Rockchip SoCs,
> >> it sounds awesome which is kernel like. But I thought we need different
> >> build
> >> with different source for different SoCs now.
> > It should be possible simply by enabling multiple SoCs, so long as you
> > don't try to use both 32/64-bit ones.
> >
> > I suspect some extra work is needed, but probably not much.
>
> multiple SoCs + multiple boards, I know it sounds very good and we may able
> to implement it, but it would be a long time. Kernel already do this,
> but we have
> to know that it leaves all the one time program init job to U-Boot like
> loader and
> load/fix a correct dtb for it.
>
> Can we have more common codes first, my patches for common 'board/spl/tpl'
> has pending for more than one year, and I split it into pieces and hope
> to get
> some of then merged in next merge window.
>
> I know there may be change request needed, so I really want to get
> patches review
> and response a little faster so that I can update a new version.
>
> Well, this patch get reviewed pretty fast, but others seems no one sees
> them.

OK hopefully these can all be applied soon, perhaps in a -next branch.

Regards,
Simon

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path【请注意,邮件由sjg@google.com代发】
  2019-04-04 13:11       ` [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path【请注意,邮件由sjg@google.com代发】 Kever Yang
@ 2019-04-05  2:33         ` Simon Glass
  0 siblings, 0 replies; 24+ messages in thread
From: Simon Glass @ 2019-04-05  2:33 UTC (permalink / raw)
  To: u-boot

Hi Kever,

On Thu, 4 Apr 2019 at 07:11, Kever Yang <kever.yang@rock-chips.com> wrote:
>
> Hi Simon,
>
>
> On 04/04/2019 03:57 AM, Simon Glass wrote:
> > Hi Kever,
> >
> > On Sat, 30 Mar 2019 at 15:18, Simon Glass <sjg@chromium.org> wrote:
> >> Hi Kever,
> >>
> >> On Wed, 27 Mar 2019 at 21:01, Kever Yang <kever.yang@rock-chips.com> wrote:
> >>> Rockchip use 'arch-rockchip' instead of arch-$(SOC) as common
> >>> header file path, so that we can get the correct path directly.
> >> Can you give a few more details on the reason for this change? I
> >> cannot see the benefit?
> > OK I figured it out from the context.
> >
> > Do you have interest in supporting multiple SoCs with a single build?
>
> Is there other vendor support multiple SoCs?
> For Rockchip platform, I don't think it's easy to do it now, the different
> for different SoCs now:
> - SoC init, eg. debug uart init, sgrf setting and other one time init
> setting;
> - clock driver;
> - pinctrl driver, David still working on it, but the target is for
> minimum size for
>   each SoC, but not enable common code in pinctrl-core as much as possible,
>   so this is the opposite way with support multiple SoCs support.
>
> I would like to use common board/spl/tpl files first, and then step to
> step to
> see what we need to do.

OK. We can today support multiple clock and pinctrl drivers.
Minimising code size is a separate issue to actually making it work.

For SoC init we can use compatible strings to select the init - as you
say, moving to common SPL/TPL is a useful step, but in fact this is
not necessary for use to use a common U-Boot proper. I believe the
main requirement is to create a new config with additional drivers,
then make SPL select the correct DT.

But my concern is that your series to move things to #include asm/arch
precludes supporting more than one SoC. So if we want this, we should
leave things as they are.

If you like I could create a proof of concept for this for two chosen SoCs?

Regards,
Simon

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path
  2019-03-28  3:01 ` [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path Kever Yang
  2019-03-30 21:18   ` Simon Glass
@ 2019-04-28 23:34   ` Philipp Tomsich
  2019-05-01 13:06   ` Philipp Tomsich
  2 siblings, 0 replies; 24+ messages in thread
From: Philipp Tomsich @ 2019-04-28 23:34 UTC (permalink / raw)
  To: u-boot

> Rockchip use 'arch-rockchip' instead of arch-$(SOC) as common
> header file path, so that we can get the correct path directly.
> 
> Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
> ---
> 
>  .../include/asm/arch-rockchip/ddr_rk3188.h    |  2 +-
>  arch/arm/mach-rockchip/Kconfig                |  2 +-
>  arch/arm/mach-rockchip/boot_mode.c            |  2 +-
>  arch/arm/mach-rockchip/bootrom.c              |  4 ++--
>  arch/arm/mach-rockchip/rk3036-board-spl.c     | 12 +++++------
>  arch/arm/mach-rockchip/rk3036-board.c         | 10 +++++-----
>  arch/arm/mach-rockchip/rk3036/clk_rk3036.c    |  4 ++--
>  arch/arm/mach-rockchip/rk3036/sdram_rk3036.c  | 12 +++++------
>  arch/arm/mach-rockchip/rk3036/syscon_rk3036.c |  2 +-
>  arch/arm/mach-rockchip/rk3128-board.c         | 10 +++++-----
>  arch/arm/mach-rockchip/rk3128/clk_rk3128.c    |  4 ++--
>  arch/arm/mach-rockchip/rk3128/syscon_rk3128.c |  2 +-
>  arch/arm/mach-rockchip/rk3188-board-spl.c     | 16 +++++++--------
>  arch/arm/mach-rockchip/rk3188-board.c         | 10 +++++-----
>  arch/arm/mach-rockchip/rk3188/clk_rk3188.c    |  4 ++--
>  arch/arm/mach-rockchip/rk3188/syscon_rk3188.c |  2 +-
>  arch/arm/mach-rockchip/rk322x-board-spl.c     | 12 +++++------
>  arch/arm/mach-rockchip/rk322x-board.c         | 10 +++++-----
>  arch/arm/mach-rockchip/rk322x/clk_rk322x.c    |  4 ++--
>  arch/arm/mach-rockchip/rk322x/syscon_rk322x.c |  2 +-
>  arch/arm/mach-rockchip/rk3288-board-spl.c     | 20 +++++++++----------
>  arch/arm/mach-rockchip/rk3288-board-tpl.c     | 14 ++++++-------
>  arch/arm/mach-rockchip/rk3288-board.c         | 12 +++++------
>  arch/arm/mach-rockchip/rk3288/clk_rk3288.c    |  4 ++--
>  arch/arm/mach-rockchip/rk3288/rk3288.c        |  2 +-
>  arch/arm/mach-rockchip/rk3288/syscon_rk3288.c |  2 +-
>  arch/arm/mach-rockchip/rk3328/clk_rk3328.c    |  4 ++--
>  arch/arm/mach-rockchip/rk3328/rk3328.c        |  2 +-
>  arch/arm/mach-rockchip/rk3328/syscon_rk3328.c |  2 +-
>  arch/arm/mach-rockchip/rk3368-board-spl.c     | 10 +++++-----
>  arch/arm/mach-rockchip/rk3368-board-tpl.c     | 12 +++++------
>  arch/arm/mach-rockchip/rk3368/clk_rk3368.c    |  4 ++--
>  arch/arm/mach-rockchip/rk3368/rk3368.c        |  6 +++---
>  arch/arm/mach-rockchip/rk3368/syscon_rk3368.c |  2 +-
>  arch/arm/mach-rockchip/rk3399-board-spl.c     | 12 +++++------
>  arch/arm/mach-rockchip/rk3399-board.c         |  2 +-
>  arch/arm/mach-rockchip/rk3399/clk_rk3399.c    |  4 ++--
>  arch/arm/mach-rockchip/rk3399/rk3399.c        |  2 +-
>  arch/arm/mach-rockchip/rk3399/syscon_rk3399.c |  2 +-
>  arch/arm/mach-rockchip/rk_timer.c             |  2 +-
>  arch/arm/mach-rockchip/rv1108/clk_rv1108.c    |  4 ++--
>  arch/arm/mach-rockchip/rv1108/syscon_rv1108.c |  2 +-
>  arch/arm/mach-rockchip/sdram_common.c         |  2 +-
>  board/elgin/elgin_rv1108/elgin_rv1108.c       |  4 ++--
>  board/rockchip/evb_rk3036/evb_rk3036.c        |  4 ++--
>  board/rockchip/evb_rk3229/evb_rk3229.c        |  2 +-
>  board/rockchip/evb_rk3399/evb-rk3399.c        |  2 +-
>  board/rockchip/evb_rv1108/evb_rv1108.c        |  4 ++--
>  board/rockchip/kylin_rk3036/kylin_rk3036.c    |  4 ++--
>  board/rockchip/sheep_rk3368/sheep_rk3368.c    |  4 ++--
>  .../lion_rk3368/lion_rk3368.c                 |  6 +++---
>  .../puma_rk3399/puma-rk3399.c                 | 10 +++++-----
>  board/vamrs/rock960_rk3399/rock960-rk3399.c   |  2 +-
>  cmd/rockusb.c                                 |  2 +-
>  drivers/clk/rockchip/clk_rk3036.c             |  6 +++---
>  drivers/clk/rockchip/clk_rk3128.c             |  6 +++---
>  drivers/clk/rockchip/clk_rk3188.c             |  8 ++++----
>  drivers/clk/rockchip/clk_rk322x.c             |  6 +++---
>  drivers/clk/rockchip/clk_rk3288.c             |  8 ++++----
>  drivers/clk/rockchip/clk_rk3328.c             |  8 ++++----
>  drivers/clk/rockchip/clk_rk3368.c             |  6 +++---
>  drivers/clk/rockchip/clk_rk3399.c             |  6 +++---
>  drivers/clk/rockchip/clk_rv1108.c             |  6 +++---
>  drivers/gpio/rk_gpio.c                        |  3 ++-
>  drivers/i2c/rk_i2c.c                          |  6 +++---
>  drivers/mmc/rockchip_dw_mmc.c                 |  4 ++--
>  drivers/net/gmac_rockchip.c                   | 18 ++++++++---------
>  drivers/pwm/rk_pwm.c                          |  2 +-
>  drivers/ram/rockchip/dmc-rk3368.c             | 12 +++++------
>  drivers/ram/rockchip/sdram_rk3128.c           |  6 +++---
>  drivers/ram/rockchip/sdram_rk3188.c           | 14 ++++++-------
>  drivers/ram/rockchip/sdram_rk322x.c           | 16 +++++++--------
>  drivers/ram/rockchip/sdram_rk3288.c           | 14 ++++++-------
>  drivers/ram/rockchip/sdram_rk3328.c           |  6 +++---
>  drivers/ram/rockchip/sdram_rk3399.c           | 12 +++++------
>  drivers/reset/reset-rockchip.c                |  2 +-
>  drivers/serial/serial_rockchip.c              |  2 +-
>  drivers/sound/rockchip_sound.c                |  2 +-
>  drivers/spi/rk_spi.c                          |  4 ++--
>  drivers/sysreset/sysreset_rockchip.c          |  6 +++---
>  drivers/timer/rockchip_timer.c                |  2 +-
>  drivers/usb/gadget/f_rockusb.c                |  2 +-
>  drivers/video/rockchip/rk3288_hdmi.c          |  6 +++---
>  drivers/video/rockchip/rk3288_mipi.c          | 10 +++++-----
>  drivers/video/rockchip/rk3288_vop.c           |  6 +++---
>  drivers/video/rockchip/rk3399_hdmi.c          |  6 +++---
>  drivers/video/rockchip/rk3399_mipi.c          | 10 +++++-----
>  drivers/video/rockchip/rk3399_vop.c           |  2 +-
>  drivers/video/rockchip/rk_edp.c               |  6 +++---
>  drivers/video/rockchip/rk_hdmi.c              |  5 ++---
>  drivers/video/rockchip/rk_lvds.c              |  6 +++---
>  drivers/video/rockchip/rk_mipi.c              |  9 ++++-----
>  drivers/video/rockchip/rk_vop.c               |  7 +++----
>  drivers/video/rockchip/rk_vop.h               |  2 +-
>  include/configs/rk3036_common.h               |  2 +-
>  include/configs/rk3188_common.h               |  2 +-
>  include/configs/rk322x_common.h               |  2 +-
>  include/configs/rk3288_common.h               |  2 +-
>  include/configs/rk3368_common.h               |  2 +-
>  include/configs/rv1108_common.h               |  2 +-
>  100 files changed, 288 insertions(+), 290 deletions(-)
> 

Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [U-Boot] [PATCH 1/3] rockchip: arm: use 'arch-rockchip' for common header
  2019-03-28  3:01 ` [U-Boot] [PATCH 1/3] rockchip: arm: use 'arch-rockchip' for common header Kever Yang
  2019-03-28  7:02   ` Philipp Tomsich
  2019-04-01  7:12   ` Neil Armstrong
@ 2019-05-01 13:06   ` Philipp Tomsich
  2 siblings, 0 replies; 24+ messages in thread
From: Philipp Tomsich @ 2019-05-01 13:06 UTC (permalink / raw)
  To: u-boot

> rockchip platform header file is in 'arch-rockchip'
> instead of arch-$(SOC) for all SoCs.
> 
> Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
> Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
> ---
> 
>  arch/arm/cpu/armv8/start.S  | 4 ++++
>  arch/arm/include/asm/gpio.h | 2 +-
>  arch/arm/lib/vectors.S      | 5 ++++-
>  3 files changed, 9 insertions(+), 2 deletions(-)
> 

Applied to u-boot-rockchip, thanks!

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [U-Boot] [PATCH 3/3] rockchip: correct ARCH_SOC name
  2019-03-28  3:01 ` [U-Boot] [PATCH 3/3] rockchip: correct ARCH_SOC name Kever Yang
  2019-03-28  7:02   ` Philipp Tomsich
@ 2019-05-01 13:06   ` Philipp Tomsich
  1 sibling, 0 replies; 24+ messages in thread
From: Philipp Tomsich @ 2019-05-01 13:06 UTC (permalink / raw)
  To: u-boot

> The ARCH_SOC name default as 'rockchip' and we put all the
> header file in 'arch/arm/include/asm/arch-rockchip/', but
> the 'rockchip' is not the SOC name, let's correct it after
> we update all the source file.
> 
> Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
> Reviewed-by: Philipp Tomsiich <philipp.tomsich@theobroma-systems.com>
> ---
> 
>  arch/arm/mach-rockchip/rk3036/Kconfig | 2 +-
>  arch/arm/mach-rockchip/rk3128/Kconfig | 2 +-
>  arch/arm/mach-rockchip/rk3188/Kconfig | 2 +-
>  arch/arm/mach-rockchip/rk322x/Kconfig | 2 +-
>  arch/arm/mach-rockchip/rk3288/Kconfig | 2 +-
>  arch/arm/mach-rockchip/rk3328/Kconfig | 2 +-
>  arch/arm/mach-rockchip/rk3368/Kconfig | 2 +-
>  arch/arm/mach-rockchip/rk3399/Kconfig | 2 +-
>  arch/arm/mach-rockchip/rv1108/Kconfig | 2 +-
>  9 files changed, 9 insertions(+), 9 deletions(-)
> 

Applied to u-boot-rockchip, thanks!

^ permalink raw reply	[flat|nested] 24+ messages in thread

* [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path
  2019-03-28  3:01 ` [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path Kever Yang
  2019-03-30 21:18   ` Simon Glass
  2019-04-28 23:34   ` [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path Philipp Tomsich
@ 2019-05-01 13:06   ` Philipp Tomsich
  2 siblings, 0 replies; 24+ messages in thread
From: Philipp Tomsich @ 2019-05-01 13:06 UTC (permalink / raw)
  To: u-boot

> Rockchip use 'arch-rockchip' instead of arch-$(SOC) as common
> header file path, so that we can get the correct path directly.
> 
> Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
> Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
> ---
> 
>  .../include/asm/arch-rockchip/ddr_rk3188.h    |  2 +-
>  arch/arm/mach-rockchip/Kconfig                |  2 +-
>  arch/arm/mach-rockchip/boot_mode.c            |  2 +-
>  arch/arm/mach-rockchip/bootrom.c              |  4 ++--
>  arch/arm/mach-rockchip/rk3036-board-spl.c     | 12 +++++------
>  arch/arm/mach-rockchip/rk3036-board.c         | 10 +++++-----
>  arch/arm/mach-rockchip/rk3036/clk_rk3036.c    |  4 ++--
>  arch/arm/mach-rockchip/rk3036/sdram_rk3036.c  | 12 +++++------
>  arch/arm/mach-rockchip/rk3036/syscon_rk3036.c |  2 +-
>  arch/arm/mach-rockchip/rk3128-board.c         | 10 +++++-----
>  arch/arm/mach-rockchip/rk3128/clk_rk3128.c    |  4 ++--
>  arch/arm/mach-rockchip/rk3128/syscon_rk3128.c |  2 +-
>  arch/arm/mach-rockchip/rk3188-board-spl.c     | 16 +++++++--------
>  arch/arm/mach-rockchip/rk3188-board.c         | 10 +++++-----
>  arch/arm/mach-rockchip/rk3188/clk_rk3188.c    |  4 ++--
>  arch/arm/mach-rockchip/rk3188/syscon_rk3188.c |  2 +-
>  arch/arm/mach-rockchip/rk322x-board-spl.c     | 12 +++++------
>  arch/arm/mach-rockchip/rk322x-board.c         | 10 +++++-----
>  arch/arm/mach-rockchip/rk322x/clk_rk322x.c    |  4 ++--
>  arch/arm/mach-rockchip/rk322x/syscon_rk322x.c |  2 +-
>  arch/arm/mach-rockchip/rk3288-board-spl.c     | 20 +++++++++----------
>  arch/arm/mach-rockchip/rk3288-board-tpl.c     | 14 ++++++-------
>  arch/arm/mach-rockchip/rk3288-board.c         | 12 +++++------
>  arch/arm/mach-rockchip/rk3288/clk_rk3288.c    |  4 ++--
>  arch/arm/mach-rockchip/rk3288/rk3288.c        |  2 +-
>  arch/arm/mach-rockchip/rk3288/syscon_rk3288.c |  2 +-
>  arch/arm/mach-rockchip/rk3328/clk_rk3328.c    |  4 ++--
>  arch/arm/mach-rockchip/rk3328/rk3328.c        |  2 +-
>  arch/arm/mach-rockchip/rk3328/syscon_rk3328.c |  2 +-
>  arch/arm/mach-rockchip/rk3368-board-spl.c     | 10 +++++-----
>  arch/arm/mach-rockchip/rk3368-board-tpl.c     | 12 +++++------
>  arch/arm/mach-rockchip/rk3368/clk_rk3368.c    |  4 ++--
>  arch/arm/mach-rockchip/rk3368/rk3368.c        |  6 +++---
>  arch/arm/mach-rockchip/rk3368/syscon_rk3368.c |  2 +-
>  arch/arm/mach-rockchip/rk3399-board-spl.c     | 12 +++++------
>  arch/arm/mach-rockchip/rk3399-board.c         |  2 +-
>  arch/arm/mach-rockchip/rk3399/clk_rk3399.c    |  4 ++--
>  arch/arm/mach-rockchip/rk3399/rk3399.c        |  2 +-
>  arch/arm/mach-rockchip/rk3399/syscon_rk3399.c |  2 +-
>  arch/arm/mach-rockchip/rk_timer.c             |  2 +-
>  arch/arm/mach-rockchip/rv1108/clk_rv1108.c    |  4 ++--
>  arch/arm/mach-rockchip/rv1108/syscon_rv1108.c |  2 +-
>  arch/arm/mach-rockchip/sdram_common.c         |  2 +-
>  board/elgin/elgin_rv1108/elgin_rv1108.c       |  4 ++--
>  board/rockchip/evb_rk3036/evb_rk3036.c        |  4 ++--
>  board/rockchip/evb_rk3229/evb_rk3229.c        |  2 +-
>  board/rockchip/evb_rk3399/evb-rk3399.c        |  2 +-
>  board/rockchip/evb_rv1108/evb_rv1108.c        |  4 ++--
>  board/rockchip/kylin_rk3036/kylin_rk3036.c    |  4 ++--
>  board/rockchip/sheep_rk3368/sheep_rk3368.c    |  4 ++--
>  .../lion_rk3368/lion_rk3368.c                 |  6 +++---
>  .../puma_rk3399/puma-rk3399.c                 | 10 +++++-----
>  board/vamrs/rock960_rk3399/rock960-rk3399.c   |  2 +-
>  cmd/rockusb.c                                 |  2 +-
>  drivers/clk/rockchip/clk_rk3036.c             |  6 +++---
>  drivers/clk/rockchip/clk_rk3128.c             |  6 +++---
>  drivers/clk/rockchip/clk_rk3188.c             |  8 ++++----
>  drivers/clk/rockchip/clk_rk322x.c             |  6 +++---
>  drivers/clk/rockchip/clk_rk3288.c             |  8 ++++----
>  drivers/clk/rockchip/clk_rk3328.c             |  8 ++++----
>  drivers/clk/rockchip/clk_rk3368.c             |  6 +++---
>  drivers/clk/rockchip/clk_rk3399.c             |  6 +++---
>  drivers/clk/rockchip/clk_rv1108.c             |  6 +++---
>  drivers/gpio/rk_gpio.c                        |  3 ++-
>  drivers/i2c/rk_i2c.c                          |  6 +++---
>  drivers/mmc/rockchip_dw_mmc.c                 |  4 ++--
>  drivers/net/gmac_rockchip.c                   | 18 ++++++++---------
>  drivers/pwm/rk_pwm.c                          |  2 +-
>  drivers/ram/rockchip/dmc-rk3368.c             | 12 +++++------
>  drivers/ram/rockchip/sdram_rk3128.c           |  6 +++---
>  drivers/ram/rockchip/sdram_rk3188.c           | 14 ++++++-------
>  drivers/ram/rockchip/sdram_rk322x.c           | 16 +++++++--------
>  drivers/ram/rockchip/sdram_rk3288.c           | 14 ++++++-------
>  drivers/ram/rockchip/sdram_rk3328.c           |  6 +++---
>  drivers/ram/rockchip/sdram_rk3399.c           | 12 +++++------
>  drivers/reset/reset-rockchip.c                |  2 +-
>  drivers/serial/serial_rockchip.c              |  2 +-
>  drivers/sound/rockchip_sound.c                |  2 +-
>  drivers/spi/rk_spi.c                          |  4 ++--
>  drivers/sysreset/sysreset_rockchip.c          |  6 +++---
>  drivers/timer/rockchip_timer.c                |  2 +-
>  drivers/usb/gadget/f_rockusb.c                |  2 +-
>  drivers/video/rockchip/rk3288_hdmi.c          |  6 +++---
>  drivers/video/rockchip/rk3288_mipi.c          | 10 +++++-----
>  drivers/video/rockchip/rk3288_vop.c           |  6 +++---
>  drivers/video/rockchip/rk3399_hdmi.c          |  6 +++---
>  drivers/video/rockchip/rk3399_mipi.c          | 10 +++++-----
>  drivers/video/rockchip/rk3399_vop.c           |  2 +-
>  drivers/video/rockchip/rk_edp.c               |  6 +++---
>  drivers/video/rockchip/rk_hdmi.c              |  5 ++---
>  drivers/video/rockchip/rk_lvds.c              |  6 +++---
>  drivers/video/rockchip/rk_mipi.c              |  9 ++++-----
>  drivers/video/rockchip/rk_vop.c               |  7 +++----
>  drivers/video/rockchip/rk_vop.h               |  2 +-
>  include/configs/rk3036_common.h               |  2 +-
>  include/configs/rk3188_common.h               |  2 +-
>  include/configs/rk322x_common.h               |  2 +-
>  include/configs/rk3288_common.h               |  2 +-
>  include/configs/rk3368_common.h               |  2 +-
>  include/configs/rv1108_common.h               |  2 +-
>  100 files changed, 288 insertions(+), 290 deletions(-)
> 

Applied to u-boot-rockchip, thanks!

^ permalink raw reply	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2019-05-01 13:06 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-03-28  3:01 [U-Boot] [PATCH 0/3] rockchip: correct SYS_SOC name for all rockchip SoCs Kever Yang
2019-03-28  3:01 ` [U-Boot] [PATCH 1/3] rockchip: arm: use 'arch-rockchip' for common header Kever Yang
2019-03-28  7:02   ` Philipp Tomsich
2019-04-01  7:12   ` Neil Armstrong
2019-04-01 13:13     ` Tom Rini
2019-04-02  0:58       ` Kever Yang
2019-05-01 13:06   ` Philipp Tomsich
2019-03-28  3:01 ` [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path Kever Yang
2019-03-30 21:18   ` Simon Glass
2019-04-01  1:02     ` [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path【请注意,邮件由sjg@google.com代发】 Kever Yang
2019-04-01  2:00       ` Simon Glass
2019-04-01  2:46         ` Kever Yang
2019-04-01 19:00           ` Simon Glass
2019-04-02  1:11             ` Kever Yang
2019-04-05  2:33               ` Simon Glass
2019-04-03 19:57     ` [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path Simon Glass
2019-04-04 13:11       ` [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path【请注意,邮件由sjg@google.com代发】 Kever Yang
2019-04-05  2:33         ` Simon Glass
2019-04-28 23:34   ` [U-Boot] [PATCH 2/3] rockchip: use 'arch-rockchip' as header file path Philipp Tomsich
2019-05-01 13:06   ` Philipp Tomsich
2019-03-28  3:01 ` [U-Boot] [PATCH 3/3] rockchip: correct ARCH_SOC name Kever Yang
2019-03-28  7:02   ` Philipp Tomsich
2019-03-28  9:31     ` Kever Yang
2019-05-01 13:06   ` Philipp Tomsich

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.