Commit 8d648aad authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull ARM SoC platform updates from Olof Johansson:
 "SoC platform changes (arch/arm/mach-*). This merge window, the bulk is
  for a few platforms:

  Gemini:
   - Legacy platform that Linus Walleij has converted to multiplatform
     and DT, so a handful of various tweaks there, removal of some old
     stale support, etc.

  Atmel AT91:
   - Fixup of various power management related pieces
   - Move of SoC detection to a drivers/soc driver instead

  ST Micro STM32:
   - New SoC support: STM32H743

  TI platforms:
   - More driver support for Davinci (SATA in particular)
   - Removal of some old stale hwmod files (linkspace platform)

  Misc:
   - A couple of smaller patches for i.MX, sunxi, hisi"

* tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (57 commits)
  ARM: davinci: Add clock for CPPI 4.1 DMA engine
  ARM: mxs: add support for I2SE Duckbill 2 boards
  MAINTAINERS: Update the Allwinner sunXi entry
  ARM: i.MX25: globally disable supervisor protect
  ARM: at91: move SoC detection to its own driver
  ARM: at91: pm: correct typo
  ARM: at91: pm: Remove at91_pm_set_standby
  ARM: at91: pm: Merge all at91sam9*_pm_init
  ARM: at91: pm: Tie the USB clock mask to the pmc
  ARM: at91: pm: Tie the memory controller type to the ramc id
  ARM: at91: pm: Workaround DDRSDRC self-refresh bug with LPDDR1 memories.
  ARM: at91: pm: Simplify at91rm9200_standby
  ARM: at91: pm: Use struct at91_pm_data in pm_suspend.S
  ARM: at91: pm: Move global variables into at91_pm_data
  ARM: at91: pm: Move at91_ramc_read/write to pm.c
  ARM: at91: pm: Cleanup headers
  MAINTAINERS: Add memory drivers to AT91 entry
  MAINTAINERS: Update AT91 entry
  ARM: davinci: add pata_bk3710 libata driver support
  ARM: OMAP2+: mark omap_init_rng as __init
  ...
parents e07e368b 17e310b8
Loading
Loading
Loading
Loading
+30 −0
Original line number Diff line number Diff line
			STM32H743 Overview
			==================

  Introduction
  ------------
	The STM32H743 is a Cortex-M7 MCU aimed at various applications.
	It features:
	- Cortex-M7 core running up to @400MHz
	- 2MB internal flash, 1MBytes internal RAM
	- FMC controller to connect SDRAM, NOR and NAND memories
	- Dual mode QSPI
	- SD/MMC/SDIO support
	- Ethernet controller
	- USB OTFG FS & HS controllers
	- I2C, SPI, CAN busses support
	- Several 16 & 32 bits general purpose timers
	- Serial Audio interface
	- LCD controller
	- HDMI-CEC
	- SPDIFRX
	- DFSDM

  Resources
  ---------
	Datasheet and reference manual are publicly available on ST website:
	- http://www.st.com/en/microcontrollers/stm32h7x3.html?querycriteria=productId=LN2033

  Document Author
  ---------------
	Alexandre Torgue <alexandre.torgue@st.com>
+7 −2
Original line number Diff line number Diff line
@@ -1056,8 +1056,13 @@ M: Chen-Yu Tsai <wens@csie.org>
L:	linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
S:	Maintained
N:	sun[x456789]i
F:	arch/arm/boot/dts/ntc-gr8*
N:	sun50i
F:	arch/arm/mach-sunxi/
F:	arch/arm64/boot/dts/allwinner/
F:	drivers/clk/sunxi-ng/
F:	drivers/pinctrl/sunxi/
F:	drivers/soc/sunxi/
T:	git git://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux.git

ARM/Allwinner SoC Clock Support
M:	Emilio López <emilio@elopez.com.ar>
@@ -1110,7 +1115,6 @@ F: drivers/*/*aspeed*
ARM/ATMEL AT91RM9200, AT91SAM9 AND SAMA5 SOC SUPPORT
M:	Nicolas Ferre <nicolas.ferre@microchip.com>
M:	Alexandre Belloni <alexandre.belloni@free-electrons.com>
M:	Jean-Christophe Plagniol-Villard <plagnioj@jcrosoft.com>
L:	linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
W:	http://www.linux4sam.org
T:	git git://git.kernel.org/pub/scm/linux/kernel/git/nferre/linux-at91.git
@@ -1122,6 +1126,7 @@ F: arch/arm/boot/dts/at91*.dtsi
F:	arch/arm/boot/dts/sama*.dts
F:	arch/arm/boot/dts/sama*.dtsi
F:	arch/arm/include/debug/at91.S
F:	drivers/memory/atmel*

ARM/ATMEL AT91 Clock Support
M:	Boris Brezillon <boris.brezillon@free-electrons.com>
+2 −31
Original line number Diff line number Diff line
@@ -359,15 +359,6 @@ config ARM_SINGLE_ARMV7M
	select SPARSE_IRQ
	select USE_OF

config ARCH_GEMINI
	bool "Cortina Systems Gemini"
	select CLKSRC_MMIO
	select CPU_FA526
	select GENERIC_CLOCKEVENTS
	select GPIOLIB
	help
	  Support for the Cortina Systems Gemini family SoCs

config ARCH_EBSA110
	bool "EBSA-110"
	select ARCH_USES_GETTIMEOFFSET
@@ -819,6 +810,8 @@ source "arch/arm/mach-spear/Kconfig"

source "arch/arm/mach-sti/Kconfig"

source "arch/arm/mach-stm32/Kconfig"

source "arch/arm/mach-s3c24xx/Kconfig"

source "arch/arm/mach-s3c64xx/Kconfig"
@@ -877,28 +870,6 @@ config ARCH_LPC18XX
	  Support for NXP's LPC18xx Cortex-M3 and LPC43xx Cortex-M4
	  high performance microcontrollers.

config ARCH_STM32
	bool "STMicrolectronics STM32"
	depends on ARM_SINGLE_ARMV7M
	select ARCH_HAS_RESET_CONTROLLER
	select ARMV7M_SYSTICK
	select CLKSRC_STM32
	select PINCTRL
	select RESET_CONTROLLER
	select STM32_EXTI
	help
	  Support for STMicroelectronics STM32 processors.

config MACH_STM32F429
	bool "STMicrolectronics STM32F429"
	depends on ARCH_STM32
	default y

config MACH_STM32F746
	bool "STMicrolectronics STM32F746"
	depends on ARCH_STM32
	default y

config ARCH_MPS2
	bool "ARM MPS2 platform"
	depends on ARM_SINGLE_ARMV7M
+10 −8
Original line number Diff line number Diff line
@@ -22,7 +22,8 @@

#define UARTA_3390		REG_PHYS_ADDR(0x40a900)
#define UARTA_7250		REG_PHYS_ADDR(0x40b400)
#define UARTA_7268		REG_PHYS_ADDR(0x40c000)
#define UARTA_7260		REG_PHYS_ADDR(0x40c000)
#define UARTA_7268		UARTA_7260
#define UARTA_7271		UARTA_7268
#define UARTA_7364		REG_PHYS_ADDR(0x40b000)
#define UARTA_7366		UARTA_7364
@@ -62,13 +63,14 @@
		/* Chip specific detection starts here */
20:		checkuart(\rp, \rv, 0x33900000, 3390)
21:		checkuart(\rp, \rv, 0x72500000, 7250)
22:		checkuart(\rp, \rv, 0x72680000, 7268)
23:		checkuart(\rp, \rv, 0x72710000, 7271)
24:		checkuart(\rp, \rv, 0x73640000, 7364)
25:		checkuart(\rp, \rv, 0x73660000, 7366)
26:		checkuart(\rp, \rv, 0x07437100, 74371)
27:		checkuart(\rp, \rv, 0x74390000, 7439)
28:		checkuart(\rp, \rv, 0x74450000, 7445)
22:		checkuart(\rp, \rv, 0x72600000, 7260)
23:		checkuart(\rp, \rv, 0x72680000, 7268)
24:		checkuart(\rp, \rv, 0x72710000, 7271)
25:		checkuart(\rp, \rv, 0x73640000, 7364)
26:		checkuart(\rp, \rv, 0x73660000, 7366)
27:		checkuart(\rp, \rv, 0x07437100, 74371)
28:		checkuart(\rp, \rv, 0x74390000, 7439)
29:		checkuart(\rp, \rv, 0x74450000, 7445)

		/* No valid UART found */
90:		mov	\rp, #0
+33 −1
Original line number Diff line number Diff line
#
# Makefile for the linux kernel.
#
obj-y		:= soc.o

# CPU-specific support
obj-$(CONFIG_SOC_AT91RM9200)	+= at91rm9200.o
@@ -18,3 +17,36 @@ endif
ifeq ($(CONFIG_PM_DEBUG),y)
CFLAGS_pm.o += -DDEBUG
endif

# Default sed regexp - multiline due to syntax constraints
define sed-y
	"/^->/{s:->#\(.*\):/* \1 */:; \
	s:^->\([^ ]*\) [\$$#]*\([-0-9]*\) \(.*\):#define \1 \2 /* \3 */:; \
	s:^->\([^ ]*\) [\$$#]*\([^ ]*\) \(.*\):#define \1 \2 /* \3 */:; \
	s:->::; p;}"
endef

# Use filechk to avoid rebuilds when a header changes, but the resulting file
# does not
define filechk_offsets
	(set -e; \
	 echo "#ifndef $2"; \
	 echo "#define $2"; \
	 echo "/*"; \
	 echo " * DO NOT MODIFY."; \
	 echo " *"; \
	 echo " * This file was generated by Kbuild"; \
	 echo " */"; \
	 echo ""; \
	 sed -ne $(sed-y); \
	 echo ""; \
	 echo "#endif" )
endef

arch/arm/mach-at91/pm_data-offsets.s: arch/arm/mach-at91/pm_data-offsets.c
	$(call if_changed_dep,cc_s_c)

include/generated/at91_pm_data-offsets.h: arch/arm/mach-at91/pm_data-offsets.s FORCE
	$(call filechk,offsets,__PM_DATA_OFFSETS_H__)

arch/arm/mach-at91/pm_suspend.o: include/generated/at91_pm_data-offsets.h
Loading