ARM: dts: exynos: Prepare Spring
Subsystems (3)
v5 cover ARM: dts: exynos: Prepare Spring
Hello,
Based on the preinstalled 3.8 based ChromeOS kernel and previous 3.15 based attempts by Stephan and me that broke for 3.16, I've prepared a device tree for the HP Chromebook 11 aka Google Spring.
v5 cleans up a regulator and the USB3503 hub and touches more exynos5250 files.
Not yet enabled are trackpad, Wifi and sound.
My rebasing branch for testing is here:
https://github.com/afaerber/linux/commits/spring-next
Regards,
Andreas
v1 -> v2:
* Dropped 3 documentation patches from series:
2 picked up,
https://patchwork.kernel.org/patch/4397271/
https://patchwork.kernel.org/patch/4397291/
1 already sent separately as v2, pending.
https://patchwork.kernel.org/patch/4424881/
* Minimized and beautified Spring device tree and to some degree Snow as well. See individual patches.
v2 -> v3:
* Rebased: Two -cros-common cleanup patches were already applied
* Lots of small cleanups for both Snow and Spring
* Enabled I2S in Spring for symmetry
* Added lid-switch and gpio-keys pinctrls to Spring
v3 -> v4:
* Fixed pin-function 1 -> 0 for dp-hpd pinctrl, style cleanup
v4 -> v5:
* Dropped regulator and fixed USB3503 for Spring
* More cleanups, including SMDK5250 and Arndale
Andreas F?rber (10):
ARM: dts: Fix MMC pinctrl for exynos5250-snow
ARM: dts: Fold exynos5250-cros-common into exynos5250-snow
ARM: dts: Clean up exynos5250-snow
ARM: dts: Fill in bootargs for exynos5250-snow
ARM: dts: Move dp_hpd from exynos5250 into smdk5250 and snow
ARM: dts: Clean up exynos5250-smdk5250
ARM: dts: Clean up exynos5250-arndale
ARM: dts: Fix apparent GPIO typo in exynos5250-arndale
ARM: dts: Simplify USB3503 on exynos5250-arndale
ARM: dts: Add exynos5250-spring device tree
arch/arm/boot/dts/Makefile | 1 + arch/arm/boot/dts/exynos5250-arndale.dts | 927 +++++++++++++------------- arch/arm/boot/dts/exynos5250-cros-common.dtsi | 164 ----- arch/arm/boot/dts/exynos5250-pinctrl.dtsi | 7 - arch/arm/boot/dts/exynos5250-smdk5250.dts | 641 +++++++++--------- arch/arm/boot/dts/exynos5250-snow.dts | 441 +++++++----- arch/arm/boot/dts/exynos5250-spring.dts | 536 +++++++++++++++ arch/arm/boot/dts/exynos5250.dtsi | 24 +- 8 files changed, 1624 insertions(+), 1117 deletions(-) delete mode 100644 arch/arm/boot/dts/exynos5250-cros-common.dtsi create mode 100644 arch/arm/boot/dts/exynos5250-spring.dts
Signature · 1 line
1.9.3
PATCH v5 1/10 ARM: dts: Fix MMC pinctrl for exynos5250-snow
The pinctrl properties should be on the device directly and not on the slot sub-node.
---
v3 -> v4 -> v5: Unchanged
v3: New (Doug Anderson)
Redundant with Jaehoon Chung's general slot at 0 deprecation, in case that hits the tree earlier.
arch/arm/boot/dts/exynos5250-snow.dts | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-)
arch/arm/boot/dts/exynos5250-snow.dts +2 -4
@@ -240,10 +240,8 @@ */ mmc at 12230000 { status = "okay"; - slot at 0 { - pinctrl-names = "default"; - pinctrl-0 = <&sd3_clk &sd3_cmd &sd3_bus4>; - }; + pinctrl-names = "default"; + pinctrl-0 = <&sd3_clk &sd3_cmd &sd3_bus4>; }; i2c at 12CD0000 {
Signature · 1 line
1.9.3
Re: [PATCH v5 01/10] ARM: dts: Fix MMC pinctrl for exynos5250-snow
Hi,
Quoted 7 lines · Andreas F?rber
The pinctrl properties should be on the device directly and not on the slot sub-node.
Reported-by Doug Anderson <[email protected]>Cc Jaehoon Chung <[email protected]>Reviewed-by Tomasz Figa <[email protected]>Signed-off-by Andreas F?rber <[email protected]>
Let's land this one before Jaehoon's, since it was a hidden functionality change in his patch. It will be an easy conflict to resolve when his patch is applied.
Re: [PATCH v5 01/10] ARM: dts: Fix MMC pinctrl for exynos5250-snow
Quoted 2 lines · Doug Anderson
Hi,
Hi,
Quoted 13 lines · Andreas F?rber
Quoted 7 lines
The pinctrl properties should be on the device directly and not on the slot sub-node.
Reported-by Doug Anderson<[email protected]>Cc Jaehoon Chung<[email protected]>Reviewed-by Tomasz Figa<[email protected]>Signed-off-by Andreas F?rber<[email protected]>Let's land this one before Jaehoon's, since it was a hidden functionality change in his patch. It will be an easy conflict to resolve when his patch is applied.
Sounds good to me, I've applied this before Jaehoon's change.
Quoted 1 line
Reviewed-by Doug Anderson<[email protected]>
Thanks,
Kukjin
Re: [PATCH v5 01/10] ARM: dts: Fix MMC pinctrl for exynos5250-snow
Hi Kukjin,
Quoted 14 lines · Kukjin Kim
Quoted 2 lines · Doug Anderson
Hi,
Hi,
Quoted 9 lines · Andreas F?rber
Quoted 7 lines
The pinctrl properties should be on the device directly and not on the slot sub-node.
Reported-by Doug Anderson<[email protected]>Cc Jaehoon Chung<[email protected]>Reviewed-by Tomasz Figa<[email protected]>Signed-off-by Andreas F?rber<[email protected]>
Quoted 7 lines
Quoted 4 lines
Let's land this one before Jaehoon's, since it was a hidden functionality change in his patch. It will be an easy conflict to resolve when his patch is applied.
Sounds good to me, I've applied this before Jaehoon's change.
Quoted 1 line
Reviewed-by Doug Anderson<[email protected]>
Version 6 of this series has been already posted. However this particular patch has not changed, so it's fine.
Best regards,
Tomasz
Re: [PATCH v5 01/10] ARM: dts: Fix MMC pinctrl for exynos5250-snow
Quoted 2 lines · Tomasz Figa
Hi Kukjin,
Hi,
Quoted 19 lines · Kukjin Kim
Quoted 18 lines · Doug Anderson
Quoted 2 lines
Hi,
Hi,
Quoted 13 lines · Andreas F?rber
Quoted 7 lines
The pinctrl properties should be on the device directly and not on the slot sub-node.
Reported-by Doug Anderson<[email protected]>Cc Jaehoon Chung<[email protected]>Reviewed-by Tomasz Figa<[email protected]>Signed-off-by Andreas F?rber<[email protected]>Let's land this one before Jaehoon's, since it was a hidden functionality change in his patch. It will be an easy conflict to resolve when his patch is applied.
Quoted 7 lines
Quoted 3 lines
Sounds good to me, I've applied this before Jaehoon's change.
Quoted 1 line
Reviewed-by Doug Anderson<[email protected]>Version 6 of this series has been already posted. However this particular patch has not changed, so it's fine.
Oh, got it. Hope this and 2nd should be same with version 6 ;)
Thanks.
- Kukjin
Re: [PATCH v5 01/10] ARM: dts: Fix MMC pinctrl for exynos5250-snow
Hi,
Am 18.08.2014 22:03, schrieb Kukjin Kim:
Quoted 17 lines · Tomasz Figa
Quoted 16 lines · Kukjin Kim
Quoted 15 lines · Doug Anderson
Quoted 14 lines
Quoted 7 lines · Andreas F?rber
The pinctrl properties should be on the device directly and not on the slot sub-node.
Reported-by Doug Anderson<[email protected]>Cc Jaehoon Chung<[email protected]>Reviewed-by Tomasz Figa<[email protected]>Signed-off-by Andreas F?rber<[email protected]>Let's land this one before Jaehoon's, since it was a hidden functionality change in his patch. It will be an easy conflict to resolve when his patch is applied.
Quoted 8 lines
Quoted 7 lines
Quoted 3 lines
Sounds good to me, I've applied this before Jaehoon's change.
Quoted 1 line
Reviewed-by Doug Anderson<[email protected]>Version 6 of this series has been already posted. However this particular patch has not changed, so it's fine.
Oh, got it. Hope this and 2nd should be same with version 6 ;)
It is documented as such. :) Others did have changes, of course.
I've started looking into rebasing myself: beware that the smdk5250 cleanup has an additional conflict in the spi node (cs-gpios movement).
Thanks,
Andreas
Signature · 2 lines
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 N?rnberg, Germany GF: Jeff Hawn, Jennifer Guild, Felix Imend?rffer; HRB 16746 AG N?rnberg
PATCH v5 2/10 ARM: dts: Fold exynos5250-cros-common into exynos5250-snow
In reply to Andreas Färberexynos5250-cros-common.dtsi was meant for sharing common pieces across ChromeOS devices. This turned out premature, as several devices ended up in the common file that are not common after all. Since the remaining common ChromeOS pieces are fairly minor, exynos5250-cros-common.dtsi was requested to be merged into the Snow device tree, sharing only the keyboard controller for now. This may be re-evaluated as both mature.
---
v4 -> v5:
* Extended commit message (Tomasz Figa)
v3 -> v4: Unchanged
v2 -> v3:
* Renamed subject to match Kukjin's style
* Rebased onto MMC pinctrl bug fix (Doug Anderson)
v2: New (Doug Anderson)
arch/arm/boot/dts/exynos5250-cros-common.dtsi | 164 -------------------------- arch/arm/boot/dts/exynos5250-snow.dts | 164 +++++++++++++++++++++++--- 2 files changed, 145 insertions(+), 183 deletions(-) delete mode 100644 arch/arm/boot/dts/exynos5250-cros-common.dtsi
arch/arm/boot/dts/exynos5250-cros-common.dtsi deleted +0 -164
@@ -1,164 +0,0 @@ -/* - * Common device tree include for all Exynos 5250 boards based off of Daisy. - * - * Copyright (c) 2012 Google, Inc - * - * 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. -*/ - -/ { - aliases { - }; - - memory { - reg = <0x40000000 0x80000000>; - }; - - chosen { - }; - - pinctrl at 11400000 { - /* - * Disabled pullups since external part has its own pullups and - * double-pulling gets us out of spec in some cases. - */ - i2c2_bus: i2c2-bus { - samsung,pin-pud = <0>; - }; - }; - - i2c at 12C60000 { - status = "okay"; - samsung,i2c-sda-delay = <100>; - samsung,i2c-max-bus-freq = <378000>; - }; - - i2c at 12C70000 { - status = "okay"; - samsung,i2c-sda-delay = <100>; - samsung,i2c-max-bus-freq = <378000>; - }; - - i2c at 12C80000 { - status = "okay"; - samsung,i2c-sda-delay = <100>; - samsung,i2c-max-bus-freq = <66000>; - - hdmiddc at 50 { - compatible = "samsung,exynos4210-hdmiddc"; - reg = <0x50>; - }; - }; - - i2c at 12C90000 { - status = "okay"; - samsung,i2c-sda-delay = <100>; - samsung,i2c-max-bus-freq = <66000>; - }; - - i2c at 12CA0000 { - status = "okay"; - samsung,i2c-sda-delay = <100>; - samsung,i2c-max-bus-freq = <66000>; - }; - - i2c at 12CB0000 { - status = "okay"; - samsung,i2c-sda-delay = <100>; - samsung,i2c-max-bus-freq = <66000>; - }; - - i2c at 12CD0000 { - status = "okay"; - samsung,i2c-sda-delay = <100>; - samsung,i2c-max-bus-freq = <66000>; - }; - - i2c at 12CE0000 { - status = "okay"; - samsung,i2c-sda-delay = <100>; - samsung,i2c-max-bus-freq = <378000>; - - hdmiphy: hdmiphy at 38 { - compatible = "samsung,exynos4212-hdmiphy"; - reg = <0x38>; - }; - }; - - mmc at 12200000 { - num-slots = <1>; - supports-highspeed; - broken-cd; - card-detect-delay = <200>; - samsung,dw-mshc-ciu-div = <3>; - samsung,dw-mshc-sdr-timing = <2 3>; - samsung,dw-mshc-ddr-timing = <1 2>; - pinctrl-names = "default"; - pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_cd &sd0_bus4 &sd0_bus8>; - - slot at 0 { - reg = <0>; - bus-width = <8>; - }; - }; - - mmc at 12220000 { - num-slots = <1>; - supports-highspeed; - card-detect-delay = <200>; - samsung,dw-mshc-ciu-div = <3>; - samsung,dw-mshc-sdr-timing = <2 3>; - samsung,dw-mshc-ddr-timing = <1 2>; - pinctrl-names = "default"; - pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>; - - slot at 0 { - reg = <0>; - bus-width = <4>; - wp-gpios = <&gpc2 1 0>; - }; - }; - - mmc at 12230000 { - num-slots = <1>; - supports-highspeed; - broken-cd; - card-detect-delay = <200>; - samsung,dw-mshc-ciu-div = <3>; - samsung,dw-mshc-sdr-timing = <2 3>; - samsung,dw-mshc-ddr-timing = <1 2>; - /* See board-specific dts files for pin setup */ - - slot at 0 { - reg = <0>; - bus-width = <4>; - }; - }; - - spi_1: spi at 12d30000 { - status = "okay"; - samsung,spi-src-clk = <0>; - num-cs = <1>; - }; - - hdmi { - hpd-gpio = <&gpx3 7 0>; - pinctrl-names = "default"; - pinctrl-0 = <&hdmi_hpd_irq>; - phy = <&hdmiphy>; - ddc = <&i2c_2>; - }; - - gpio-keys { - compatible = "gpio-keys"; - - power { - label = "Power"; - gpios = <&gpx1 3 1>; - linux,code = <116>; /* KEY_POWER */ - gpio-key,wakeup; - }; - }; -};
arch/arm/boot/dts/exynos5250-snow.dts +145 -19
216 lines not on this page · raw message
Signature · 1 line
1.9.3
Re: [PATCH v5 02/10] ARM: dts: Fold exynos5250-cros-common into exynos5250-snow
Andreas,
Quoted 20 lines · Andreas F?rber
exynos5250-cros-common.dtsiwas meant for sharing common pieces across ChromeOS devices. This turned out premature, as several devices ended up in the common file that are not common after all. Since the remaining common ChromeOS pieces are fairly minor,exynos5250-cros-common.dtsiwas requested to be merged into the Snow device tree, sharing only the keyboard controller for now. This may be re-evaluated as both mature.Suggested-by Doug Anderson <[email protected]>Reviewed-by Tomasz Figa <[email protected]>Signed-off-by Andreas F?rber <[email protected]>---
v4 -> v5:
* Extended commit message (Tomasz Figa)v3 -> v4: Unchanged
v2 -> v3:
* Renamed subject to match Kukjin's style
* Rebased onto MMC pinctrl bug fix (Doug Anderson)
Quoted 5 lines
v2: New (Doug Anderson)
arch/arm/boot/dts/exynos5250-cros-common.dtsi | 164 -------------------------- arch/arm/boot/dts/exynos5250-snow.dts | 164 +++++++++++++++++++++++--- 2 files changed, 145 insertions(+), 183 deletions(-)
I'd suggest that this land sooner rather than later to avoid future conflicts.
Kukjin Kim
AppliedRe: [PATCH v5 02/10] ARM: dts: Fold exynos5250-cros-common into exynos5250-snow
Quoted 25 lines · Doug Anderson
Andreas,
Quoted 22 lines · Andreas F?rber
exynos5250-cros-common.dtsiwas meant for sharing common pieces across ChromeOS devices. This turned out premature, as several devices ended up in the common file that are not common after all. Since the remaining common ChromeOS pieces are fairly minor,exynos5250-cros-common.dtsiwas requested to be merged into the Snow device tree, sharing only the keyboard controller for now. This may be re-evaluated as both mature.Suggested-by Doug Anderson<[email protected]>Reviewed-by Tomasz Figa<[email protected]>Signed-off-by Andreas F?rber<[email protected]>---
v4 -> v5:
* Extended commit message (Tomasz Figa)v3 -> v4: Unchanged
v2 -> v3:
* Renamed subject to match Kukjin's style
* Rebased onto MMC pinctrl bug fix (Doug Anderson)v2: New (Doug Anderson)
Quoted 7 lines
Quoted 3 lines
arch/arm/boot/dts/exynos5250-cros-common.dtsi | 164 -------------------------- arch/arm/boot/dts/exynos5250-snow.dts | 164 +++++++++++++++++++++++--- 2 files changed, 145 insertions(+), 183 deletions(-)Reviewed-by Doug Anderson<[email protected]>I'd suggest that this land sooner rather than later to avoid future conflicts.
Applied, thanks.
- Kukjin
PATCH v5 3/10 ARM: dts: Clean up exynos5250-snow
In reply to Andreas FärberUse the new style of referencing inherited nodes and use symbolic names. Reorder one pinctrl node in GPIO order.
Goal is the alignment of all exynos5250 based device trees for comparison.
---
v4 -> v5:
* Introduced labels to consistently use new referencing style (Tomasz)
* Use IRQ_TYPE_* constants
* Use some more GPIO_ACTIVE_*
v3 -> v4: Unchanged
v3: New (Doug Anderson)
arch/arm/boot/dts/exynos5250-snow.dts | 291 +++++++++++++++++----------------- arch/arm/boot/dts/exynos5250.dtsi | 20 +-- 2 files changed, 155 insertions(+), 156 deletions(-)
arch/arm/boot/dts/exynos5250-snow.dts +145 -146
@@ -6,9 +6,12 @@ * 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. -*/ + */ /dts-v1/; +#include <dt-bindings/gpio/gpio.h> +#include <dt-bindings/interrupt-controller/irq.h> +#include <dt-bindings/input/input.h> #include "exynos5250.dtsi" / {
@@ -26,89 +29,19 @@ chosen { }; - rtc at 101E0000 { - status = "okay"; - }; - - pinctrl at 11400000 { - ec_irq: ec-irq { - samsung,pins = "gpx1-6"; - samsung,pin-function = <0>; - samsung,pin-pud = <0>; - samsung,pin-drv = <0>; - }; - - sd3_clk: sd3-clk { - samsung,pin-drv = <0>; - }; - - sd3_cmd: sd3-cmd { - samsung,pin-pud = <3>; - samsung,pin-drv = <0>; - }; - - sd3_bus4: sd3-bus-width4 { - samsung,pin-drv = <0>; - }; - - max98095_en: max98095-en { - samsung,pins = "gpx1-7"; - samsung,pin-function = <0>; - samsung,pin-pud = <3>; - samsung,pin-drv = <0>; - }; - - tps65090_irq: tps65090-irq { - samsung,pins = "gpx2-6"; - samsung,pin-function = <0>; - samsung,pin-pud = <0>; - samsung,pin-drv = <0>; - }; - - usb3_vbus_en: usb3-vbus-en { - samsung,pins = "gpx2-7"; - samsung,pin-function = <1>; - samsung,pin-pud = <0>; - samsung,pin-drv = <0>; - }; - - hdmi_hpd_irq: hdmi-hpd-irq { - samsung,pins = "gpx3-7"; - samsung,pin-function = <0>; - samsung,pin-pud = <1>; - samsung,pin-drv = <0>; - }; - }; - - pinctrl at 13400000 { - arb_their_claim: arb-their-claim { - samsung,pins = "gpe0-4"; - samsung,pin-function = <0>; - samsung,pin-pud = <3>; - samsung,pin-drv = <0>; - }; - - arb_our_claim: arb-our-claim { - samsung,pins = "gpf0-3"; - samsung,pin-function = <1>; - samsung,pin-pud = <0>; - samsung,pin-drv = <0>; - }; - }; - gpio-keys { compatible = "gpio-keys"; power { label = "Power"; - gpios = <&gpx1 3 1>; - linux,code = <116>; /* KEY_POWER */ + gpios = <&gpx1 3 GPIO_ACTIVE_LOW>; + linux,code = <KEY_POWER>; gpio-key,wakeup; }; lid-switch { label = "Lid"; - gpios = <&gpx3 5 1>; + gpios = <&gpx3 5 GPIO_ACTIVE_LOW>; linux,input-type = <5>; /* EV_SW */ linux,code = <0>; /* SW_LID */ debounce-interval = <1>;
@@ -129,8 +62,8 @@ i2c-parent = <&{/i2c@12CA0000}>; - our-claim-gpio = <&gpf0 3 1>; - their-claim-gpios = <&gpe0 4 1>; + our-claim-gpio = <&gpf0 3 GPIO_ACTIVE_LOW>; + their-claim-gpios = <&gpe0 4 GPIO_ACTIVE_LOW>; slew-delay-us = <10>; wait-retry-us = <3000>; wait-free-us = <50000>;
@@ -153,7 +86,7 @@ cros_ec: embedded-controller { compatible = "google,cros-ec-i2c"; reg = <0x1e>; - interrupts = <6 0>; + interrupts = <6 IRQ_TYPE_NONE>; interrupt-parent = <&gpx1>; pinctrl-names = "default"; pinctrl-0 = <&ec_irq>;
@@ -239,19 +172,6 @@ }; }; - i2c at 12CD0000 { - max98095: codec at 11 { - compatible = "maxim,max98095"; - reg = <0x11>; - pinctrl-0 = <&max98095_en>; - pinctrl-names = "default"; - }; - }; - - i2s0: i2s at 03830000 { - status = "okay"; - }; - sound { compatible = "google,snow-audio-max98095";
@@ -265,20 +185,12 @@ regulator-name = "P5.0V_USB3CON"; regulator-min-microvolt = <5000000>; regulator-max-microvolt = <5000000>; - gpio = <&gpx2 7 0>; + gpio = <&gpx2 7 GPIO_ACTIVE_HIGH>; pinctrl-names = "default"; pinctrl-0 = <&usb3_vbus_en>; enable-active-high; }; - phy at 12100000 { - vbus-supply = <&usb3_vbus_reg>; - }; - - usb at 12110000 { - samsung,vbus-gpio = <&gpx1 1 0>; - }; - fixed-rate-clocks { xxti { compatible = "samsung,clock-xxti";
@@ -286,19 +198,7 @@ }; }; - hdmi { - hpd-gpio = <&gpx3 7 0>; - pinctrl-names = "default"; - pinctrl-0 = <&hdmi_hpd_irq>; - phy = <&hdmiphy>; - ddc = <&i2c_2>; - hdmi-en-supply = <&tps65090_fet7>; - vdd-supply = <&ldo8_reg>; - vdd_osc-supply = <&ldo10_reg>; - vdd_pll-supply = <&ldo8_reg>; - }; - - backlight { + backlight: backlight { compatible = "pwm-backlight"; pwms = <&pwm 0 1000000 0>; brightness-levels = <0 100 500 1000 1500 2000 2500 2800>;
@@ -306,42 +206,58 @@ pinctrl-0 = <&pwm0_out>; pinctrl-names = "default"; }; +}; - fimd at 14400000 { - status = "okay"; - samsung,invert-vclk; - }; - - dp-controller at 145B0000 { - status = "okay"; - pinctrl-names = "default"; - pinctrl-0 = <&dp_hpd>; - samsung,color-space = <0>; - samsung,dynamic-range = <0>; - samsung,ycbcr-coeff = <0>; - samsung,color-depth = <1>; - samsung,link-rate = <0x0a>; - samsung,lane-count = <2>; - samsung,hpd-gpio = <&gpx0 7 0>; - - display-timings { - native-mode = <&timing1>; - - timing1: timing at 1 { - clock-frequency = <70589280>; - hactive = <1366>; - vactive = <768>; - hfront-porch = <40>; - hback-porch = <40>; - hsync-len = <32>; - vback-porch = <10>; - vfront-porch = <12>; - vsync-len = <6>; - }; +&dp { + status = "okay"; + pinctrl-names = "default"; + pinctrl-0 = <&dp_hpd>; + samsung,color-space = <0>; + samsung,dynamic-range = <0>; + samsung,ycbcr-coeff = <0>; + samsung,color-depth = <1>; + samsung,link-rate = <0x0a>; + samsung,lane-count = <2>; + samsung,hpd-gpio = <&gpx0 7 GPIO_ACTIVE_HIGH>; + + display-timings { + native-mode = <&timing1>; + + timing1: timing at 1 { + clock-frequency = <70589280>; + hactive = <1366>; + vactive = <768>; + hfront-porch = <40>; + hback-porch = <40>; + hsync-len = <32>; + vback-porch = <10>; + vfront-porch = <12>; + vsync-len = <6>; }; }; }; +&ehci { + samsung,vbus-gpio = <&gpx1 1 GPIO_ACTIVE_HIGH>; +}; + +&fimd { + status = "okay"; + samsung,invert-vclk; +}; + +&hdmi { + hpd-gpio = <&gpx3 7 GPIO_ACTIVE_HIGH>; + pinctrl-names = "default"; + pinctrl-0 = <&hdmi_hpd_irq>; + phy = <&hdmiphy>; + ddc = <&i2c_2>; + hdmi-en-supply = <&tps65090_fet7>; + vdd-supply = <&ldo8_reg>; + vdd_osc-supply = <&ldo10_reg>; + vdd_pll-supply = <&ldo8_reg>; +}; + &i2c_0 { status = "okay"; samsung,i2c-sda-delay = <100>;
@@ -350,7 +266,7 @@ max77686 at 09 { compatible = "maxim,max77686"; interrupt-parent = <&gpx3>; - interrupts = <2 0>; + interrupts = <2 IRQ_TYPE_NONE>; pinctrl-names = "default"; pinctrl-0 = <&max77686_irq>; wakeup-source;
@@ -500,7 +416,7 @@ trackpad { reg = <0x67>; compatible = "cypress,cyapa"; - interrupts = <2 0>; + interrupts = <2 IRQ_TYPE_NONE>; interrupt-parent = <&gpx1>; wakeup-source; };
@@ -547,6 +463,13 @@ status = "okay"; samsung,i2c-sda-delay = <100>; samsung,i2c-max-bus-freq = <66000>; + + max98095: codec at 11 { + compatible = "maxim,max98095"; + reg = <0x11>; + pinctrl-0 = <&max98095_en>; + pinctrl-names = "default"; + }; }; &i2c_8 {
@@ -560,6 +483,10 @@ }; }; +&i2s0 { + status = "okay"; +}; + &mmc_0 { status = "okay"; num-slots = <1>;
@@ -592,7 +519,7 @@ slot at 0 { reg = <0>; bus-width = <4>; - wp-gpios = <&gpc2 1 0>; + wp-gpios = <&gpc2 1 GPIO_ACTIVE_HIGH>; }; };
@@ -619,12 +546,80 @@ }; &pinctrl_0 { + ec_irq: ec-irq { + samsung,pins = "gpx1-6"; + samsung,pin-function = <0>; + samsung,pin-pud = <0>; + samsung,pin-drv = <0>; + }; + + max98095_en: max98095-en { + samsung,pins = "gpx1-7"; + samsung,pin-function = <0>; + samsung,pin-pud = <3>; + samsung,pin-drv = <0>; + }; + + tps65090_irq: tps65090-irq { + samsung,pins = "gpx2-6"; + samsung,pin-function = <0>; + samsung,pin-pud = <0>; + samsung,pin-drv = <0>; + }; + + usb3_vbus_en: usb3-vbus-en { + samsung,pins = "gpx2-7"; + samsung,pin-function = <1>; + samsung,pin-pud = <0>; + samsung,pin-drv = <0>; + }; + max77686_irq: max77686-irq { samsung,pins = "gpx3-2"; samsung,pin-function = <0>; samsung,pin-pud = <0>; samsung,pin-drv = <0>; }; + + hdmi_hpd_irq: hdmi-hpd-irq { + samsung,pins = "gpx3-7"; + samsung,pin-function = <0>; + samsung,pin-pud = <1>; + samsung,pin-drv = <0>; + }; +}; + +&pinctrl_1 { + arb_their_claim: arb-their-claim { + samsung,pins = "gpe0-4"; + samsung,pin-function = <0>; + samsung,pin-pud = <3>; + samsung,pin-drv = <0>; + }; + + arb_our_claim: arb-our-claim { + samsung,pins = "gpf0-3"; + samsung,pin-function = <1>; + samsung,pin-pud = <0>; + samsung,pin-drv = <0>; + }; +}; + +&rtc { + status = "okay"; +}; + +&sd3_clk { + samsung,pin-drv = <0>; +}; + +&sd3_cmd { + samsung,pin-pud = <3>; + samsung,pin-drv = <0>; +}; + +&sd3_bus4 { + samsung,pin-drv = <0>; }; &spi_1 {
@@ -633,4 +628,8 @@ num-cs = <1>; }; +&usbdrd_phy { + vbus-supply = <&usb3_vbus_reg>; +}; + #include "cros-ec-keyboard.dtsi"
arch/arm/boot/dts/exynos5250.dtsi +10 -10
@@ -224,7 +224,7 @@ clock-names = "mfc"; }; - rtc at 101E0000 { + rtc: rtc at 101E0000 { clocks = <&clock CLK_RTC>; clock-names = "rtc"; status = "disabled";
@@ -238,22 +238,22 @@ clock-names = "tmu_apbif"; }; - serial at 12C00000 { + uart0: serial at 12C00000 { clocks = <&clock CLK_UART0>, <&clock CLK_SCLK_UART0>; clock-names = "uart", "clk_uart_baud0"; }; - serial at 12C10000 { + uart1: serial at 12C10000 { clocks = <&clock CLK_UART1>, <&clock CLK_SCLK_UART1>; clock-names = "uart", "clk_uart_baud0"; }; - serial at 12C20000 { + uart2: serial at 12C20000 { clocks = <&clock CLK_UART2>, <&clock CLK_SCLK_UART2>; clock-names = "uart", "clk_uart_baud0"; }; - serial at 12C30000 { + uart3: serial at 12C30000 { clocks = <&clock CLK_UART3>, <&clock CLK_SCLK_UART3>; clock-names = "uart", "clk_uart_baud0"; };
@@ -570,7 +570,7 @@ #phy-cells = <1>; }; - usb at 12110000 { + ehci: usb at 12110000 { compatible = "samsung,exynos4210-ehci"; reg = <0x12110000 0x100>; interrupts = <0 71 0>;
@@ -585,7 +585,7 @@ }; }; - usb at 12120000 { + ohci: usb at 12120000 { compatible = "samsung,exynos4210-ohci"; reg = <0x12120000 0x100>; interrupts = <0 71 0>;
@@ -722,7 +722,7 @@ clock-names = "gscl"; }; - hdmi { + hdmi: hdmi { compatible = "samsung,exynos4212-hdmi"; reg = <0x14530000 0x70000>; interrupts = <0 95 0>;
@@ -748,14 +748,14 @@ #phy-cells = <0>; }; - dp-controller at 145B0000 { + dp: dp-controller at 145B0000 { clocks = <&clock CLK_DP>; clock-names = "dp"; phys = <&dp_phy>; phy-names = "dp"; }; - fimd at 14400000 { + fimd: fimd at 14400000 { clocks = <&clock CLK_SCLK_FIMD1>, <&clock CLK_FIMD1>; clock-names = "sclk_fimd", "fimd"; };
Signature · 1 line
1.9.3
Re: [PATCH v5 03/10] ARM: dts: Clean up exynos5250-snow
Andreas,
Quoted 13 lines · Andreas F?rber
Use the new style of referencing inherited nodes and use symbolic names. Reorder one pinctrl node in GPIO order.
Goal is the alignment of all exynos5250 based device trees for comparison.
Suggested-by Doug Anderson <[email protected]>Signed-off-by Andreas F?rber <[email protected]>---
v4 -> v5:
* Introduced labels to consistently use new referencing style (Tomasz)
* Use IRQ_TYPE_* constants
* Use some more GPIO_ACTIVE_*
Quoted 6 lines
v3 -> v4: Unchanged
v3: New (Doug Anderson)
arch/arm/boot/dts/exynos5250-snow.dts | 291 +++++++++++++++++----------------- arch/arm/boot/dts/exynos5250.dtsi | 20 +--
As much as possible it's nice to touch the main exynos dtsi file and specific board files in different patches. Among other things it makes backporting the patch and resolving merge conflicts easier (if someone doesn't care about snow they could just pick up the main dtsi, for instance).
I'm not a total stickler and I'd love to see this land quickly to avoid conflicts, though...
arch/arm/boot/dts/exynos5250-snow.dts line 621
Quoted 10 lines
+&sd3_clk {
arch/arm/boot/dts/exynos5250-snow.dts +9
-0+ samsung,pin-drv = <0>; +}; + +&sd3_cmd { + samsung,pin-pud = <3>; + samsung,pin-drv = <0>; +}; + +&sd3_bus4 {
Itty bitty bitty nit that "bus" sorts alphabetically above "clk". ;) Maybe Kukjin would be willing to sort these when he applies?
Thank you for all your hard work on this one. Things look MUCH MUCH nicer! I did a pretty thorough review of your changes and it all looks good.
Re: [PATCH v5 03/10] ARM: dts: Clean up exynos5250-snow
Am 01.08.2014 22:24, schrieb Doug Anderson:
Quoted 33 lines
Andreas,
Quoted 13 lines · Andreas F?rber
Use the new style of referencing inherited nodes and use symbolic names. Reorder one pinctrl node in GPIO order.
Goal is the alignment of all exynos5250 based device trees for comparison.
Suggested-by Doug Anderson <[email protected]>Signed-off-by Andreas F?rber <[email protected]>---
v4 -> v5:
* Introduced labels to consistently use new referencing style (Tomasz)
* Use IRQ_TYPE_* constants
* Use some more GPIO_ACTIVE_*Quoted 6 lines
v3 -> v4: Unchanged
v3: New (Doug Anderson)
arch/arm/boot/dts/exynos5250-snow.dts | 291 +++++++++++++++++----------------- arch/arm/boot/dts/exynos5250.dtsi | 20 +--As much as possible it's nice to touch the main exynos dtsi file and specific board files in different patches. Among other things it makes backporting the patch and resolving merge conflicts easier (if someone doesn't care about snow they could just pick up the main dtsi, for instance).
I'm not a total stickler and I'd love to see this land quickly to avoid conflicts, though...
Quoted 12 lines
arch/arm/boot/dts/exynos5250-snow.dts line 621
Quoted 10 lines
+&sd3_clk {
arch/arm/boot/dts/exynos5250-snow.dts +9
-0+ samsung,pin-drv = <0>; +}; + +&sd3_cmd { + samsung,pin-pud = <3>; + samsung,pin-drv = <0>; +}; + +&sd3_bus4 {Itty bitty bitty nit that "bus" sorts alphabetically above "clk". ;)
True. I guess I just reused the original order from within pinctrl.
Quoted 8 lines
Maybe Kukjin would be willing to sort these when he applies?
Thank you for all your hard work on this one. Things look MUCH MUCH nicer! I did a pretty thorough review of your changes and it all looks good.
Reviewed-by Doug Anderson <[email protected]>
I need to respin anyway for a .dtsi label, so I can factor this out while at it.
Patches 1-2 could meanwhile already be applied by Kukjin.
Thanks,
Andreas
Signature · 2 lines
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 N?rnberg, Germany GF: Jeff Hawn, Jennifer Guild, Felix Imend?rffer; HRB 16746 AG N?rnberg
PATCH v5 4/10 ARM: dts: Fill in bootargs for exynos5250-snow
In reply to Andreas Färberexynos5250-cros-common.dtsi had an empty /chosen node. Fill in exemplary boot arguments.
---
v5: New
Cleanup for /chosen node moved into -snow.dts.
arch/arm/boot/dts/exynos5250-snow.dts | 1 + 1 file changed, 1 insertion(+)
arch/arm/boot/dts/exynos5250-snow.dts +1 -0
@@ -27,6 +27,7 @@ }; chosen { + bootargs = "console=tty1"; }; gpio-keys {
Signature · 1 line
1.9.3
Re: [PATCH v5 04/10] ARM: dts: Fill in bootargs for exynos5250-snow
Hi,
Quoted 16 lines · Andreas F?rber
exynos5250-cros-common.dtsihad an empty /chosen node. Fill in exemplary boot arguments.Signed-off-by Andreas F?rber <[email protected]>---
v5: New
Cleanup for /chosen node moved into-snow.dts.arch/arm/boot/dts/exynos5250-snow.dts | 1 + 1 file changed, 1 insertion(+)arch/arm/boot/dts/exynos5250-snow.dts +0
-0
arch/arm/boot/dts/exynos5250-snow.dts line 30
Quoted 4 lines
arch/arm/boot/dts/exynos5250-snow.dts +1
-0@@ -27,6 +27,7 @@ }; chosen { + bootargs = "console=tty1";
As mentioned earlier, I don't think this is a particularly useful change. Just this boot argument is not enough to boot with anyway, so listing it doesn't really help anyone. In theory you could make some assertion about what the "most popular" boot device and filesystem is, but it seems unlikely to cover the majority of the cases.
I won't NAK this change myself, but I certainly won't push for it.
-Doug
Re: [PATCH v5 04/10] ARM: dts: Fill in bootargs for exynos5250-snow
Hi Doug,
Am 01.08.2014 22:28, schrieb Doug Anderson:
Quoted 28 lines · Andreas F?rber
Quoted 16 lines
exynos5250-cros-common.dtsihad an empty /chosen node. Fill in exemplary boot arguments.Signed-off-by Andreas F?rber <[email protected]>---
v5: New
Cleanup for /chosen node moved into-snow.dts.arch/arm/boot/dts/exynos5250-snow.dts | 1 + 1 file changed, 1 insertion(+)arch/arm/boot/dts/exynos5250-snow.dts +0
-0arch/arm/boot/dts/exynos5250-snow.dts line 30
Quoted 4 lines
arch/arm/boot/dts/exynos5250-snow.dts +1
-0@@ -27,6 +27,7 @@ }; chosen { + bootargs = "console=tty1";As mentioned earlier, I don't think this is a particularly useful change. Just this boot argument is not enough to boot with anyway, so listing it doesn't really help anyone. In theory you could make some assertion about what the "most popular" boot device and filesystem is, but it seems unlikely to cover the majority of the cases.
Quoted 1 line
I won't NAK this change myself, but I certainly won't push for it.
This patch should be entirely optional.
I believe you said it wasn't necessary because the bootloader supplies it. My point is that someone needs to know what to put into the bootargs (setenv / boot.scr / uEnv.txt) - knowing whether it's ttySAC3 vs. ttySAC2 vs. ttyS0 etc. has been pretty handy for me. In this case, Snow and Spring use an identical console, so not sure if it might be tty2 or something elsewhere?
My question of what to use for linux,stdout-path (which was elsewhere mentioned as successor to bootargs in that regard) remained unanswered. Should it point to the dp-controller node or what?
Andreas
Signature · 2 lines
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 N?rnberg, Germany GF: Jeff Hawn, Jennifer Guild, Felix Imend?rffer; HRB 16746 AG N?rnberg
Re: [PATCH v5 04/10] ARM: dts: Fill in bootargs for exynos5250-snow
Andreas,
Quoted 33 lines · Andreas F?rber
Hi Doug,
Am 01.08.2014 22:28, schrieb Doug Anderson:
Quoted 28 lines · Andreas F?rber
Quoted 16 lines
exynos5250-cros-common.dtsihad an empty /chosen node. Fill in exemplary boot arguments.Signed-off-by Andreas F?rber <[email protected]>---
v5: New
Cleanup for /chosen node moved into-snow.dts.arch/arm/boot/dts/exynos5250-snow.dts | 1 + 1 file changed, 1 insertion(+)arch/arm/boot/dts/exynos5250-snow.dts +0
-0arch/arm/boot/dts/exynos5250-snow.dts line 30
Quoted 4 lines
arch/arm/boot/dts/exynos5250-snow.dts +1
-0@@ -27,6 +27,7 @@ }; chosen { + bootargs = "console=tty1";As mentioned earlier, I don't think this is a particularly useful change. Just this boot argument is not enough to boot with anyway, so listing it doesn't really help anyone. In theory you could make some assertion about what the "most popular" boot device and filesystem is, but it seems unlikely to cover the majority of the cases.
Quoted 1 line
I won't NAK this change myself, but I certainly won't push for it.
Quoted 8 lines
This patch should be entirely optional.
I believe you said it wasn't necessary because the bootloader supplies it. My point is that someone needs to know what to put into the bootargs (setenv / boot.scr / uEnv.txt) - knowing whether it's ttySAC3 vs. ttySAC2 vs. ttyS0 etc. has been pretty handy for me. In this case, Snow and Spring use an identical console, so not sure if it might be tty2 or something elsewhere?
...but in your case you're not including any of that info. tty1 is a LCD console, isn't it?
Quoted 3 lines
My question of what to use for linux,stdout-path (which was elsewhere mentioned as successor to bootargs in that regard) remained unanswered. Should it point to the dp-controller node or what?
No idea since I've never heard of linux,stdout-path other than your emails. Maybe someone else can chime in and I'll learn something. ;)
-Doug
PATCH v5 5/10 ARM: dts: Move dp_hpd from exynos5250 into smdk5250 and snow
In reply to Andreas FärberSpring uses a different GPIO, so this is not a generic SoC piece.
---
v5: New (Tomasz Figa)
Frees dp_hpd for Spring.
arch/arm/boot/dts/exynos5250-pinctrl.dtsi | 7 ------- arch/arm/boot/dts/exynos5250-smdk5250.dts | 9 +++++++++ arch/arm/boot/dts/exynos5250-snow.dts | 7 +++++++ 3 files changed, 16 insertions(+), 7 deletions(-)
arch/arm/boot/dts/exynos5250-pinctrl.dtsi +0 -7
@@ -581,13 +581,6 @@ samsung,pin-pud = <0>; samsung,pin-drv = <0>; }; - - dp_hpd: dp_hpd { - samsung,pins = "gpx0-7"; - samsung,pin-function = <3>; - samsung,pin-pud = <0>; - samsung,pin-drv = <0>; - }; }; pinctrl at 13400000 {
arch/arm/boot/dts/exynos5250-smdk5250.dts +9 -0
@@ -414,3 +414,12 @@ }; }; }; + +&pinctrl_0 { + dp_hpd: dp_hpd { + samsung,pins = "gpx0-7"; + samsung,pin-function = <3>; + samsung,pin-pud = <0>; + samsung,pin-drv = <0>; + }; +};
arch/arm/boot/dts/exynos5250-snow.dts +7 -0
@@ -547,6 +547,13 @@ }; &pinctrl_0 { + dp_hpd: dp_hpd { + samsung,pins = "gpx0-7"; + samsung,pin-function = <3>; + samsung,pin-pud = <0>; + samsung,pin-drv = <0>; + }; + ec_irq: ec-irq { samsung,pins = "gpx1-6"; samsung,pin-function = <0>;
Signature · 1 line
1.9.3
Re: [PATCH v5 05/10] ARM: dts: Move dp_hpd from exynos5250 into smdk5250 and snow
Andreas,
Quoted 53 lines · Andreas F?rber
Spring uses a different GPIO, so this is not a generic SoC piece.
Suggested-by Tomasz Figa <[email protected]>Signed-off-by Andreas F?rber <[email protected]>---
v5: New (Tomasz Figa)
Freesdp_hpdfor Spring.arch/arm/boot/dts/exynos5250-pinctrl.dtsi | 7 ------- arch/arm/boot/dts/exynos5250-smdk5250.dts | 9 +++++++++ arch/arm/boot/dts/exynos5250-snow.dts | 7 +++++++ 3 files changed, 16 insertions(+), 7 deletions(-)arch/arm/boot/dts/exynos5250-pinctrl.dtsi +0
-7@@ -581,13 +581,6 @@ samsung,pin-pud = <0>; samsung,pin-drv = <0>; }; - - dp_hpd: dp_hpd { - samsung,pins = "gpx0-7"; - samsung,pin-function = <3>; - samsung,pin-pud = <0>; - samsung,pin-drv = <0>; - }; }; pinctrl at 13400000 {arch/arm/boot/dts/exynos5250-smdk5250.dts +9
-0@@ -414,3 +414,12 @@ }; }; }; + +&pinctrl_0 { + dp_hpd: dp_hpd { + samsung,pins = "gpx0-7"; + samsung,pin-function = <3>; + samsung,pin-pud = <0>; + samsung,pin-drv = <0>; + }; +};arch/arm/boot/dts/exynos5250-snow.dts +0
-0
arch/arm/boot/dts/exynos5250-snow.dts line 556
Quoted 10 lines
arch/arm/boot/dts/exynos5250-snow.dts +7
-0@@ -547,6 +547,13 @@ }; &pinctrl_0 { + dp_hpd: dp_hpd { + samsung,pins = "gpx0-7"; + samsung,pin-function = <3>; + samsung,pin-pud = <0>; + samsung,pin-drv = <0>; + }; +
NAK. dp_hpd is a generic SoC piece. Pin function 0 and 1 are GPIOs. Pin function 3 is special function. This pin _is_ the hot plug detect pin for display port. When it's set as special function 3 it goes straight into the hot plug logic of the display port controller.
Spring may have had its reasons to detect hot plug events on a GPIO instead of using this pin, but that doesn't make this pin any less the "hot plug pin".
-Doug
Re: [PATCH v5 05/10] ARM: dts: Move dp_hpd from exynos5250 into smdk5250 and snow
Doug,
Am 01.08.2014 22:33, schrieb Doug Anderson:
Quoted 70 lines · Andreas F?rber
Quoted 53 lines
Spring uses a different GPIO, so this is not a generic SoC piece.
Suggested-by Tomasz Figa <[email protected]>Signed-off-by Andreas F?rber <[email protected]>---
v5: New (Tomasz Figa)
Freesdp_hpdfor Spring.arch/arm/boot/dts/exynos5250-pinctrl.dtsi | 7 ------- arch/arm/boot/dts/exynos5250-smdk5250.dts | 9 +++++++++ arch/arm/boot/dts/exynos5250-snow.dts | 7 +++++++ 3 files changed, 16 insertions(+), 7 deletions(-)arch/arm/boot/dts/exynos5250-pinctrl.dtsi +0
-7@@ -581,13 +581,6 @@ samsung,pin-pud = <0>; samsung,pin-drv = <0>; }; - - dp_hpd: dp_hpd { - samsung,pins = "gpx0-7"; - samsung,pin-function = <3>; - samsung,pin-pud = <0>; - samsung,pin-drv = <0>; - }; }; pinctrl at 13400000 {arch/arm/boot/dts/exynos5250-smdk5250.dts +9
-0@@ -414,3 +414,12 @@ }; }; }; + +&pinctrl_0 { + dp_hpd: dp_hpd { + samsung,pins = "gpx0-7"; + samsung,pin-function = <3>; + samsung,pin-pud = <0>; + samsung,pin-drv = <0>; + }; +};arch/arm/boot/dts/exynos5250-snow.dts +0
-0arch/arm/boot/dts/exynos5250-snow.dts line 556
Quoted 10 lines
arch/arm/boot/dts/exynos5250-snow.dts +7
-0@@ -547,6 +547,13 @@ }; &pinctrl_0 { + dp_hpd: dp_hpd { + samsung,pins = "gpx0-7"; + samsung,pin-function = <3>; + samsung,pin-pud = <0>; + samsung,pin-drv = <0>; + }; +NAK.
dp_hpdis a generic SoC piece. Pin function 0 and 1 are GPIOs. Pin function 3 is special function. This pin _is_ the hot plug detect pin for display port. When it's set as special function 3 it goes straight into the hot plug logic of the display port controller.
Quoted 3 lines
Spring may have had its reasons to detect hot plug events on a GPIO instead of using this pin, but that doesn't make this pin any less the "hot plug pin".
Please advise how to handle it then: Should there be two different pinctrl entries (if so, how should it be named?), or should spring override the generic entry? As I reported, 3.8 has only one dp-hpd pinctrl entry, so I dropped the dp-hpd-gpio naming.
Andreas
Signature · 2 lines
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 N?rnberg, Germany GF: Jeff Hawn, Jennifer Guild, Felix Imend?rffer; HRB 16746 AG N?rnberg
Re: [PATCH v5 05/10] ARM: dts: Move dp_hpd from exynos5250 into smdk5250 and snow
Quoted 73 lines · Andreas F?rber
Doug,
Am 01.08.2014 22:33, schrieb Doug Anderson:
Quoted 70 lines · Andreas F?rber
Quoted 53 lines
Spring uses a different GPIO, so this is not a generic SoC piece.
Suggested-by Tomasz Figa <[email protected]>Signed-off-by Andreas F?rber <[email protected]>---
v5: New (Tomasz Figa)
Freesdp_hpdfor Spring.arch/arm/boot/dts/exynos5250-pinctrl.dtsi | 7 ------- arch/arm/boot/dts/exynos5250-smdk5250.dts | 9 +++++++++ arch/arm/boot/dts/exynos5250-snow.dts | 7 +++++++ 3 files changed, 16 insertions(+), 7 deletions(-)arch/arm/boot/dts/exynos5250-pinctrl.dtsi +0
-7@@ -581,13 +581,6 @@ samsung,pin-pud = <0>; samsung,pin-drv = <0>; }; - - dp_hpd: dp_hpd { - samsung,pins = "gpx0-7"; - samsung,pin-function = <3>; - samsung,pin-pud = <0>; - samsung,pin-drv = <0>; - }; }; pinctrl at 13400000 {arch/arm/boot/dts/exynos5250-smdk5250.dts +9
-0@@ -414,3 +414,12 @@ }; }; }; + +&pinctrl_0 { + dp_hpd: dp_hpd { + samsung,pins = "gpx0-7"; + samsung,pin-function = <3>; + samsung,pin-pud = <0>; + samsung,pin-drv = <0>; + }; +};arch/arm/boot/dts/exynos5250-snow.dts +0
-0arch/arm/boot/dts/exynos5250-snow.dts line 556
Quoted 10 lines
arch/arm/boot/dts/exynos5250-snow.dts +7
-0@@ -547,6 +547,13 @@ }; &pinctrl_0 { + dp_hpd: dp_hpd { + samsung,pins = "gpx0-7"; + samsung,pin-function = <3>; + samsung,pin-pud = <0>; + samsung,pin-drv = <0>; + }; +NAK.
dp_hpdis a generic SoC piece. Pin function 0 and 1 are GPIOs. Pin function 3 is special function. This pin _is_ the hot plug detect pin for display port. When it's set as special function 3 it goes straight into the hot plug logic of the display port controller.
Quoted 6 lines
Quoted 3 lines
Spring may have had its reasons to detect hot plug events on a GPIO instead of using this pin, but that doesn't make this pin any less the "hot plug pin".
Please advise how to handle it then: Should there be two different pinctrl entries (if so, how should it be named?),
IMHO this is the right way. Just name the GPIO variant dp_hpd_gpio.
Best regards,
Tomasz
Re: [PATCH v5 05/10] ARM: dts: Move dp_hpd from exynos5250 into smdk5250 and snow
Quoted 72 lines · Tomasz Figa
Quoted 71 lines · Andreas F?rber
Am 01.08.2014 22:33, schrieb Doug Anderson:
Quoted 70 lines · Andreas F?rber
Quoted 53 lines
Spring uses a different GPIO, so this is not a generic SoC piece.
Suggested-by Tomasz Figa <[email protected]>Signed-off-by Andreas F?rber <[email protected]>---
v5: New (Tomasz Figa)
Freesdp_hpdfor Spring.arch/arm/boot/dts/exynos5250-pinctrl.dtsi | 7 ------- arch/arm/boot/dts/exynos5250-smdk5250.dts | 9 +++++++++ arch/arm/boot/dts/exynos5250-snow.dts | 7 +++++++ 3 files changed, 16 insertions(+), 7 deletions(-)arch/arm/boot/dts/exynos5250-pinctrl.dtsi +0
-7@@ -581,13 +581,6 @@ samsung,pin-pud = <0>; samsung,pin-drv = <0>; }; - - dp_hpd: dp_hpd { - samsung,pins = "gpx0-7"; - samsung,pin-function = <3>; - samsung,pin-pud = <0>; - samsung,pin-drv = <0>; - }; }; pinctrl at 13400000 {arch/arm/boot/dts/exynos5250-smdk5250.dts +9
-0@@ -414,3 +414,12 @@ }; }; }; + +&pinctrl_0 { + dp_hpd: dp_hpd { + samsung,pins = "gpx0-7"; + samsung,pin-function = <3>; + samsung,pin-pud = <0>; + samsung,pin-drv = <0>; + }; +};arch/arm/boot/dts/exynos5250-snow.dts +0
-0arch/arm/boot/dts/exynos5250-snow.dts line 556
Quoted 10 lines
arch/arm/boot/dts/exynos5250-snow.dts +7
-0@@ -547,6 +547,13 @@ }; &pinctrl_0 { + dp_hpd: dp_hpd { + samsung,pins = "gpx0-7"; + samsung,pin-function = <3>; + samsung,pin-pud = <0>; + samsung,pin-drv = <0>; + }; +NAK.
dp_hpdis a generic SoC piece. Pin function 0 and 1 are GPIOs. Pin function 3 is special function. This pin _is_ the hot plug detect pin for display port. When it's set as special function 3 it goes straight into the hot plug logic of the display port controller.
Quoted 8 lines
Quoted 6 lines
Quoted 3 lines
Spring may have had its reasons to detect hot plug events on a GPIO instead of using this pin, but that doesn't make this pin any less the "hot plug pin".
Please advise how to handle it then: Should there be two different pinctrl entries (if so, how should it be named?),
IMHO this is the right way. Just name the GPIO variant
dp_hpd_gpio.
Hi Andreas F?rber,
I agree with Tomasz Figa and Doug Anderson.
Please refer to the following.
1. case: Standard HPD pin is used. (smdk5420)arch/arm/boot/dts/exynos5420-pinctrl.dts
pinctrl at 13400000 {
dp_hpd: dp_hpd {
samsung,pins = "gpx0-7";
samsung,pin-function = <3>;
samsung,pin-pud = <0>;
samsung,pin-drv = <0>;
};
arch/arm/boot/dts/exynos5420-smdk5420.dts
dp-controller at 145B0000 {
pinctrl-names = "default";
pinctrl-0 = <&dp_hpd>;
...2. case: non-standard HPD pin such as GPIO is used. (peach pit) arch/arm/boot/dts/exynos5420-peach-pit.dts
pinctrl at 13400000 {
dp_hpd_gpio: dp_hpd_gpio {
samsung,pins = "gpx2-6";
samsung,pin-function = <0>;
samsung,pin-pud = <3>;
samsung,pin-drv = <0>;
};
dp-controller at 145B0000 {
pinctrl-names = "default";
pinctrl-0 = <&dp_hpd_gpio>;
...
samsung,hpd-gpio = <&gpx2 6 0>;So, you need to follow the second case.
"dp_hpd_gpio" can be used for Spring board.
Best regards,
Jingoo Han
Re: [PATCH v5 05/10] ARM: dts: Move dp_hpd from exynos5250 into smdk5250 and snow
Hi Jingoo,
Am 05.08.2014 13:16, schrieb Jingoo Han:
Quoted 117 lines · Tomasz Figa
Quoted 72 lines · Andreas F?rber
Quoted 71 lines
Am 01.08.2014 22:33, schrieb Doug Anderson:
Quoted 70 lines · Andreas F?rber
Quoted 53 lines
Spring uses a different GPIO, so this is not a generic SoC piece.
Suggested-by Tomasz Figa <[email protected]>Signed-off-by Andreas F?rber <[email protected]>---
v5: New (Tomasz Figa)
Freesdp_hpdfor Spring.arch/arm/boot/dts/exynos5250-pinctrl.dtsi | 7 ------- arch/arm/boot/dts/exynos5250-smdk5250.dts | 9 +++++++++ arch/arm/boot/dts/exynos5250-snow.dts | 7 +++++++ 3 files changed, 16 insertions(+), 7 deletions(-)arch/arm/boot/dts/exynos5250-pinctrl.dtsi +0
-7@@ -581,13 +581,6 @@ samsung,pin-pud = <0>; samsung,pin-drv = <0>; }; - - dp_hpd: dp_hpd { - samsung,pins = "gpx0-7"; - samsung,pin-function = <3>; - samsung,pin-pud = <0>; - samsung,pin-drv = <0>; - }; }; pinctrl at 13400000 {arch/arm/boot/dts/exynos5250-smdk5250.dts +9
-0@@ -414,3 +414,12 @@ }; }; }; + +&pinctrl_0 { + dp_hpd: dp_hpd { + samsung,pins = "gpx0-7"; + samsung,pin-function = <3>; + samsung,pin-pud = <0>; + samsung,pin-drv = <0>; + }; +};arch/arm/boot/dts/exynos5250-snow.dts +0
-0arch/arm/boot/dts/exynos5250-snow.dts line 556
Quoted 10 lines
arch/arm/boot/dts/exynos5250-snow.dts +7
-0@@ -547,6 +547,13 @@ }; &pinctrl_0 { + dp_hpd: dp_hpd { + samsung,pins = "gpx0-7"; + samsung,pin-function = <3>; + samsung,pin-pud = <0>; + samsung,pin-drv = <0>; + }; +NAK.
dp_hpdis a generic SoC piece. Pin function 0 and 1 are GPIOs. Pin function 3 is special function. This pin _is_ the hot plug detect pin for display port. When it's set as special function 3 it goes straight into the hot plug logic of the display port controller.Quoted 8 lines
Quoted 6 lines
Quoted 3 lines
Spring may have had its reasons to detect hot plug events on a GPIO instead of using this pin, but that doesn't make this pin any less the "hot plug pin".
Please advise how to handle it then: Should there be two different pinctrl entries (if so, how should it be named?),
IMHO this is the right way. Just name the GPIO variant
dp_hpd_gpio.Hi Andreas F?rber,
I agree with Tomasz Figa and Doug Anderson.
Please refer to the following.1. case: Standard HPD pin is used. (smdk5420)
arch/arm/boot/dts/exynos5420-pinctrl.dtspinctrl at 13400000 { dp_hpd: dp_hpd { samsung,pins = "gpx0-7"; samsung,pin-function = <3>; samsung,pin-pud = <0>; samsung,pin-drv = <0>; }; arch/arm/boot/dts/exynos5420-smdk5420.dts dp-controller at 145B0000 { pinctrl-names = "default"; pinctrl-0 = <&dp_hpd>; ...2. case: non-standard HPD pin such as GPIO is used. (peach pit)
arch/arm/boot/dts/exynos5420-peach-pit.dtspinctrl at 13400000 { dp_hpd_gpio: dp_hpd_gpio { samsung,pins = "gpx2-6"; samsung,pin-function = <0>; samsung,pin-pud = <3>; samsung,pin-drv = <0>; }; dp-controller at 145B0000 { pinctrl-names = "default"; pinctrl-0 = <&dp_hpd_gpio>; ... samsung,hpd-gpio = <&gpx2 6 0>;
Quoted 2 lines
So, you need to follow the second case.
"dp_hpd_gpio" can be used for Spring board.
I believe I already did so in v6 [0]? Please take a look there and let me know if you still need anything changed. The label name seems identical, whereas for the node name I adopted the dashes convention.
Thanks,
Andreas
[0] https://patchwork.kernel.org/patch/4664691/
Signature · 2 lines
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 N?rnberg, Germany GF: Jeff Hawn, Jennifer Guild, Felix Imend?rffer; HRB 16746 AG N?rnberg
Re: [PATCH v5 05/10] ARM: dts: Move dp_hpd from exynos5250 into smdk5250 and snow
Quoted 120 lines · Andreas Farber
Am 05.08.2014 13:16, schrieb Jingoo Han:
Quoted 12 lines · Tomasz Figa
Quoted 11 lines · Andreas F?rber
Quoted 10 lines
Am 01.08.2014 22:33, schrieb Doug Anderson:
Quoted 9 lines · Andreas F?rber
Quoted 8 lines
Spring uses a different GPIO, so this is not a generic SoC piece.
Suggested-by Tomasz Figa <[email protected]>Signed-off-by Andreas F?rber <[email protected]>---
v5: New (Tomasz Figa)
Freesdp_hpdfor Spring.Quoted 6 lines
Quoted 6 lines
Quoted 6 lines
Quoted 6 lines
arch/arm/boot/dts/exynos5250-
Quoted 6 lines
arch/arm/boot/dts/exynos5250-pinctrl.dtsi | 7 ------- arch/arm/boot/dts/exynos5250-smdk5250.dts | 9 +++++++++ arch/arm/boot/dts/exynos5250-snow.dts | 7 +++++++ 3 files changed, 16 insertions(+), 7 deletions(-)arch/arm/boot/dts/exynos5250- renamed from arch/arm/boot/dts/exynos5250-pinctrl.dtsi +0
-0
pinctrl.dtsiQuoted 16 lines
Quoted 16 lines
Quoted 16 lines
Quoted 16 lines
Quoted 16 lines
index
886cfca044ac..ed0e5230514b100644arch/arm/boot/dts/exynos5250-pinctrl.dtsi +0
-7@@ -581,13 +581,6 @@ samsung,pin-pud = <0>; samsung,pin-drv = <0>; }; - - dp_hpd: dp_hpd { - samsung,pins = "gpx0-7"; - samsung,pin-function = <3>; - samsung,pin-pud = <0>; - samsung,pin-drv = <0>; - }; };Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
arch/arm/boot/dts/exynos5250-
Quoted 2 lines
arch/arm/boot/dts/exynos5250-pinctrl.dtsi +0
-0pinctrl at 13400000 {arch/arm/boot/dts/exynos5250- renamed from arch/arm/boot/dts/exynos5250-smdk5250.dts +0
-0
smdk5250.dtsQuoted 81 lines
Quoted 37 lines
Quoted 37 lines
Quoted 37 lines
Quoted 21 lines
index
aaa055ac0fe3..5d30fe1dcda4100644arch/arm/boot/dts/exynos5250-smdk5250.dts +9
-0@@ -414,3 +414,12 @@ }; }; }; + +&pinctrl_0 { + dp_hpd: dp_hpd { + samsung,pins = "gpx0-7"; + samsung,pin-function = <3>; + samsung,pin-pud = <0>; + samsung,pin-drv = <0>; + }; +};arch/arm/boot/dts/exynos5250-snow.dts +0
-0arch/arm/boot/dts/exynos5250-snow.dts line 556
Quoted 10 lines
arch/arm/boot/dts/exynos5250-snow.dts +7
-0@@ -547,6 +547,13 @@ }; &pinctrl_0 { + dp_hpd: dp_hpd { + samsung,pins = "gpx0-7"; + samsung,pin-function = <3>; + samsung,pin-pud = <0>; + samsung,pin-drv = <0>; + }; +NAK.
dp_hpdis a generic SoC piece. Pin function 0 and 1 are GPIOs. Pin function 3 is special function. This pin _is_ the hot plug detect pin for display port. When it's set as special function 3 it goes straight into the hot plug logic of the display port controller.Quoted 8 lines
Quoted 6 lines
Quoted 3 lines
Spring may have had its reasons to detect hot plug events on a GPIO instead of using this pin, but that doesn't make this pin any less the "hot plug pin".
Please advise how to handle it then: Should there be two different pinctrl entries (if so, how should it be named?),
IMHO this is the right way. Just name the GPIO variant
dp_hpd_gpio.Hi Andreas F?rber,
I agree with Tomasz Figa and Doug Anderson.
Please refer to the following.1. case: Standard HPD pin is used. (smdk5420)
arch/arm/boot/dts/exynos5420-pinctrl.dtspinctrl at 13400000 { dp_hpd: dp_hpd { samsung,pins = "gpx0-7"; samsung,pin-function = <3>; samsung,pin-pud = <0>; samsung,pin-drv = <0>; }; arch/arm/boot/dts/exynos5420-smdk5420.dts dp-controller at 145B0000 { pinctrl-names = "default"; pinctrl-0 = <&dp_hpd>; ...2. case: non-standard HPD pin such as GPIO is used. (peach pit)
arch/arm/boot/dts/exynos5420-peach-pit.dtspinctrl at 13400000 { dp_hpd_gpio: dp_hpd_gpio { samsung,pins = "gpx2-6"; samsung,pin-function = <0>; samsung,pin-pud = <3>; samsung,pin-drv = <0>; }; dp-controller at 145B0000 { pinctrl-names = "default"; pinctrl-0 = <&dp_hpd_gpio>; ... samsung,hpd-gpio = <&gpx2 6 0>;
Quoted 6 lines
Quoted 2 lines
So, you need to follow the second case.
"dp_hpd_gpio" can be used for Spring board.I believe I already did so in v6 [0]? Please take a look there and let me know if you still need anything changed. The label name seems identical, whereas for the node name I adopted the dashes convention.
OK, I checked v6 patches.
I have no objection. It looks good.
Thank you.
Best regards,
Jingoo Han
Quoted 13 lines
Thanks,
Andreas[0] https://patchwork.kernel.org/patch/4664691/
--
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 N?rnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imend?rffer; HRB 16746 AG N?rnberg --
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo at vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
PATCH v5 6/10 ARM: dts: Clean up exynos5250-smdk5250
In reply to Andreas FärberUse the new style for referencing inherited nodes and use symbolic names.
Goal is the alignment of all exynos5250 based device trees for comparison.
---
v5: New
Follow-up after adding dp_hpd pinctrl node new-style.
arch/arm/boot/dts/exynos5250-smdk5250.dts | 640 +++++++++++++++--------------- arch/arm/boot/dts/exynos5250.dtsi | 4 +- 2 files changed, 324 insertions(+), 320 deletions(-)
arch/arm/boot/dts/exynos5250-smdk5250.dts +322 -318
@@ -7,9 +7,11 @@ * 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. -*/ + */ /dts-v1/; +#include <dt-bindings/gpio/gpio.h> +#include <dt-bindings/interrupt-controller/irq.h> #include "exynos5250.dtsi" / {
@@ -27,165 +29,6 @@ bootargs = "root=/dev/ram0 rw ramdisk=8192 initrd=0x41000000,8M console=ttySAC2,115200 init=/linuxrc"; }; - rtc at 101E0000 { - status = "okay"; - }; - - i2c at 12C60000 { - samsung,i2c-sda-delay = <100>; - samsung,i2c-max-bus-freq = <20000>; - status = "okay"; - - eeprom at 50 { - compatible = "samsung,s524ad0xd1"; - reg = <0x50>; - }; - - max77686 at 09 { - compatible = "maxim,max77686"; - reg = <0x09>; - interrupt-parent = <&gpx3>; - interrupts = <2 0>; - - 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.2V_LDO_OUT2"; - regulator-min-microvolt = <1200000>; - regulator-max-microvolt = <1200000>; - regulator-always-on; - }; - - ldo3_reg: LDO3 { - regulator-name = "P1.8V_LDO_OUT3"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - regulator-always-on; - }; - - ldo4_reg: LDO4 { - regulator-name = "P2.8V_LDO_OUT4"; - regulator-min-microvolt = <2800000>; - regulator-max-microvolt = <2800000>; - }; - - ldo5_reg: LDO5 { - regulator-name = "P1.8V_LDO_OUT5"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - }; - - ldo6_reg: LDO6 { - regulator-name = "P1.1V_LDO_OUT6"; - regulator-min-microvolt = <1100000>; - regulator-max-microvolt = <1100000>; - 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>; - }; - - ldo10_reg: LDO10 { - regulator-name = "P1.8V_LDO_OUT10"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - }; - - ldo11_reg: LDO11 { - regulator-name = "P1.8V_LDO_OUT11"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - }; - - ldo12_reg: LDO12 { - regulator-name = "P3.0V_LDO_OUT12"; - regulator-min-microvolt = <3000000>; - regulator-max-microvolt = <3000000>; - }; - - ldo13_reg: LDO13 { - regulator-name = "P1.8V_LDO_OUT13"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - }; - - ldo14_reg: LDO14 { - regulator-name = "P1.8V_LDO_OUT14"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - }; - - ldo15_reg: LDO15 { - regulator-name = "P1.0V_LDO_OUT15"; - regulator-min-microvolt = <1000000>; - regulator-max-microvolt = <1000000>; - }; - - ldo16_reg: LDO16 { - regulator-name = "P1.8V_LDO_OUT16"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - }; - - 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; - }; - }; - }; - }; - vdd: fixed-regulator at 0 { compatible = "regulator-fixed"; regulator-name = "vdd-supply";
@@ -210,208 +53,328 @@ regulator-always-on; }; - i2c at 12C70000 { - samsung,i2c-sda-delay = <100>; - samsung,i2c-max-bus-freq = <20000>; - status = "okay"; + sound { + compatible = "samsung,smdk-wm8994"; + + samsung,i2s-controller = <&i2s0>; + samsung,audio-codec = <&wm8994>; + }; - eeprom at 51 { - compatible = "samsung,s524ad0xd1"; - reg = <0x51>; + fixed-rate-clocks { + xxti { + compatible = "samsung,clock-xxti"; + clock-frequency = <24000000>; + }; + + codec_mclk: codec-mclk { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <16934000>; }; + }; +}; - wm8994: wm8994 at 1a { - compatible = "wlf,wm8994"; - reg = <0x1a>; +&codec { + samsung,mfc-r = <0x43000000 0x800000>; + samsung,mfc-l = <0x51000000 0x800000>; +}; - gpio-controller; - #gpio-cells = <2>; +&dp { + samsung,color-space = <0>; + samsung,dynamic-range = <0>; + samsung,ycbcr-coeff = <0>; + samsung,color-depth = <1>; + samsung,link-rate = <0x0a>; + samsung,lane-count = <4>; + + pinctrl-names = "default"; + pinctrl-0 = <&dp_hpd>; + status = "okay"; +}; - clocks = <&codec_mclk>; - clock-names = "MCLK1"; +&ehci { + samsung,vbus-gpio = <&gpx2 6 GPIO_ACTIVE_HIGH>; +}; - AVDD2-supply = <&vdd>; - CPVDD-supply = <&vdd>; - DBVDD-supply = <&dbvdd>; - SPKVDD1-supply = <&spkvdd>; - SPKVDD2-supply = <&spkvdd>; +&fimd { + status = "okay"; + + display-timings { + native-mode = <&timing0>; + + timing0: timing at 0 { + /* 1280x800 */ + clock-frequency = <50000>; + hactive = <1280>; + vactive = <800>; + hfront-porch = <4>; + hback-porch = <4>; + hsync-len = <4>; + vback-porch = <4>; + vfront-porch = <4>; + vsync-len = <4>; }; }; +}; - i2c at 121D0000 { - samsung,i2c-sda-delay = <100>; - samsung,i2c-max-bus-freq = <40000>; - samsung,i2c-slave-addr = <0x38>; - status = "okay"; +&hdmi { + hpd-gpio = <&gpx3 7 GPIO_ACTIVE_HIGH>; +}; - sata_phy_i2c:sata-phy at 38 { - compatible = "samsung,exynos-sataphy-i2c"; - reg = <0x38>; - }; +&i2c_0 { + status = "okay"; + samsung,i2c-sda-delay = <100>; + samsung,i2c-max-bus-freq = <20000>; + + eeprom at 50 { + compatible = "samsung,s524ad0xd1"; + reg = <0x50>; }; - i2c at 12C80000 { - samsung,i2c-sda-delay = <100>; - samsung,i2c-max-bus-freq = <66000>; - status = "okay"; + max77686 at 09 { + compatible = "maxim,max77686"; + reg = <0x09>; + interrupt-parent = <&gpx3>; + interrupts = <2 IRQ_TYPE_NONE>; + + voltage-regulators { + ldo1_reg: LDO1 { + regulator-name = "P1.0V_LDO_OUT1"; + regulator-min-microvolt = <1000000>; + regulator-max-microvolt = <1000000>; + regulator-always-on; + }; - hdmiddc at 50 { - compatible = "samsung,exynos4210-hdmiddc"; - reg = <0x50>; - }; - }; + ldo2_reg: LDO2 { + regulator-name = "P1.2V_LDO_OUT2"; + regulator-min-microvolt = <1200000>; + regulator-max-microvolt = <1200000>; + regulator-always-on; + }; - i2c at 12CE0000 { - samsung,i2c-sda-delay = <100>; - samsung,i2c-max-bus-freq = <66000>; - status = "okay"; + ldo3_reg: LDO3 { + regulator-name = "P1.8V_LDO_OUT3"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-always-on; + }; - hdmiphy at 38 { - compatible = "samsung,exynos4212-hdmiphy"; - reg = <0x38>; - }; - }; + ldo4_reg: LDO4 { + regulator-name = "P2.8V_LDO_OUT4"; + regulator-min-microvolt = <2800000>; + regulator-max-microvolt = <2800000>; + }; - sata at 122F0000 { - status = "okay"; - }; + ldo5_reg: LDO5 { + regulator-name = "P1.8V_LDO_OUT5"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + }; - sata-phy at 12170000 { - status = "okay"; - samsung,exynos-sataphy-i2c-phandle = <&sata_phy_i2c>; - }; + ldo6_reg: LDO6 { + regulator-name = "P1.1V_LDO_OUT6"; + regulator-min-microvolt = <1100000>; + regulator-max-microvolt = <1100000>; + regulator-always-on; + }; - mmc at 12200000 { - status = "okay"; - num-slots = <1>; - supports-highspeed; - broken-cd; - card-detect-delay = <200>; - samsung,dw-mshc-ciu-div = <3>; - samsung,dw-mshc-sdr-timing = <2 3>; - samsung,dw-mshc-ddr-timing = <1 2>; - pinctrl-names = "default"; - pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_bus8>; - - slot at 0 { - reg = <0>; - bus-width = <8>; - }; - }; + ldo7_reg: LDO7 { + regulator-name = "P1.1V_LDO_OUT7"; + regulator-min-microvolt = <1100000>; + regulator-max-microvolt = <1100000>; + regulator-always-on; + }; - mmc at 12220000 { - status = "okay"; - num-slots = <1>; - supports-highspeed; - card-detect-delay = <200>; - samsung,dw-mshc-ciu-div = <3>; - samsung,dw-mshc-sdr-timing = <2 3>; - samsung,dw-mshc-ddr-timing = <1 2>; - pinctrl-names = "default"; - pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>; - - slot at 0 { - reg = <0>; - bus-width = <4>; - disable-wp; - }; - }; + ldo8_reg: LDO8 { + regulator-name = "P1.0V_LDO_OUT8"; + regulator-min-microvolt = <1000000>; + regulator-max-microvolt = <1000000>; + }; + + ldo10_reg: LDO10 { + regulator-name = "P1.8V_LDO_OUT10"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + }; - spi_1: spi at 12d30000 { - status = "okay"; + ldo11_reg: LDO11 { + regulator-name = "P1.8V_LDO_OUT11"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + }; - w25q80bw at 0 { - #address-cells = <1>; - #size-cells = <1>; - compatible = "w25x80"; - reg = <0>; - spi-max-frequency = <1000000>; + ldo12_reg: LDO12 { + regulator-name = "P3.0V_LDO_OUT12"; + regulator-min-microvolt = <3000000>; + regulator-max-microvolt = <3000000>; + }; + + ldo13_reg: LDO13 { + regulator-name = "P1.8V_LDO_OUT13"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + }; - controller-data { - cs-gpio = <&gpa2 5 0>; - samsung,spi-feedback-delay = <0>; + ldo14_reg: LDO14 { + regulator-name = "P1.8V_LDO_OUT14"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; }; - partition at 0 { - label = "U-Boot"; - reg = <0x0 0x40000>; - read-only; + ldo15_reg: LDO15 { + regulator-name = "P1.0V_LDO_OUT15"; + regulator-min-microvolt = <1000000>; + regulator-max-microvolt = <1000000>; }; - partition at 40000 { - label = "Kernel"; - reg = <0x40000 0xc0000>; + ldo16_reg: LDO16 { + regulator-name = "P1.8V_LDO_OUT16"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + }; + + 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; }; }; }; +}; - hdmi { - hpd-gpio = <&gpx3 7 0>; - }; +&i2c_1 { + status = "okay"; + samsung,i2c-sda-delay = <100>; + samsung,i2c-max-bus-freq = <20000>; - codec at 11000000 { - samsung,mfc-r = <0x43000000 0x800000>; - samsung,mfc-l = <0x51000000 0x800000>; + eeprom at 51 { + compatible = "samsung,s524ad0xd1"; + reg = <0x51>; }; - i2s0: i2s at 03830000 { - status = "okay"; - }; + wm8994: wm8994 at 1a { + compatible = "wlf,wm8994"; + reg = <0x1a>; - sound { - compatible = "samsung,smdk-wm8994"; + gpio-controller; + #gpio-cells = <2>; - samsung,i2s-controller = <&i2s0>; - samsung,audio-codec = <&wm8994>; + clocks = <&codec_mclk>; + clock-names = "MCLK1"; + + AVDD2-supply = <&vdd>; + CPVDD-supply = <&vdd>; + DBVDD-supply = <&dbvdd>; + SPKVDD1-supply = <&spkvdd>; + SPKVDD2-supply = <&spkvdd>; }; +}; - usb at 12110000 { - samsung,vbus-gpio = <&gpx2 6 0>; +&i2c_2 { + status = "okay"; + samsung,i2c-sda-delay = <100>; + samsung,i2c-max-bus-freq = <66000>; + + hdmiddc at 50 { + compatible = "samsung,exynos4210-hdmiddc"; + reg = <0x50>; }; +}; + +&i2c_8 { + status = "okay"; + samsung,i2c-sda-delay = <100>; + samsung,i2c-max-bus-freq = <66000>; - dp-controller at 145B0000 { - samsung,color-space = <0>; - samsung,dynamic-range = <0>; - samsung,ycbcr-coeff = <0>; - samsung,color-depth = <1>; - samsung,link-rate = <0x0a>; - samsung,lane-count = <4>; - - pinctrl-names = "default"; - pinctrl-0 = <&dp_hpd>; - status = "okay"; + hdmiphy at 38 { + compatible = "samsung,exynos4212-hdmiphy"; + reg = <0x38>; }; +}; - fimd at 14400000 { - status = "okay"; - display-timings { - native-mode = <&timing0>; - timing0: timing at 0 { - /* 1280x800 */ - clock-frequency = <50000>; - hactive = <1280>; - vactive = <800>; - hfront-porch = <4>; - hback-porch = <4>; - hsync-len = <4>; - vback-porch = <4>; - vfront-porch = <4>; - vsync-len = <4>; - }; - }; +&i2c_9 { + status = "okay"; + samsung,i2c-sda-delay = <100>; + samsung,i2c-max-bus-freq = <40000>; + samsung,i2c-slave-addr = <0x38>; + + sata_phy_i2c: sata-phy at 38 { + compatible = "samsung,exynos-sataphy-i2c"; + reg = <0x38>; }; +}; - fixed-rate-clocks { - xxti { - compatible = "samsung,clock-xxti"; - clock-frequency = <24000000>; - }; +&i2s0 { + status = "okay"; +}; - codec_mclk: codec-mclk { - compatible = "fixed-clock"; - #clock-cells = <0>; - clock-frequency = <16934000>; - }; +&mmc_0 { + status = "okay"; + num-slots = <1>; + supports-highspeed; + broken-cd; + card-detect-delay = <200>; + samsung,dw-mshc-ciu-div = <3>; + samsung,dw-mshc-sdr-timing = <2 3>; + samsung,dw-mshc-ddr-timing = <1 2>; + pinctrl-names = "default"; + pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_bus8>; + + slot at 0 { + reg = <0>; + bus-width = <8>; + }; +}; + +&mmc_2 { + status = "okay"; + num-slots = <1>; + supports-highspeed; + card-detect-delay = <200>; + samsung,dw-mshc-ciu-div = <3>; + samsung,dw-mshc-sdr-timing = <2 3>; + samsung,dw-mshc-ddr-timing = <1 2>; + pinctrl-names = "default"; + pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>; + + slot at 0 { + reg = <0>; + bus-width = <4>; + disable-wp; }; };
@@ -423,3 +386,44 @@ samsung,pin-drv = <0>; }; }; + +&rtc { + status = "okay"; +}; + +&sata { + status = "okay"; +}; + +&sata_phy { + status = "okay"; + samsung,exynos-sataphy-i2c-phandle = <&sata_phy_i2c>; +}; + +&spi_1 { + status = "okay"; + + w25q80bw at 0 { + #address-cells = <1>; + #size-cells = <1>; + compatible = "w25x80"; + reg = <0>; + spi-max-frequency = <1000000>; + + controller-data { + cs-gpio = <&gpa2 5 GPIO_ACTIVE_HIGH>; + samsung,spi-feedback-delay = <0>; + }; + + partition at 0 { + label = "U-Boot"; + reg = <0x0 0x40000>; + read-only; + }; + + partition at 40000 { + label = "Kernel"; + reg = <0x40000 0xc0000>; + }; + }; +};
arch/arm/boot/dts/exynos5250.dtsi +2 -2
@@ -215,7 +215,7 @@ clock-names = "fimg2d"; }; - codec at 11000000 { + codec: codec at 11000000 { compatible = "samsung,mfc-v6"; reg = <0x11000000 0x10000>; interrupts = <0 96 0>;
@@ -258,7 +258,7 @@ clock-names = "uart", "clk_uart_baud0"; }; - sata at 122F0000 { + sata: sata at 122F0000 { compatible = "snps,dwc-ahci"; samsung,sata-freq = <66>; reg = <0x122F0000 0x1ff>;
Signature · 1 line
1.9.3
Re: [PATCH v5 06/10] ARM: dts: Clean up exynos5250-smdk5250
Am 01.08.2014 06:54, schrieb Andreas F?rber:
arch/arm/boot/dts/exynos5250.dtsi line 221
Quoted 13 lines
arch/arm/boot/dts/exynos5250.dtsi +1
-1@@ -215,7 +215,7 @@ clock-names = "fimg2d"; }; - codec at 11000000 { + codec: codec at 11000000 { compatible = "samsung,mfc-v6"; reg = <0x11000000 0x10000>; interrupts = <0 96 0>;
I notice that Ajay's iommu patch uses mfc here, so let's use it here, too. Affects patches 7 and 10.
Andreas
Quoted 9 lines
arch/arm/boot/dts/exynos5250.dtsi +1
-1@@ -258,7 +258,7 @@ clock-names = "uart", "clk_uart_baud0"; }; - sata at 122F0000 { + sata: sata at 122F0000 { compatible = "snps,dwc-ahci"; samsung,sata-freq = <66>; reg = <0x122F0000 0x1ff>;
Signature · 2 lines
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 N?rnberg, Germany GF: Jeff Hawn, Jennifer Guild, Felix Imend?rffer; HRB 16746 AG N?rnberg
Re: [PATCH v5 06/10] ARM: dts: Clean up exynos5250-smdk5250
In reply to Andreas FärberAndreas,
Quoted 8 lines · Andreas F?rber
Use the new style for referencing inherited nodes and use symbolic names.
Goal is the alignment of all exynos5250 based device trees for comparison.
Signed-off-by Andreas F?rber <[email protected]>---
v5: New
Follow-up after addingdp_hpdpinctrl node new-style.
Since I NAKed that one, are you going to drop this patch? It's probably still a useful thing to do.
It sounds like you might be spinning? ...if so I'll review it in the next cycle... Note: same feedback as before about splitting changes to exynos5250.dtsi and actual board files...
-Doug
PATCH v5 7/10 ARM: dts: Clean up exynos5250-arndale
In reply to Andreas FärberUse the new style of referencing inherited nodes, use symbolic names, tidy indentation and reorder includes.
Goal is the alignment of all exynos5250 based device trees for comparison.
---
v5: New
Aligns with SMDK.
arch/arm/boot/dts/exynos5250-arndale.dts | 929 ++++++++++++++++--------------- 1 file changed, 466 insertions(+), 463 deletions(-)
arch/arm/boot/dts/exynos5250-arndale.dts +466 -463
@@ -7,12 +7,13 @@ * 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. -*/ + */ /dts-v1/; -#include "exynos5250.dtsi" +#include <dt-bindings/gpio/gpio.h> #include <dt-bindings/interrupt-controller/irq.h> #include <dt-bindings/input/input.h> +#include "exynos5250.dtsi" / { model = "Insignal Arndale evaluation board based on EXYNOS5250";
@@ -26,473 +27,52 @@ bootargs = "console=ttySAC2,115200"; }; - rtc at 101E0000 { - status = "okay"; - }; - - codec at 11000000 { - samsung,mfc-r = <0x43000000 0x800000>; - samsung,mfc-l = <0x51000000 0x800000>; - }; - - i2c at 12C60000 { - samsung,i2c-sda-delay = <100>; - samsung,i2c-max-bus-freq = <20000>; - samsung,i2c-slave-addr = <0x66>; - status = "okay"; - - s5m8767_pmic at 66 { - compatible = "samsung,s5m8767-pmic"; - reg = <0x66>; - interrupt-parent = <&gpx3>; - interrupts = <2 IRQ_TYPE_LEVEL_LOW>; - - vinb1-supply = <&main_dc_reg>; - vinb2-supply = <&main_dc_reg>; - vinb3-supply = <&main_dc_reg>; - vinb4-supply = <&main_dc_reg>; - vinb5-supply = <&main_dc_reg>; - vinb6-supply = <&main_dc_reg>; - vinb7-supply = <&main_dc_reg>; - vinb8-supply = <&main_dc_reg>; - vinb9-supply = <&main_dc_reg>; - - vinl1-supply = <&buck7_reg>; - vinl2-supply = <&buck7_reg>; - vinl3-supply = <&buck7_reg>; - vinl4-supply = <&main_dc_reg>; - vinl5-supply = <&main_dc_reg>; - vinl6-supply = <&main_dc_reg>; - vinl7-supply = <&main_dc_reg>; - vinl8-supply = <&buck8_reg>; - vinl9-supply = <&buck8_reg>; - - s5m8767,pmic-buck2-dvs-voltage = <1300000>; - s5m8767,pmic-buck3-dvs-voltage = <1100000>; - s5m8767,pmic-buck4-dvs-voltage = <1200000>; - s5m8767,pmic-buck-dvs-gpios = <&gpd1 0 0>, - <&gpd1 1 0>, - <&gpd1 2 0>; - s5m8767,pmic-buck-ds-gpios = <&gpx2 3 0>, - <&gpx2 4 0>, - <&gpx2 5 0>; - regulators { - ldo1_reg: LDO1 { - regulator-name = "VDD_ALIVE_1.0V"; - regulator-min-microvolt = <1100000>; - regulator-max-microvolt = <1100000>; - regulator-always-on; - regulator-boot-on; - op_mode = <1>; - }; - - ldo2_reg: LDO2 { - regulator-name = "VDD_28IO_DP_1.35V"; - regulator-min-microvolt = <1200000>; - regulator-max-microvolt = <1200000>; - regulator-always-on; - regulator-boot-on; - op_mode = <1>; - }; - - ldo3_reg: LDO3 { - regulator-name = "VDD_COMMON1_1.8V"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - regulator-always-on; - regulator-boot-on; - op_mode = <1>; - }; - - ldo4_reg: LDO4 { - regulator-name = "VDD_IOPERI_1.8V"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - regulator-always-on; - op_mode = <1>; - }; - - ldo5_reg: LDO5 { - regulator-name = "VDD_EXT_1.8V"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - regulator-always-on; - regulator-boot-on; - op_mode = <1>; - }; - - ldo6_reg: LDO6 { - regulator-name = "VDD_MPLL_1.1V"; - regulator-min-microvolt = <1100000>; - regulator-max-microvolt = <1100000>; - regulator-always-on; - regulator-boot-on; - op_mode = <1>; - }; - - ldo7_reg: LDO7 { - regulator-name = "VDD_XPLL_1.1V"; - regulator-min-microvolt = <1100000>; - regulator-max-microvolt = <1100000>; - regulator-always-on; - regulator-boot-on; - op_mode = <1>; - }; - - ldo8_reg: LDO8 { - regulator-name = "VDD_COMMON2_1.0V"; - regulator-min-microvolt = <1000000>; - regulator-max-microvolt = <1000000>; - regulator-always-on; - regulator-boot-on; - op_mode = <1>; - }; - - ldo9_reg: LDO9 { - regulator-name = "VDD_33ON_3.0V"; - regulator-min-microvolt = <3000000>; - regulator-max-microvolt = <3000000>; - op_mode = <1>; - }; - - ldo10_reg: LDO10 { - regulator-name = "VDD_COMMON3_1.8V"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - regulator-always-on; - regulator-boot-on; - op_mode = <1>; - }; - - ldo11_reg: LDO11 { - regulator-name = "VDD_ABB2_1.8V"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - regulator-always-on; - regulator-boot-on; - op_mode = <1>; - }; - - ldo12_reg: LDO12 { - regulator-name = "VDD_USB_3.0V"; - regulator-min-microvolt = <3000000>; - regulator-max-microvolt = <3000000>; - regulator-always-on; - regulator-boot-on; - op_mode = <1>; - }; - - ldo13_reg: LDO13 { - regulator-name = "VDDQ_C2C_W_1.8V"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - regulator-always-on; - regulator-boot-on; - op_mode = <1>; - }; - - ldo14_reg: LDO14 { - regulator-name = "VDD18_ABB0_3_1.8V"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - regulator-always-on; - regulator-boot-on; - op_mode = <1>; - }; - - ldo15_reg: LDO15 { - regulator-name = "VDD10_COMMON4_1.0V"; - regulator-min-microvolt = <1000000>; - regulator-max-microvolt = <1000000>; - regulator-always-on; - regulator-boot-on; - op_mode = <1>; - }; - - ldo16_reg: LDO16 { - regulator-name = "VDD18_HSIC_1.8V"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - regulator-always-on; - regulator-boot-on; - op_mode = <1>; - }; - - ldo17_reg: LDO17 { - regulator-name = "VDDQ_MMC2_3_2.8V"; - regulator-min-microvolt = <2800000>; - regulator-max-microvolt = <2800000>; - regulator-always-on; - regulator-boot-on; - op_mode = <1>; - }; - - ldo18_reg: LDO18 { - regulator-name = "VDD_33ON_2.8V"; - regulator-min-microvolt = <2800000>; - regulator-max-microvolt = <2800000>; - op_mode = <1>; - }; - - ldo22_reg: LDO22 { - regulator-name = "EXT_33_OFF"; - regulator-min-microvolt = <3300000>; - regulator-max-microvolt = <3300000>; - op_mode = <1>; - }; - - ldo23_reg: LDO23 { - regulator-name = "EXT_28_OFF"; - regulator-min-microvolt = <2800000>; - regulator-max-microvolt = <2800000>; - op_mode = <1>; - }; - - ldo25_reg: LDO25 { - regulator-name = "PVDD_LDO25"; - regulator-min-microvolt = <1200000>; - regulator-max-microvolt = <1200000>; - op_mode = <1>; - }; - - ldo26_reg: LDO26 { - regulator-name = "EXT_18_OFF"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - op_mode = <1>; - }; - - buck1_reg: BUCK1 { - regulator-name = "vdd_mif"; - regulator-min-microvolt = <950000>; - regulator-max-microvolt = <1200000>; - regulator-always-on; - regulator-boot-on; - op_mode = <1>; - }; - - buck2_reg: BUCK2 { - regulator-name = "vdd_arm"; - regulator-min-microvolt = <912500>; - regulator-max-microvolt = <1300000>; - regulator-always-on; - regulator-boot-on; - op_mode = <1>; - }; - - buck3_reg: BUCK3 { - regulator-name = "vdd_int"; - regulator-min-microvolt = <900000>; - regulator-max-microvolt = <1200000>; - regulator-always-on; - regulator-boot-on; - op_mode = <1>; - }; - - buck4_reg: BUCK4 { - regulator-name = "vdd_g3d"; - regulator-min-microvolt = <1000000>; - regulator-max-microvolt = <1000000>; - regulator-always-on; - regulator-boot-on; - op_mode = <1>; - }; - - buck5_reg: BUCK5 { - regulator-name = "VDD_MEM_1.35V"; - regulator-min-microvolt = <750000>; - regulator-max-microvolt = <1355000>; - regulator-always-on; - regulator-boot-on; - op_mode = <1>; - }; - - buck7_reg: BUCK7 { - regulator-name = "PVDD_BUCK7"; - regulator-always-on; - op_mode = <1>; - }; - - buck8_reg: BUCK8 { - regulator-name = "PVDD_BUCK8"; - regulator-always-on; - op_mode = <1>; - }; - - buck9_reg: BUCK9 { - regulator-name = "VDD_33_OFF_EXT1"; - regulator-min-microvolt = <750000>; - regulator-max-microvolt = <3000000>; - op_mode = <1>; - }; - }; - }; - }; - - i2c at 12C80000 { - status = "okay"; - - samsung,i2c-sda-delay = <100>; - samsung,i2c-max-bus-freq = <66000>; - samsung,i2c-slave-addr = <0x50>; - - hdmiddc at 50 { - compatible = "samsung,exynos4210-hdmiddc"; - reg = <0x50>; - }; - }; - - i2c at 12C90000 { - status = "okay"; - - wm1811a at 1a { - - compatible = "wlf,wm1811"; - reg = <0x1a>; - - AVDD2-supply = <&main_dc_reg>; - CPVDD-supply = <&main_dc_reg>; - DBVDD1-supply = <&main_dc_reg>; - DBVDD2-supply = <&main_dc_reg>; - DBVDD3-supply = <&main_dc_reg>; - LDO1VDD-supply = <&main_dc_reg>; - SPKVDD1-supply = <&main_dc_reg>; - SPKVDD2-supply = <&main_dc_reg>; - - wlf,ldo1ena = <&gpb0 0 0>; - wlf,ldo2ena = <&gpb0 1 0>; - }; - }; - - i2c at 12CE0000 { - status = "okay"; - - samsung,i2c-sda-delay = <100>; - samsung,i2c-max-bus-freq = <66000>; - samsung,i2c-slave-addr = <0x38>; - - hdmiphy at 38 { - compatible = "samsung,exynos4212-hdmiphy"; - reg = <0x38>; - }; - }; - - i2c at 121D0000 { - status = "okay"; - samsung,i2c-sda-delay = <100>; - samsung,i2c-max-bus-freq = <40000>; - samsung,i2c-slave-addr = <0x38>; - - sata_phy_i2c:sata-phy at 38 { - compatible = "samsung,exynos-sataphy-i2c"; - reg = <0x38>; - }; - }; - - sata at 122F0000 { - status = "okay"; - }; - - sata-phy at 12170000 { - status = "okay"; - samsung,exynos-sataphy-i2c-phandle = <&sata_phy_i2c>; - }; - - mmc_0: mmc at 12200000 { - status = "okay"; - num-slots = <1>; - supports-highspeed; - broken-cd; - card-detect-delay = <200>; - samsung,dw-mshc-ciu-div = <3>; - samsung,dw-mshc-sdr-timing = <2 3>; - samsung,dw-mshc-ddr-timing = <1 2>; - vmmc-supply = <&mmc_reg>; - pinctrl-names = "default"; - pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_bus8>; - - slot at 0 { - reg = <0>; - bus-width = <8>; - }; - }; - - mmc_2: mmc at 12220000 { - status = "okay"; - num-slots = <1>; - supports-highspeed; - card-detect-delay = <200>; - samsung,dw-mshc-ciu-div = <3>; - samsung,dw-mshc-sdr-timing = <2 3>; - samsung,dw-mshc-ddr-timing = <1 2>; - vmmc-supply = <&mmc_reg>; - pinctrl-names = "default"; - pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>; - - slot at 0 { - reg = <0>; - bus-width = <4>; - disable-wp; - }; - }; - - i2s0: i2s at 03830000 { - status = "okay"; - }; - gpio_keys { compatible = "gpio-keys"; menu { label = "SW-TACT2"; - gpios = <&gpx1 4 1>; + gpios = <&gpx1 4 GPIO_ACTIVE_LOW>; linux,code = <KEY_MENU>; gpio-key,wakeup; }; home { label = "SW-TACT3"; - gpios = <&gpx1 5 1>; + gpios = <&gpx1 5 GPIO_ACTIVE_LOW>; linux,code = <KEY_HOME>; gpio-key,wakeup; }; up { label = "SW-TACT4"; - gpios = <&gpx1 6 1>; + gpios = <&gpx1 6 GPIO_ACTIVE_LOW>; linux,code = <KEY_UP>; gpio-key,wakeup; }; down { label = "SW-TACT5"; - gpios = <&gpx1 7 1>; + gpios = <&gpx1 7 GPIO_ACTIVE_LOW>; linux,code = <KEY_DOWN>; gpio-key,wakeup; }; back { label = "SW-TACT6"; - gpios = <&gpx2 0 1>; + gpios = <&gpx2 0 GPIO_ACTIVE_LOW>; linux,code = <KEY_BACK>; gpio-key,wakeup; }; wakeup { label = "SW-TACT7"; - gpios = <&gpx2 1 1>; + gpios = <&gpx2 1 GPIO_ACTIVE_LOW>; linux,code = <KEY_WAKEUP>; gpio-key,wakeup; }; }; - hdmi { - hpd-gpio = <&gpx3 7 2>; - vdd_osc-supply = <&ldo10_reg>; - vdd_pll-supply = <&ldo8_reg>; - vdd-supply = <&ldo8_reg>; - }; - regulators { compatible = "simple-bus"; #address-cells = <1>;
@@ -510,7 +90,7 @@ regulator-name = "VDD_33ON_2.8V"; regulator-min-microvolt = <2800000>; regulator-max-microvolt = <2800000>; - gpio = <&gpx1 1 1>; + gpio = <&gpx1 1 GPIO_ACTIVE_LOW>; enable-active-high; };
@@ -528,35 +108,6 @@ }; }; - dp-controller at 145B0000 { - samsung,color-space = <0>; - samsung,dynamic-range = <0>; - samsung,ycbcr-coeff = <0>; - samsung,color-depth = <1>; - samsung,link-rate = <0x0a>; - samsung,lane-count = <4>; - status = "okay"; - }; - - fimd: fimd at 14400000 { - status = "okay"; - display-timings { - native-mode = <&timing0>; - timing0: timing at 0 { - /* 2560x1600 DP panel */ - clock-frequency = <50000>; - hactive = <2560>; - vactive = <1600>; - hfront-porch = <48>; - hback-porch = <80>; - hsync-len = <32>; - vback-porch = <16>; - vfront-porch = <8>; - vsync-len = <6>; - }; - }; - }; - usb_hub_bus { compatible = "simple-bus"; #address-cells = <1>;
@@ -566,12 +117,464 @@ usb_hub: usb_hub { compatible = "smsc,usb3503a"; - reset-gpios = <&gpx3 5 1>; - connect-gpios = <&gpd1 7 1>; + reset-gpios = <&gpx3 5 GPIO_ACTIVE_LOW>; + connect-gpios = <&gpd1 7 GPIO_ACTIVE_LOW>; + }; + }; +}; + +&codec { + samsung,mfc-r = <0x43000000 0x800000>; + samsung,mfc-l = <0x51000000 0x800000>; +}; + +&dp { + status = "okay"; + samsung,color-space = <0>; + samsung,dynamic-range = <0>; + samsung,ycbcr-coeff = <0>; + samsung,color-depth = <1>; + samsung,link-rate = <0x0a>; + samsung,lane-count = <4>; +}; + +&ehci { + usb-phy = <&usb2_phy>; +}; + +&fimd { + status = "okay"; + + display-timings { + native-mode = <&timing0>; + + timing0: timing at 0 { + /* 2560x1600 DP panel */ + clock-frequency = <50000>; + hactive = <2560>; + vactive = <1600>; + hfront-porch = <48>; + hback-porch = <80>; + hsync-len = <32>; + vback-porch = <16>; + vfront-porch = <8>; + vsync-len = <6>; + }; + }; +}; + +&hdmi { + hpd-gpio = <&gpx3 7 2>; + vdd_osc-supply = <&ldo10_reg>; + vdd_pll-supply = <&ldo8_reg>; + vdd-supply = <&ldo8_reg>; +}; + +&i2c_0 { + status = "okay"; + samsung,i2c-sda-delay = <100>; + samsung,i2c-max-bus-freq = <20000>; + samsung,i2c-slave-addr = <0x66>; + + s5m8767_pmic at 66 { + compatible = "samsung,s5m8767-pmic"; + reg = <0x66>; + interrupt-parent = <&gpx3>; + interrupts = <2 IRQ_TYPE_LEVEL_LOW>; + + vinb1-supply = <&main_dc_reg>; + vinb2-supply = <&main_dc_reg>; + vinb3-supply = <&main_dc_reg>; + vinb4-supply = <&main_dc_reg>; + vinb5-supply = <&main_dc_reg>; + vinb6-supply = <&main_dc_reg>; + vinb7-supply = <&main_dc_reg>; + vinb8-supply = <&main_dc_reg>; + vinb9-supply = <&main_dc_reg>; + + vinl1-supply = <&buck7_reg>; + vinl2-supply = <&buck7_reg>; + vinl3-supply = <&buck7_reg>; + vinl4-supply = <&main_dc_reg>; + vinl5-supply = <&main_dc_reg>; + vinl6-supply = <&main_dc_reg>; + vinl7-supply = <&main_dc_reg>; + vinl8-supply = <&buck8_reg>; + vinl9-supply = <&buck8_reg>; + + s5m8767,pmic-buck2-dvs-voltage = <1300000>; + s5m8767,pmic-buck3-dvs-voltage = <1100000>; + s5m8767,pmic-buck4-dvs-voltage = <1200000>; + s5m8767,pmic-buck-dvs-gpios = <&gpd1 0 GPIO_ACTIVE_HIGH>, + <&gpd1 1 GPIO_ACTIVE_HIGH>, + <&gpd1 2 GPIO_ACTIVE_HIGH>; + s5m8767,pmic-buck-ds-gpios = <&gpx2 3 GPIO_ACTIVE_HIGH>, + <&gpx2 4 GPIO_ACTIVE_HIGH>, + <&gpx2 5 GPIO_ACTIVE_HIGH>; + + regulators { + ldo1_reg: LDO1 { + regulator-name = "VDD_ALIVE_1.0V"; + regulator-min-microvolt = <1100000>; + regulator-max-microvolt = <1100000>; + regulator-always-on; + regulator-boot-on; + op_mode = <1>; + }; + + ldo2_reg: LDO2 { + regulator-name = "VDD_28IO_DP_1.35V"; + regulator-min-microvolt = <1200000>; + regulator-max-microvolt = <1200000>; + regulator-always-on; + regulator-boot-on; + op_mode = <1>; + }; + + ldo3_reg: LDO3 { + regulator-name = "VDD_COMMON1_1.8V"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-always-on; + regulator-boot-on; + op_mode = <1>; + }; + + ldo4_reg: LDO4 { + regulator-name = "VDD_IOPERI_1.8V"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-always-on; + op_mode = <1>; + }; + + ldo5_reg: LDO5 { + regulator-name = "VDD_EXT_1.8V"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-always-on; + regulator-boot-on; + op_mode = <1>; + }; + + ldo6_reg: LDO6 { + regulator-name = "VDD_MPLL_1.1V"; + regulator-min-microvolt = <1100000>; + regulator-max-microvolt = <1100000>; + regulator-always-on; + regulator-boot-on; + op_mode = <1>; + }; + + ldo7_reg: LDO7 { + regulator-name = "VDD_XPLL_1.1V"; + regulator-min-microvolt = <1100000>; + regulator-max-microvolt = <1100000>; + regulator-always-on; + regulator-boot-on; + op_mode = <1>; + }; + + ldo8_reg: LDO8 { + regulator-name = "VDD_COMMON2_1.0V"; + regulator-min-microvolt = <1000000>; + regulator-max-microvolt = <1000000>; + regulator-always-on; + regulator-boot-on; + op_mode = <1>; + }; + + ldo9_reg: LDO9 { + regulator-name = "VDD_33ON_3.0V"; + regulator-min-microvolt = <3000000>; + regulator-max-microvolt = <3000000>; + op_mode = <1>; + }; + + ldo10_reg: LDO10 { + regulator-name = "VDD_COMMON3_1.8V"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-always-on; + regulator-boot-on; + op_mode = <1>; + }; + + ldo11_reg: LDO11 { + regulator-name = "VDD_ABB2_1.8V"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-always-on; + regulator-boot-on; + op_mode = <1>; + }; + + ldo12_reg: LDO12 { + regulator-name = "VDD_USB_3.0V"; + regulator-min-microvolt = <3000000>; + regulator-max-microvolt = <3000000>; + regulator-always-on; + regulator-boot-on; + op_mode = <1>; + }; + + ldo13_reg: LDO13 { + regulator-name = "VDDQ_C2C_W_1.8V"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-always-on; + regulator-boot-on; + op_mode = <1>; + }; + + ldo14_reg: LDO14 { + regulator-name = "VDD18_ABB0_3_1.8V"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-always-on; + regulator-boot-on; + op_mode = <1>; + }; + + ldo15_reg: LDO15 { + regulator-name = "VDD10_COMMON4_1.0V"; + regulator-min-microvolt = <1000000>; + regulator-max-microvolt = <1000000>; + regulator-always-on; + regulator-boot-on; + op_mode = <1>; + }; + + ldo16_reg: LDO16 { + regulator-name = "VDD18_HSIC_1.8V"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-always-on; + regulator-boot-on; + op_mode = <1>; + }; + + ldo17_reg: LDO17 { + regulator-name = "VDDQ_MMC2_3_2.8V"; + regulator-min-microvolt = <2800000>; + regulator-max-microvolt = <2800000>; + regulator-always-on; + regulator-boot-on; + op_mode = <1>; + }; + + ldo18_reg: LDO18 { + regulator-name = "VDD_33ON_2.8V"; + regulator-min-microvolt = <2800000>; + regulator-max-microvolt = <2800000>; + op_mode = <1>; + }; + + ldo22_reg: LDO22 { + regulator-name = "EXT_33_OFF"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + op_mode = <1>; + }; + + ldo23_reg: LDO23 { + regulator-name = "EXT_28_OFF"; + regulator-min-microvolt = <2800000>; + regulator-max-microvolt = <2800000>; + op_mode = <1>; + }; + + ldo25_reg: LDO25 { + regulator-name = "PVDD_LDO25"; + regulator-min-microvolt = <1200000>; + regulator-max-microvolt = <1200000>; + op_mode = <1>; + }; + + ldo26_reg: LDO26 { + regulator-name = "EXT_18_OFF"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + op_mode = <1>; + }; + + buck1_reg: BUCK1 { + regulator-name = "vdd_mif"; + regulator-min-microvolt = <950000>; + regulator-max-microvolt = <1200000>; + regulator-always-on; + regulator-boot-on; + op_mode = <1>; + }; + + buck2_reg: BUCK2 { + regulator-name = "vdd_arm"; + regulator-min-microvolt = <912500>; + regulator-max-microvolt = <1300000>; + regulator-always-on; + regulator-boot-on; + op_mode = <1>; + }; + + buck3_reg: BUCK3 { + regulator-name = "vdd_int"; + regulator-min-microvolt = <900000>; + regulator-max-microvolt = <1200000>; + regulator-always-on; + regulator-boot-on; + op_mode = <1>; + }; + + buck4_reg: BUCK4 { + regulator-name = "vdd_g3d"; + regulator-min-microvolt = <1000000>; + regulator-max-microvolt = <1000000>; + regulator-always-on; + regulator-boot-on; + op_mode = <1>; + }; + + buck5_reg: BUCK5 { + regulator-name = "VDD_MEM_1.35V"; + regulator-min-microvolt = <750000>; + regulator-max-microvolt = <1355000>; + regulator-always-on; + regulator-boot-on; + op_mode = <1>; + }; + + buck7_reg: BUCK7 { + regulator-name = "PVDD_BUCK7"; + regulator-always-on; + op_mode = <1>; + }; + + buck8_reg: BUCK8 { + regulator-name = "PVDD_BUCK8"; + regulator-always-on; + op_mode = <1>; + }; + + buck9_reg: BUCK9 { + regulator-name = "VDD_33_OFF_EXT1"; + regulator-min-microvolt = <750000>; + regulator-max-microvolt = <3000000>; + op_mode = <1>; + }; }; }; +}; + +&i2c_2 { + status = "okay"; + + samsung,i2c-sda-delay = <100>; + samsung,i2c-max-bus-freq = <66000>; + samsung,i2c-slave-addr = <0x50>; + + hdmiddc at 50 { + compatible = "samsung,exynos4210-hdmiddc"; + reg = <0x50>; + }; +}; + +&i2c_3 { + status = "okay"; + + wm1811a at 1a { + compatible = "wlf,wm1811"; + reg = <0x1a>; + + AVDD2-supply = <&main_dc_reg>; + CPVDD-supply = <&main_dc_reg>; + DBVDD1-supply = <&main_dc_reg>; + DBVDD2-supply = <&main_dc_reg>; + DBVDD3-supply = <&main_dc_reg>; + LDO1VDD-supply = <&main_dc_reg>; + SPKVDD1-supply = <&main_dc_reg>; + SPKVDD2-supply = <&main_dc_reg>; + + wlf,ldo1ena = <&gpb0 0 GPIO_ACTIVE_HIGH>; + wlf,ldo2ena = <&gpb0 1 GPIO_ACTIVE_HIGH>; + }; +}; + +&i2c_8 { + status = "okay"; + + samsung,i2c-sda-delay = <100>; + samsung,i2c-max-bus-freq = <66000>; + samsung,i2c-slave-addr = <0x38>; + + hdmiphy at 38 { + compatible = "samsung,exynos4212-hdmiphy"; + reg = <0x38>; + }; +}; + +&i2c_9 { + status = "okay"; + samsung,i2c-sda-delay = <100>; + samsung,i2c-max-bus-freq = <40000>; + samsung,i2c-slave-addr = <0x38>; + + sata_phy_i2c:sata-phy at 38 { + compatible = "samsung,exynos-sataphy-i2c"; + reg = <0x38>; + }; +}; + +&i2s0 { + status = "okay"; +}; + +&mmc_0 { + status = "okay"; + num-slots = <1>; + supports-highspeed; + broken-cd; + card-detect-delay = <200>; + samsung,dw-mshc-ciu-div = <3>; + samsung,dw-mshc-sdr-timing = <2 3>; + samsung,dw-mshc-ddr-timing = <1 2>; + vmmc-supply = <&mmc_reg>; + pinctrl-names = "default"; + pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_bus8>; + + slot at 0 { + reg = <0>; + bus-width = <8>; + }; +}; - usb at 12110000 { - usb-phy = <&usb2_phy>; +&mmc_2 { + status = "okay"; + num-slots = <1>; + supports-highspeed; + card-detect-delay = <200>; + samsung,dw-mshc-ciu-div = <3>; + samsung,dw-mshc-sdr-timing = <2 3>; + samsung,dw-mshc-ddr-timing = <1 2>; + vmmc-supply = <&mmc_reg>; + pinctrl-names = "default"; + pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>; + + slot at 0 { + reg = <0>; + bus-width = <4>; + disable-wp; }; }; + +&rtc { + status = "okay"; +}; + +&sata { + status = "okay"; +}; + +&sata_phy { + status = "okay"; + samsung,exynos-sataphy-i2c-phandle = <&sata_phy_i2c>; +};
Signature · 1 line
1.9.3
Re: [PATCH v5 07/10] ARM: dts: Clean up exynos5250-arndale
Just wanted to report one issue unrelated to your changes I spotted while reviewing this patch. See below.
Quoted 4 lines · Andreas F?rber
Use the new style of referencing inherited nodes, use symbolic names, tidy indentation and reorder includes.
Goal is the alignment of all exynos5250 based device trees for comparison.
[snip]
arch/arm/boot/dts/exynos5250-arndale.dts line 547
Quoted 7 lines
arch/arm/boot/dts/exynos5250-arndale.dts +0
-7- fimd: fimd at 14400000 { - status = "okay"; - display-timings { - native-mode = <&timing0>; - timing0: timing at 0 { - /* 2560x1600 DP panel */ - clock-frequency = <50000>;
This apparently makes little sense as I doubt anybody would be willing to run a DP panel with refresh rate of 0,012 Hz...
Anyway, your patch just moves it, so this is just an unrelated report.
Best regards,
Tomasz
PATCH v5 8/10 ARM: dts: Fix apparent GPIO typo in exynos5250-arndale
In reply to Andreas FärberThe GPIO flag 2 has no constant assigned, so this was probably active-low.
---
v5: New
Spotted during cleanup.
arch/arm/boot/dts/exynos5250-arndale.dts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
arch/arm/boot/dts/exynos5250-arndale.dts +1 -1
@@ -164,7 +164,7 @@ }; &hdmi { - hpd-gpio = <&gpx3 7 2>; + hpd-gpio = <&gpx3 7 GPIO_ACTIVE_LOW>; vdd_osc-supply = <&ldo10_reg>; vdd_pll-supply = <&ldo8_reg>; vdd-supply = <&ldo8_reg>;
Signature · 1 line
1.9.3
PATCH v5 9/10 ARM: dts: Simplify USB3503 on exynos5250-arndale
In reply to Andreas FärberThere's no need for a simple-bus, place the smsc,usb3503a directly into the root node. That's what we're going to do on exynos5250-spring.
---
v5: New
Aligns with Spring's new USB3503 node.
arch/arm/boot/dts/exynos5250-arndale.dts | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-)
arch/arm/boot/dts/exynos5250-arndale.dts +5 -11
@@ -108,18 +108,12 @@ }; }; - usb_hub_bus { - compatible = "simple-bus"; - #address-cells = <1>; - #size-cells = <0>; + // SMSC USB3503 connected in hardware only mode as a PHY + usb_hub: usb-hub { + compatible = "smsc,usb3503a"; - // SMSC USB3503 connected in hardware only mode as a PHY - usb_hub: usb_hub { - compatible = "smsc,usb3503a"; - - reset-gpios = <&gpx3 5 GPIO_ACTIVE_LOW>; - connect-gpios = <&gpd1 7 GPIO_ACTIVE_LOW>; - }; + reset-gpios = <&gpx3 5 GPIO_ACTIVE_LOW>; + connect-gpios = <&gpd1 7 GPIO_ACTIVE_LOW>; }; };
Signature · 1 line
1.9.3
PATCH v5 10/10 ARM: dts: Add exynos5250-spring device tree
In reply to Andreas FärberAdds initial support for the HP Chromebook 11.
---
v4 -> v5:
* Dropped bogus USB3 regulator (Vincent Palatin, Tomasz Figa)
* Fixed USB3503 reset GPIO (Tomasz Figa)
* Introduced labels to use new referencing style consistently (Tomasz Figa)
* Don't override dp_hpd, moved to pinctrl_0 instead (Tomasz Figa)
* mmc_1: Added comment from Snow's mmc_3 (Tomasz Figa / Doug Anderson)
* Override /codec samsung,mfc-{l,r} properties for alignment with Arndale
* Use more GPIO_ACTIVE_* constants
* Use IRQ_TYPE_* constants
* Dropped s5m_ prefix for s5m8767 LDO regulator labels (max77686 is gone)
* Labeled also all s5m8767 BUCK regulators
v3 -> v4:
* Fixed samsung,pin-function 1 -> 0 for dp-hpd-gpio
* Replaced dp-hpd-gpio with existing dp_hpd, overriding it
v2 -> v3:
* Use GPIO_ACTIVE_{LOW,HIGH} (Doug Anderson)
* Use symbolic KEY_POWER instead of comment
* Moved hsic_reset to new USB3503 node's reset-gpios (Vincent Palatin)
* Use dp_hpd_gpio for dp-controller (Doug Anderson, Ajay Kumar)
* Override sd1_{clk,cmd,cd,bus4} pinctrl similar to Snow (Doug Anderson)
* Added ec_irq pinctrl for cros_ec (Doug Anderson)
* Reordered nodes to minimize diff against Snow (Doug Anderson)
* Dropped obsolete mmc_2 override (Doug Anderson)
* Added lid-switch node (Doug Anderson)
* Added gpio-keys pinctrl (Doug Anderson)
* Added bootargs to avoid empty /chosen node and to document console setting
* Renamed s5m8767_pmic node to avoid underscore
* Use new style for overriding inherited pinctrl nodes, too
* Enable i2s0 node
v1 -> v2:
* Use label-based overriding/extension of nodes. (Doug Anderson)
* Dropped tps65090 for now, until we know where to place it.
* Dropped non-Spring nodes from -cros-common.dtsi rather than disabling them.
* Enabled a missing MMC node for access to internal storage.
* Dropped display-timings from dp-controller node. (Ajay Kumar)
arch/arm/boot/dts/Makefile | 1 + arch/arm/boot/dts/exynos5250-spring.dts | 536 ++++++++++++++++++++++++++++++++ 2 files changed, 537 insertions(+) create mode 100644 arch/arm/boot/dts/exynos5250-spring.dts
arch/arm/boot/dts/Makefile +1 -0
@@ -76,6 +76,7 @@ dtb-$(CONFIG_ARCH_EXYNOS) += exynos4210-origen.dtb \ exynos5250-arndale.dtb \ exynos5250-smdk5250.dtb \ exynos5250-snow.dtb \ + exynos5250-spring.dtb \ exynos5260-xyref5260.dtb \ exynos5410-smdk5410.dtb \ exynos5420-arndale-octa.dtb \
arch/arm/boot/dts/exynos5250-spring.dts new file +536 -0
536 lines not on this page · raw message
Signature · 1 line
1.9.3
v5 cover ARM: dts: exynos: Prepare Spring
In reply to Andreas FärberAm 01.08.2014 06:54, schrieb Andreas F?rber:
Quoted 11 lines
Andreas F?rber (10):
ARM: dts: Fix MMC pinctrl for exynos5250-snow
ARM: dts: Fold exynos5250-cros-common into exynos5250-snow
ARM: dts: Clean up exynos5250-snow
ARM: dts: Fill in bootargs for exynos5250-snow
ARM: dts: Movedp_hpdfrom exynos5250 into smdk5250 and snow
ARM: dts: Clean up exynos5250-smdk5250
ARM: dts: Clean up exynos5250-arndaleARM: dts: Fix apparent GPIO typo in exynos5250-arndale
ARM: dts: Simplify USB3503 on exynos5250-arndale
Note that these two are again untested! They are entirely optional.
Andreas
Quoted 13 lines
ARM: dts: Add exynos5250-spring device tree
arch/arm/boot/dts/Makefile | 1 + arch/arm/boot/dts/exynos5250-arndale.dts | 927 +++++++++++++------------- arch/arm/boot/dts/exynos5250-cros-common.dtsi | 164 ----- arch/arm/boot/dts/exynos5250-pinctrl.dtsi | 7 - arch/arm/boot/dts/exynos5250-smdk5250.dts | 641 +++++++++--------- arch/arm/boot/dts/exynos5250-snow.dts | 441 +++++++----- arch/arm/boot/dts/exynos5250-spring.dts | 536 +++++++++++++++ arch/arm/boot/dts/exynos5250.dtsi | 24 +- 8 files changed, 1624 insertions(+), 1117 deletions(-) delete mode 100644 arch/arm/boot/dts/exynos5250-cros-common.dtsi create mode 100644 arch/arm/boot/dts/exynos5250-spring.dts
Signature · 2 lines
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 N?rnberg, Germany GF: Jeff Hawn, Jennifer Guild, Felix Imend?rffer; HRB 16746 AG N?rnberg
v5 cover ARM: dts: exynos: Prepare Spring
In reply to Andreas FärberHi Andreas,
Quoted 53 lines · Andreas F?rber
Hello,
Based on the preinstalled 3.8 based ChromeOS kernel and previous 3.15 based attempts by Stephan and me that broke for 3.16, I've prepared a device tree for the HP Chromebook 11 aka Google Spring.
v5 cleans up a regulator and the USB3503 hub and touches more exynos5250 files.
Not yet enabled are trackpad, Wifi and sound.
My rebasing branch for testing is here:
https://github.com/afaerber/linux/commits/spring-nextRegards,
Andreasv1 -> v2:
* Dropped 3 documentation patches from series:
2 picked up,
https://patchwork.kernel.org/patch/4397271/
https://patchwork.kernel.org/patch/4397291/
1 already sent separately as v2, pending.
https://patchwork.kernel.org/patch/4424881/
* Minimized and beautified Spring device tree and to some degree Snow as well. See individual patches.v2 -> v3:
* Rebased: Two -cros-common cleanup patches were already applied
* Lots of small cleanups for both Snow and Spring
* Enabled I2S in Spring for symmetry
* Added lid-switch and gpio-keys pinctrls to Springv3 -> v4:
* Fixed pin-function 1 -> 0 for dp-hpd pinctrl, style cleanupv4 -> v5:
* Dropped regulator and fixed USB3503 for Spring
* More cleanups, including SMDK5250 and ArndaleAndreas F?rber (10):
ARM: dts: Fix MMC pinctrl for exynos5250-snow
ARM: dts: Fold exynos5250-cros-common into exynos5250-snow
ARM: dts: Clean up exynos5250-snow
ARM: dts: Fill in bootargs for exynos5250-snow
ARM: dts: Movedp_hpdfrom exynos5250 into smdk5250 and snow
ARM: dts: Clean up exynos5250-smdk5250
ARM: dts: Clean up exynos5250-arndale
ARM: dts: Fix apparent GPIO typo in exynos5250-arndale
ARM: dts: Simplify USB3503 on exynos5250-arndale
ARM: dts: Add exynos5250-spring device tree
Quoted 12 lines
arch/arm/boot/dts/Makefile | 1 + arch/arm/boot/dts/exynos5250-arndale.dts | 927 +++++++++++++------------- arch/arm/boot/dts/exynos5250-cros-common.dtsi | 164 ----- arch/arm/boot/dts/exynos5250-pinctrl.dtsi | 7 - arch/arm/boot/dts/exynos5250-smdk5250.dts | 641 +++++++++--------- arch/arm/boot/dts/exynos5250-snow.dts | 441 +++++++----- arch/arm/boot/dts/exynos5250-spring.dts | 536 +++++++++++++++ arch/arm/boot/dts/exynos5250.dtsi | 24 +- 8 files changed, 1624 insertions(+), 1117 deletions(-) delete mode 100644 arch/arm/boot/dts/exynos5250-cros-common.dtsi create mode 100644 arch/arm/boot/dts/exynos5250-spring.dts
I have looked through all the patches and they look good to me, so, for the whole series:
There is one unrelated issue I reported in my reply to patch 7/10, but it is more of a bug report, not a comment to your patch.
Best regards,
Tomasz