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

Commit 8850e0ba 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

Merge "Samsung DT 2nd updates for v3.17" from Kukjin Kim:

This is based on tags/exynos-power because this DT changes
are depending PMU cleanup.

Fixes boot for exynos5260 and exynos5410,
- Since exynos cannot boot without obtaining PMU address via
  DT from now on, add PMU node for exynos5260 and exynos5410

For preparing exynos5250-spring,
- move max77686 and cypress,cyapa trackpad from exynos5250-
  cros-common to exynos5250-snow DT file
(Note exynos5250-spring is not included in this branch yet)

For exynos3250,
- add TMU node and remove duplicated interrupt-parent
- add missing pinctrl property for uart0 and uart1

For exynos5250-smdk5250 board
- add max77686 pmic interrupt property which is connected to
  gpx3

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

: (28 commits)
  ARM: dts: Add missing pinctrl for uart0/1 for exynos3250
  ARM: dts: Remove duplicate 'interrput-parent' property for exynos3250
  ARM: dts: Add TMU dt node to monitor the temperature for exynos3250
  ARM: dts: Specify MAX77686 pmic interrupt for exynos5250-smdk5250
  ARM: dts: cypress,cyapa trackpad is exynos5250-Snow only
  ARM: dts: max77686 is exynos5250-snow only
  ARM: EXYNOS: Add exynos5260 PMU compatible string to DT match table
  ARM: dts: Add PMU DT node for exynos5260 SoC
  ARM: EXYNOS: Add support for Exynos5410 PMU
  ARM: dts: Add PMU to exynos5410
  ARM: dts: Document exynos5410 PMU
  ARM: EXYNOS: Move cpufreq and cpuidle device registration to init_machine
  ARM: EXYNOS: Refactored code for using PMU address via DT
  ARM: EXYNOS: Support cluster power off on exynos5420/5800
  ARM: EXYNOS: populate suspend and powered_up callbacks for mcpm
  ARM: EXYNOS: do not allow cpuidle registration for exynos5420
  cpuidle: big.LITTLE: init driver for exynos5420
  cpuidle: big.LITTLE: Add ARCH_EXYNOS entry in config
  ARM: EXYNOS: add generic function to calculate cpu number
  cpuidle: big.LITTLE: add of_device_id structure
  ...

Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
parents cdf26ad4 a9408a6b
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -7,6 +7,8 @@ Properties:
		   - "samsung,exynos4212-pmu" - for Exynos4212 SoC,
		   - "samsung,exynos4412-pmu" - for Exynos4412 SoC,
		   - "samsung,exynos5250-pmu" - for Exynos5250 SoC,
		   - "samsung,exynos5260-pmu" - for Exynos5260 SoC.
		   - "samsung,exynos5410-pmu" - for Exynos5410 SoC,
		   - "samsung,exynos5420-pmu" - for Exynos5420 SoC.
		second value must be always "syscon".

+4 −16
Original line number Diff line number Diff line
@@ -625,53 +625,41 @@ choice
		depends on PLAT_SAMSUNG
		select DEBUG_EXYNOS_UART if ARCH_EXYNOS
		select DEBUG_S3C24XX_UART if ARCH_S3C24XX
		bool "Use S3C UART 0 for low-level debug"
		bool "Use Samsung S3C UART 0 for low-level debug"
		help
		  Say Y here if you want the debug print routines to direct
		  their output to UART 0. The port must have been initialised
		  by the boot-loader before use.

		  The uncompressor code port configuration is now handled
		  by CONFIG_S3C_LOWLEVEL_UART_PORT.

	config DEBUG_S3C_UART1
		depends on PLAT_SAMSUNG
		select DEBUG_EXYNOS_UART if ARCH_EXYNOS
		select DEBUG_S3C24XX_UART if ARCH_S3C24XX
		bool "Use S3C UART 1 for low-level debug"
		bool "Use Samsung S3C UART 1 for low-level debug"
		help
		  Say Y here if you want the debug print routines to direct
		  their output to UART 1. The port must have been initialised
		  by the boot-loader before use.

		  The uncompressor code port configuration is now handled
		  by CONFIG_S3C_LOWLEVEL_UART_PORT.

	config DEBUG_S3C_UART2
		depends on PLAT_SAMSUNG
		select DEBUG_EXYNOS_UART if ARCH_EXYNOS
		select DEBUG_S3C24XX_UART if ARCH_S3C24XX
		bool "Use S3C UART 2 for low-level debug"
		bool "Use Samsung S3C UART 2 for low-level debug"
		help
		  Say Y here if you want the debug print routines to direct
		  their output to UART 2. The port must have been initialised
		  by the boot-loader before use.

		  The uncompressor code port configuration is now handled
		  by CONFIG_S3C_LOWLEVEL_UART_PORT.

	config DEBUG_S3C_UART3
		depends on PLAT_SAMSUNG && ARCH_EXYNOS
		select DEBUG_EXYNOS_UART
		bool "Use S3C UART 3 for low-level debug"
		bool "Use Samsung S3C UART 3 for low-level debug"
		help
		  Say Y here if you want the debug print routines to direct
		  their output to UART 3. The port must have been initialised
		  by the boot-loader before use.

		  The uncompressor code port configuration is now handled
		  by CONFIG_S3C_LOWLEVEL_UART_PORT.

	config DEBUG_S3C2410_UART0
		depends on ARCH_S3C24XX
		select DEBUG_S3C2410_UART
+13 −2
Original line number Diff line number Diff line
@@ -168,6 +168,15 @@
			status = "disabled";
		};

		tmu: tmu@100C0000 {
			compatible = "samsung,exynos3250-tmu";
			reg = <0x100C0000 0x100>;
			interrupts = <0 216 0>;
			clocks = <&cmu CLK_TMU_APBIF>;
			clock-names = "tmu_apbif";
			status = "disabled";
		};

		gic: interrupt-controller@10481000 {
			compatible = "arm,cortex-a15-gic";
			#interrupt-cells = <3>;
@@ -195,7 +204,6 @@

			wakeup-interrupt-controller {
				compatible = "samsung,exynos4210-wakeup-eint";
				interrupt-parent = <&gic>;
				interrupts = <0 48 0>;
			};
		};
@@ -234,7 +242,6 @@
			compatible = "arm,amba-bus";
			#address-cells = <1>;
			#size-cells = <1>;
			interrupt-parent = <&gic>;
			ranges;

			pdma0: pdma@12680000 {
@@ -277,6 +284,8 @@
			interrupts = <0 109 0>;
			clocks = <&cmu CLK_UART0>, <&cmu CLK_SCLK_UART0>;
			clock-names = "uart", "clk_uart_baud0";
			pinctrl-names = "default";
			pinctrl-0 = <&uart0_data &uart0_fctl>;
			status = "disabled";
		};

@@ -286,6 +295,8 @@
			interrupts = <0 110 0>;
			clocks = <&cmu CLK_UART1>, <&cmu CLK_SCLK_UART1>;
			clock-names = "uart", "clk_uart_baud0";
			pinctrl-names = "default";
			pinctrl-0 = <&uart1_data>;
			status = "disabled";
		};

+0 −159
Original line number Diff line number Diff line
@@ -27,177 +27,18 @@
		i2c2_bus: i2c2-bus {
			samsung,pin-pud = <0>;
		};

		max77686_irq: max77686-irq {
			samsung,pins = "gpx3-2";
			samsung,pin-function = <0>;
			samsung,pin-pud = <0>;
			samsung,pin-drv = <0>;
		};
	};

	i2c@12C60000 {
		status = "okay";
		samsung,i2c-sda-delay = <100>;
		samsung,i2c-max-bus-freq = <378000>;

		max77686@09 {
			compatible = "maxim,max77686";
			interrupt-parent = <&gpx3>;
			interrupts = <2 0>;
			pinctrl-names = "default";
			pinctrl-0 = <&max77686_irq>;
			wakeup-source;
			reg = <0x09>;
			#clock-cells = <1>;

			voltage-regulators {
				ldo1_reg: LDO1 {
					regulator-name = "P1.0V_LDO_OUT1";
					regulator-min-microvolt = <1000000>;
					regulator-max-microvolt = <1000000>;
					regulator-always-on;
				};

				ldo2_reg: LDO2 {
					regulator-name = "P1.8V_LDO_OUT2";
					regulator-min-microvolt = <1800000>;
					regulator-max-microvolt = <1800000>;
					regulator-always-on;
				};

				ldo3_reg: LDO3 {
					regulator-name = "P1.8V_LDO_OUT3";
					regulator-min-microvolt = <1800000>;
					regulator-max-microvolt = <1800000>;
					regulator-always-on;
				};

				ldo7_reg: LDO7 {
					regulator-name = "P1.1V_LDO_OUT7";
					regulator-min-microvolt = <1100000>;
					regulator-max-microvolt = <1100000>;
					regulator-always-on;
				};

				ldo8_reg: LDO8 {
					regulator-name = "P1.0V_LDO_OUT8";
					regulator-min-microvolt = <1000000>;
					regulator-max-microvolt = <1000000>;
					regulator-always-on;
				};

				ldo10_reg: LDO10 {
					regulator-name = "P1.8V_LDO_OUT10";
					regulator-min-microvolt = <1800000>;
					regulator-max-microvolt = <1800000>;
					regulator-always-on;
				};

				ldo12_reg: LDO12 {
					regulator-name = "P3.0V_LDO_OUT12";
					regulator-min-microvolt = <3000000>;
					regulator-max-microvolt = <3000000>;
					regulator-always-on;
				};

				ldo14_reg: LDO14 {
					regulator-name = "P1.8V_LDO_OUT14";
					regulator-min-microvolt = <1800000>;
					regulator-max-microvolt = <1800000>;
					regulator-always-on;
				};

				ldo15_reg: LDO15 {
					regulator-name = "P1.0V_LDO_OUT15";
					regulator-min-microvolt = <1000000>;
					regulator-max-microvolt = <1000000>;
					regulator-always-on;
				};

				ldo16_reg: LDO16 {
					regulator-name = "P1.8V_LDO_OUT16";
					regulator-min-microvolt = <1800000>;
					regulator-max-microvolt = <1800000>;
					regulator-always-on;
				};

				buck1_reg: BUCK1 {
					regulator-name = "vdd_mif";
					regulator-min-microvolt = <950000>;
					regulator-max-microvolt = <1300000>;
					regulator-always-on;
					regulator-boot-on;
				};

				buck2_reg: BUCK2 {
					regulator-name = "vdd_arm";
					regulator-min-microvolt = <850000>;
					regulator-max-microvolt = <1350000>;
					regulator-always-on;
					regulator-boot-on;
				};

				buck3_reg: BUCK3 {
					regulator-name = "vdd_int";
					regulator-min-microvolt = <900000>;
					regulator-max-microvolt = <1200000>;
					regulator-always-on;
					regulator-boot-on;
				};

				buck4_reg: BUCK4 {
					regulator-name = "vdd_g3d";
					regulator-min-microvolt = <850000>;
					regulator-max-microvolt = <1300000>;
					regulator-always-on;
					regulator-boot-on;
				};

				buck5_reg: BUCK5 {
					regulator-name = "P1.8V_BUCK_OUT5";
					regulator-min-microvolt = <1800000>;
					regulator-max-microvolt = <1800000>;
					regulator-always-on;
					regulator-boot-on;
				};

				buck6_reg: BUCK6 {
					regulator-name = "P1.35V_BUCK_OUT6";
					regulator-min-microvolt = <1350000>;
					regulator-max-microvolt = <1350000>;
					regulator-always-on;
				};

				buck7_reg: BUCK7 {
					regulator-name = "P2.0V_BUCK_OUT7";
					regulator-min-microvolt = <2000000>;
					regulator-max-microvolt = <2000000>;
					regulator-always-on;
				};

				buck8_reg: BUCK8 {
					regulator-name = "P2.85V_BUCK_OUT8";
					regulator-min-microvolt = <2850000>;
					regulator-max-microvolt = <2850000>;
					regulator-always-on;
				};
			};
		};
	};

	i2c@12C70000 {
		status = "okay";
		samsung,i2c-sda-delay = <100>;
		samsung,i2c-max-bus-freq = <378000>;

		trackpad {
			reg = <0x67>;
			compatible = "cypress,cyapa";
			interrupts = <2 0>;
			interrupt-parent = <&gpx1>;
			wakeup-source;
		};
	};

	i2c@12C80000 {
+2 −0
Original line number Diff line number Diff line
@@ -44,6 +44,8 @@
		max77686@09 {
			compatible = "maxim,max77686";
			reg = <0x09>;
			interrupt-parent = <&gpx3>;
			interrupts = <2 0>;

			voltage-regulators {
				ldo1_reg: LDO1 {
Loading