Commit 3ec8347b authored by Robert Jarzmik's avatar Robert Jarzmik Committed by Felipe Balbi

usb: gadget: pxa27x_udc: transfer mach_info into pxa_udc

Convert the mach info, and store the udc_command in the pxa_udc control
structure.

It is to be noticed that the udc_is_connected() in mach info is not
transfered. This was not used, as mioa701 machine doesn't need it,
balloon3 doesn't really use it, and most importantly the current driver
never uses it.
Signed-off-by: default avatarRobert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
parent 2db88a76
...@@ -1510,11 +1510,11 @@ static void dplus_pullup(struct pxa_udc *udc, int on) ...@@ -1510,11 +1510,11 @@ static void dplus_pullup(struct pxa_udc *udc, int on)
{ {
if (udc->gpiod) { if (udc->gpiod) {
gpiod_set_value(udc->gpiod, on); gpiod_set_value(udc->gpiod, on);
} else if (udc->mach && udc->mach->udc_command) { } else if (udc->udc_command) {
if (on) if (on)
udc->mach->udc_command(PXA2XX_UDC_CMD_CONNECT); udc->udc_command(PXA2XX_UDC_CMD_CONNECT);
else else
udc->mach->udc_command(PXA2XX_UDC_CMD_DISCONNECT); udc->udc_command(PXA2XX_UDC_CMD_DISCONNECT);
} }
udc->pullup_on = on; udc->pullup_on = on;
} }
...@@ -1605,7 +1605,7 @@ static int pxa_udc_pullup(struct usb_gadget *_gadget, int is_active) ...@@ -1605,7 +1605,7 @@ static int pxa_udc_pullup(struct usb_gadget *_gadget, int is_active)
{ {
struct pxa_udc *udc = to_gadget_udc(_gadget); struct pxa_udc *udc = to_gadget_udc(_gadget);
if (!udc->gpiod && !udc->mach->udc_command) if (!udc->gpiod && !udc->udc_command)
return -EOPNOTSUPP; return -EOPNOTSUPP;
dplus_pullup(udc, is_active); dplus_pullup(udc, is_active);
...@@ -2426,7 +2426,7 @@ static int pxa_udc_probe(struct platform_device *pdev) ...@@ -2426,7 +2426,7 @@ static int pxa_udc_probe(struct platform_device *pdev)
return retval; return retval;
udc->gpiod = gpio_to_desc(mach->gpio_pullup); udc->gpiod = gpio_to_desc(mach->gpio_pullup);
} }
udc->mach = mach; udc->udc_command = mach->udc_command;
} }
regs = platform_get_resource(pdev, IORESOURCE_MEM, 0); regs = platform_get_resource(pdev, IORESOURCE_MEM, 0);
......
...@@ -420,7 +420,7 @@ struct udc_stats { ...@@ -420,7 +420,7 @@ struct udc_stats {
* @usb_gadget: udc gadget structure * @usb_gadget: udc gadget structure
* @driver: bound gadget (zero, g_ether, g_mass_storage, ...) * @driver: bound gadget (zero, g_ether, g_mass_storage, ...)
* @dev: device * @dev: device
* @mach: machine info, used to activate specific GPIO * @udc_command: machine specific function to activate D+ pullup
* @gpiod: gpio descriptor of gpio for D+ pullup (or NULL if none) * @gpiod: gpio descriptor of gpio for D+ pullup (or NULL if none)
* @transceiver: external transceiver to handle vbus sense and D+ pullup * @transceiver: external transceiver to handle vbus sense and D+ pullup
* @ep0state: control endpoint state machine state * @ep0state: control endpoint state machine state
...@@ -447,7 +447,7 @@ struct pxa_udc { ...@@ -447,7 +447,7 @@ struct pxa_udc {
struct usb_gadget gadget; struct usb_gadget gadget;
struct usb_gadget_driver *driver; struct usb_gadget_driver *driver;
struct device *dev; struct device *dev;
struct pxa2xx_udc_mach_info *mach; void (*udc_command)(int);
struct gpio_desc *gpiod; struct gpio_desc *gpiod;
struct usb_phy *transceiver; struct usb_phy *transceiver;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment