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: Robert Jarzmik <robert.jarzmik@free.fr> Signed-off-by: Felipe Balbi <balbi@ti.com>
This commit is contained in:
parent
2db88a7696
commit
3ec8347bfa
@ -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)
|
|||||||
{
|
{
|
||||||
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)
|
|||||||
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 {
|
|||||||
* @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 {
|
|||||||
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;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user