summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2022-02-28 15:08:43 +0100
committerArnd Bergmann <arnd@arndb.de>2022-02-28 15:08:44 +0100
commit27888394504350569978487bb39e577cf5142b3d (patch)
treef5b8b25ae19dc5b6ed7e55b02cfe9681fa1fa82e
parent28f74201e37ccf3063e359bfe346b09400af9bab (diff)
parente465ea5cc05d1d0b45c315fca0254bd2ee04b661 (diff)
downloadlinux-27888394504350569978487bb39e577cf5142b3d.tar.bz2
Merge tag 'samsung-soc-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into arm/soc
Samsung mach/soc changes for v5.18 1. Fix hang of secondary CPU bring-up on some of Exynos5420-based devices (Secure Monitor Call SMC_CMD_CPU1BOOT should be skipped for all Exynos5 devices). 2. Extend Universal Serial Interface DT schema to precisely describe children nodes. * tag 'samsung-soc-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux: dt-bindings: soc: samsung: usi: refer to dtschema for children ARM: exynos: only do SMC_CMD_CPU1BOOT call on Exynos4 Link: https://lore.kernel.org/r/20220226220116.13452-3-krzysztof.kozlowski@canonical.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
-rw-r--r--Documentation/devicetree/bindings/soc/samsung/exynos-usi.yaml20
-rw-r--r--arch/arm/mach-exynos/firmware.c4
2 files changed, 13 insertions, 11 deletions
diff --git a/Documentation/devicetree/bindings/soc/samsung/exynos-usi.yaml b/Documentation/devicetree/bindings/soc/samsung/exynos-usi.yaml
index 273f2d95a043..ea9c233052f3 100644
--- a/Documentation/devicetree/bindings/soc/samsung/exynos-usi.yaml
+++ b/Documentation/devicetree/bindings/soc/samsung/exynos-usi.yaml
@@ -17,13 +17,6 @@ description: |
child nodes, each representing a serial sub-node device. The mode setting
selects which particular function will be used.
- Refer to next bindings documentation for information on protocol subnodes that
- can exist under USI node:
-
- [1] Documentation/devicetree/bindings/serial/samsung_uart.yaml
- [2] Documentation/devicetree/bindings/i2c/i2c-exynos5.txt
- [3] Documentation/devicetree/bindings/spi/spi-samsung.txt
-
properties:
$nodename:
pattern: "^usi@[0-9a-f]+$"
@@ -71,10 +64,17 @@ properties:
This property is optional.
patternProperties:
- # All other properties should be child nodes
- "^(serial|spi|i2c)@[0-9a-f]+$":
+ "^i2c@[0-9a-f]+$":
+ $ref: /schemas/i2c/i2c-exynos5.yaml
+ description: Child node describing underlying I2C
+
+ "^serial@[0-9a-f]+$":
+ $ref: /schemas/serial/samsung_uart.yaml
+ description: Child node describing underlying UART/serial
+
+ "^spi@[0-9a-f]+$":
type: object
- description: Child node describing underlying USI serial protocol
+ description: Child node describing underlying SPI
required:
- compatible
diff --git a/arch/arm/mach-exynos/firmware.c b/arch/arm/mach-exynos/firmware.c
index 2eaf2dbb8e81..2da5b60b59e2 100644
--- a/arch/arm/mach-exynos/firmware.c
+++ b/arch/arm/mach-exynos/firmware.c
@@ -60,8 +60,10 @@ static int exynos_cpu_boot(int cpu)
/*
* Exynos3250 doesn't need to send smc command for secondary CPU boot
* because Exynos3250 removes WFE in secure mode.
+ *
+ * On Exynos5 devices the call is ignored by trustzone firmware.
*/
- if (soc_is_exynos3250())
+ if (!soc_is_exynos4210() && !soc_is_exynos4412())
return 0;
/*