The Fairchild FSA9480 is a USB mux connected over i2c-gpio.

Signed-off-by: Jonathan Bakker <xc-rac...@live.ca>
---
 arch/arm/boot/dts/s5pv210-aries.dtsi | 36 ++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)

diff --git a/arch/arm/boot/dts/s5pv210-aries.dtsi 
b/arch/arm/boot/dts/s5pv210-aries.dtsi
index 7d001c22c532..6233884713cb 100644
--- a/arch/arm/boot/dts/s5pv210-aries.dtsi
+++ b/arch/arm/boot/dts/s5pv210-aries.dtsi
@@ -14,6 +14,7 @@
        aliases {
                i2c4 = &i2c_sound;
                i2c6 = &i2c_pmic;
+               i2c7 = &i2c_musb;
                i2c9 = &i2c_fuel;
        };
 
@@ -358,6 +359,28 @@
                };
        };
 
+       i2c_musb: i2c-gpio-3 {
+               compatible = "i2c-gpio";
+               sda-gpios = <&gpj3 4 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+               scl-gpios = <&gpj3 5 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+               i2c-gpio,delay-us = <2>;
+               #address-cells = <1>;
+               #size-cells = <0>;
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&musb_i2c_pins>;
+
+               fsa9480: musb@25 {
+                       compatible = "fcs,fsa9480";
+                       reg = <0x25>;
+                       interrupt-parent = <&gph2>;
+                       interrupts = <7 IRQ_TYPE_EDGE_FALLING>;
+
+                       pinctrl-names = "default";
+                       pinctrl-0 = <&musb_irq>;
+               };
+       };
+
        i2c_fuel: i2c-gpio-4 {
                compatible = "i2c-gpio";
                sda-gpios = <&mp05 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
@@ -480,6 +503,13 @@
                samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
        };
 
+       musb_irq: musq-irq {
+               samsung,pins = "gph2-7";
+               samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
+               samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
+               samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
+       };
+
        tf_detect: tf-detect {
                samsung,pins = "gph3-4";
                samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
@@ -500,6 +530,12 @@
                samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
        };
 
+       musb_i2c_pins: musb-i2c-pins {
+               samsung,pins = "gpj3-4", "gpj3-5";
+               samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
+               samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
+       };
+
        pmic_i2c_pins: pmic-i2c-pins {
                samsung,pins = "gpj4-0", "gpj4-3";
                samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
-- 
2.20.1

Reply via email to