forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-12-19 9370bb92b2d16684ee45cf24e879c93c509162da
kernel/drivers/usb/gadget/udc/bcm63xx_udc.c
....@@ -26,6 +26,7 @@
2626 #include <linux/seq_file.h>
2727 #include <linux/slab.h>
2828 #include <linux/timer.h>
29
+#include <linux/usb.h>
2930 #include <linux/usb/ch9.h>
3031 #include <linux/usb/gadget.h>
3132 #include <linux/workqueue.h>
....@@ -266,8 +267,8 @@
266267 * @pd: Platform data (board/port info).
267268 * @usbd_clk: Clock descriptor for the USB device block.
268269 * @usbh_clk: Clock descriptor for the USB host block.
269
- * @gadget: USB slave device.
270
- * @driver: Driver for USB slave devices.
270
+ * @gadget: USB device.
271
+ * @driver: Driver for USB device.
271272 * @usbd_regs: Base address of the USBD/USB20D block.
272273 * @iudma_regs: Base address of the USBD's associated IUDMA block.
273274 * @bep: Array of endpoints, including ep0.
....@@ -1744,7 +1745,7 @@
17441745
17451746 /**
17461747 * bcm63xx_udc_get_frame - Read current SOF frame number from the HW.
1747
- * @gadget: USB slave device.
1748
+ * @gadget: USB device.
17481749 */
17491750 static int bcm63xx_udc_get_frame(struct usb_gadget *gadget)
17501751 {
....@@ -1756,7 +1757,7 @@
17561757
17571758 /**
17581759 * bcm63xx_udc_pullup - Enable/disable pullup on D+ line.
1759
- * @gadget: USB slave device.
1760
+ * @gadget: USB device.
17601761 * @is_on: 0 to disable pullup, 1 to enable.
17611762 *
17621763 * See notes in bcm63xx_select_pullup().
....@@ -1805,8 +1806,8 @@
18051806
18061807 /**
18071808 * bcm63xx_udc_start - Start the controller.
1808
- * @gadget: USB slave device.
1809
- * @driver: Driver for USB slave devices.
1809
+ * @gadget: USB device.
1810
+ * @driver: Driver for USB device.
18101811 */
18111812 static int bcm63xx_udc_start(struct usb_gadget *gadget,
18121813 struct usb_gadget_driver *driver)
....@@ -1842,8 +1843,8 @@
18421843
18431844 /**
18441845 * bcm63xx_udc_stop - Shut down the controller.
1845
- * @gadget: USB slave device.
1846
- * @driver: Driver for USB slave devices.
1846
+ * @gadget: USB device.
1847
+ * @driver: Driver for USB device.
18471848 */
18481849 static int bcm63xx_udc_stop(struct usb_gadget *gadget)
18491850 {
....@@ -2248,7 +2249,7 @@
22482249 if (!IS_ENABLED(CONFIG_USB_GADGET_DEBUG_FS))
22492250 return;
22502251
2251
- root = debugfs_create_dir(udc->gadget.name, NULL);
2252
+ root = debugfs_create_dir(udc->gadget.name, usb_debug_root);
22522253 udc->debugfs_root = root;
22532254
22542255 debugfs_create_file("usbd", 0400, root, udc, &bcm63xx_usbd_dbg_fops);
....@@ -2282,7 +2283,6 @@
22822283 struct device *dev = &pdev->dev;
22832284 struct bcm63xx_usbd_platform_data *pd = dev_get_platdata(dev);
22842285 struct bcm63xx_udc *udc;
2285
- struct resource *res;
22862286 int rc = -ENOMEM, i, irq;
22872287
22882288 udc = devm_kzalloc(dev, sizeof(*udc), GFP_KERNEL);
....@@ -2298,13 +2298,11 @@
22982298 return -EINVAL;
22992299 }
23002300
2301
- res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
2302
- udc->usbd_regs = devm_ioremap_resource(dev, res);
2301
+ udc->usbd_regs = devm_platform_ioremap_resource(pdev, 0);
23032302 if (IS_ERR(udc->usbd_regs))
23042303 return PTR_ERR(udc->usbd_regs);
23052304
2306
- res = platform_get_resource(pdev, IORESOURCE_MEM, 1);
2307
- udc->iudma_regs = devm_ioremap_resource(dev, res);
2305
+ udc->iudma_regs = devm_platform_ioremap_resource(pdev, 1);
23082306 if (IS_ERR(udc->iudma_regs))
23092307 return PTR_ERR(udc->iudma_regs);
23102308
....@@ -2328,10 +2326,8 @@
23282326
23292327 /* IRQ resource #0: control interrupt (VBUS, speed, etc.) */
23302328 irq = platform_get_irq(pdev, 0);
2331
- if (irq < 0) {
2332
- dev_err(dev, "missing IRQ resource #0\n");
2329
+ if (irq < 0)
23332330 goto out_uninit;
2334
- }
23352331 if (devm_request_irq(dev, irq, &bcm63xx_udc_ctrl_isr, 0,
23362332 dev_name(dev), udc) < 0)
23372333 goto report_request_failure;
....@@ -2339,10 +2335,8 @@
23392335 /* IRQ resources #1-6: data interrupts for IUDMA channels 0-5 */
23402336 for (i = 0; i < BCM63XX_NUM_IUDMA; i++) {
23412337 irq = platform_get_irq(pdev, i + 1);
2342
- if (irq < 0) {
2343
- dev_err(dev, "missing IRQ resource #%d\n", i + 1);
2338
+ if (irq < 0)
23442339 goto out_uninit;
2345
- }
23462340 if (devm_request_irq(dev, irq, &bcm63xx_udc_data_isr, 0,
23472341 dev_name(dev), &udc->iudma[i]) < 0)
23482342 goto report_request_failure;