Samsung DeviceTree update for v4.8:

1. Add missing async bridge for MFC power domain on Exynos5420.
    This fixes imprecise abort on s5p-mfc re-bind.
 2. Define regulator supplies for MMC nodes on Exynos4412 Odroid boards
    and for TMU on Exynos542x Peach boards.
 3. Thermal cleanups on Odroid XU3-family (Exynos5422).
 4. Enable AX88760 USB hub on Origen board (Exynos4412).
 5. Minor cleanups.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJXVWLzAAoJEME3ZuaGi4PXxwcP/iEIEXDy/0gKaJ2mEMcutI+/
 en2KPLXa+pg4JOSoVQKAPgiwwNeC+z4zgT38XJGn2Zs/YO9BbTNzJ4pzafqTXoko
 h5us4YNDcy9xUb95gr7zS6YDfs0+hzFJ+Aqzfz/BL5cZgM0dowla2LqNSzqHXPXJ
 6e8JYHLRb3uq+eYKVIeO1kj6WgcFuDFgRy627gimtqnZgInpFH3jL4G3e7jcRv1N
 yG+UDaOn1lB4NEdwbQ5nBFGok5Ihs9Gh1XiVDigMRBxaiXtyUnoo7BGoHRWf8QrV
 fOMl6EZ93fhI/b503W2cxB7zMZ85iReSzpxU6NWI29BcozrcqE5TAVZZRyMZ47Er
 MlTSdE2b5E4yU0mwYWHluJ2EugJNJObopWQ7OC850QuS4x056AO3y9tfV4hR1LWD
 BvuCo3IDuU0s0M1TX/JeoDXfBA11eLNfwuqbmpsoEKwu2Zy8mLzda3AQvML1ycSr
 GusZAKp+FrtXBp/+QlZzYQuYoMbzxnih4aQX+gwGekD6YwhI6DIfqmU4yAUMyHTn
 WlTO5Hw0LYb7nCad4X5P9NnGNIzEJLCUa0BSmgjtQkDPmAmMT6UKdAftjuXj0gHy
 mRyRGoYdXJxNBD/sTcm9gd7mk+FmkMcUj0qnK4qHG4O3RAnys3rYdLUc4n+DXOha
 XOqWdz4GYFA0lv4P6MMg
 =E3ZO
 -----END PGP SIGNATURE-----

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

Samsung DeviceTree update for v4.8:
1. Add missing async bridge for MFC power domain on Exynos5420.
   This fixes imprecise abort on s5p-mfc re-bind.
2. Define regulator supplies for MMC nodes on Exynos4412 Odroid boards
   and for TMU on Exynos542x Peach boards.
3. Thermal cleanups on Odroid XU3-family (Exynos5422).
4. Enable AX88760 USB hub on Origen board (Exynos4412).
5. Minor cleanups.

* tag 'samsung-dt-4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
  ARM: dts: exynos: No need to enable TMU nodes on Odroid XU3 family
  ARM: dts: exynos: Add TMU nodes regulator supply for Peach boards
  ARM: dts: exynos: Use new compatible string for thermistors in Trats2
  ARM: dts: exynos: Remove unneded always-on for regulators on Peach boards
  ARM: dts: exynos: Enable AX88760 USB hub on Origen board
  ARM: dts: exynos: Only Odroid XU3-family boards use DTSI with CPU thermal nodes
  ARM: dts: exynos: Lower SD card interface voltage to 2.8 V on Odroid X/X2/U3
  ARM: dts: exynos: Define vqmmc for eMMC card on Odroid X/X2/U3
  ARM: dts: exynos: Define vqmmc for SD card and allow disabling regulators on Odroid X/X2/U3
  ARM: dts: exynos: Add async-bridge clock to MFC power domain for Exynos5420

Signed-off-by: Olof Johansson <olof@lixom.net>
This commit is contained in:
Olof Johansson 2016-06-13 14:48:05 -07:00
Родитель 5edb56491d cb0df00040
Коммит effd786282
11 изменённых файлов: 211 добавлений и 135 удалений

Просмотреть файл

@ -297,7 +297,6 @@
regulator-name = "VDDQ_MMC2_2.8V";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
regulator-always-on;
regulator-boot-on;
};
@ -390,10 +389,18 @@
};
ldo21_reg: LDO21 {
regulator-name = "LDO21_3.3V";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
regulator-name = "TFLASH_2.8V";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
regulator-boot-on;
};
ldo22_reg: LDO22 {
/*
* Only U3 uses it, so let it define the
* constraints
*/
regulator-name = "LDO22";
regulator-boot-on;
};
@ -460,9 +467,11 @@
};
buck8_reg: BUCK8 {
/*
* Constraints set by specific board: X,
* X2 and U3.
*/
regulator-name = "BUCK8_2.8V";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
};
};
};
@ -506,7 +515,7 @@
&mshc_0 {
pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
pinctrl-names = "default";
vmmc-supply = <&ldo20_reg &buck8_reg>;
vmmc-supply = <&ldo20_reg>;
mmc-pwrseq = <&emmc_pwrseq>;
status = "okay";
@ -530,7 +539,8 @@
bus-width = <4>;
pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>;
pinctrl-names = "default";
vmmc-supply = <&ldo4_reg &ldo21_reg>;
vmmc-supply = <&ldo21_reg>;
vqmmc-supply = <&ldo4_reg>;
cd-gpios = <&gpk2 2 GPIO_ACTIVE_HIGH>;
cd-inverted;
status = "okay";

Просмотреть файл

@ -69,6 +69,24 @@
};
};
/* Supply for LAN9730/SMSC95xx */
&buck8_reg {
regulator-name = "BUCK8_P3V3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
/* VDDQ for MSHC (eMMC card) */
&ldo22_reg {
regulator-name = "LDO22_VDDQ_MMC4_2.8V";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
};
&mshc_0 {
vqmmc-supply = <&ldo22_reg>;
};
&pwm {
pinctrl-0 = <&pwm0_out>;
pinctrl-names = "default";

Просмотреть файл

@ -63,12 +63,23 @@
};
};
/* VDDQ for MSHC (eMMC card) */
&buck8_reg {
regulator-name = "BUCK8_VDDQ_MMC4_2.8V";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
};
&ehci {
port@1 {
status = "okay";
};
};
&mshc_0 {
vqmmc-supply = <&buck8_reg>;
};
&pinctrl_1 {
gpio_home_key: home_key {
samsung,pins = "gpx2-2";

Просмотреть файл

@ -22,6 +22,17 @@
};
};
/* VDDQ for MSHC (eMMC card) */
&buck8_reg {
regulator-name = "BUCK8_VDDQ_MMC4_2.8V";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
};
&mshc_0 {
vqmmc-supply = <&buck8_reg>;
};
&sound {
simple-audio-card,name = "Odroid-X2";
simple-audio-card,widgets =

Просмотреть файл

@ -83,6 +83,22 @@
cpu0-supply = <&buck2_reg>;
};
&exynos_usbphy {
status = "okay";
};
&ehci {
samsung,vbus-gpio = <&gpx3 5 1>;
status = "okay";
port@1{
status = "okay";
};
port@2 {
status = "okay";
};
};
&fimd {
pinctrl-0 = <&lcd_clk &lcd_data24 &pwm1_out>;
pinctrl-names = "default";

Просмотреть файл

@ -253,7 +253,7 @@
};
thermistor-ap {
compatible = "ntc,ncp15wb473";
compatible = "murata,ncp15wb473";
pullup-uv = <1800000>; /* VCC_1.8V_AP */
pullup-ohm = <100000>; /* 100K */
pulldown-ohm = <100000>; /* 100K */
@ -261,7 +261,7 @@
};
thermistor-battery {
compatible = "ntc,ncp15wb473";
compatible = "murata,ncp15wb473";
pullup-uv = <1800000>; /* VCC_1.8V_AP */
pullup-ohm = <100000>; /* 100K */
pulldown-ohm = <100000>; /* 100K */

Просмотреть файл

@ -278,7 +278,6 @@
regulator-name = "vdd_1v2";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
regulator-always-on;
regulator-boot-on;
regulator-state-mem {
regulator-off-in-suspend;
@ -301,7 +300,6 @@
regulator-name = "vdd_1v35";
regulator-min-microvolt = <1350000>;
regulator-max-microvolt = <1350000>;
regulator-always-on;
regulator-boot-on;
regulator-state-mem {
regulator-on-in-suspend;
@ -323,7 +321,6 @@
regulator-name = "vdd_2v";
regulator-min-microvolt = <2000000>;
regulator-max-microvolt = <2000000>;
regulator-always-on;
regulator-boot-on;
regulator-state-mem {
regulator-on-in-suspend;
@ -334,7 +331,6 @@
regulator-name = "vdd_1v8";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
regulator-boot-on;
regulator-state-mem {
regulator-on-in-suspend;
@ -419,7 +415,6 @@
regulator-name = "vdd_ldo9";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
regulator-state-mem {
regulator-on-in-suspend;
regulator-mode = <MAX77802_OPMODE_LP>;
@ -430,7 +425,6 @@
regulator-name = "vdd_ldo10";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
regulator-state-mem {
regulator-off-in-suspend;
};
@ -1046,6 +1040,26 @@
status = "okay";
};
&tmu_cpu0 {
vtmu-supply = <&ldo10_reg>;
};
&tmu_cpu1 {
vtmu-supply = <&ldo10_reg>;
};
&tmu_cpu2 {
vtmu-supply = <&ldo10_reg>;
};
&tmu_cpu3 {
vtmu-supply = <&ldo10_reg>;
};
&tmu_gpu {
vtmu-supply = <&ldo10_reg>;
};
&usbdrd_dwc3_0 {
dr_mode = "host";
};

Просмотреть файл

@ -349,8 +349,9 @@
mfc_pd: power-domain@10044060 {
compatible = "samsung,exynos4210-pd";
reg = <0x10044060 0x20>;
clocks = <&clock CLK_FIN_PLL>, <&clock CLK_MOUT_USER_ACLK333>;
clock-names = "oscclk", "clk0";
clocks = <&clock CLK_FIN_PLL>, <&clock CLK_MOUT_USER_ACLK333>,
<&clock CLK_ACLK333>;
clock-names = "oscclk", "clk0","asb0";
#power-domain-cells = <0>;
};

Просмотреть файл

@ -1,103 +0,0 @@
/*
* Device tree sources for Exynos5422 thermal zone
*
* Copyright (c) 2015 Lukasz Majewski <l.majewski@samsung.com>
* Anand Moon <linux.amoon@gmail.com>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*/
#include <dt-bindings/thermal/thermal.h>
/ {
thermal-zones {
cpu0_thermal: cpu0-thermal {
thermal-sensors = <&tmu_cpu0 0>;
polling-delay-passive = <250>;
polling-delay = <0>;
trips {
cpu_alert0: cpu-alert-0 {
temperature = <50000>; /* millicelsius */
hysteresis = <5000>; /* millicelsius */
type = "active";
};
cpu_alert1: cpu-alert-1 {
temperature = <60000>; /* millicelsius */
hysteresis = <5000>; /* millicelsius */
type = "active";
};
cpu_alert2: cpu-alert-2 {
temperature = <70000>; /* millicelsius */
hysteresis = <5000>; /* millicelsius */
type = "active";
};
cpu_crit0: cpu-crit-0 {
temperature = <120000>; /* millicelsius */
hysteresis = <0>; /* millicelsius */
type = "critical";
};
/*
* Exyunos542x support only 4 trip-points
* so for these polling mode is required.
* Start polling at temperature level of last
* interrupt-driven trip: cpu_alert2
*/
cpu_alert3: cpu-alert-3 {
temperature = <70000>; /* millicelsius */
hysteresis = <10000>; /* millicelsius */
type = "passive";
};
cpu_alert4: cpu-alert-4 {
temperature = <85000>; /* millicelsius */
hysteresis = <10000>; /* millicelsius */
type = "passive";
};
};
cooling-maps {
map0 {
trip = <&cpu_alert0>;
cooling-device = <&fan0 0 1>;
};
map1 {
trip = <&cpu_alert1>;
cooling-device = <&fan0 1 2>;
};
map2 {
trip = <&cpu_alert2>;
cooling-device = <&fan0 2 3>;
};
/*
* When reaching cpu_alert3, reduce CPU
* by 2 steps. On Exynos5422/5800 that would
* be: 1500 MHz and 1100 MHz.
*/
map3 {
trip = <&cpu_alert3>;
cooling-device = <&cpu0 0 2>;
};
map4 {
trip = <&cpu_alert3>;
cooling-device = <&cpu4 0 2>;
};
/*
* When reaching cpu_alert4, reduce CPU
* further, down to 600 MHz (11 steps for big,
* 7 steps for LITTLE).
*/
map5 {
trip = <&cpu_alert4>;
cooling-device = <&cpu0 3 7>;
};
map6 {
trip = <&cpu_alert4>;
cooling-device = <&cpu4 3 11>;
};
};
};
};
};

Просмотреть файл

@ -1,9 +1,11 @@
/*
* Hardkernel Odroid XU3 board device tree source
*
* Copyright (c) 2014 Collabora Ltd.
* Copyright (c) 2013 Samsung Electronics Co., Ltd.
* http://www.samsung.com
* Copyright (c) 2014 Collabora Ltd.
* Copyright (c) 2015 Lukasz Majewski <l.majewski@samsung.com>
* Anand Moon <linux.amoon@gmail.com>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
@ -16,7 +18,6 @@
#include <dt-bindings/sound/samsung-i2s.h>
#include "exynos5800.dtsi"
#include "exynos5422-cpus.dtsi"
#include "exynos5422-cpu-thermal.dtsi"
/ {
memory {
@ -54,6 +55,94 @@
#cooling-cells = <2>;
cooling-levels = <0 130 170 230>;
};
thermal-zones {
cpu0_thermal: cpu0-thermal {
thermal-sensors = <&tmu_cpu0 0>;
polling-delay-passive = <250>;
polling-delay = <0>;
trips {
cpu_alert0: cpu-alert-0 {
temperature = <50000>; /* millicelsius */
hysteresis = <5000>; /* millicelsius */
type = "active";
};
cpu_alert1: cpu-alert-1 {
temperature = <60000>; /* millicelsius */
hysteresis = <5000>; /* millicelsius */
type = "active";
};
cpu_alert2: cpu-alert-2 {
temperature = <70000>; /* millicelsius */
hysteresis = <5000>; /* millicelsius */
type = "active";
};
cpu_crit0: cpu-crit-0 {
temperature = <120000>; /* millicelsius */
hysteresis = <0>; /* millicelsius */
type = "critical";
};
/*
* Exynos542x supports only 4 trip-points
* so for these polling mode is required.
* Start polling at temperature level of last
* interrupt-driven trip: cpu_alert2
*/
cpu_alert3: cpu-alert-3 {
temperature = <70000>; /* millicelsius */
hysteresis = <10000>; /* millicelsius */
type = "passive";
};
cpu_alert4: cpu-alert-4 {
temperature = <85000>; /* millicelsius */
hysteresis = <10000>; /* millicelsius */
type = "passive";
};
};
cooling-maps {
map0 {
trip = <&cpu_alert0>;
cooling-device = <&fan0 0 1>;
};
map1 {
trip = <&cpu_alert1>;
cooling-device = <&fan0 1 2>;
};
map2 {
trip = <&cpu_alert2>;
cooling-device = <&fan0 2 3>;
};
/*
* When reaching cpu_alert3, reduce CPU
* by 2 steps. On Exynos5422/5800 that would
* be: 1600 MHz and 1100 MHz.
*/
map3 {
trip = <&cpu_alert3>;
cooling-device = <&cpu0 0 2>;
};
map4 {
trip = <&cpu_alert3>;
cooling-device = <&cpu4 0 2>;
};
/*
* When reaching cpu_alert4, reduce CPU
* further, down to 600 MHz (11 steps for big,
* 7 steps for LITTLE).
*/
map5 {
trip = <&cpu_alert4>;
cooling-device = <&cpu0 3 7>;
};
map6 {
trip = <&cpu_alert4>;
cooling-device = <&cpu4 3 11>;
};
};
};
};
};
&bus_wcore {
@ -487,27 +576,22 @@
&tmu_cpu0 {
vtmu-supply = <&ldo7_reg>;
status = "okay";
};
&tmu_cpu1 {
vtmu-supply = <&ldo7_reg>;
status = "okay";
};
&tmu_cpu2 {
vtmu-supply = <&ldo7_reg>;
status = "okay";
};
&tmu_cpu3 {
vtmu-supply = <&ldo7_reg>;
status = "okay";
};
&tmu_gpu {
vtmu-supply = <&ldo7_reg>;
status = "okay";
};
&rtc {

Просмотреть файл

@ -278,7 +278,6 @@
regulator-name = "vdd_1v2";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
regulator-always-on;
regulator-boot-on;
regulator-state-mem {
regulator-off-in-suspend;
@ -301,7 +300,6 @@
regulator-name = "vdd_1v35";
regulator-min-microvolt = <1350000>;
regulator-max-microvolt = <1350000>;
regulator-always-on;
regulator-boot-on;
regulator-state-mem {
regulator-on-in-suspend;
@ -323,7 +321,6 @@
regulator-name = "vdd_2v";
regulator-min-microvolt = <2000000>;
regulator-max-microvolt = <2000000>;
regulator-always-on;
regulator-boot-on;
regulator-state-mem {
regulator-on-in-suspend;
@ -334,7 +331,6 @@
regulator-name = "vdd_1v8";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
regulator-boot-on;
regulator-state-mem {
regulator-on-in-suspend;
@ -419,7 +415,6 @@
regulator-name = "vdd_ldo9";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
regulator-state-mem {
regulator-on-in-suspend;
regulator-mode = <MAX77802_OPMODE_LP>;
@ -430,7 +425,6 @@
regulator-name = "vdd_ldo10";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
regulator-state-mem {
regulator-off-in-suspend;
};
@ -1022,6 +1016,26 @@
status = "okay";
};
&tmu_cpu0 {
vtmu-supply = <&ldo10_reg>;
};
&tmu_cpu1 {
vtmu-supply = <&ldo10_reg>;
};
&tmu_cpu2 {
vtmu-supply = <&ldo10_reg>;
};
&tmu_cpu3 {
vtmu-supply = <&ldo10_reg>;
};
&tmu_gpu {
vtmu-supply = <&ldo10_reg>;
};
&usbdrd_dwc3_0 {
dr_mode = "host";
};