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

Commit 954e198e authored by Olof Johansson's avatar Olof Johansson
Browse files

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

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

From Kukjin Kim:
Samsung DT 2nd updates for v3.14
- add DMA controller, SPI, and TMU DT nodes for exynos5420
- add PWM DT nodes for exynos5250 and exynos5420
- drop interrupt controller properties from MCT nodes
  because MCT is not an interrupt controller
- move MCT nodes to exynos4x12 from board because it is
  a per-processor interrupt and same 4212 and 4412
- use one cell for MCT interrupt map for exynos4 SoCs
- update Exynos MCT DT bindings accordingly
- fix missing spaces after labels for exynos
- fix mmc status property for exynos5250-snow
- add MCLK for codec for exynos5250-smdk5250
- disable SPI and I2C by default for exynos5250 SoC
  and enable into requiring some boards
- rename cros5250-common to exynos5250-cros-common

* tag 'samsung-dt-2' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung

: (27 commits)
  ARM: dts: Rename Exynos5250 ChromeOS common file to have exynos prefix
  ARM: dts: Disable I2C controllers by default on Exynos5250
  ARM: dts: Leave Exynos5250 SPI controller disabled by default
  ARM: dts: Add CODEC MCLK for SMDK5250
  ARM: dts: Add device nodes for TMU blocks for exynos5420
  ARM: dts: Fix status property of mmc nodes for snow board
  ARM: dts: Fix missing spaces after labels for exynos
  ARM: dts: Simplify MCT interrupt map for exynos4 SoCs
  ARM: dts: Move MCT node to exynos4x12.dtsi
  ARM: dts: Drop interrupt controller properties from MCT nodes for exynos4 SoCs
  Documentation: devicetree: Update Exynos MCT bindings description
  ARM: dts: add pwm DT nodes to Exynos5250 and Exynos5420
  ARM: dts: Add SPI nodes to the exynos5420 device tree file
  ARM: dts: Add DMA controller node info on Exynos5420
  ARM: dts: Use MSHC controller for eMMC memory for exynos4412-trats2
  ARM: dts: Fix definition of MSHC device tree nodes for exynos4x12
  ARM: dts: add clock provider for mshc node for Exynos4412 SOC
  clk: samsung: exynos4: Fix definition of div_mmc_pre4 divider
  ARM: dts: Fix exynos5250-snow's search key to be L_META
  ARM: dts: Add the missing "\" key in non-US keyboards for exynos5250-snow
  ...

Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
parents f2edbade a22d060e
Loading
Loading
Loading
Loading
+37 −17
Original line number Original line Diff line number Diff line
@@ -31,38 +31,58 @@ Required properties:
	7: ..
	7: ..
	i: Local Timer Interrupt n
	i: Local Timer Interrupt n


Example 1: In this example, the system uses only the first global timer
  For MCT block that uses a per-processor interrupt for local timers, such
	   interrupt generated by MCT and the remaining three global timer
  as ones compatible with "samsung,exynos4412-mct", only one local timer
	   interrupts are unused. Two local timer interrupts have been
  interrupt might be specified, meaning that all local timers use the same
	   specified.
  per processor interrupt.

Example 1: In this example, the IP contains two local timers, using separate
	   interrupts, so two local timer interrupts have been specified,
	   in addition to four global timer interrupts.


	mct@10050000 {
	mct@10050000 {
		compatible = "samsung,exynos4210-mct";
		compatible = "samsung,exynos4210-mct";
		reg = <0x10050000 0x800>;
		reg = <0x10050000 0x800>;
		interrupts = <0 57 0>, <0 0 0>, <0 0 0>, <0 0 0>,
		interrupts = <0 57 0>, <0 69 0>, <0 70 0>, <0 71 0>,
			     <0 42 0>, <0 48 0>;
			     <0 42 0>, <0 48 0>;
	};
	};


Example 2: In this example, the MCT global and local timer interrupts are
Example 2: In this example, the timer interrupts are connected to two separate
	   connected to two separate interrupt controllers. Hence, an
	   interrupt controllers. Hence, an interrupt-map is created to map
	   interrupt-map is created to map the interrupts to the respective
	   the interrupts to the respective interrupt controllers.
	   interrupt controllers.


	mct@101C0000 {
	mct@101C0000 {
		compatible = "samsung,exynos4210-mct";
		compatible = "samsung,exynos4210-mct";
		reg = <0x101C0000 0x800>;
		reg = <0x101C0000 0x800>;
		interrupt-controller;
		#interrups-cells = <2>;
		interrupt-parent = <&mct_map>;
		interrupt-parent = <&mct_map>;
		interrupts = <0 0>, <1 0>, <2 0>, <3 0>,
		interrupts = <0>, <1>, <2>, <3>, <4>, <5>;
			     <4 0>, <5 0>;


		mct_map: mct-map {
		mct_map: mct-map {
			#interrupt-cells = <2>;
			#interrupt-cells = <1>;
			#address-cells = <0>;
			#address-cells = <0>;
			#size-cells = <0>;
			#size-cells = <0>;
			interrupt-map = <0x0 0 &combiner 23 3>,
			interrupt-map = <0 &gic 0 57 0>,
					<0x4 0 &gic 0 120 0>,
					<1 &gic 0 69 0>,
					<0x5 0 &gic 0 121 0>;
					<2 &combiner 12 6>,
					<3 &combiner 12 7>,
					<4 &gic 0 42 0>,
					<5 &gic 0 48 0>;
		};
		};
	};
	};

Example 3: In this example, the IP contains four local timers, but using
	   a per-processor interrupt to handle them. Either all the local
	   timer interrupts can be specified, with the same interrupt specifier
	   value or just the first one.

	mct@10050000 {
		compatible = "samsung,exynos4412-mct";
		reg = <0x10050000 0x800>;

		/* Both ways are possible in this case. Either: */
		interrupts = <0 57 0>, <0 69 0>, <0 70 0>, <0 71 0>,
			     <0 42 0>;
		/* or: */
		interrupts = <0 57 0>, <0 69 0>, <0 70 0>, <0 71 0>,
			     <0 42 0>, <0 42 0>, <0 42 0>, <0 42 0>;
	};
+1 −1
Original line number Original line Diff line number Diff line
@@ -313,7 +313,7 @@
	display-timings {
	display-timings {
		native-mode = <&timing0>;
		native-mode = <&timing0>;
		timing0: timing {
		timing0: timing {
			clock-frequency = <50000>;
			clock-frequency = <47500000>;
			hactive = <1024>;
			hactive = <1024>;
			vactive = <600>;
			vactive = <600>;
			hfront-porch = <64>;
			hfront-porch = <64>;
+10 −13
Original line number Original line Diff line number Diff line
@@ -51,24 +51,21 @@
	mct@10050000 {
	mct@10050000 {
		compatible = "samsung,exynos4210-mct";
		compatible = "samsung,exynos4210-mct";
		reg = <0x10050000 0x800>;
		reg = <0x10050000 0x800>;
		interrupt-controller;
		#interrups-cells = <2>;
		interrupt-parent = <&mct_map>;
		interrupt-parent = <&mct_map>;
		interrupts = <0 0>, <1 0>, <2 0>, <3 0>,
		interrupts = <0>, <1>, <2>, <3>, <4>, <5>;
			     <4 0>, <5 0>;
		clocks = <&clock 3>, <&clock 344>;
		clocks = <&clock 3>, <&clock 344>;
		clock-names = "fin_pll", "mct";
		clock-names = "fin_pll", "mct";


		mct_map: mct-map {
		mct_map: mct-map {
			#interrupt-cells = <2>;
			#interrupt-cells = <1>;
			#address-cells = <0>;
			#address-cells = <0>;
			#size-cells = <0>;
			#size-cells = <0>;
			interrupt-map = <0x0 0 &gic 0 57 0>,
			interrupt-map = <0 &gic 0 57 0>,
					<0x1 0 &gic 0 69 0>,
					<1 &gic 0 69 0>,
					<0x2 0 &combiner 12 6>,
					<2 &combiner 12 6>,
					<0x3 0 &combiner 12 7>,
					<3 &combiner 12 7>,
					<0x4 0 &gic 0 42 0>,
					<4 &gic 0 42 0>,
					<0x5 0 &gic 0 48 0>;
					<5 &gic 0 48 0>;
		};
		};
	};
	};


+1 −23
Original line number Original line Diff line number Diff line
@@ -34,26 +34,4 @@
			     <0 12 0>, <0 13 0>, <0 14 0>, <0 15 0>,
			     <0 12 0>, <0 13 0>, <0 14 0>, <0 15 0>,
			     <0 107 0>, <0 108 0>;
			     <0 107 0>, <0 108 0>;
	};
	};

	mct@10050000 {
		compatible = "samsung,exynos4412-mct";
		reg = <0x10050000 0x800>;
		interrupt-controller;
		#interrups-cells = <2>;
		interrupt-parent = <&mct_map>;
		interrupts = <0 0>, <1 0>, <2 0>, <3 0>,
			     <4 0>, <5 0>;

		mct_map: mct-map {
			#interrupt-cells = <2>;
			#address-cells = <0>;
			#size-cells = <0>;
			interrupt-map = <0x0 0 &gic 0 57 0>,
					<0x1 0 &combiner 12 5>,
					<0x2 0 &combiner 12 6>,
					<0x3 0 &combiner 12 7>,
					<0x4 0 &gic 1 12 0>,
					<0x5 0 &gic 1 12 0>;
		};
	};
};
};
+1 −4
Original line number Original line Diff line number Diff line
@@ -38,9 +38,7 @@
		};
		};
	};
	};


	mshc@12550000 {
	mmc@12550000 {
		#address-cells = <1>;
		#size-cells = <0>;
		pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
		pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
		pinctrl-names = "default";
		pinctrl-names = "default";
		vmmc-supply = <&ldo20_reg &buck8_reg>;
		vmmc-supply = <&ldo20_reg &buck8_reg>;
@@ -49,7 +47,6 @@
		num-slots = <1>;
		num-slots = <1>;
		supports-highspeed;
		supports-highspeed;
		broken-cd;
		broken-cd;
		fifo-depth = <0x80>;
		card-detect-delay = <200>;
		card-detect-delay = <200>;
		samsung,dw-mshc-ciu-div = <3>;
		samsung,dw-mshc-ciu-div = <3>;
		samsung,dw-mshc-sdr-timing = <2 3>;
		samsung,dw-mshc-sdr-timing = <2 3>;
Loading