pxa27x_udc: remove call to unimplemented set_GPIO_mode()
authorMike Dunn <mikedunn@newsguy.com>
Fri, 12 Apr 2013 18:59:15 +0000 (11:59 -0700)
committerMarek Vasut <marex@denx.de>
Sun, 5 May 2013 21:47:05 +0000 (23:47 +0200)
If CONFIG_USB_DEV_PULLUP_GPIO is defined, a link error occurs because the
set_GPIO_mode() helper function is not implemented.  This function doesn't do
much except make the code a little more readable, so I just manually coded its
equivalent and removed the prototype from the header file.  It is invoked no
where else in the code.

While I was at it, I noticed that two other function prototypes in the same
header file are also neither implemented nor invoked anywhere, so I removed them
as well.

Signed-off-by: Mike Dunn <mikedunn@newsguy.com>
arch/arm/include/asm/arch-pxa/hardware.h
drivers/usb/gadget/pxa27x_udc.c

index 44b800f681638f5f3d6fd090ae55b88a31f25a7d..2397bcef0dee4d87bc809603ef91e4f4ecbdf89f 100644 (file)
 #define GPIO_FALLING_EDGE      1
 #define GPIO_RISING_EDGE       2
 #define GPIO_BOTH_EDGES                3
-extern void set_GPIO_IRQ_edge( int gpio_nr, int edge_mask );
-
-/*
- * Handy routine to set GPIO alternate functions
- */
-extern void set_GPIO_mode( int gpio_mode );
-
-/*
- * return current lclk frequency in units of 10kHz
- */
-extern unsigned int get_lclk_frequency_10khz(void);
 
 #endif
 
index 4c00081743679c54132978b1cb0abad9fc5d505b..71cc0f2a0562ad4d75141a9388180a2ffe7da482 100644 (file)
@@ -610,7 +610,9 @@ void udc_connect(void)
 
 #ifdef CONFIG_USB_DEV_PULLUP_GPIO
        /* Turn on the USB connection by enabling the pullup resistor */
-       set_GPIO_mode(CONFIG_USB_DEV_PULLUP_GPIO | GPIO_OUT);
+       writel(readl(GPDR(CONFIG_USB_DEV_PULLUP_GPIO))
+                    | GPIO_bit(CONFIG_USB_DEV_PULLUP_GPIO),
+              GPDR(CONFIG_USB_DEV_PULLUP_GPIO));
        writel(GPIO_bit(CONFIG_USB_DEV_PULLUP_GPIO), GPSR(CONFIG_USB_DEV_PULLUP_GPIO));
 #else
        /* Host port 2 transceiver D+ pull up enable */