summaryrefslogtreecommitdiff
path: root/class/video
diff options
context:
space:
mode:
authorsakumisu <[email protected]>2022-10-20 21:22:08 +0800
committersakumisu <[email protected]>2022-10-20 21:22:08 +0800
commitdca8b4cfedd94b34207cacd3f6c43e7e354d34d2 (patch)
tree3c81bb0313a1ef0b3779fb14daa468dbadcfe04e /class/video
parent731f206254fe25368650f3c85918b2b12f3680a6 (diff)
remove intf malloc
Diffstat (limited to 'class/video')
-rw-r--r--class/video/usbd_video.c13
-rw-r--r--class/video/usbd_video.h9
2 files changed, 10 insertions, 12 deletions
diff --git a/class/video/usbd_video.c b/class/video/usbd_video.c
index fbb2beec..be27bba5 100644
--- a/class/video/usbd_video.c
+++ b/class/video/usbd_video.c
@@ -742,14 +742,11 @@ void usbd_video_probe_and_commit_controls_init(uint32_t dwFrameInterval, uint32_
usbd_video_cfg.commit.bMaxVersion = 0;
}
-struct usbd_interface *usbd_video_alloc_intf(uint32_t dwFrameInterval, uint32_t dwMaxVideoFrameSize, uint32_t dwMaxPayloadTransferSize)
+struct usbd_interface *usbd_video_init_intf(struct usbd_interface *intf,
+ uint32_t dwFrameInterval,
+ uint32_t dwMaxVideoFrameSize,
+ uint32_t dwMaxPayloadTransferSize)
{
- struct usbd_interface *intf = usb_malloc(sizeof(struct usbd_interface));
- if (intf == NULL) {
- USB_LOG_ERR("no mem to alloc intf\r\n");
- return NULL;
- }
-
intf->class_interface_handler = video_class_interface_request_handler;
intf->class_endpoint_handler = NULL;
intf->vendor_handler = NULL;
@@ -780,7 +777,7 @@ uint32_t usbd_video_mjpeg_payload_fill(uint8_t *input, uint32_t input_len, uint8
picture_pos += usbd_video_cfg.probe.dwMaxPayloadTransferSize - 2;
}
}
- uvc_header[1] ^=1;
+ uvc_header[1] ^= 1;
*out_len = (input_len + 2 * packets);
return packets;
} \ No newline at end of file
diff --git a/class/video/usbd_video.h b/class/video/usbd_video.h
index cbb54d71..75d7f9ed 100644
--- a/class/video/usbd_video.h
+++ b/class/video/usbd_video.h
@@ -12,10 +12,11 @@
extern "C" {
#endif
-/* Alloc video interface driver */
-struct usbd_interface *usbd_video_alloc_intf(uint32_t dwFrameInterval,
- uint32_t dwMaxVideoFrameSize,
- uint32_t dwMaxPayloadTransferSize);
+/* Init video interface driver */
+struct usbd_interface *usbd_video_init_intf(struct usbd_interface *intf,
+ uint32_t dwFrameInterval,
+ uint32_t dwMaxVideoFrameSize,
+ uint32_t dwMaxPayloadTransferSize);
void usbd_video_open(uint8_t intf);
void usbd_video_close(uint8_t intf);