summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-at91/at91sam9260_devices.c
diff options
context:
space:
mode:
authorJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>2011-12-12 15:46:56 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2011-12-23 18:15:29 +0100
commitc100eacc25c5b59a5d68f7b0590c295cb398e934 (patch)
treef39acd1bd5df7595d35c7ed338c91f48709097b5 /arch/arm/mach-at91/at91sam9260_devices.c
parentb25bb1f0726bf81aa1af52bd1eca63b51c907bcf (diff)
downloadbarebox-c100eacc25c5b59a5d68f7b0590c295cb398e934.tar.gz
barebox-c100eacc25c5b59a5d68f7b0590c295cb398e934.tar.xz
at91: add at91_udc resource
this device controller is present on rm9200/9260/9g20/9261/9g10/9263 the 9g45 use an other IP Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/mach-at91/at91sam9260_devices.c')
-rw-r--r--arch/arm/mach-at91/at91sam9260_devices.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/arch/arm/mach-at91/at91sam9260_devices.c b/arch/arm/mach-at91/at91sam9260_devices.c
index be1fdd927e..945530f5b1 100644
--- a/arch/arm/mach-at91/at91sam9260_devices.c
+++ b/arch/arm/mach-at91/at91sam9260_devices.c
@@ -39,6 +39,25 @@ void __init at91_add_device_usbh_ohci(struct at91_usbh_data *data)
void __init at91_add_device_usbh_ohci(struct at91_usbh_data *data) {}
#endif
+/* --------------------------------------------------------------------
+ * USB Device (Gadget)
+ * -------------------------------------------------------------------- */
+
+#ifdef CONFIG_USB_GADGET_DRIVER_AT91
+void __init at91_add_device_udc(struct at91_udc_data *data)
+{
+ if (data->vbus_pin > 0) {
+ at91_set_gpio_input(data->vbus_pin, 0);
+ at91_set_deglitch(data->vbus_pin, 1);
+ }
+
+ add_generic_device("at91_udc", -1, NULL, AT91SAM9260_BASE_UDP, SZ_16K,
+ IORESOURCE_MEM, data);
+}
+#else
+void __init at91_add_device_udc(struct at91_udc_data *data) {}
+#endif
+
#if defined(CONFIG_DRIVER_NET_MACB)
void at91_add_device_eth(struct at91_ether_platform_data *data)
{