Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7d5a0ff5 authored by Kevin Hilman's avatar Kevin Hilman
Browse files

Merge tag 'samsung-dt-4' of...

Merge tag 'samsung-dt-4' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/dt

Samsung another DT udpates for v4.2

- use labels for overriding nodes for all of exynos stuff
  (by Krzysztof Kozlowski)

- add sysmmu nodes for exynos SoCs (by Marek Szyprowski)

- for exynos5422-odroidxu3
  : enalbe wake alarm of S2MPS11 RTC
  : Hook up PWM and use it for LEDs
  : add support for Odroid XU3 Lite

- remove duplicated i2c7 for exynos5250-snow
- add JPEG codec nodes for exynos5420
- add vendor prefix for Hardkernel

* tag 'samsung-dt-4' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung: (33 commits)
  ARM: dts: add sysmmu nodes for exynos5420
  ARM: dts: add sysmmu nodes for exynos5250
  ARM: dts: add sysmmu nodes for exynos4415
  ARM: dts: add sysmmu nodes for exynos3250
  ARM: dts: add sysmmu nodes for exynos4
  ARM: dts: Add Odroid XU3 Lite support
  of: Add vendor prefix for Hardkernel
  ARM: dts: odroidxu3: Enable wake alarm of S2MPS11 RTC
  ARM: dts: exynos5420: add nodes for jpeg codec
  ARM: dts: s3c2416: Use labels for overriding nodes in SMDK2416
  ARM: dts: s3c2416: Add labels to S3C2416 nodes
  ARM: dts: Use labels for overriding nodes in exynos5422-odroidxu3
  ARM: dts: Use labels for overriding nodes in exynos5440 boards
  ARM: dts: Use labels for overriding nodes in exynos5420-smdk5420
  ARM: dts: Use labels for overriding nodes in exynos542x
  ARM: dts: Use labels for overriding nodes in exynos5420-arndale-octa
  ARM: dts: Remove duplicated I2C7 nodes in exynos5250-snow
  ARM: dts: Use labels for overriding nodes in exynos5250
  ARM: dts: Add labels to exynos5 nodes
  ARM: dts: exynos5422-odroidxu3: Hook up PWM and use it for LEDs
  ...
parents ecdf94da b7004516
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -93,6 +93,7 @@ gumstix Gumstix, Inc.
gw	Gateworks Corporation
hannstar	HannStar Display Corporation
haoyu	Haoyu Microelectronic Co. Ltd.
hardkernel	Hardkernel Co., Ltd
himax	Himax Technologies, Inc.
hisilicon	Hisilicon Limited.
hit	Hitachi Ltd.
+1 −0
Original line number Diff line number Diff line
@@ -121,6 +121,7 @@ dtb-$(CONFIG_ARCH_EXYNOS5) += \
	exynos5420-peach-pit.dtb \
	exynos5420-smdk5420.dtb \
	exynos5422-odroidxu3.dtb \
	exynos5422-odroidxu3-lite.dtb \
	exynos5440-sd5v1.dtb \
	exynos5440-ssdk5440.dtb \
	exynos5800-peach-pi.dtb
+33 −0
Original line number Diff line number Diff line
@@ -253,9 +253,20 @@
			assigned-clocks = <&cmu CLK_MOUT_CAM_BLK>, <&cmu CLK_SCLK_JPEG>;
			assigned-clock-rates = <0>, <150000000>;
			assigned-clock-parents = <&cmu CLK_DIV_MPLL_PRE>;
			iommus = <&sysmmu_jpeg>;
			status = "disabled";
		};

		sysmmu_jpeg: sysmmu@11A60000 {
			compatible = "samsung,exynos-sysmmu";
			reg = <0x11a60000 0x1000>;
			interrupts = <0 156 0>, <0 161 0>;
			clock-names = "sysmmu", "master";
			clocks = <&cmu CLK_SMMUJPEG>, <&cmu CLK_JPEG>;
			power-domains = <&pd_cam>;
			#iommu-cells = <0>;
		};

		fimd: fimd@11c00000 {
			compatible = "samsung,exynos3250-fimd";
			reg = <0x11c00000 0x30000>;
@@ -264,6 +275,7 @@
			clocks = <&cmu CLK_SCLK_FIMD0>, <&cmu CLK_FIMD0>;
			clock-names = "sclk_fimd", "fimd";
			power-domains = <&pd_lcd0>;
			iommus = <&sysmmu_fimd0>;
			samsung,sysreg = <&sys_reg>;
			status = "disabled";
		};
@@ -283,6 +295,16 @@
			status = "disabled";
		};

		sysmmu_fimd0: sysmmu@11E20000 {
			compatible = "samsung,exynos-sysmmu";
			reg = <0x11e20000 0x1000>;
			interrupts = <0 80 0>, <0 81 0>;
			clock-names = "sysmmu", "master";
			clocks = <&cmu CLK_SMMUFIMD0>, <&cmu CLK_FIMD0>;
			power-domains = <&pd_lcd0>;
			#iommu-cells = <0>;
		};

		hsotg: hsotg@12480000 {
			compatible = "snps,dwc2";
			reg = <0x12480000 0x20000>;
@@ -377,9 +399,20 @@
			clock-names = "mfc", "sclk_mfc";
			clocks = <&cmu CLK_MFC>, <&cmu CLK_SCLK_MFC>;
			power-domains = <&pd_mfc>;
			iommus = <&sysmmu_mfc>;
			status = "disabled";
		};

		sysmmu_mfc: sysmmu@13620000 {
			compatible = "samsung,exynos-sysmmu";
			reg = <0x13620000 0x1000>;
			interrupts = <0 96 0>, <0 98 0>;
			clock-names = "sysmmu", "master";
			clocks = <&cmu CLK_SMMUMFC_L>, <&cmu CLK_MFC>;
			power-domains = <&pd_mfc>;
			#iommu-cells = <0>;
		};

		serial_0: serial@13800000 {
			compatible = "samsung,exynos4210-uart";
			reg = <0x13800000 0x100>;
+129 −11
Original line number Diff line number Diff line
@@ -189,6 +189,7 @@
			clock-names = "fimc", "sclk_fimc";
			power-domains = <&pd_cam>;
			samsung,sysreg = <&sys_reg>;
			iommus = <&sysmmu_fimc0>;
			status = "disabled";
		};

@@ -200,6 +201,7 @@
			clock-names = "fimc", "sclk_fimc";
			power-domains = <&pd_cam>;
			samsung,sysreg = <&sys_reg>;
			iommus = <&sysmmu_fimc1>;
			status = "disabled";
		};

@@ -211,6 +213,7 @@
			clock-names = "fimc", "sclk_fimc";
			power-domains = <&pd_cam>;
			samsung,sysreg = <&sys_reg>;
			iommus = <&sysmmu_fimc2>;
			status = "disabled";
		};

@@ -222,6 +225,7 @@
			clock-names = "fimc", "sclk_fimc";
			power-domains = <&pd_cam>;
			samsung,sysreg = <&sys_reg>;
			iommus = <&sysmmu_fimc3>;
			status = "disabled";
		};

@@ -256,7 +260,7 @@
		};
	};

	watchdog@10060000 {
	watchdog: watchdog@10060000 {
		compatible = "samsung,s3c2410-wdt";
		reg = <0x10060000 0x100>;
		interrupts = <0 43 0>;
@@ -275,7 +279,7 @@
		status = "disabled";
	};

	keypad@100A0000 {
	keypad: keypad@100A0000 {
		compatible = "samsung,s5pv210-keypad";
		reg = <0x100A0000 0x100>;
		interrupts = <0 109 0>;
@@ -284,7 +288,7 @@
		status = "disabled";
	};

	sdhci@12510000 {
	sdhci_0: sdhci@12510000 {
		compatible = "samsung,exynos4210-sdhci";
		reg = <0x12510000 0x100>;
		interrupts = <0 73 0>;
@@ -293,7 +297,7 @@
		status = "disabled";
	};

	sdhci@12520000 {
	sdhci_1: sdhci@12520000 {
		compatible = "samsung,exynos4210-sdhci";
		reg = <0x12520000 0x100>;
		interrupts = <0 74 0>;
@@ -302,7 +306,7 @@
		status = "disabled";
	};

	sdhci@12530000 {
	sdhci_2: sdhci@12530000 {
		compatible = "samsung,exynos4210-sdhci";
		reg = <0x12530000 0x100>;
		interrupts = <0 75 0>;
@@ -311,7 +315,7 @@
		status = "disabled";
	};

	sdhci@12540000 {
	sdhci_3: sdhci@12540000 {
		compatible = "samsung,exynos4210-sdhci";
		reg = <0x12540000 0x100>;
		interrupts = <0 76 0>;
@@ -330,7 +334,7 @@
		status = "disabled";
	};

	hsotg@12480000 {
	hsotg: hsotg@12480000 {
		compatible = "samsung,s3c6400-hsotg";
		reg = <0x12480000 0x20000>;
		interrupts = <0 71 0>;
@@ -341,7 +345,7 @@
		status = "disabled";
	};

	ehci@12580000 {
	ehci: ehci@12580000 {
		compatible = "samsung,exynos4210-ehci";
		reg = <0x12580000 0x100>;
		interrupts = <0 70 0>;
@@ -367,7 +371,7 @@
		};
	};

	ohci@12590000 {
	ohci: ohci@12590000 {
		compatible = "samsung,exynos4210-ohci";
		reg = <0x12590000 0x100>;
		interrupts = <0 70 0>;
@@ -416,6 +420,8 @@
		power-domains = <&pd_mfc>;
		clocks = <&clock CLK_MFC>, <&clock CLK_SCLK_MFC>;
		clock-names = "mfc", "sclk_mfc";
		iommus = <&sysmmu_mfc_l>, <&sysmmu_mfc_r>;
		iommu-names = "left", "right";
		status = "disabled";
	};

@@ -620,7 +626,7 @@
		status = "disabled";
	};

	pwm@139D0000 {
	pwm: pwm@139D0000 {
		compatible = "samsung,exynos4210-pwm";
		reg = <0x139D0000 0x1000>;
		interrupts = <0 37 0>, <0 38 0>, <0 39 0>, <0 40 0>, <0 41 0>;
@@ -680,6 +686,7 @@
		clocks = <&clock CLK_SCLK_FIMD0>, <&clock CLK_FIMD0>;
		clock-names = "sclk_fimd", "fimd";
		power-domains = <&pd_lcd0>;
		iommus = <&sysmmu_fimd0>;
		samsung,sysreg = <&sys_reg>;
		status = "disabled";
	};
@@ -688,7 +695,7 @@
		#include "exynos4412-tmu-sensor-conf.dtsi"
	};

	jpeg-codec@11840000 {
	jpeg_codec: jpeg-codec@11840000 {
		compatible = "samsung,exynos4210-jpeg";
		reg = <0x11840000 0x1000>;
		interrupts = <0 88 0>;
@@ -717,6 +724,7 @@
		interrupts = <0 91 0>;
		reg = <0x12C10000 0x2100>, <0x12c00000 0x300>;
		power-domains = <&pd_tv>;
		iommus = <&sysmmu_tv>;
		status = "disabled";
	};

@@ -827,4 +835,114 @@
		clock-names = "ppmu";
		status = "disabled";
	};

	sysmmu_mfc_l: sysmmu@13620000 {
		compatible = "samsung,exynos-sysmmu";
		reg = <0x13620000 0x1000>;
		interrupt-parent = <&combiner>;
		interrupts = <5 5>;
		clock-names = "sysmmu", "master";
		clocks = <&clock CLK_SMMU_MFCL>, <&clock CLK_MFC>;
		power-domains = <&pd_mfc>;
		#iommu-cells = <0>;
	};

	sysmmu_mfc_r: sysmmu@13630000 {
		compatible = "samsung,exynos-sysmmu";
		reg = <0x13630000 0x1000>;
		interrupt-parent = <&combiner>;
		interrupts = <5 6>;
		clock-names = "sysmmu", "master";
		clocks = <&clock CLK_SMMU_MFCR>, <&clock CLK_MFC>;
		power-domains = <&pd_mfc>;
		#iommu-cells = <0>;
	};

	sysmmu_tv: sysmmu@12E20000 {
		compatible = "samsung,exynos-sysmmu";
		reg = <0x12E20000 0x1000>;
		interrupt-parent = <&combiner>;
		interrupts = <5 4>;
		clock-names = "sysmmu", "master";
		clocks = <&clock CLK_SMMU_TV>, <&clock CLK_MIXER>;
		power-domains = <&pd_tv>;
		#iommu-cells = <0>;
	};

	sysmmu_fimc0: sysmmu@11A20000 {
		compatible = "samsung,exynos-sysmmu";
		reg = <0x11A20000 0x1000>;
		interrupt-parent = <&combiner>;
		interrupts = <4 2>;
		clock-names = "sysmmu", "master";
		clocks = <&clock CLK_SMMU_FIMC0>, <&clock CLK_FIMC0>;
		power-domains = <&pd_cam>;
		#iommu-cells = <0>;
	};

	sysmmu_fimc1: sysmmu@11A30000 {
		compatible = "samsung,exynos-sysmmu";
		reg = <0x11A30000 0x1000>;
		interrupt-parent = <&combiner>;
		interrupts = <4 3>;
		clock-names = "sysmmu", "master";
		clocks = <&clock CLK_SMMU_FIMC1>, <&clock CLK_FIMC1>;
		power-domains = <&pd_cam>;
		#iommu-cells = <0>;
	};

	sysmmu_fimc2: sysmmu@11A40000 {
		compatible = "samsung,exynos-sysmmu";
		reg = <0x11A40000 0x1000>;
		interrupt-parent = <&combiner>;
		interrupts = <4 4>;
		clock-names = "sysmmu", "master";
		clocks = <&clock CLK_SMMU_FIMC2>, <&clock CLK_FIMC2>;
		power-domains = <&pd_cam>;
		#iommu-cells = <0>;
	};

	sysmmu_fimc3: sysmmu@11A50000 {
		compatible = "samsung,exynos-sysmmu";
		reg = <0x11A50000 0x1000>;
		interrupt-parent = <&combiner>;
		interrupts = <4 5>;
		clock-names = "sysmmu", "master";
		clocks = <&clock CLK_SMMU_FIMC3>, <&clock CLK_FIMC3>;
		power-domains = <&pd_cam>;
		#iommu-cells = <0>;
	};

	sysmmu_jpeg: sysmmu@11A60000 {
		compatible = "samsung,exynos-sysmmu";
		reg = <0x11A60000 0x1000>;
		interrupt-parent = <&combiner>;
		interrupts = <4 6>;
		clock-names = "sysmmu", "master";
		clocks = <&clock CLK_SMMU_JPEG>, <&clock CLK_JPEG>;
		power-domains = <&pd_cam>;
		#iommu-cells = <0>;
	};

	sysmmu_rotator: sysmmu@12A30000 {
		compatible = "samsung,exynos-sysmmu";
		reg = <0x12A30000 0x1000>;
		interrupt-parent = <&combiner>;
		interrupts = <5 0>;
		clock-names = "sysmmu", "master";
		clocks = <&clock CLK_SMMU_ROTATOR>, <&clock CLK_ROTATOR>;
		power-domains = <&pd_lcd0>;
		#iommu-cells = <0>;
	};

	sysmmu_fimd0: sysmmu@11E20000 {
		compatible = "samsung,exynos-sysmmu";
		reg = <0x11E20000 0x1000>;
		interrupt-parent = <&combiner>;
		interrupts = <5 2>;
		clock-names = "sysmmu", "master";
		clocks = <&clock CLK_SMMU_FIMD0>, <&clock CLK_FIMD0>;
		power-domains = <&pd_lcd0>;
		#iommu-cells = <0>;
	};
};
+209 −209
Original line number Diff line number Diff line
@@ -50,61 +50,94 @@
		};
	};

	watchdog@10060000 {
		status = "okay";
	gpio_keys {
		compatible = "gpio-keys";
		#address-cells = <1>;
		#size-cells = <0>;

		up {
			label = "Up";
			gpios = <&gpx2 0 1>;
			linux,code = <KEY_UP>;
			gpio-key,wakeup;
		};

	rtc@10070000 {
		status = "okay";
		down {
			label = "Down";
			gpios = <&gpx2 1 1>;
			linux,code = <KEY_DOWN>;
			gpio-key,wakeup;
		};

	tmu@100C0000 {
		status = "okay";
		back {
			label = "Back";
			gpios = <&gpx1 7 1>;
			linux,code = <KEY_BACK>;
			gpio-key,wakeup;
		};

	sdhci@12530000 {
		bus-width = <4>;
		pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sd2_cd>;
		pinctrl-names = "default";
		vmmc-supply = <&mmc_reg>;
		status = "okay";
		home {
			label = "Home";
			gpios = <&gpx1 6 1>;
			linux,code = <KEY_HOME>;
			gpio-key,wakeup;
		};

	sdhci@12510000 {
		bus-width = <4>;
		pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_cd>;
		pinctrl-names = "default";
		vmmc-supply = <&mmc_reg>;
		status = "okay";
		menu {
			label = "Menu";
			gpios = <&gpx1 5 1>;
			linux,code = <KEY_MENU>;
			gpio-key,wakeup;
		};
	};

	g2d@12800000 {
		status = "okay";
	leds {
		compatible = "gpio-leds";
		status {
			gpios = <&gpx1 3 1>;
			linux,default-trigger = "heartbeat";
		};
	};

	codec@13400000 {
		samsung,mfc-r = <0x43000000 0x800000>;
		samsung,mfc-l = <0x51000000 0x800000>;
		status = "okay";
	fixed-rate-clocks {
		xxti {
			compatible = "samsung,clock-xxti";
			clock-frequency = <0>;
		};

	serial@13800000 {
		status = "okay";
		xusbxti {
			compatible = "samsung,clock-xusbxti";
			clock-frequency = <24000000>;
		};
	};

	serial@13810000 {
		status = "okay";
	display-timings {
		native-mode = <&timing0>;
		timing0: timing {
			clock-frequency = <47500000>;
			hactive = <1024>;
			vactive = <600>;
			hfront-porch = <64>;
			hback-porch = <16>;
			hsync-len = <48>;
			vback-porch = <64>;
			vfront-porch = <16>;
			vsync-len = <3>;
		};
	};
};

	serial@13820000 {
&fimd {
	pinctrl-0 = <&lcd_en &lcd_clk &lcd_data24 &pwm0_out>;
	pinctrl-names = "default";
	status = "okay";
};

	serial@13830000 {
&g2d {
	status = "okay";
};

	i2c@13860000 {
&i2c_0 {
	status = "okay";
	samsung,i2c-sda-delay = <100>;
	samsung,i2c-max-bus-freq = <20000>;
@@ -253,85 +286,52 @@
	};
};

	gpio_keys {
		compatible = "gpio-keys";
		#address-cells = <1>;
		#size-cells = <0>;

		up {
			label = "Up";
			gpios = <&gpx2 0 1>;
			linux,code = <KEY_UP>;
			gpio-key,wakeup;
&mfc {
	samsung,mfc-r = <0x43000000 0x800000>;
	samsung,mfc-l = <0x51000000 0x800000>;
	status = "okay";
};

		down {
			label = "Down";
			gpios = <&gpx2 1 1>;
			linux,code = <KEY_DOWN>;
			gpio-key,wakeup;
&sdhci_0 {
	bus-width = <4>;
	pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_cd>;
	pinctrl-names = "default";
	vmmc-supply = <&mmc_reg>;
	status = "okay";
};

		back {
			label = "Back";
			gpios = <&gpx1 7 1>;
			linux,code = <KEY_BACK>;
			gpio-key,wakeup;
&sdhci_2 {
	bus-width = <4>;
	pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sd2_cd>;
	pinctrl-names = "default";
	vmmc-supply = <&mmc_reg>;
	status = "okay";
};

		home {
			label = "Home";
			gpios = <&gpx1 6 1>;
			linux,code = <KEY_HOME>;
			gpio-key,wakeup;
&serial_0 {
	status = "okay";
};

		menu {
			label = "Menu";
			gpios = <&gpx1 5 1>;
			linux,code = <KEY_MENU>;
			gpio-key,wakeup;
		};
&serial_1 {
	status = "okay";
};

	leds {
		compatible = "gpio-leds";
		status {
			gpios = <&gpx1 3 1>;
			linux,default-trigger = "heartbeat";
		};
&serial_2 {
	status = "okay";
};

	fixed-rate-clocks {
		xxti {
			compatible = "samsung,clock-xxti";
			clock-frequency = <0>;
&serial_3 {
	status = "okay";
};

		xusbxti {
			compatible = "samsung,clock-xusbxti";
			clock-frequency = <24000000>;
		};
&rtc {
	status = "okay";
};

	fimd@11c00000 {
		pinctrl-0 = <&lcd_en &lcd_clk &lcd_data24 &pwm0_out>;
		pinctrl-names = "default";
&tmu {
	status = "okay";
};

	display-timings {
		native-mode = <&timing0>;
		timing0: timing {
			clock-frequency = <47500000>;
			hactive = <1024>;
			vactive = <600>;
			hfront-porch = <64>;
			hback-porch = <16>;
			hsync-len = <48>;
			vback-porch = <64>;
			vfront-porch = <16>;
			vsync-len = <3>;
		};
	};
&watchdog {
	status = "okay";
};
Loading