[ARM] 4738/1: at91sam9261: Remove udc pullup enabling in board initialisation
authorChristian Glindkamp <christian.glindkamp@taskit.de>
Thu, 3 Jan 2008 11:15:23 +0000 (12:15 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Sat, 26 Jan 2008 15:00:33 +0000 (15:00 +0000)
Currently the udc pullup is enabled by default on boot. If the device
is connected to a host at this time, the host starts the negotiation
before the udc/gadget driver is ready to handle it.

Signed-off-by: Christian Glindkamp <christian.glindkamp@taskit.de>
Acked-by: David Brownell <dbrownell@users.sourceforge.net>
Acked-by: Andrew Victor <linux@maxim.org.za>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/mach-at91/at91sam9261_devices.c

index 57d7e3b..2456412 100644 (file)
@@ -107,8 +107,6 @@ static struct platform_device at91sam9261_udc_device = {
 
 void __init at91_add_device_udc(struct at91_udc_data *data)
 {
-       unsigned long x;
-
        if (!data)
                return;
 
@@ -117,9 +115,7 @@ void __init at91_add_device_udc(struct at91_udc_data *data)
                at91_set_deglitch(data->vbus_pin, 1);
        }
 
-       /* Pullup pin is handled internally */
-       x = at91_sys_read(AT91_MATRIX_USBPUCR);
-       at91_sys_write(AT91_MATRIX_USBPUCR, x | AT91_MATRIX_USBPUCR_PUON);
+       /* Pullup pin is handled internally by USB device peripheral */
 
        udc_data = *data;
        platform_device_register(&at91sam9261_udc_device);