Unverified Commit 2c12f88c authored by Arnd Bergmann's avatar Arnd Bergmann
Browse files

Merge tag 'samsung-dt64-6.1' of...

Merge tag 'samsung-dt64-6.1' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into arm/dt

Samsung DTS ARM64 changes for v6.0

1. Add binding headers for several Exynos850 and ExynosAutov9 clocks.
2. ExynosAutov9: Add FSYS clock controller nodes.
3. ExynosAutov9: Document serial compatible (used in DTS).
4. Exynos850: Add Audio, IS, MFC clock controllers. Add IOMMU nodes.

* tag 'samsung-dt64-6.1' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
  dt-bindings: serial: samsung: add exynosautov9-uart compatible
  arm64: dts: exynos: Add SysMMU nodes for Exynos850
  arm64: dts: exynos: Add CMU_AUD, CMU_IS and CMU_MFCMSCL for Exynos850
  arm64: dts: exynosautov9: add fsys0/1 clock DT nodes
  dt-bindings: clock: exynos850: Add Exynos850 CMU_MFCMSCL
  dt-bindings: clock: exynos850: Add Exynos850 CMU_IS
  dt-bindings: clock: exynos850: Add Exynos850 CMU_AUD
  dt-bindings: clock: exynosautov9: add schema for cmu_fsys0/1
  dt-bindings: clock: exynosautov9: add fsys1 clock definitions
  dt-bindings: clock: exynosautov9: add fys0 clock definitions
  dt-bindings: clock: exynosautov9: correct clock numbering of peric0/c1

Link: https://lore.kernel.org/r/20220909150849.820523-2-krzysztof.kozlowski@linaro.org


Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
parents 6d243f89 dfce69c8
Loading
Loading
Loading
Loading
+69 −0
Original line number Diff line number Diff line
@@ -33,10 +33,13 @@ properties:
    enum:
      - samsung,exynos850-cmu-top
      - samsung,exynos850-cmu-apm
      - samsung,exynos850-cmu-aud
      - samsung,exynos850-cmu-cmgp
      - samsung,exynos850-cmu-core
      - samsung,exynos850-cmu-dpu
      - samsung,exynos850-cmu-hsi
      - samsung,exynos850-cmu-is
      - samsung,exynos850-cmu-mfcmscl
      - samsung,exynos850-cmu-peri

  clocks:
@@ -88,6 +91,24 @@ allOf:
            - const: oscclk
            - const: dout_clkcmu_apm_bus

  - if:
      properties:
        compatible:
          contains:
            const: samsung,exynos850-cmu-aud

    then:
      properties:
        clocks:
          items:
            - description: External reference clock (26 MHz)
            - description: AUD clock (from CMU_TOP)

        clock-names:
          items:
            - const: oscclk
            - const: dout_aud

  - if:
      properties:
        compatible:
@@ -172,6 +193,54 @@ allOf:
            - const: dout_hsi_mmc_card
            - const: dout_hsi_usb20drd

  - if:
      properties:
        compatible:
          contains:
            const: samsung,exynos850-cmu-is

    then:
      properties:
        clocks:
          items:
            - description: External reference clock (26 MHz)
            - description: CMU_IS bus clock (from CMU_TOP)
            - description: Image Texture Processing core clock (from CMU_TOP)
            - description: Visual Recognition Accelerator clock (from CMU_TOP)
            - description: Geometric Distortion Correction clock (from CMU_TOP)

        clock-names:
          items:
            - const: oscclk
            - const: dout_is_bus
            - const: dout_is_itp
            - const: dout_is_vra
            - const: dout_is_gdc

  - if:
      properties:
        compatible:
          contains:
            const: samsung,exynos850-cmu-mfcmscl

    then:
      properties:
        clocks:
          items:
            - description: External reference clock (26 MHz)
            - description: Multi-Format Codec clock (from CMU_TOP)
            - description: Memory to Memory Scaler clock (from CMU_TOP)
            - description: Multi-Channel Scaler clock (from CMU_TOP)
            - description: JPEG codec clock (from CMU_TOP)

        clock-names:
          items:
            - const: oscclk
            - const: dout_mfcmscl_mfc
            - const: dout_mfcmscl_m2m
            - const: dout_mfcmscl_mcsc
            - const: dout_mfcmscl_jpeg

  - if:
      properties:
        compatible:
+44 −0
Original line number Diff line number Diff line
@@ -35,6 +35,8 @@ properties:
      - samsung,exynosautov9-cmu-top
      - samsung,exynosautov9-cmu-busmc
      - samsung,exynosautov9-cmu-core
      - samsung,exynosautov9-cmu-fsys0
      - samsung,exynosautov9-cmu-fsys1
      - samsung,exynosautov9-cmu-fsys2
      - samsung,exynosautov9-cmu-peric0
      - samsung,exynosautov9-cmu-peric1
@@ -107,6 +109,48 @@ allOf:
            - const: oscclk
            - const: dout_clkcmu_core_bus

  - if:
      properties:
        compatible:
          contains:
            const: samsung,exynosautov9-cmu-fsys0

    then:
      properties:
        clocks:
          items:
            - description: External reference clock (26 MHz)
            - description: CMU_FSYS0 bus clock (from CMU_TOP)
            - description: CMU_FSYS0 pcie clock (from CMU_TOP)

        clock-names:
          items:
            - const: oscclk
            - const: dout_clkcmu_fsys0_bus
            - const: dout_clkcmu_fsys0_pcie

  - if:
      properties:
        compatible:
          contains:
            const: samsung,exynosautov9-cmu-fsys1

    then:
      properties:
        clocks:
          items:
            - description: External reference clock (26 MHz)
            - description: CMU_FSYS1 bus clock (from CMU_TOP)
            - description: CMU_FSYS1 mmc card clock (from CMU_TOP)
            - description: CMU_FSYS1 usb clock (from CMU_TOP)

        clock-names:
          items:
            - const: oscclk
            - const: dout_clkcmu_fsys1_bus
            - const: dout_clkcmu_fsys1_mmc_card
            - const: dout_clkcmu_fsys1_usbdrd

  - if:
      properties:
        compatible:
+4 −1
Original line number Diff line number Diff line
@@ -17,7 +17,10 @@ description: |+

properties:
  compatible:
    items:
    oneOf:
      - items:
          - const: samsung,exynosautov9-uart
          - const: samsung,exynos850-uart
      - enum:
          - apple,s5l-uart
          - axis,artpec8-uart
+83 −0
Original line number Diff line number Diff line
@@ -286,6 +286,21 @@ cmu_top: clock-controller@120e0000 {
			clock-names = "oscclk";
		};

		cmu_mfcmscl: clock-controller@12c00000 {
			compatible = "samsung,exynos850-cmu-mfcmscl";
			reg = <0x12c00000 0x8000>;
			#clock-cells = <1>;

			clocks = <&oscclk>,
				 <&cmu_top CLK_DOUT_MFCMSCL_MFC>,
				 <&cmu_top CLK_DOUT_MFCMSCL_M2M>,
				 <&cmu_top CLK_DOUT_MFCMSCL_MCSC>,
				 <&cmu_top CLK_DOUT_MFCMSCL_JPEG>;
			clock-names = "oscclk", "dout_mfcmscl_mfc",
				      "dout_mfcmscl_m2m", "dout_mfcmscl_mcsc",
				      "dout_mfcmscl_jpeg";
		};

		cmu_dpu: clock-controller@13000000 {
			compatible = "samsung,exynos850-cmu-dpu";
			reg = <0x13000000 0x8000>;
@@ -308,6 +323,29 @@ cmu_hsi: clock-controller@13400000 {
				      "dout_hsi_mmc_card", "dout_hsi_usb20drd";
		};

		cmu_is: clock-controller@14500000 {
			compatible = "samsung,exynos850-cmu-is";
			reg = <0x14500000 0x8000>;
			#clock-cells = <1>;

			clocks = <&oscclk>,
				 <&cmu_top CLK_DOUT_IS_BUS>,
				 <&cmu_top CLK_DOUT_IS_ITP>,
				 <&cmu_top CLK_DOUT_IS_VRA>,
				 <&cmu_top CLK_DOUT_IS_GDC>;
			clock-names = "oscclk", "dout_is_bus", "dout_is_itp",
				      "dout_is_vra", "dout_is_gdc";
		};

		cmu_aud: clock-controller@14a00000 {
			compatible = "samsung,exynos850-cmu-aud";
			reg = <0x14a00000 0x8000>;
			#clock-cells = <1>;

			clocks = <&oscclk>, <&cmu_top CLK_DOUT_AUD>;
			clock-names = "oscclk", "dout_aud";
		};

		pinctrl_alive: pinctrl@11850000 {
			compatible = "samsung,exynos850-pinctrl";
			reg = <0x11850000 0x1000>;
@@ -465,6 +503,51 @@ i2c_6: i2c@13890000 {
			status = "disabled";
		};

		sysmmu_mfcmscl: sysmmu@12c50000 {
			compatible = "samsung,exynos-sysmmu";
			reg = <0x12c50000 0x9000>;
			interrupts = <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>;
			clock-names = "sysmmu";
			clocks = <&cmu_mfcmscl CLK_GOUT_MFCMSCL_SYSMMU_CLK>;
			#iommu-cells = <0>;
		};

		sysmmu_dpu: sysmmu@130c0000 {
			compatible = "samsung,exynos-sysmmu";
			reg = <0x130c0000 0x9000>;
			interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>;
			clock-names = "sysmmu";
			clocks = <&cmu_dpu CLK_GOUT_DPU_SMMU_CLK>;
			#iommu-cells = <0>;
		};

		sysmmu_is0: sysmmu@14550000 {
			compatible = "samsung,exynos-sysmmu";
			reg = <0x14550000 0x9000>;
			interrupts = <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>;
			clock-names = "sysmmu";
			clocks = <&cmu_is CLK_GOUT_IS_SYSMMU_IS0_CLK>;
			#iommu-cells = <0>;
		};

		sysmmu_is1: sysmmu@14570000 {
			compatible = "samsung,exynos-sysmmu";
			reg = <0x14570000 0x9000>;
			interrupts = <GIC_SPI 166 IRQ_TYPE_LEVEL_HIGH>;
			clock-names = "sysmmu";
			clocks = <&cmu_is CLK_GOUT_IS_SYSMMU_IS1_CLK>;
			#iommu-cells = <0>;
		};

		sysmmu_aud: sysmmu@14850000 {
			compatible = "samsung,exynos-sysmmu";
			reg = <0x14850000 0x9000>;
			interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>;
			clock-names = "sysmmu";
			clocks = <&cmu_aud CLK_GOUT_AUD_SYSMMU_CLK>;
			#iommu-cells = <0>;
		};

		sysreg_peri: syscon@10020000 {
			compatible = "samsung,exynos850-sysreg", "syscon";
			reg = <0x10020000 0x10000>;
+28 −0
Original line number Diff line number Diff line
@@ -207,6 +207,34 @@ cmu_peric1: clock-controller@10800000 {
				      "dout_clkcmu_peric1_ip";
		};

		cmu_fsys1: clock-controller@17040000 {
			compatible = "samsung,exynosautov9-cmu-fsys1";
			reg = <0x17040000 0x8000>;
			#clock-cells = <1>;

			clocks = <&xtcxo>,
				 <&cmu_top DOUT_CLKCMU_FSYS1_BUS>,
				 <&cmu_top GOUT_CLKCMU_FSYS1_MMC_CARD>,
				 <&cmu_top DOUT_CLKCMU_FSYS1_USBDRD>;
			clock-names = "oscclk",
				      "dout_clkcmu_fsys1_bus",
				      "gout_clkcmu_fsys1_mmc_card",
				      "dout_clkcmu_fsys1_usbdrd";
		};

		cmu_fsys0: clock-controller@17700000 {
			compatible = "samsung,exynosautov9-cmu-fsys0";
			reg = <0x17700000 0x8000>;
			#clock-cells = <1>;

			clocks = <&xtcxo>,
				 <&cmu_top DOUT_CLKCMU_FSYS0_BUS>,
				 <&cmu_top DOUT_CLKCMU_FSYS0_PCIE>;
			clock-names = "oscclk",
				      "dout_clkcmu_fsys0_bus",
				      "dout_clkcmu_fsys0_pcie";
		};

		cmu_fsys2: clock-controller@17c00000 {
			compatible = "samsung,exynosautov9-cmu-fsys2";
			reg = <0x17c00000 0x8000>;
Loading