Skip to content

Commit bbd4d9e

Browse files
jfischer-nokartben
authored andcommitted
tests: udc: fix the test for controllers with maximum number of endpoints
Do not use FALSE_EP_ADDR in API calls to enable/disable an endpoint as we already support controllers with the maximum possible number of endpoints where FALSE_EP_ADDR is a valid endpoint address. Signed-off-by: Johann Fischer <[email protected]> (cherry picked from commit eb25101)
1 parent 8ca5b2f commit bbd4d9e

File tree

1 file changed

+18
-29
lines changed

1 file changed

+18
-29
lines changed

tests/drivers/udc/src/main.c

Lines changed: 18 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ LOG_MODULE_REGISTER(udc_test, LOG_LEVEL_INF);
1818
* connected to the host as this state is not covered by this test.
1919
*/
2020

21+
#define BULK_OUT_EP_ADDR 0x01U
22+
#define BULK_IN_EP_ADDR 0x81U
2123
#define FALSE_EP_ADDR 0x0FU
2224

2325
K_MSGQ_DEFINE(test_msgq, sizeof(struct udc_event), 8, sizeof(uint32_t));
@@ -127,36 +129,30 @@ static void test_udc_ep_enable(const struct device *dev,
127129
uint8_t ctrl_ep = USB_EP_DIR_IS_IN(ed->bEndpointAddress) ?
128130
USB_CONTROL_EP_IN : USB_CONTROL_EP_OUT;
129131
/* Possible return values 0, -EINVAL, -ENODEV, -EALREADY, -EPERM. */
130-
int err1, err2, err3, err4;
132+
int err1, err2, err3;
131133

132134
err1 = udc_ep_enable(dev, ed->bEndpointAddress, ed->bmAttributes,
133135
sys_le16_to_cpu(ed->wMaxPacketSize),
134136
ed->bInterval);
135137
err2 = udc_ep_enable(dev, ed->bEndpointAddress, ed->bmAttributes,
136138
sys_le16_to_cpu(ed->wMaxPacketSize),
137139
ed->bInterval);
138-
err3 = udc_ep_enable(dev, FALSE_EP_ADDR, ed->bmAttributes,
139-
sys_le16_to_cpu(ed->wMaxPacketSize),
140-
ed->bInterval);
141-
err4 = udc_ep_enable(dev, ctrl_ep, ed->bmAttributes,
140+
err3 = udc_ep_enable(dev, ctrl_ep, ed->bmAttributes,
142141
sys_le16_to_cpu(ed->wMaxPacketSize),
143142
ed->bInterval);
144143

145144
if (!udc_is_initialized(dev) && !udc_is_enabled(dev)) {
146145
zassert_equal(err1, -EPERM, "Not failed to enable endpoint");
147146
zassert_equal(err2, -EPERM, "Not failed to enable endpoint");
148-
zassert_equal(err3, -EPERM, "Not failed to enable endpoint");
149-
zassert_equal(err4, -EINVAL, "Not failed to enable endpoint");
147+
zassert_equal(err3, -EINVAL, "Not failed to enable endpoint");
150148
} else if (udc_is_initialized(dev) && !udc_is_enabled(dev)) {
151149
zassert_equal(err1, -EPERM, "Not failed to enable endpoint");
152150
zassert_equal(err2, -EPERM, "Not failed to enable endpoint");
153-
zassert_equal(err3, -EPERM, "Not failed to enable endpoint");
154-
zassert_equal(err4, -EINVAL, "Not failed to enable endpoint");
151+
zassert_equal(err3, -EINVAL, "Not failed to enable endpoint");
155152
} else {
156153
zassert_equal(err1, 0, "Failed to enable endpoint");
157154
zassert_equal(err2, -EALREADY, "Not failed to enable endpoint");
158-
zassert_equal(err3, -ENODEV, "Not failed to enable endpoint");
159-
zassert_equal(err4, -EINVAL, "Not failed to enable endpoint");
155+
zassert_equal(err3, -EINVAL, "Not failed to enable endpoint");
160156
}
161157
}
162158

@@ -166,28 +162,24 @@ static void test_udc_ep_disable(const struct device *dev,
166162
uint8_t ctrl_ep = USB_EP_DIR_IS_IN(ed->bEndpointAddress) ?
167163
USB_CONTROL_EP_IN : USB_CONTROL_EP_OUT;
168164
/* Possible return values 0, -EINVAL, -ENODEV, -EALREADY, -EPERM. */
169-
int err1, err2, err3, err4;
165+
int err1, err2, err3;
170166

171167
err1 = udc_ep_disable(dev, ed->bEndpointAddress);
172168
err2 = udc_ep_disable(dev, ed->bEndpointAddress);
173-
err3 = udc_ep_disable(dev, FALSE_EP_ADDR);
174-
err4 = udc_ep_disable(dev, ctrl_ep);
169+
err3 = udc_ep_disable(dev, ctrl_ep);
175170

176171
if (!udc_is_initialized(dev) && !udc_is_enabled(dev)) {
177172
zassert_equal(err1, -EPERM, "Not failed to disable endpoint");
178173
zassert_equal(err2, -EPERM, "Not failed to disable endpoint");
179-
zassert_equal(err3, -EPERM, "Not failed to disable endpoint");
180-
zassert_equal(err4, -EINVAL, "Not failed to disable endpoint");
174+
zassert_equal(err3, -EINVAL, "Not failed to disable endpoint");
181175
} else if (udc_is_initialized(dev) && !udc_is_enabled(dev)) {
182176
zassert_equal(err1, -EALREADY, "Failed to disable endpoint");
183177
zassert_equal(err2, -EALREADY, "Not failed to disable endpoint");
184-
zassert_equal(err3, -ENODEV, "Not failed to disable endpoint");
185-
zassert_equal(err4, -EINVAL, "Not failed to disable endpoint");
178+
zassert_equal(err3, -EINVAL, "Not failed to disable endpoint");
186179
} else {
187180
zassert_equal(err1, 0, "Failed to disable endpoint");
188181
zassert_equal(err2, -EALREADY, "Not failed to disable endpoint");
189-
zassert_equal(err3, -ENODEV, "Not failed to disable endpoint");
190-
zassert_equal(err4, -EINVAL, "Not failed to disable endpoint");
182+
zassert_equal(err3, -EINVAL, "Not failed to disable endpoint");
191183
}
192184
}
193185

@@ -284,17 +276,14 @@ static void test_udc_ep_dequeue(const struct device *dev,
284276
struct usb_ep_descriptor *ed)
285277
{
286278
/* Possible return values 0, -EPERM, -ENODEV, -EACCES(TBD) */
287-
int err1, err2;
279+
int err;
288280

289-
err1 = udc_ep_dequeue(dev, ed->bEndpointAddress);
290-
err2 = udc_ep_dequeue(dev, FALSE_EP_ADDR);
281+
err = udc_ep_dequeue(dev, ed->bEndpointAddress);
291282

292283
if (!udc_is_initialized(dev)) {
293-
zassert_equal(err1, -EPERM, "Not failed to dequeue");
294-
zassert_equal(err2, -EPERM, "Not failed to dequeue");
284+
zassert_equal(err, -EPERM, "Not failed to dequeue");
295285
} else {
296-
zassert_equal(err1, 0, "Failed to dequeue");
297-
zassert_equal(err2, -ENODEV, "Not failed to dequeue");
286+
zassert_equal(err, 0, "Failed to dequeue");
298287
}
299288
}
300289

@@ -462,7 +451,7 @@ static struct usb_ep_descriptor ed_ctrl_in = {
462451
static struct usb_ep_descriptor ed_bulk_out = {
463452
.bLength = sizeof(struct usb_ep_descriptor),
464453
.bDescriptorType = USB_DESC_ENDPOINT,
465-
.bEndpointAddress = 0x01,
454+
.bEndpointAddress = BULK_OUT_EP_ADDR,
466455
.bmAttributes = USB_EP_TYPE_BULK,
467456
.wMaxPacketSize = sys_cpu_to_le16(64),
468457
.bInterval = 0,
@@ -471,7 +460,7 @@ static struct usb_ep_descriptor ed_bulk_out = {
471460
static struct usb_ep_descriptor ed_bulk_in = {
472461
.bLength = sizeof(struct usb_ep_descriptor),
473462
.bDescriptorType = USB_DESC_ENDPOINT,
474-
.bEndpointAddress = 0x81,
463+
.bEndpointAddress = BULK_IN_EP_ADDR,
475464
.bmAttributes = USB_EP_TYPE_BULK,
476465
.wMaxPacketSize = sys_cpu_to_le16(64),
477466
.bInterval = 0,

0 commit comments

Comments
 (0)