mbox series

[U-Boot,0/7] arm: Introduce v7R support

Message ID 20180425091439.12695-1-lokeshvutla@ti.com
Headers show
Series arm: Introduce v7R support | expand

Message

Lokesh Vutla April 25, 2018, 9:14 a.m. UTC
The Cortex-R* processors are a mid-range CPUs for use in deeply-embedded,
real-time systems. It implements the ARMv7-R architecture, and includes
Thumb-2 technology for optimum code density and processing throughput.

Except for MPU(Memory Protection Unit) and few CP15 registers, most of the
features are compatible with v7 architecture. This series adds minimal
support for v7-R architecture by reusing the v7 support. Also adding
support for MPU.

Changes since RFC:
- Renamed CPUV7 as CPU_V7A
- Renamed MMU as SYS_ARM_MMU
- Added SYS_ARM_CACHE_CP15

travis-ci build report: https://travis-ci.org/lokeshvutla/u-boot/builds/370904667

Lokesh Vutla (6):
  arm: v7: Update VBAR only if available
  arm: v7: Kconfig: Rename CPU_V7 as CPU_V7A
  arm: v7: Kconfig: Add entry for MMU
  arm: v7: Kconfig: Introduce SYS_ARM_CACHE_CP15
  arm: v7R: Add support for MPU
  arm: v7R: Add support for enabling caches

Michal Simek (1):
  arm: v7R: Add initial support

 arch/arm/Kconfig                  |  95 ++++++++++++++++-------
 arch/arm/Makefile                 |   8 +-
 arch/arm/cpu/armv7/Kconfig        |   4 +-
 arch/arm/cpu/armv7/Makefile       |   2 +
 arch/arm/cpu/armv7/mpu_v7r.c      | 120 ++++++++++++++++++++++++++++++
 arch/arm/cpu/armv7/start.S        |   4 +
 arch/arm/cpu/armv7m/Makefile      |   3 +-
 arch/arm/cpu/armv7m/mpu.c         |  41 +---------
 arch/arm/include/asm/armv7m_mpu.h |  69 +++++++++++++++++
 arch/arm/include/asm/system.h     |   4 +-
 arch/arm/lib/Makefile             |   6 +-
 arch/arm/lib/cache-cp15.c         |  16 +++-
 arch/arm/mach-at91/Kconfig        |  12 +--
 arch/arm/mach-at91/Makefile       |   2 +-
 arch/arm/mach-at91/config.mk      |   2 +-
 arch/arm/mach-bcm283x/Kconfig     |   4 +-
 arch/arm/mach-exynos/Kconfig      |   4 +-
 arch/arm/mach-exynos/Makefile     |   2 +-
 arch/arm/mach-exynos/soc.c        |   2 +-
 arch/arm/mach-mvebu/Kconfig       |   2 +-
 arch/arm/mach-qemu/Kconfig        |   2 +-
 arch/arm/mach-rmobile/Kconfig     |   2 +-
 arch/arm/mach-rockchip/Kconfig    |  12 +--
 arch/arm/mach-stm32mp/Kconfig     |   2 +-
 arch/arm/mach-sunxi/Kconfig       |  22 +++---
 arch/arm/mach-tegra/Kconfig       |   2 +-
 arch/arm/mach-uniphier/Kconfig    |   2 +-
 arch/arm/mach-uniphier/Makefile   |   2 +-
 cmd/Kconfig                       |   2 +-
 drivers/serial/arm_dcc.c          |   2 +-
 30 files changed, 330 insertions(+), 122 deletions(-)
 create mode 100644 arch/arm/cpu/armv7/mpu_v7r.c

Comments

Michal Simek April 25, 2018, 1:21 p.m. UTC | #1
On 25.4.2018 11:14, Lokesh Vutla wrote:
> The Cortex-R* processors are a mid-range CPUs for use in deeply-embedded,
> real-time systems. It implements the ARMv7-R architecture, and includes
> Thumb-2 technology for optimum code density and processing throughput.
> 
> Except for MPU(Memory Protection Unit) and few CP15 registers, most of the
> features are compatible with v7 architecture. This series adds minimal
> support for v7-R architecture by reusing the v7 support. Also adding
> support for MPU.
> 
> Changes since RFC:
> - Renamed CPUV7 as CPU_V7A
> - Renamed MMU as SYS_ARM_MMU
> - Added SYS_ARM_CACHE_CP15
> 
> travis-ci build report: https://travis-ci.org/lokeshvutla/u-boot/builds/370904667
> 
> Lokesh Vutla (6):
>   arm: v7: Update VBAR only if available
>   arm: v7: Kconfig: Rename CPU_V7 as CPU_V7A
>   arm: v7: Kconfig: Add entry for MMU
>   arm: v7: Kconfig: Introduce SYS_ARM_CACHE_CP15
>   arm: v7R: Add support for MPU
>   arm: v7R: Add support for enabling caches
> 
> Michal Simek (1):
>   arm: v7R: Add initial support
> 
>  arch/arm/Kconfig                  |  95 ++++++++++++++++-------
>  arch/arm/Makefile                 |   8 +-
>  arch/arm/cpu/armv7/Kconfig        |   4 +-
>  arch/arm/cpu/armv7/Makefile       |   2 +
>  arch/arm/cpu/armv7/mpu_v7r.c      | 120 ++++++++++++++++++++++++++++++
>  arch/arm/cpu/armv7/start.S        |   4 +
>  arch/arm/cpu/armv7m/Makefile      |   3 +-
>  arch/arm/cpu/armv7m/mpu.c         |  41 +---------
>  arch/arm/include/asm/armv7m_mpu.h |  69 +++++++++++++++++
>  arch/arm/include/asm/system.h     |   4 +-
>  arch/arm/lib/Makefile             |   6 +-
>  arch/arm/lib/cache-cp15.c         |  16 +++-
>  arch/arm/mach-at91/Kconfig        |  12 +--
>  arch/arm/mach-at91/Makefile       |   2 +-
>  arch/arm/mach-at91/config.mk      |   2 +-
>  arch/arm/mach-bcm283x/Kconfig     |   4 +-
>  arch/arm/mach-exynos/Kconfig      |   4 +-
>  arch/arm/mach-exynos/Makefile     |   2 +-
>  arch/arm/mach-exynos/soc.c        |   2 +-
>  arch/arm/mach-mvebu/Kconfig       |   2 +-
>  arch/arm/mach-qemu/Kconfig        |   2 +-
>  arch/arm/mach-rmobile/Kconfig     |   2 +-
>  arch/arm/mach-rockchip/Kconfig    |  12 +--
>  arch/arm/mach-stm32mp/Kconfig     |   2 +-
>  arch/arm/mach-sunxi/Kconfig       |  22 +++---
>  arch/arm/mach-tegra/Kconfig       |   2 +-
>  arch/arm/mach-uniphier/Kconfig    |   2 +-
>  arch/arm/mach-uniphier/Makefile   |   2 +-
>  cmd/Kconfig                       |   2 +-
>  drivers/serial/arm_dcc.c          |   2 +-
>  30 files changed, 330 insertions(+), 122 deletions(-)
>  create mode 100644 arch/arm/cpu/armv7/mpu_v7r.c
> 

For the whole series:

Tested-by: Michal Simek <michal.simek@xilinx.com>

I will send zynqmp r5 support on the top of this.

Thanks,
Michal