Commit 9cf8d2b8 authored by Arnd Bergmann's avatar Arnd Bergmann
Browse files

Merge branch 'newsoc/pxa1908' into soc/newsoc

This adds initial support for the Marvell PXA1908 SoC and
"samsung,coreprimevelte", a smartphone using the SoC.

*Important note*: There is a regression on all of the v6.16 RCs where
the board does not boot unrelated to the patches in this set. See:
https://lore.kernel.org/regressions/3367665.aeNJFYEL58@radijator/

USB works and the phone can boot a rootfs from an SD card, but there are
some warnings in the dmesg:

During SMP initialization:
[    0.006519] CPU features: SANITY CHECK: Unexpected variation in SYS_CNTFRQ_EL0. Boot CPU: 0x000000018cba80, CPU1: 0x00000000000000
[    0.006542] CPU features: Unsupported CPU feature variation detected.
[    0.006589] CPU1: Booted secondary processor 0x0000000001 [0x410fd032]
[    0.010710] Detected VIPT I-cache on CPU2
[    0.010716] CPU features: SANITY CHECK: Unexpected variation in SYS_CNTFRQ_EL0. Boot CPU: 0x000000018cba80, CPU2: 0x00000000000000
[    0.010758] CPU2: Booted secondary processor 0x0000000002 [0x410fd032]
[    0.014849] Detected VIPT I-cache on CPU3
[    0.014855] CPU features: SANITY CHECK: Unexpected variation in SYS_CNTFRQ_EL0. Boot CPU: 0x000000018cba80, CPU3: 0x00000000000000
[    0.014895] CPU3: Booted secondary processor 0x0000000003 [0x410fd032]

SMMU probing fails:
[    0.101798] arm-smmu c0010000.iommu: probing hardware configuration...
[    0.101809] arm-smmu c0010000.iommu: SMMUv1 with:
[    0.101816] arm-smmu c0010000.iommu:         no translation support!

A 3.14 based Marvell tree is available on GitHub
acorn-marvell/brillo_pxa_kernel, and a Samsung one on GitHub
CoderCharmander/g361f-kernel.

Andreas Färber attempted to upstream support for this SoC in 2017:
https://lore.kernel.org/lkml/20170222022929.10540-1-afaerber@suse.de/



Signed-off-by: default avatarDuje Mihanović <duje@dujemihanovic.xyz>
Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>

* newsoc/pxa1908:
  MAINTAINERS: add myself as Marvell PXA1908 maintainer
  arm64: dts: Add DTS for Marvell PXA1908 and samsung,coreprimevelte
  arm64: Kconfig.platforms: Add config for Marvell PXA1908 platform
  dt-bindings: marvell: Document PXA1908 SoC and samsung,coreprimevelte
  dt-bindings: mmc: sdhci-pxa: restrict pinctrl to pxav1
parents 86731a2a f3e7970d
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -35,6 +35,11 @@ properties:
          - enum:
              - dell,wyse-ariel
          - const: marvell,mmp3
      - description: PXA1908 based boards
        items:
          - enum:
              - samsung,coreprimevelte
          - const: marvell,pxa1908

additionalProperties: true

+20 −16
Original line number Diff line number Diff line
@@ -30,6 +30,26 @@ allOf:
          maxItems: 1
        reg-names:
          maxItems: 1
  - if:
      properties:
        compatible:
          contains:
            const: mrvl,pxav1-mmc
    then:
      properties:
        pinctrl-names:
          description:
            Optional for supporting PXA168 SDIO IRQ errata to switch CMD pin between
            SDIO CMD and GPIO mode.
          items:
            - const: default
            - const: state_cmd_gpio
        pinctrl-0:
          description:
            Should contain default pinctrl.
        pinctrl-1:
          description:
            Should switch CMD pin to GPIO mode as a high output.

properties:
  compatible:
@@ -62,22 +82,6 @@ properties:
      - const: io
      - const: core

  pinctrl-names:
    description:
      Optional for supporting PXA168 SDIO IRQ errata to switch CMD pin between
      SDIO CMD and GPIO mode.
    items:
      - const: default
      - const: state_cmd_gpio

  pinctrl-0:
    description:
      Should contain default pinctrl.

  pinctrl-1:
    description:
      Should switch CMD pin to GPIO mode as a high output.

  mrvl,clk-delay-cycles:
    description: Specify a number of cycles to delay for tuning.
    $ref: /schemas/types.yaml#/definitions/uint32
+8 −0
Original line number Diff line number Diff line
@@ -2787,6 +2787,14 @@ F: drivers/irqchip/irq-mvebu-*
F:	drivers/pinctrl/mvebu/
F:	drivers/rtc/rtc-armada38x.c
ARM/Marvell PXA1908 SOC support
M:	Duje Mihanović <duje@dujemihanovic.xyz>
L:	linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
S:	Maintained
F:	arch/arm64/boot/dts/marvell/mmp/
F:	drivers/clk/mmp/clk-pxa1908*.c
F:	include/dt-bindings/clock/marvell,pxa1908.h
ARM/Mediatek RTC DRIVER
M:	Eddie Huang <eddie.huang@mediatek.com>
M:	Sean Wang <sean.wang@mediatek.com>
+8 −0
Original line number Diff line number Diff line
@@ -178,6 +178,14 @@ config ARCH_MESON
	  This enables support for the arm64 based Amlogic SoCs
	  such as the s905, S905X/D, S912, A113X/D or S905X/D2

config ARCH_MMP
	bool "Marvell MMP SoC Family"
	select PINCTRL
	select PINCTRL_SINGLE
	help
	  This enables support for Marvell MMP SoC family, currently
	  supporting PXA1908 aka IAP140.

config ARCH_MVEBU
	bool "Marvell EBU SoC Family"
	select ARMADA_AP806_SYSCON
+2 −0
Original line number Diff line number Diff line
@@ -32,3 +32,5 @@ dtb-$(CONFIG_ARCH_MVEBU) += cn9130-cf-base.dtb
dtb-$(CONFIG_ARCH_MVEBU) += cn9130-cf-pro.dtb
dtb-$(CONFIG_ARCH_MVEBU) += cn9131-cf-solidwan.dtb
dtb-$(CONFIG_ARCH_MVEBU) += cn9132-clearfog.dtb

subdir-y	+= mmp
Loading