summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Rini <[email protected]>2025-10-02 11:20:01 -0600
committerTom Rini <[email protected]>2025-10-02 11:20:01 -0600
commita14253b15c8371b78da2984c0386241c552cc4df (patch)
treee731e073a68edde70cd1ce6f7cf90bfbc1978162
parentaff68c8514858ddd8d2e508d47bede566511521b (diff)
parent8cd4a5e94ba2ab73fde3301d6314549dd5a25cb4 (diff)
Merge tag 'u-boot-dfu-next-20251001' of https://source.denx.de/u-boot/custodians/u-boot-dfu into next
u-boot-dfu-next-20251001 CI: - https://source.denx.de/u-boot/custodians/u-boot-dfu/-/pipelines/27791 Fastboot: - Fix has-slot command when using nand back-end. USB gadget: - Add missing null checks to atmel, dwc2 drivers (smatch) - Remove redundant check in dwc3 gadget (smatch)
-rw-r--r--drivers/fastboot/fb_nand.c7
-rw-r--r--drivers/usb/dwc3/ep0.c5
-rw-r--r--drivers/usb/gadget/atmel_usba_udc.c2
-rw-r--r--drivers/usb/gadget/dwc2_udc_otg_xfer_dma.c2
4 files changed, 9 insertions, 7 deletions
diff --git a/drivers/fastboot/fb_nand.c b/drivers/fastboot/fb_nand.c
index afc64fd5280..6df3917e129 100644
--- a/drivers/fastboot/fb_nand.c
+++ b/drivers/fastboot/fb_nand.c
@@ -157,8 +157,13 @@ int fastboot_nand_get_part_info(const char *part_name,
struct part_info **part_info, char *response)
{
struct mtd_info *mtd = NULL;
+ int ret;
+
+ ret = fb_nand_lookup(part_name, &mtd, part_info, response);
+ if (ret)
+ return -ENOENT;
- return fb_nand_lookup(part_name, &mtd, part_info, response);
+ return ret;
}
/**
diff --git a/drivers/usb/dwc3/ep0.c b/drivers/usb/dwc3/ep0.c
index c656cbe25ce..680756532f0 100644
--- a/drivers/usb/dwc3/ep0.c
+++ b/drivers/usb/dwc3/ep0.c
@@ -799,10 +799,7 @@ static void dwc3_ep0_complete_data(struct dwc3 *dwc,
status = DWC3_TRB_SIZE_TRBSTS(trb->size);
if (status == DWC3_TRBSTS_SETUP_PENDING) {
dev_dbg(dwc->dev, "Setup Pending received");
-
- if (r)
- dwc3_gadget_giveback(ep0, r, -ECONNRESET);
-
+ dwc3_gadget_giveback(ep0, r, -ECONNRESET);
return;
}
diff --git a/drivers/usb/gadget/atmel_usba_udc.c b/drivers/usb/gadget/atmel_usba_udc.c
index 72f68dba3a7..f7a92ded6da 100644
--- a/drivers/usb/gadget/atmel_usba_udc.c
+++ b/drivers/usb/gadget/atmel_usba_udc.c
@@ -1147,7 +1147,7 @@ static int usba_udc_irq(struct usba_udc *udc)
reset_all_endpoints(udc);
if (udc->gadget.speed != USB_SPEED_UNKNOWN &&
- udc->driver->disconnect) {
+ udc->driver && udc->driver->disconnect) {
udc->gadget.speed = USB_SPEED_UNKNOWN;
spin_unlock(&udc->lock);
udc->driver->disconnect(&udc->gadget);
diff --git a/drivers/usb/gadget/dwc2_udc_otg_xfer_dma.c b/drivers/usb/gadget/dwc2_udc_otg_xfer_dma.c
index fca052b4556..5a7f50ebaa5 100644
--- a/drivers/usb/gadget/dwc2_udc_otg_xfer_dma.c
+++ b/drivers/usb/gadget/dwc2_udc_otg_xfer_dma.c
@@ -526,7 +526,7 @@ static int dwc2_udc_irq(int irq, void *_dev)
if (gotgint & GOTGINT_SES_END_DET) {
debug_cond(DEBUG_ISR, "\t\tSession End Detected\n");
/* Let gadget detect disconnected state */
- if (dev->driver->disconnect) {
+ if (dev->driver && dev->driver->disconnect) {
spin_unlock_irqrestore(&dev->lock, flags);
dev->driver->disconnect(&dev->gadget);
spin_lock_irqsave(&dev->lock, flags);