Samsung DTS ARM changes for v5.1

1. Extend support for Aries family of mobile devices (e.g. Samsung
    Galaxy S) based on S5Pv210 SoC: DRM Rotator, FIMD, PWM vibrator,
    power off, touchscreen, Broadcom BCM4329 Bluetooth and cpufreq.
 2. Remove hardcoded bootargs on Galaxy S family (proper support in
    U-Boot).
 3. Fix minor DTC warnings.
 4. Fix Exynos4412 Odroid X2/U3 conflicting eMMC GPIO settings and regulator
    properties.
 5. Fix the eMMC RTSN pin breaking proper reboot on X2.
 -----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCgAuFiEE3dJiKD0RGyM7briowTdm5oaLg9cFAlxUmBoQHGtyemtAa2Vy
 bmVsLm9yZwAKCRDBN2bmhouD115MD/wLf75FsakZ21mCRPmQ2DNhRzlZezCi75YH
 7a/AO9j9I2+gL5Bg9oIHS/5l3YnZSDqYfBj61fzHIEp5lzD1UwVBJLUsDS00NKHt
 B58/dH2V9pFj9ZyUDJj7MdMCrt7dNznGDOeztG8XRWd7AeoENP3ysDnjvd6FmGLY
 2AgoTrql0cGzTwIcL7dTgg1dEdwSTPyQ1rXovAnF6ylRwFnts9xWRgdIm2/IAzHz
 /vgdXzApFykWaoEH+5NIskNQZuGgDKi5zAT4h1yMcOamG7FxBRGzaWJiG+YhQC/M
 c6wMaOZxnTRDOhLpcVsNS3i1FCIN6TtbAq0kMDz99v7o2RJm3AdroM+Hm4bXc4sU
 JKk8PVufQxk37JIygUCBESwVVNhnX4ZzIGQSxX74k9rvLEYjdnzEU0o5s/69h/q+
 1kK8t0/2CPVXKRKkNV7X0wAyLYoNtNh84v45Xyp0EJLHgMA2E2L2zojFqKISlilG
 4ctnWG9se7PCGBVLAHAX1z2htMPQ0rHdSYi7U5Z5rJoRdVy96CcYMPXCtKxTtqea
 02tNyXxi+bgizsQBSTpwG2+66p5vAIwA/PYLM4b6ZcTILmS0jjCZCUS6wfxYYa22
 5Y37sPNSxjAOireg0QQJiBiiiHn+0qYakdw/t11zJ8tc2JDhDVD5tYaahpS8IH5g
 NDHCIjBDZQ==
 =9+iJ
 -----END PGP SIGNATURE-----

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

Samsung DTS ARM changes for v5.1

1. Extend support for Aries family of mobile devices (e.g. Samsung
   Galaxy S) based on S5Pv210 SoC: DRM Rotator, FIMD, PWM vibrator,
   power off, touchscreen, Broadcom BCM4329 Bluetooth and cpufreq.
2. Remove hardcoded bootargs on Galaxy S family (proper support in
   U-Boot).
3. Fix minor DTC warnings.
4. Fix Exynos4412 Odroid X2/U3 conflicting eMMC GPIO settings and regulator
   properties.
5. Fix the eMMC RTSN pin breaking proper reboot on X2.

* tag 'samsung-dt-5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
  ARM: dts: exynos: Fix pinctrl definition for eMMC RTSN line on Odroid X2/U3
  ARM: dts: exynos: Fix eMMC regulator properties on Odroid U3 boards
  ARM: dts: exynos: Fix conflicting fixed-regulator GPIO flags and properties
  ARM: dts: s3c2416: Fix xti node's missing reg property warning
  ARM: dts: s5pv210: Fix onenand's unit address format warning
  ARM: dts: s5pv210: Add DMC nodes
  ARM: dts: s5pv210: Add support for more devices present on Aries
  ARM: dts: s5pv210: Add reserved memory for MFC on Aries
  ARM: dts: s5pv210: Remove hardcoded bootargs on Galaxy S and Fascinate 4G
  ARM: dts: s5pv210: Use correct fimd variant
  ARM: dts: s5pv210: Add node for exynos-rotator

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
Arnd Bergmann 2019-02-15 14:48:24 +01:00
commit bb173ff7f1
8 changed files with 125 additions and 27 deletions

View File

@ -49,7 +49,7 @@ codec {
};
emmc_pwrseq: pwrseq {
pinctrl-0 = <&sd1_cd>;
pinctrl-0 = <&emmc_rstn>;
pinctrl-names = "default";
compatible = "mmc-pwrseq-emmc";
reset-gpios = <&gpk1 2 GPIO_ACTIVE_LOW>;
@ -165,12 +165,6 @@ &cpu0 {
cpu0-supply = <&buck2_reg>;
};
/* RSTN signal for eMMC */
&sd1_cd {
samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
};
&pinctrl_1 {
gpio_power_key: power_key {
samsung,pins = "gpx1-3";
@ -188,6 +182,11 @@ hdmi_hpd: hdmi-hpd {
samsung,pins = "gpx3-7";
samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
};
emmc_rstn: emmc-rstn {
samsung,pins = "gpk1-2";
samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
};
};
&ehci {
@ -390,7 +389,6 @@ ldo20_reg: LDO20 {
regulator-name = "LDO20_1.8V";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-boot-on;
};
ldo21_reg: LDO21 {

View File

@ -53,7 +53,7 @@ regulator_p3v3 {
regulator-name = "p3v3_en";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpa1 1 GPIO_ACTIVE_LOW>;
gpio = <&gpa1 1 GPIO_ACTIVE_HIGH>;
enable-active-high;
regulator-always-on;
};

View File

@ -100,7 +100,7 @@ mmc_reg: regulator@1 {
regulator-name = "VDD_33ON_2.8V";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
gpio = <&gpx1 1 GPIO_ACTIVE_LOW>;
gpio = <&gpx1 1 GPIO_ACTIVE_HIGH>;
enable-active-high;
};

View File

@ -19,9 +19,12 @@ memory@30000000 {
clocks {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <0>;
xti: xti {
xti: xti@0 {
compatible = "fixed-clock";
reg = <0>;
clock-frequency = <12000000>;
clock-output-names = "xti";
#clock-cells = <0>;

View File

@ -23,6 +23,31 @@ memory@30000000 {
0x50000000 0x08000000>;
};
reserved-memory {
#address-cells = <1>;
#size-cells = <1>;
ranges;
mfc_left: region@43000000 {
compatible = "shared-dma-pool";
no-map;
reg = <0x43000000 0x2000000>;
};
mfc_right: region@51000000 {
compatible = "shared-dma-pool";
no-map;
reg = <0x51000000 0x2000000>;
};
};
vibrator_pwr: regulator-fixed-0 {
compatible = "regulator-fixed";
regulator-name = "vibrator-en";
enable-active-high;
gpio = <&gpj1 1 GPIO_ACTIVE_HIGH>;
};
wifi_pwrseq: wifi-pwrseq {
compatible = "mmc-pwrseq-simple";
reset-gpios = <&gpg1 2 GPIO_ACTIVE_LOW>;
@ -296,6 +321,22 @@ fuelgauge@36 {
reg = <0x36>;
};
};
vibrator: pwm-vibrator {
compatible = "pwm-vibrator";
pwms = <&pwm 1 44642 0>;
pwm-names = "enable";
vcc-supply = <&vibrator_pwr>;
pinctrl-names = "default";
pinctrl-0 = <&pwm1_out>;
};
poweroff: syscon-poweroff {
compatible = "syscon-poweroff";
regmap = <&pmu_syscon>;
offset = <0x681c>; /* PS_HOLD_CONTROL */
value = <0x5200>;
};
};
&fimd {
@ -329,6 +370,27 @@ &hsotg {
status = "okay";
};
&i2c2 {
samsung,i2c-sda-delay = <100>;
samsung,i2c-max-bus-freq = <400000>;
samsung,i2c-slave-addr = <0x10>;
status = "okay";
touchscreen@4a {
compatible = "atmel,maxtouch";
reg = <0x4a>;
interrupt-parent = <&gpj0>;
interrupts = <5 IRQ_TYPE_EDGE_FALLING>;
pinctrl-names = "default";
pinctrl-0 = <&ts_irq>;
reset-gpios = <&gpj1 3 GPIO_ACTIVE_HIGH>;
};
};
&mfc {
memory-region = <&mfc_left>, <&mfc_right>;
};
&pinctrl0 {
wlan_bt_en: wlan-bt-en {
samsung,pins = "gpb-5";
@ -350,6 +412,13 @@ wifi_host_wake: wifi-host-wake {
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
};
bt_host_wake: bt-host-wake {
samsung,pins = "gph2-5";
samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
samsung,pin-pud = <S3C64XX_PIN_PULL_DOWN>;
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
};
tf_detect: tf-detect {
samsung,pins = "gph3-4";
samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
@ -362,6 +431,17 @@ wifi_wake: wifi-wake {
samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
};
ts_irq: ts-irq {
samsung,pins = "gpj0-5";
samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
};
};
&pwm {
samsung,pwm-outputs = <1>;
};
&sdhci1 {
@ -399,6 +479,16 @@ &sdhci2 {
&uart0 {
status = "okay";
bluetooth {
compatible = "brcm,bcm43438-bt";
max-speed = <115200>;
pinctrl-names = "default";
pinctrl-0 = <&uart0_data &uart0_fctl &bt_host_wake>;
shutdown-gpios = <&gpb 3 GPIO_ACTIVE_HIGH>;
device-wakeup-gpios = <&gpg3 4 GPIO_ACTIVE_HIGH>;
host-wakeup-gpios = <&gph2 5 GPIO_ACTIVE_HIGH>;
};
};
&uart1 {

View File

@ -11,13 +11,6 @@ / {
chosen {
stdout-path = &uart2;
/*
* It's hard to change those parameters in stock bootloader,
* since it requires special hardware/cable.
* Let's hardocde bootargs for now, till u-boot port is finished,
* with which it should be easier.
*/
bootargs = "root=/dev/mmcblk1p1 rw rootwait ignore_loglevel earlyprintk";
};
gpio-keys {

View File

@ -11,13 +11,6 @@ / {
chosen {
stdout-path = &uart2;
/*
* It's hard to change those parameters in stock bootloader,
* since it requires special hardware/cable.
* Let's hardocde bootargs for now, till u-boot port is finished,
* with which it should be easier.
*/
bootargs = "root=/dev/mmcblk2p1 rw rootwait ignore_loglevel earlyprintk";
};
nand_pwrseq: nand-pwrseq {

View File

@ -25,6 +25,8 @@ / {
aliases {
csis0 = &csis0;
dmc0 = &dmc0;
dmc1 = &dmc1;
fimc0 = &fimc0;
fimc1 = &fimc1;
fimc2 = &fimc2;
@ -78,7 +80,7 @@ xusbxti: oscillator@1 {
};
};
onenand: onenand@b0000000 {
onenand: onenand@b0600000 {
compatible = "samsung,s5pv210-onenand";
reg = <0xb0600000 0x2000>,
<0xb0000000 0x20000>,
@ -511,7 +513,7 @@ vic3: interrupt-controller@f2300000 {
};
fimd: fimd@f8000000 {
compatible = "samsung,exynos4210-fimd";
compatible = "samsung,s5pv210-fimd";
interrupt-parent = <&vic2>;
reg = <0xf8000000 0x20000>;
interrupt-names = "fifo", "vsync", "lcd_sys";
@ -521,6 +523,16 @@ fimd: fimd@f8000000 {
status = "disabled";
};
dmc0: dmc@f0000000 {
compatible = "samsung,s5pv210-dmc";
reg = <0xf0000000 0x1000>;
};
dmc1: dmc@f1400000 {
compatible = "samsung,s5pv210-dmc";
reg = <0xf1400000 0x1000>;
};
g2d: g2d@fa000000 {
compatible = "samsung,s5pv210-g2d";
reg = <0xfa000000 0x1000>;
@ -542,6 +554,15 @@ mdma1: mdma@fa200000 {
#dma-requests = <1>;
};
rotator: rotator@fa300000 {
compatible = "samsung,s5pv210-rotator";
reg = <0xfa300000 0x1000>;
interrupt-parent = <&vic2>;
interrupts = <4>;
clocks = <&clocks CLK_ROTATOR>;
clock-names = "rotator";
};
i2c1: i2c@fab00000 {
compatible = "samsung,s3c2440-i2c";
reg = <0xfab00000 0x1000>;