USBClasses.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536
  1. /*
  2. * Copyright (c) 2021, Luke Wilde <lukew@serenityos.org>
  3. *
  4. * SPDX-License-Identifier: BSD-2-Clause
  5. */
  6. #pragma once
  7. #include <AK/Types.h>
  8. namespace Kernel::USB {
  9. // https://www.usb.org/defined-class-codes
  10. static constexpr u8 USB_CLASS_AUDIO = 0x01;
  11. static constexpr u8 USB_CLASS_COMMUNICATIONS_AND_CDC_CONTROL = 0x02;
  12. static constexpr u8 USB_CLASS_HID = 0x03;
  13. static constexpr u8 USB_CLASS_PHYSICAL = 0x05;
  14. static constexpr u8 USB_CLASS_IMAGE = 0x06;
  15. static constexpr u8 USB_CLASS_PRINTER = 0x07;
  16. static constexpr u8 USB_CLASS_MASS_STORAGE = 0x08;
  17. static constexpr u8 USB_CLASS_HUB = 0x09;
  18. static constexpr u8 USB_CLASS_CDC_DATE = 0x0A;
  19. static constexpr u8 USB_CLASS_SMART_CARD = 0x0B;
  20. static constexpr u8 USB_CLASS_CONTENT_SECURITY = 0x0D;
  21. static constexpr u8 USB_CLASS_VIDEO = 0x0E;
  22. static constexpr u8 USB_CLASS_PERSONAL_HEALTHCARE = 0x0F;
  23. static constexpr u8 USB_CLASS_AUDIO_VIDEO = 0x10;
  24. static constexpr u8 USB_CLASS_BILLBOARD = 0x11;
  25. static constexpr u8 USB_CLASS_TYPE_C_BRIDGE = 0x12;
  26. static constexpr u8 USB_CLASS_DIAGNOSTIC = 0xDC;
  27. static constexpr u8 USB_CLASS_WIRELESS_CONTROLLER = 0xE0;
  28. static constexpr u8 USB_CLASS_MISCELLANEOUS = 0xEF;
  29. static constexpr u8 USB_CLASS_APPLICATION_SPECIFIC = 0xFE;
  30. static constexpr u8 USB_CLASS_VENDOR_SPECIFIC = 0xFF;
  31. }