From: David Brownell <[email protected]>

Board support for USB on the DM355 EVM.
MUSB driver updates are also needed.

Signed-off-by: David Brownell <[email protected]>
---
 arch/arm/mach-davinci/board-dm355-evm.c |   16 ++++++++++++++++
 1 file changed, 16 insertions(+)

--- a/arch/arm/mach-davinci/board-dm355-evm.c
+++ b/arch/arm/mach-davinci/board-dm355-evm.c
@@ -201,6 +201,17 @@ static struct davinci_mmc_config dm355ev
        .wires          = 4,
 };
 
+/* Don't connect anything to J10 unless you're only using USB host
+ * mode *and* have to do so with some kind of gender-bender.  If
+ * you have proper Mini-B or Mini-A cables (or Mini-A adapters)
+ * the ID pin won't need any help.
+ */
+#ifdef CONFIG_USB_MUSB_PERIPHERAL
+#define USB_ID_VALUE   0       /* ID pulled high; *should* float */
+#else
+#define USB_ID_VALUE   1       /* ID pulled low */
+#endif
+
 static __init void dm355_evm_init(void)
 {
        davinci_psc_init();
@@ -216,6 +227,11 @@ static __init void dm355_evm_init(void)
        davinci_board_config_size = ARRAY_SIZE(davinci_evm_config);
        davinci_serial_init();
 
+       gpio_request(2, "usb_id_toggle");
+       gpio_direction_output(2, USB_ID_VALUE);
+       /* irlml6401 switches over 1A in under 8 msec */
+       setup_usb(500, 8);
+
        davinci_setup_mmc(0, &dm355evm_mmc_config);
        davinci_setup_mmc(1, &dm355evm_mmc_config);
 }


_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to