summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZixun LI <[email protected]>2026-08-15 06:13:52 +0200
committerGitHub <[email protected]>2026-08-15 06:13:52 +0200
commit801be6c97f972b730b915708e7c4505cf7c83454 (patch)
treeb41f5d4eb5c311747b7972cd82d72440db96cc62
parent09b02650e5cbed2b38a153ae8a72a4c104bb4985 (diff)
parent8737c5adfca7e51003e743bcc8bcefed837fb1d8 (diff)
Merge pull request #3802 from dxbjavid/video-payload-cap
clamp committed video payload size to streaming ep buffer
-rw-r--r--src/class/video/video_device.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/class/video/video_device.c b/src/class/video/video_device.c
index 3797e6b2b..770595178 100644
--- a/src/class/video/video_device.c
+++ b/src/class/video/video_device.c
@@ -1144,6 +1144,9 @@ static int handle_video_stm_cs_req(uint8_t rhport, uint8_t stage,
video_probe_and_commit_control_t *param = &stm->probe_commit_payload;
TU_VERIFY(_update_streaming_parameters(stm, param), VIDEO_ERROR_INVALID_VALUE_WITHIN_RANGE);
/* Set the negotiated value */
+ if (CFG_TUD_VIDEO_STREAMING_EP_BUFSIZE < param->dwMaxPayloadTransferSize) {
+ param->dwMaxPayloadTransferSize = CFG_TUD_VIDEO_STREAMING_EP_BUFSIZE;
+ }
stm->max_payload_transfer_size = param->dwMaxPayloadTransferSize;
int ret = tud_video_commit_cb(stm->index_vc, stm->index_vs, param);
if (VIDEO_ERROR_NONE == ret) {