ARM: at91: dt: enable usb ohci for sam9g20, sam9g45 amd sam9x5
authorJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Sun, 20 Nov 2011 22:55:18 +0000 (06:55 +0800)
committerJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Thu, 15 Mar 2012 16:40:55 +0000 (00:40 +0800)
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Cc: Nicolas Ferre <nicolas.ferre@atmel.com>
Cc: devicetree-discuss@lists.ozlabs.org
arch/arm/boot/dts/at91sam9g20.dtsi
arch/arm/boot/dts/at91sam9g25ek.dts
arch/arm/boot/dts/at91sam9g45.dtsi
arch/arm/boot/dts/at91sam9m10g45ek.dts
arch/arm/boot/dts/at91sam9x5.dtsi
arch/arm/boot/dts/usb_a9g20.dts
arch/arm/mach-at91/at91sam9260.c
arch/arm/mach-at91/at91sam9g45.c
arch/arm/mach-at91/at91sam9x5.c

index 9a0647b..f091d67 100644 (file)
                                >;
                        status = "disabled";
                };
+
+               usb0: ohci@00500000 {
+                       compatible = "atmel,at91rm9200-ohci", "usb-ohci";
+                       reg = <0x00500000 0x100000>;
+                       interrupts = <20 4>;
+                       status = "disabled";
+               };
        };
 
        i2c@0 {
index c7596bf..93d5e36 100644 (file)
                                status = "okay";
                        };
                };
+
+               usb0: ohci@00600000 {
+                       status = "okay";
+                       num-ports = <2>;
+                       atmel,vbus-gpio = <&pioD 19 0
+                                          &pioD 20 0
+                                         >;
+               };
        };
 };
index 8908f07..4ab8a25 100644 (file)
                                >;
                        status = "disabled";
                };
+
+               usb0: ohci@00700000 {
+                       compatible = "atmel,at91rm9200-ohci", "usb-ohci";
+                       reg = <0x00700000 0x100000>;
+                       interrupts = <22 4>;
+                       status = "disabled";
+               };
        };
 
        i2c@0 {
index a895824..0c101ad 100644 (file)
                                label = "data";
                                reg = <0x4000000 0xC000000>;
                        };
+               };
 
+               usb0: ohci@00700000 {
+                       status = "okay";
+                       num-ports = <2>;
+                       atmel,vbus-gpio = <&pioD 1 0
+                                          &pioD 3 0>;
                };
        };
 
index 20155cc..1d8b6ac 100644 (file)
                                >;
                        status = "disabled";
                };
+
+               usb0: ohci@00600000 {
+                       compatible = "atmel,at91rm9200-ohci", "usb-ohci";
+                       reg = <0x00600000 0x100000>;
+                       interrupts = <22 4>;
+                       status = "disabled";
+               };
        };
 
        i2c@0 {
index 73f1dc4..748d4c2 100644 (file)
                                reg = <0x7ca0000 0x8360000>;
                        };
                };
+
+               usb0: ohci@00500000 {
+                       num-ports = <2>;
+                       status = "okay";
+               };
        };
 
        leds {
index 14b5a9c..d1e5750 100644 (file)
@@ -216,6 +216,7 @@ static struct clk_lookup periph_clocks_lookups[] = {
        CLKDEV_CON_DEV_ID("t0_clk", "fffdc000.timer", &tc3_clk),
        CLKDEV_CON_DEV_ID("t1_clk", "fffdc000.timer", &tc4_clk),
        CLKDEV_CON_DEV_ID("t2_clk", "fffdc000.timer", &tc5_clk),
+       CLKDEV_CON_DEV_ID("hclk", "500000.ohci", &ohci_clk),
        /* fake hclk clock */
        CLKDEV_CON_DEV_ID("hclk", "at91_ohci", &ohci_clk),
        CLKDEV_CON_ID("pioA", &pioA_clk),
index 0014573..f58775e 100644 (file)
@@ -232,6 +232,7 @@ static struct clk_lookup periph_clocks_lookups[] = {
        /* more tc lookup table for DT entries */
        CLKDEV_CON_DEV_ID("t0_clk", "fff7c000.timer", &tcb0_clk),
        CLKDEV_CON_DEV_ID("t0_clk", "fffd4000.timer", &tcb0_clk),
+       CLKDEV_CON_DEV_ID("hclk", "700000.ohci", &uhphs_clk),
        /* fake hclk clock */
        CLKDEV_CON_DEV_ID("hclk", "at91_ohci", &uhphs_clk),
        CLKDEV_CON_ID("pioA", &pioA_clk),
index 01b2bd8..ec65ef7 100644 (file)
@@ -131,7 +131,7 @@ static struct clk dma1_clk = {
        .type           = CLK_TYPE_PERIPHERAL,
 };
 static struct clk uhphs_clk = {
-       .name           = "uhphs_clk",
+       .name           = "uhphs",
        .pmc_mask       = 1 << AT91SAM9X5_ID_UHPHS,
        .type           = CLK_TYPE_PERIPHERAL,
 };
@@ -230,6 +230,8 @@ static struct clk_lookup periph_clocks_lookups[] = {
        /* additional fake clock for macb_hclk */
        CLKDEV_CON_DEV_ID("hclk", "f802c000.ethernet", &macb0_clk),
        CLKDEV_CON_DEV_ID("hclk", "f8030000.ethernet", &macb1_clk),
+       CLKDEV_CON_DEV_ID("hclk", "600000.ohci", &uhphs_clk),
+       CLKDEV_CON_DEV_ID("ohci_clk", "600000.ohci", &uhphs_clk),
 };
 
 /*