ohmu
·
2026-10-15
1#include "chassis.h"
2
3const char* ffChassisTypeToString(uint32_t type) {
4 // 7.4.1 System Enclosure or Chassis Types
5 switch (type & 0b01111111) {
6 case 0x01:
7 return "Other";
8 case 0x02:
9 return "Unknown";
10 case 0x03:
11 return "Desktop";
12 case 0x04:
13 return "Low Profile Desktop";
14 case 0x05:
15 return "Pizza Box";
16 case 0x06:
17 return "Mini Tower";
18 case 0x07:
19 return "Tower";
20 case 0x08:
21 return "Portable";
22 case 0x09:
23 return "Laptop";
24 case 0x0A:
25 return "Notebook";
26 case 0x0B:
27 return "Hand Held";
28 case 0x0C:
29 return "Docking Station";
30 case 0x0D:
31 return "All in One";
32 case 0x0E:
33 return "Sub Notebook";
34 case 0x0F:
35 return "Space-saving";
36 case 0x10:
37 return "Lunch Box";
38 case 0x11:
39 return "Main Server Chassis";
40 case 0x12:
41 return "Expansion Chassis";
42 case 0x13:
43 return "SubChassis";
44 case 0x14:
45 return "Bus Expansion Chassis";
46 case 0x15:
47 return "Peripheral Chassis";
48 case 0x16:
49 return "RAID Chassis";
50 case 0x17:
51 return "Rack Mount Chassis";
52 case 0x18:
53 return "Sealed-case PC";
54 case 0x19:
55 return "Multi-system chassis";
56 case 0x1A:
57 return "Compact PCI";
58 case 0x1B:
59 return "Advanced TCA";
60 case 0x1C:
61 return "Blade";
62 case 0x1D:
63 return "Blade Enclosure";
64 case 0x1E:
65 return "Tablet";
66 case 0x1F:
67 return "Convertible";
68 case 0x20:
69 return "Detachable";
70 case 0x21:
71 return "IoT Gateway";
72 case 0x22:
73 return "Embedded PC";
74 case 0x23:
75 return "Mini PC";
76 case 0x24:
77 return "Stick PC";
78 default:
79 return nullptr;
80 }
81}