From aa9d227d64c1a17af7ad224dd82bba221954accf Mon Sep 17 00:00:00 2001 From: Mike Black W9MDB Date: Fri, 4 Oct 2024 15:39:17 -0500 Subject: [PATCH] Add device_class strings to cm108 --- src/cm108.c | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) diff --git a/src/cm108.c b/src/cm108.c index 120a6ab23..3e4bac440 100644 --- a/src/cm108.c +++ b/src/cm108.c @@ -68,6 +68,66 @@ #include "cm108.h" +#include + +const char* get_usb_device_class_string(int device_class) { + switch (device_class) { + case 0x00: + return "Device Unspecified (Defined at Interface level)"; + case 0x01: + return "Audio"; + case 0x02: + return "Communications and CDC Control"; + case 0x03: + return "Human Interface Device (HID)"; + case 0x05: + return "Physical Interface Device"; + case 0x06: + return "Image (Scanner, Camera)"; + case 0x07: + return "Printer"; + case 0x08: + return "Mass Storage"; + case 0x09: + return "Hub"; + case 0x0A: + return "CDC Data"; + case 0x0B: + return "Smart Card"; + case 0x0D: + return "Content Security"; + case 0x0E: + return "Video"; + case 0x0F: + return "Personal Healthcare"; + case 0x10: + return "Audio/Video Devices"; + case 0x11: + return "Billboard Device Class"; + case 0x12: + return "USB Type-C Bridge Class"; + case 0x13: + return "Bulk Display"; + case 0x14: + return "MCTCP over USB"; + case 0x3C: + return "I3C"; + case 0x58: + return "Xbox"; + case 0xDC: + return "Diagnostic Device"; + case 0xE0: + return "Wireless Controller"; + case 0xEF: + return "Miscellaneous"; + case 0xFE: + return "Application Specific"; + case 0xFF: + return "Vendor Specific"; + default: + return "Unknown Device Class"; + } +} /** * \brief Open CM108 HID port (/dev/hidrawX).