Skip to content

Commit 23232e6

Browse files
tmon-nordickartben
authored andcommitted
drivers: udc: Do not allow lock/unlock to fail
USB stack does not check api->lock() and api->unlock() return value and all UDC drivers block without timeout in its lock() and unlock() api implementations. There is no realistic way to handle lock() and unlock() errors without making USB device stack API unnecessarily complex. Remove the return type from lock() and unlock() to make it clear that the functions must not fail. Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
1 parent 9f4accc commit 23232e6

File tree

15 files changed

+58
-58
lines changed

15 files changed

+58
-58
lines changed

drivers/usb/udc/udc_ambiq.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -594,14 +594,14 @@ static int udc_ambiq_shutdown(const struct device *dev)
594594
return 0;
595595
}
596596

597-
static int udc_ambiq_lock(const struct device *dev)
597+
static void udc_ambiq_lock(const struct device *dev)
598598
{
599-
return udc_lock_internal(dev, K_FOREVER);
599+
udc_lock_internal(dev, K_FOREVER);
600600
}
601601

602-
static int udc_ambiq_unlock(const struct device *dev)
602+
static void udc_ambiq_unlock(const struct device *dev)
603603
{
604-
return udc_unlock_internal(dev);
604+
udc_unlock_internal(dev);
605605
}
606606

607607
static void ambiq_handle_evt_setup(const struct device *dev)

drivers/usb/udc/udc_dwc2.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2316,14 +2316,14 @@ static int dwc2_driver_preinit(const struct device *dev)
23162316
return 0;
23172317
}
23182318

2319-
static int udc_dwc2_lock(const struct device *dev)
2319+
static void udc_dwc2_lock(const struct device *dev)
23202320
{
2321-
return udc_lock_internal(dev, K_FOREVER);
2321+
udc_lock_internal(dev, K_FOREVER);
23222322
}
23232323

2324-
static int udc_dwc2_unlock(const struct device *dev)
2324+
static void udc_dwc2_unlock(const struct device *dev)
23252325
{
2326-
return udc_unlock_internal(dev);
2326+
udc_unlock_internal(dev);
23272327
}
23282328

23292329
static void dwc2_on_bus_reset(const struct device *dev)

drivers/usb/udc/udc_it82xx2.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1495,14 +1495,14 @@ static int it82xx2_shutdown(const struct device *dev)
14951495
return 0;
14961496
}
14971497

1498-
static int it82xx2_lock(const struct device *dev)
1498+
static void it82xx2_lock(const struct device *dev)
14991499
{
1500-
return udc_lock_internal(dev, K_FOREVER);
1500+
udc_lock_internal(dev, K_FOREVER);
15011501
}
15021502

1503-
static int it82xx2_unlock(const struct device *dev)
1503+
static void it82xx2_unlock(const struct device *dev)
15041504
{
1505-
return udc_unlock_internal(dev);
1505+
udc_unlock_internal(dev);
15061506
}
15071507

15081508
static const struct udc_api it82xx2_api = {

drivers/usb/udc/udc_kinetis.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1069,14 +1069,14 @@ static int usbfsotg_shutdown(const struct device *dev)
10691069
return 0;
10701070
}
10711071

1072-
static int usbfsotg_lock(const struct device *dev)
1072+
static void usbfsotg_lock(const struct device *dev)
10731073
{
1074-
return udc_lock_internal(dev, K_FOREVER);
1074+
udc_lock_internal(dev, K_FOREVER);
10751075
}
10761076

1077-
static int usbfsotg_unlock(const struct device *dev)
1077+
static void usbfsotg_unlock(const struct device *dev)
10781078
{
1079-
return udc_unlock_internal(dev);
1079+
udc_unlock_internal(dev);
10801080
}
10811081

10821082
static int usbfsotg_driver_preinit(const struct device *dev)

drivers/usb/udc/udc_mcux_ehci.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -64,14 +64,14 @@ struct udc_mcux_event {
6464
K_MEM_SLAB_DEFINE(udc_event_slab, sizeof(struct udc_mcux_event),
6565
CONFIG_UDC_NXP_EVENT_COUNT, sizeof(void *));
6666

67-
static int udc_mcux_lock(const struct device *dev)
67+
static void udc_mcux_lock(const struct device *dev)
6868
{
69-
return udc_lock_internal(dev, K_FOREVER);
69+
udc_lock_internal(dev, K_FOREVER);
7070
}
7171

72-
static int udc_mcux_unlock(const struct device *dev)
72+
static void udc_mcux_unlock(const struct device *dev)
7373
{
74-
return udc_unlock_internal(dev);
74+
udc_unlock_internal(dev);
7575
}
7676

7777
static int udc_mcux_control(const struct device *dev, usb_device_control_type_t command,

drivers/usb/udc/udc_mcux_ip3511.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -64,14 +64,14 @@ struct udc_mcux_event {
6464
K_MEM_SLAB_DEFINE(udc_event_slab, sizeof(struct udc_mcux_event),
6565
CONFIG_UDC_NXP_EVENT_COUNT, sizeof(void *));
6666

67-
static int udc_mcux_lock(const struct device *dev)
67+
static void udc_mcux_lock(const struct device *dev)
6868
{
69-
return udc_lock_internal(dev, K_FOREVER);
69+
udc_lock_internal(dev, K_FOREVER);
7070
}
7171

72-
static int udc_mcux_unlock(const struct device *dev)
72+
static void udc_mcux_unlock(const struct device *dev)
7373
{
74-
return udc_unlock_internal(dev);
74+
udc_unlock_internal(dev);
7575
}
7676

7777
static int udc_mcux_control(const struct device *dev, usb_device_control_type_t command,

drivers/usb/udc/udc_nrf.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -911,14 +911,14 @@ static int udc_nrf_driver_init(const struct device *dev)
911911
return 0;
912912
}
913913

914-
static int udc_nrf_lock(const struct device *dev)
914+
static void udc_nrf_lock(const struct device *dev)
915915
{
916-
return udc_lock_internal(dev, K_FOREVER);
916+
udc_lock_internal(dev, K_FOREVER);
917917
}
918918

919-
static int udc_nrf_unlock(const struct device *dev)
919+
static void udc_nrf_unlock(const struct device *dev)
920920
{
921-
return udc_unlock_internal(dev);
921+
udc_unlock_internal(dev);
922922
}
923923

924924
static const struct udc_nrf_config udc_nrf_cfg = {

drivers/usb/udc/udc_numaker.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1622,14 +1622,14 @@ static int udc_numaker_shutdown(const struct device *dev)
16221622
return 0;
16231623
}
16241624

1625-
static int udc_numaker_lock(const struct device *dev)
1625+
static void udc_numaker_lock(const struct device *dev)
16261626
{
1627-
return udc_lock_internal(dev, K_FOREVER);
1627+
udc_lock_internal(dev, K_FOREVER);
16281628
}
16291629

1630-
static int udc_numaker_unlock(const struct device *dev)
1630+
static void udc_numaker_unlock(const struct device *dev)
16311631
{
1632-
return udc_unlock_internal(dev);
1632+
udc_unlock_internal(dev);
16331633
}
16341634

16351635
static int udc_numaker_driver_preinit(const struct device *dev)

drivers/usb/udc/udc_renesas_ra.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -641,14 +641,14 @@ static int udc_renesas_ra_driver_preinit(const struct device *dev)
641641
return 0;
642642
}
643643

644-
static int udc_renesas_ra_lock(const struct device *dev)
644+
static void udc_renesas_ra_lock(const struct device *dev)
645645
{
646-
return udc_lock_internal(dev, K_FOREVER);
646+
udc_lock_internal(dev, K_FOREVER);
647647
}
648648

649-
static int udc_renesas_ra_unlock(const struct device *dev)
649+
static void udc_renesas_ra_unlock(const struct device *dev)
650650
{
651-
return udc_unlock_internal(dev);
651+
udc_unlock_internal(dev);
652652
}
653653

654654
static const struct udc_api udc_renesas_ra_api = {

drivers/usb/udc/udc_rpi_pico.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1050,14 +1050,14 @@ static int udc_rpi_pico_driver_preinit(const struct device *dev)
10501050
return 0;
10511051
}
10521052

1053-
static int udc_rpi_pico_lock(const struct device *dev)
1053+
static void udc_rpi_pico_lock(const struct device *dev)
10541054
{
1055-
return udc_lock_internal(dev, K_FOREVER);
1055+
udc_lock_internal(dev, K_FOREVER);
10561056
}
10571057

1058-
static int udc_rpi_pico_unlock(const struct device *dev)
1058+
static void udc_rpi_pico_unlock(const struct device *dev)
10591059
{
1060-
return udc_unlock_internal(dev);
1060+
udc_unlock_internal(dev);
10611061
}
10621062

10631063
static const struct udc_api udc_rpi_pico_api = {

0 commit comments

Comments
 (0)