usbd_rndis.h 782 B

123456789101112131415161718192021222324252627282930313233
  1. /*
  2. * Copyright (c) 2022, sakumisu
  3. *
  4. * SPDX-License-Identifier: Apache-2.0
  5. */
  6. #ifndef USBD_RNDIS_H
  7. #define USBD_RNDIS_H
  8. #include "usb_cdc.h"
  9. #ifdef __cplusplus
  10. extern "C" {
  11. #endif
  12. /* Init rndis interface driver */
  13. struct usbd_interface *usbd_rndis_init_intf(struct usbd_interface *intf,
  14. const uint8_t out_ep,
  15. const uint8_t in_ep,
  16. const uint8_t int_ep, uint8_t mac[6]);
  17. void usbd_rndis_data_recv_done(uint32_t len);
  18. void usbd_rndis_data_send_done(uint32_t len);
  19. #ifdef CONFIG_USBDEV_RNDIS_USING_LWIP
  20. struct pbuf *usbd_rndis_eth_rx(void);
  21. int usbd_rndis_eth_tx(struct pbuf *p);
  22. #endif
  23. #ifdef __cplusplus
  24. }
  25. #endif
  26. #endif /* USBD_RNDIS_H */