From: Jonathan Bakker <xc-rac...@live.ca>

This commit enables following devices present on Aries based phones:
- pwm-vibrator attached to PWM 1
- poweroff support
- Atmel maXTouch touchscreen. It's connected to i2c2
- Broadcom BCM4329 bluetooth over uart0

Signed-off-by: Jonathan Bakker <xc-rac...@live.ca>
Signed-off-by: Paweł Chmiel <pawel.mikolaj.chm...@gmail.com>
---
 arch/arm/boot/dts/s5pv210-aries.dtsi | 68 ++++++++++++++++++++++++++++
 1 file changed, 68 insertions(+)

diff --git a/arch/arm/boot/dts/s5pv210-aries.dtsi 
b/arch/arm/boot/dts/s5pv210-aries.dtsi
index 35ba009a1a33..b7246f879648 100644
--- a/arch/arm/boot/dts/s5pv210-aries.dtsi
+++ b/arch/arm/boot/dts/s5pv210-aries.dtsi
@@ -41,6 +41,13 @@
                };
        };
 
+       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>;
@@ -314,6 +321,22 @@
                        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 {
@@ -347,6 +370,23 @@
        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_LEVEL_LOW>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&ts_irq>;
+               reset-gpios = <&gpj1 3 GPIO_ACTIVE_HIGH>;
+       };
+};
+
 &mfc {
        memory-region = <&mfc_left>, <&mfc_right>;
 };
@@ -372,6 +412,13 @@
                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>;
@@ -384,6 +431,17 @@
                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_UP>;
+               samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
+       };
+};
+
+&pwm {
+       samsung,pwm-outputs = <1>;
 };
 
 &sdhci1 {
@@ -421,6 +479,16 @@
 
 &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 {
-- 
2.17.1

Reply via email to