usbd_gamepad.h 662 B

12345678910111213141516171819202122
  1. /*
  2. * Copyright (c) 2026, sakumisu
  3. *
  4. * SPDX-License-Identifier: Apache-2.0
  5. */
  6. #ifndef USBD_GAMEPAD_H
  7. #define USBD_GAMEPAD_H
  8. #include "usb_gamepad.h"
  9. #define USBD_GAMEPAD_MODE_XINPUT 0
  10. #define USBD_GAMEPAD_MODE_SWITCH 1
  11. #define USBD_GAMEPAD_MODE_XBOXONE 2
  12. #define USBD_GAMEPAD_MODE_PS4 3
  13. struct usbd_interface *usbd_gamepad_xinput_init_intf(struct usbd_interface *intf);
  14. struct usbd_interface *usbd_gamepad_switch_init_intf(struct usbd_interface *intf);
  15. int usbd_gamepad_xinput_send_report(uint8_t ep, struct usb_gamepad_report *report);
  16. int usbd_gamepad_switch_send_report(uint8_t ep, struct usb_gamepad_report *report);
  17. #endif /* USBD_GAMEPAD_H */