static struct gadget_wrapper *alloc_wrapper( struct dwc_otg_device *_dev ) { static char pcd_name[] = "dwc_otg"; //dwc_otg_device_t *otg_dev = platform_get_drvdata(_dev); dwc_otg_device_t *otg_dev = _dev; struct gadget_wrapper *d; int retval; d = dwc_alloc(sizeof(*d)); if (d == NULL) { return NULL; } memset(d, 0, sizeof(*d)); d->gadget.name = pcd_name; d->pcd = otg_dev->pcd; //sword /* strcpy(d->gadget.dev.bus_id, "gadget"); */ #if 0 dev_set_name(&d->gadget.dev, "gadget"); d->gadget.dev.parent = &_dev->dev; d->gadget.dev.release = dwc_otg_pcd_gadget_release; #endif d->gadget.ops = &dwc_otg_pcd_ops; d->gadget.is_dualspeed = dwc_otg_pcd_is_dualspeed(otg_dev->pcd); d->gadget.is_otg = dwc_otg_pcd_is_otg(otg_dev->pcd); d->driver = 0; /* Register the gadget device */ #if 0 retval = device_register(&d->gadget.dev); if (retval != 0) { DWC_ERROR("device_register failed\n"); dwc_free(d); return NULL; } #endif return d; }
static struct gadget_wrapper *alloc_wrapper( struct platform_device *_dev ) { static char pcd_name[] = "dwc_otg"; dwc_otg_device_t *otg_dev = platform_get_drvdata(_dev); struct gadget_wrapper *d; int retval; d = dwc_alloc(sizeof(*d)); if (d == NULL) { return NULL; } memset(d, 0, sizeof(*d)); d->gadget.name = pcd_name; d->pcd = otg_dev->pcd; //sword /* strcpy(d->gadget.dev.bus_id, "gadget"); */ dev_set_name(&d->gadget.dev, "gadget"); d->gadget.dev.parent = &_dev->dev; d->gadget.dev.release = dwc_otg_pcd_gadget_release; d->gadget.ops = &dwc_otg_pcd_ops; d->gadget.max_speed = USB_SPEED_HIGH; d->gadget.is_otg = dwc_otg_pcd_is_otg(otg_dev->pcd); if (d->pcd->core_if->dma_enable && d->pcd->core_if->dma_desc_enable) d->gadget.sg_supported = 1; d->driver = 0; /* Register the gadget device */ #if 0 retval = device_register(&d->gadget.dev); if (retval != 0) { DWC_ERROR("device_register failed\n"); dwc_free(d); return NULL; } #endif return d; }