Unverified Commit 3b34d3a9 authored by Arnd Bergmann's avatar Arnd Bergmann
Browse files

Merge tag 'renesas-arm-dt-for-v5.18-tag1' of...

Merge tag 'renesas-arm-dt-for-v5.18-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into arm/dt

Renesas ARM DT updates for v5.18

  - External interrupt (INTC-EX) support for the R-Car V3U SoC,
  - Initial support for the RZ/G2LC and RZ/V2L SoCs, and the RZ/G2LC and
    RZ/V2L SMARC EVK development boards,
  - Support for MAX9286 GMSL deserializers and GSML cameras on the Eagle
    and Condor development boards,
  - NAND support for the RZ/N1D SoC,
  - DMA engine (SYS-DMAC) support for the R-Car S4-8 SoC,
  - LVDS support for the R-Car M3-W+ SoC,
  - HDMI output and 9-axis sensor support for the Kingfisher (ULCB
    extension) board,
  - MAX96712 GMSL serializer support for the Falcon development board,
  - MOST network support for the R-Car H3, M3-W, M3-W+, M3-N, E3, and D3
    SoCs,
  - Miscellaneous fixes and improvements.

* tag 'renesas-arm-dt-for-v5.18-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel: (27 commits)
  arm64: dts: renesas: rzg2lc-smarc: Use SW_SD0_DEV_SEL macro for eMMC/SDHI device selection
  arm64: dts: renesas: rzg2lc-smarc: Enable CANFD channel 1
  arm64: dts: renesas: rzg2lc-smarc: Enable SCIF1 on carrier board
  arm64: dts: renesas: rzg2lc-smarc: Add macros for DIP-Switch settings
  arm64: dts: renesas: rzg2l-smarc: Add common dtsi file
  arm64: dts: renesas: rzg2lc-smarc: Enable microSD on SMARC platform
  arm64: dts: renesas: rzg2lc-smarc-som: Enable eMMC on SMARC platform
  arm64: dts: renesas: Add initial device tree for RZ/V2L SMARC EVK
  arm64: dts: renesas: Add initial DTSI for RZ/V2L SoC
  dt-bindings: clock: Add R9A07G054 CPG Clock and Reset Definitions
  arm64: dts: renesas: ulcb/ulcb-kf: switch to use audio-graph-card2 for sound
  arm64: dts: renesas: rcar-gen3: Add MOST devices
  arm64: dts: renesas: Miscellaneous whitespace fixes
  arm64: dts: renesas: falcon-csi-dsi: Add and connect MAX96712
  arm64: dts: renesas: ulcb-kf: Add 9-asix sensor device
  arm64: dts: renesas: ulcb-kf: Add KF HDMI output
  arm64: dts: renesas: r8a77961: Add lvds0 device node
  arm64: dts: renesas: r8a779f0: Add sys-dmac nodes
  ARM: dts: r9a06g032: Describe the NAND controller
  arm64: dts: renesas: Add GMSL cameras .dtsi
  ...

Link: https://lore.kernel.org/r/cover.1644587200.git.geert+renesas@glider.be


Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
parents 4d9b86eb 5c65ad12
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -173,6 +173,17 @@ pinctrl: pinctrl@40067000 {
			status = "okay";
		};

		nand_controller: nand-controller@40102000 {
			compatible = "renesas,r9a06g032-nandc", "renesas,rzn1-nandc";
			reg = <0x40102000 0x2000>;
			interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&sysctrl R9A06G032_HCLK_NAND>, <&sysctrl R9A06G032_CLK_NAND>;
			clock-names = "hclk", "eclk";
			#address-cells = <1>;
			#size-cells = <0>;
			status = "disabled";
		};

		gic: interrupt-controller@44101000 {
			compatible = "arm,gic-400", "arm,cortex-a7-gic";
			interrupt-controller;
+3 −0
Original line number Diff line number Diff line
@@ -75,4 +75,7 @@ dtb-$(CONFIG_ARCH_R8A77961) += r8a779m3-ulcb-kf.dtb

dtb-$(CONFIG_ARCH_R8A77965) += r8a779m5-salvator-xs.dtb

dtb-$(CONFIG_ARCH_R9A07G044) += r9a07g044c2-smarc.dtb
dtb-$(CONFIG_ARCH_R9A07G044) += r9a07g044l2-smarc.dtb

dtb-$(CONFIG_ARCH_R9A07G054) += r9a07g054l2-smarc.dtb
+4 −5
Original line number Diff line number Diff line
@@ -359,11 +359,10 @@ versaclock6_bb: clock-controller@6a {
		clocks = <&x304_clk>;
		clock-names = "xin";

		assigned-clocks = <&versaclock6_bb 1>,
				   <&versaclock6_bb 2>,
				   <&versaclock6_bb 3>,
				   <&versaclock6_bb 4>;
		assigned-clock-rates =	<24000000>, <24000000>, <24000000>, <24576000>;
		assigned-clocks = <&versaclock6_bb 1>, <&versaclock6_bb 2>,
				  <&versaclock6_bb 3>, <&versaclock6_bb 4>;
		assigned-clock-rates = <24000000>, <24000000>, <24000000>,
				       <24576000>;

		OUT1 {
			idt,mode = <VC5_CMOS>;
+0 −1
Original line number Diff line number Diff line
@@ -293,7 +293,6 @@ &sdhi2 {
	vqmmc-supply = <&reg_1p8v>;
	non-removable;
	cap-power-off-card;
	pm-ignore-notify;
	keep-power-in-suspend;
	mmc-pwrseq = <&wlan_pwrseq>;
	status = "okay";
+332 −0
Original line number Diff line number Diff line
// SPDX-License-Identifier: GPL-2.0+
/*
 * Copyright (C) 2017 Ideas on Board <kieran.bingham@ideasonboard.com>
 * Copyright (C) 2021 Jacopo Mondi <jacopo+renesas@jmondi.org>
 *
 * Device Tree Source (overlay) that describes GMSL camera connected to
 * Fakra connectors for the Eagle V3M and Condor V3H (and compatible) boards.
 *
 * The following cameras are currently supported: RDACM20 and RDACM21.
 *
 * The board .dts file that include this has to select which cameras are in use
 * by specifying the camera model with:
 *
 * #define GMSL_CAMERA_RDACM20
 * or
 * #define GMSL_CAMERA_RDACM21
 *
 * And which cameras are connected to the board by defining:
 * for GMSL channel 0:
 *	   #define GMSL_CAMERA_0
 *	   #define GMSL_CAMERA_1
 *	   #define GMSL_CAMERA_2
 *	   #define GMSL_CAMERA_3
 *
 * for GMSL channel 1:
 *	   #define GMSL_CAMERA_4
 *	   #define GMSL_CAMERA_5
 *	   #define GMSL_CAMERA_6
 *	   #define GMSL_CAMERA_7
 */

#include <dt-bindings/gpio/gpio.h>

/* Validate the board file settings. */
#if !defined(GMSL_CAMERA_RDACM20) && !defined(GMSL_CAMERA_RDACM21)
#error "Camera model should be defined by the board file"
#endif

#if defined(GMSL_CAMERA_RDACM20) && defined(GMSL_CAMERA_RDACM21)
#error "A single camera model should be selected"
#endif

#if !defined(GMSL_CAMERA_0) && !defined(GMSL_CAMERA_1) && \
    !defined(GMSL_CAMERA_2) && !defined(GMSL_CAMERA_3) && \
    !defined(GMSL_CAMERA_4) && !defined(GMSL_CAMERA_5) && \
    !defined(GMSL_CAMERA_6) && !defined(GMSL_CAMERA_7)
#error "At least one camera should be selected"
#endif

/* Deduce from the enabled cameras which GMSL channels are active. */
#if defined(GMSL_CAMERA_0) || defined(GMSL_CAMERA_1) || \
    defined(GMSL_CAMERA_2) || defined(GMSL_CAMERA_3)
#define GMSL_0
#endif

#if defined(GMSL_CAMERA_4) || defined(GMSL_CAMERA_5) || \
    defined(GMSL_CAMERA_6) || defined(GMSL_CAMERA_7)
#define GMSL_1
#endif

/* Deduce the camera model compatible string. */
#if defined(GMSL_CAMERA_RDACM20)
#define GMSL_CAMERA_MODEL "imi,rdacm20"
#elif defined(GMSL_CAMERA_RDACM21)
#define GMSL_CAMERA_MODEL "imi,rdacm21"
#endif

#ifdef GMSL_0
&vin0 {
	status = "okay";
};

&vin1 {
	status = "okay";
};

&vin2 {
	status = "okay";
};

&vin3 {
	status = "okay";
};

&gmsl0 {
	status = "okay";

#if defined(GMSL_CAMERA_RDACM21)
	maxim,reverse-channel-microvolt = <100000>;
#endif

	ports {
#ifdef GMSL_CAMERA_0
		port@0 {
			max9286_in0: endpoint {
				remote-endpoint = <&fakra_con0>;
			};
		};
#endif

#ifdef GMSL_CAMERA_1
		port@1 {
			max9286_in1: endpoint{
				remote-endpoint = <&fakra_con1>;
			};

		};
#endif

#ifdef GMSL_CAMERA_2
		port@2 {
			max9286_in2: endpoint {
				remote-endpoint = <&fakra_con2>;
			};

		};
#endif

#ifdef GMSL_CAMERA_3
		port@3 {
			max9286_in3: endpoint {
				remote-endpoint = <&fakra_con3>;
			};

		};
#endif
	};

	i2c-mux {
#ifdef GMSL_CAMERA_0
		i2c@0 {
			status = "okay";

			camera@51 {
				compatible = GMSL_CAMERA_MODEL;
				reg = <0x51>, <0x61>;

				port {
					fakra_con0: endpoint {
						remote-endpoint = <&max9286_in0>;
					};
				};
			};
		};
#endif

#ifdef GMSL_CAMERA_1
		i2c@1 {
			status = "okay";

			camera@52 {
				compatible = GMSL_CAMERA_MODEL;
				reg = <0x52>, <0x62>;

				port {
					fakra_con1: endpoint {
						remote-endpoint = <&max9286_in1>;
					};
				};
			};
		};
#endif

#ifdef GMSL_CAMERA_2
		i2c@2 {
			status = "okay";

			camera@53 {
				compatible = GMSL_CAMERA_MODEL;
				reg = <0x53>, <0x63>;

				port {
					fakra_con2: endpoint {
						remote-endpoint = <&max9286_in2>;
					};
				};
			};
		};
#endif

#ifdef GMSL_CAMERA_3
		i2c@3 {
			status = "okay";

			camera@54 {
				compatible = GMSL_CAMERA_MODEL;
				reg = <0x54>, <0x64>;

				port {
					fakra_con3: endpoint {
						remote-endpoint = <&max9286_in3>;
					};
				};
			};
		};
#endif
	};
};
#endif /* ifdef GMSL_0 */

#ifdef GMSL_1
&vin4 {
	status = "okay";
};

&vin5 {
	status = "okay";
};

&vin6 {
	status = "okay";
};

&vin7 {
	status = "okay";
};

&gmsl1 {
	status = "okay";

#if defined(GMSL_CAMERA_RDACM21)
	maxim,reverse-channel-microvolt = <100000>;
#endif

	ports {
#ifdef GMSL_CAMERA_4
		port@0 {
			max9286_in4: endpoint {
				remote-endpoint = <&fakra_con4>;
			};
		};
#endif

#ifdef GMSL_CAMERA_5
		port@1 {
			max9286_in5: endpoint{
				remote-endpoint = <&fakra_con5>;
			};

		};
#endif

#ifdef GMSL_CAMERA_6
		port@2 {
			max9286_in6: endpoint {
				remote-endpoint = <&fakra_con6>;
			};

		};
#endif

#ifdef GMSL_CAMERA_7
		port@3 {
			max9286_in7: endpoint {
				remote-endpoint = <&fakra_con7>;
			};

		};
#endif
	};

	i2c-mux {
#ifdef GMSL_CAMERA_4
		i2c@0 {
			status = "okay";

			camera@55 {
				compatible = GMSL_CAMERA_MODEL;
				reg = <0x55>, <0x65>;

				port {
					fakra_con4: endpoint {
						remote-endpoint = <&max9286_in4>;
					};
				};
			};
		};
#endif

#ifdef GMSL_CAMERA_5
		i2c@1 {
			status = "okay";

			camera@56 {
				compatible = GMSL_CAMERA_MODEL;
				reg = <0x56>, <0x66>;

				port {
					fakra_con5: endpoint {
						remote-endpoint = <&max9286_in5>;
					};
				};
			};
		};
#endif

#ifdef GMSL_CAMERA_6
		i2c@2 {
			status = "okay";

			camera@57 {
				compatible = GMSL_CAMERA_MODEL;
				reg = <0x57>, <0x67>;

				port {
					fakra_con6: endpoint {
						remote-endpoint = <&max9286_in6>;
					};
				};
			};
		};
#endif

#ifdef GMSL_CAMERA_7
		i2c@3 {
			status = "okay";

			camera@58 {
				compatible = GMSL_CAMERA_MODEL;
				reg = <0x58>, <0x68>;

				port {
					fakra_con7: endpoint {
						remote-endpoint = <&max9286_in7>;
					};
				};
			};
		};
#endif
	};
};
#endif /* ifdef GMSL_1 */
Loading