Create an OEM Intel IPMI whitelist filter

This is a derivative of the upstream whitelist filter that also tracks
the host state as part of the filtering information.

In addition, the filter understands per-channel filtering, so a command
can be filtered out on a per-channel basis.

Tested: With the upstream filter disabled, and this filter enabled, run
        several checks:
	1) execute a command prior to host POST completete over kcs (OK)
	2) execute a command after host POST complete (denied)
	3) execute a command filtered on a lan interface
	4) execute a command whitelisted on a lan interface

Change-Id: I9b6755f4bf2c9b9e30de0289f1fed68b3709dea0
Signed-off-by: Vernon Mauery <vernon.mauery@linux.intel.com>
diff --git a/ipmi-whitelist.conf b/ipmi-whitelist.conf
new file mode 100644
index 0000000..aeafbf2
--- /dev/null
+++ b/ipmi-whitelist.conf
@@ -0,0 +1,319 @@
+#<NetFn>:<Command>:<ChannelMask> // comment
+0x00:0x00:0xffff   //<Chassis>:<Get Chassis Capabiliti>
+0x00:0x01:0xffff   //<Chassis>:<Get Chassis Status>
+0x00:0x02:0x7fff   //<Chassis>:<Chassis Control>
+0x00:0x03:0x7fff   //<Chassis>:<Chassis Reset>
+0x00:0x04:0xffff   //<Chassis>:<Chassis Identify>
+0x00:0x05:0x7fff   //<Chassis>:<Set Chassis Capabilities>
+0x00:0x06:0x7fff   //<Chassis>:<Set Power Restore Policy>
+0x00:0x07:0xffff   //<Chassis>:<Get System Restart Cause>
+0x00:0x08:0x7fff   //<Chassis>:<Set System Boot Options>
+0x00:0x09:0xffff   //<Chassis>:<Get System Boot Options>
+0x00:0x0a:0xffff   //<Chassis>:<Set Front Panel Enables>
+0x00:0x0f:0xffff   //<Chassis>:<Get POH Counter>
+0x04:0x00:0x7fff   //<Sensor/Event>:<Set Event Receiver>
+0x04:0x01:0xffff   //<Sensor/Event>:<Get Event Receiver>
+0x04:0x02:0xffff   //<Sensor/Event>:<SEL Platform event>
+0x04:0x10:0xffff   //<Sensor/Event>:<PEF Get Capabilities>
+0x04:0x11:0x7fff   //<Sensor/Event>:<Arm PEF Postpone Timer>
+0x04:0x12:0x7fff   //<Sensor/Event>:<PEF Set Configuration Parameters>
+0x04:0x13:0xffff   //<Sensor/Event>:<PEF Get Configuration Parameters>
+0x04:0x14:0x7fff   //<Sensor/Event>:<PEF Set Processed EventID>
+0x04:0x15:0xffff   //<Sensor/Event>:<PEF Get Processed EventID>
+0x04:0x16:0x7fff   //<Sensor/Event>:<Alert Immediate>
+0x04:0x17:0x7fff   //<Sensor/Event>:<PET Acknowledge>
+0x04:0x20:0xffff   //<Sensor/Event>:<Get Device SDR Info>
+0x04:0x21:0xffff   //<Sensor/Event>:<Get Device SDR>
+0x04:0x23:0xffff   //<Sensor/Event>:<Get Sensor Reading Factors>
+0x04:0x24:0x7fff   //<Sensor/Event>:<Set Sensor Hysteresis>
+0x04:0x25:0xffff   //<Sensor/Event>:<Get Sensor Hysteresis>
+0x04:0x26:0x7fff   //<Sensor/Event>:<Set Sensor Threshold>
+0x04:0x27:0xffff   //<Sensor/Event>:<Get Sensor Threshold>
+0x04:0x28:0x7fff   //<Sensor/Event>:<Set SensorEvent Enable>
+0x04:0x29:0xffff   //<Sensor/Event>:<Get SensorEvent Enable>
+0x04:0x2a:0x7fff   //<Sensor/Event>:<Re-arm Sensor Events>
+0x04:0x2b:0xffff   //<Sensor/Event>:<Get SensorEvent Status>
+0x04:0x2d:0xffff   //<Sensor/Event>:<Get SensorReading>
+0x04:0x2e:0x7fff   //<Sensor/Event>:<Get Sensor Type>
+0x04:0x2f:0xffff   //<Sensor/Event>:<Get Sensor Type>
+0x04:0x30:0x7fff   //<Sensor/Event>:<Set Sensor Reading and Event Status>
+0x06:0x01:0xffff   //<App>:<Get Device ID>
+0x06:0x02:0xffff   //<App>:<Cold Reset>
+0x06:0x04:0xffff   //<App>:<Get Self Test>
+0x06:0x05:0x7fff   //<App>:<Manufacturing Test Mode>
+0x06:0x06:0xffff   //<App>:<Set ACPI Power State>
+0x06:0x07:0xffff   //<App>:<Get ACPI Power State>
+0x06:0x08:0xffff   //<App>:<Get Device GUID>
+0x06:0x22:0xffff   //<App>:<Reset Watchdog Timer>
+0x06:0x24:0xffff   //<App>:<Set Watchdog Timer>
+0x06:0x25:0xffff   //<App>:<Get Watchdog Timer>
+0x06:0x2e:0x7fff   //<App>:<Set BMC Global Enables>
+0x06:0x2f:0xffff   //<App>:<Get BMC Global Enables>
+0x06:0x30:0xffff   //<App>:<Clear Message Flags>
+0x06:0x31:0xffff   //<App>:<Get Message Flags>
+0x06:0x33:0xffff   //<App>:<Get Message>
+0x06:0x34:0x7fff   //<App>:<Send Message>
+0x06:0x35:0xffff   //<App>:<Read Event Message Buffer>
+0x06:0x37:0xffff   //<App>:<Get System GUID>
+0x06:0x38:0xffff   //<App>:<Get Channel Authentication Capability>
+0x06:0x39:0xffff   //<App>:<Get Session Challenge>
+0x06:0x3a:0x7fff   //<App>:<Activate Session>
+0x06:0x3b:0x7fff   //<App>:<Set Session Privilege>
+0x06:0x3c:0x7fff   //<App>:<Close Session>
+0x06:0x3d:0xffff   //<App>:<Get Channel Session Info>
+0x06:0x3f:0x7fff   //<App>:<Get Authentication Code>
+0x06:0x40:0x7fff   //<App>:<Set Channel Access>
+0x06:0x41:0xffff   //<App>:<Get Channel Access>
+0x06:0x42:0xffff   //<App>:<Get Channel Info>
+0x06:0x43:0x7fff   //<App>:<Set User Access>
+0x06:0x44:0xffff   //<App>:<Get User Access>
+0x06:0x45:0x7fff   //<App>:<Set User Name>
+0x06:0x46:0xffff   //<App>:<Get User Name>
+0x06:0x47:0x7fff   //<App>:<Set User Password>
+0x06:0x48:0x7fff   //<App>:<Activate Payload>
+0x06:0x49:0x7fff   //<App>:<Deactivate Payload>
+0x06:0x4a:0xffff   //<App>:<Get Payload Activation Status>
+0x06:0x4b:0xffff   //<App>:<Get Payload Instance Info>
+0x06:0x4c:0x7fff   //<App>:<Set User Payload Access>
+0x06:0x4d:0xffff   //<App>:<Get User Payload Access>
+0x06:0x4e:0xffff   //<App>:<Get Channel Payload Support>
+0x06:0x4f:0xffff   //<App>:<Get Channel Payload Version>
+0x06:0x50:0xffff   //<App>:<Get Channel OEM Payload Info>
+0x06:0x52:0x7fff   //<App>:<Master Write Read I2C>
+0x06:0x54:0xffff   //<App>:<Get Channel Cipher Suites>
+0x06:0x55:0xffff   //<App>:<Suspend Payload Encryption>
+0x06:0x56:0xffff   //<App>:<Set Channel Security Keys>
+0x06:0x57:0xffff   //<App>:<Get System Interface Capabilities>
+0x08:0x20:0xf9be   //<Firmware>:<Get Version Information>
+0x08:0x21:0xf9be   //<Firmware>:<Security Version Information>
+0x08:0x22:0xf9be   //<Firmware>:<Firmware Update Channel Information>
+0x08:0x23:0xf9be   //<Firmware>:<BMC Execution Context>
+0x08:0x24:0xf9be   //<Firmware>:<Get Boot Certificate Info>
+0x08:0x25:0xf9be   //<Firmware>:<Get Boot Certificate Data>
+0x08:0x26:0xf9be   //<Firmware>:<Firmware Random Number Update>
+0x08:0x27:0xf9be   //<Firmware>:<Set Firmware Update Mode>
+0x08:0x28:0xf9be   //<Firmware>:<Exit Firmware Update Mode>
+0x08:0x29:0xf9be   //<Firmware>:<Firmware Update Control>
+0x08:0x2a:0xf9be   //<Firmware>:<Get Firmware Update Status>
+0x08:0x2b:0xf9be   //<Firmware>:<Set Firmware Update Options>
+0x08:0x2c:0xf9be   //<Firmware>:<Write Firmware Image>
+0x08:0x2d:0xf9be   //<Firmware>:<Get Firmware Update Status Code Message>
+0x08:0xdb:0x79be   //<Firmware>:<Enter Safe Mode>
+0x08:0xe0:0xf9be   //<Firmware>:<Get Firmware Update Error Code Message>
+0x0a:0x10:0xffff   //<Storage>:<Get FRU Inventory Area Info>
+0x0a:0x11:0xffff   //<Storage>:<Read FRU Data>
+0x0a:0x12:0x7fff   //<Storage>:<Write FRU Data>
+0x0a:0x20:0xffff   //<Storage>:<Get SDR Repository Info>
+0x0a:0x21:0xffff   //<Storage>:<Get SDR Alloc Info>
+0x0a:0x22:0xffff   //<Storage>:<Reserve SDR>
+0x0a:0x23:0xffff   //<Storage>:<Get SDR>
+0x0a:0x24:0x7fff   //<Storage>:<Add SDR>
+0x0a:0x25:0x7fff   //<Storage>:<Partial Add SDR>
+0x0a:0x26:0x7fff   //<Storage>:<Delete SDR>
+0x0a:0x27:0x7fff   //<Storage>:<Clear SDR>
+0x0a:0x28:0xffff   //<Storage>:<SEL Get Time>
+0x0a:0x2c:0x7fff   //<Storage>:<Run Init Agent>
+0x0a:0x40:0xffff   //<Storage>:<Get SEL Info>
+0x0a:0x41:0xffff   //<Storage>:<Get SEL Alloc Info>
+0x0a:0x42:0xffff   //<Storage>:<SEL Reserve>
+0x0a:0x43:0xffff   //<Storage>:<Get SEL Entry>
+0x0a:0x44:0x7fff   //<Storage>:<Add SEL Entry>
+0x0a:0x45:0x7fff   //<Storage>:<Add Partial SEL Entry>
+0x0a:0x46:0x7fff   //<Storage>:<Delete SEL Entry>
+0x0a:0x47:0x7fff   //<Storage>:<Clear SEL>
+0x0a:0x48:0xffff   //<Storage>:<Get SEL Time>
+0x0a:0x49:0xffff   //<Storage>:<Set SEL Time>
+0x0a:0x5a:0xffff   //<Storage>:<Get SEL Auxiliary Log Status>
+0x0a:0x5b:0x7fff   //<Storage>:<Set SEL Auxiliary Log Status>
+0x0a:0x5c:0xffff   //<Storage>:<Get SEL Time UTC Offset>
+0x0a:0x5d:0x7fff   //<Storage>:<Set SEL Time UTC Offset>
+0x0c:0x01:0x7fff   //<Transport>:<Set LAN Configuration Parameters>
+0x0c:0x02:0xffff   //<Transport>:<Get LAN Configuration Parameters>
+0x0c:0x03:0x7fff   //<Transport>:<Suspend BMC ARPs>
+0x0c:0x04:0xffff   //<Transport>:<Get IPUDPRMCP Statistics>
+0x0c:0x10:0x7fff   //<Transport>:<7et Serial Modem Configuration>
+0x0c:0x11:0xffff   //<Transport>:<Get Serial Modem Configuration>
+0x0c:0x12:0x7fff   //<Transport>:<SM SetSerial Modem Mux>
+0x0c:0x14:0x7fff   //<Transport>:<Set PPP UDP Proxy Transmit Data>
+0x0c:0x15:0x7fff   //<Transport>:<Get PPP UDP Proxy Transmit Data>
+0x0c:0x16:0x7fff   //<Transport>:<Send PPP UDP Proxy Packet>
+0x0c:0x17:0x7fff   //<Transport>:<Get PPP UDP Proxy Receive Data>
+0x0c:0x18:0x7fff   //<Transport>:<Serial Modem Connection Active>
+0x0c:0x19:0x7fff   //<Transport>:<Callback>
+0x0c:0x1a:0x7fff   //<Transport>:<Set User Callback Options>
+0x0c:0x1b:0x7fff   //<Transport>:<Get User Callback Options>
+0x0c:0x1c:0x7fff   //<Transport>:<Set Serial Routing Mux>
+0x0c:0x20:0x7fff   //<Transport>:<SOL Activating>
+0x0c:0x21:0x7fff   //<Transport>:<Set SOL Configuration Parameters>
+0x0c:0x22:0xffff   //<Transport>:<Get SOL Configuration Parameters>
+0x2c:0x1f:0xffff   //<Group Extension>:<Get CPU PECI Package Config Data>
+0x2c:0x20:0xffff   //<Group Extension>:<Get MDR Data Region Status>
+0x2c:0x21:0x7fff   //<Group Extension>:<Get MDR Region Update Complete>
+0x2c:0x22:0xffff   //<Group Extension>:<Read MDR Region>
+0x2c:0x23:0x7fff   //<Group Extension>:<Write MDR Region>
+0x2c:0x24:0x7fff   //<Group Extension>:<Get MDR Region Lock>
+0x2c:0x25:0xffff   //<Group Extension>:<Get System Mode>
+0x2c:0x26:0x7fff   //<Group Extension>:<Set System Mode>
+0x2c:0x29:0xffff   //<Group Extension>:<Get TPM Configuration>
+0x2c:0x30:0x7fff   //<Group Extension>:<Set TPM Configuration>
+0x2c:0x31:0x7fff   //<Group Extension>:<TPM Configuration Update Complete>
+0x2c:0x37:0xffff   //<Group Extension>:<Read PCIe Cable EEPROM Data>
+0x30:0x02:0x7fff   //<Intel General Application>:<Restore Configuration>
+0x30:0x03:0x7fff   //<Intel General Application>:<Restore SDR>
+0x30:0x04:0xffff   //<Intel General Application>:<Get NW Switch MIB>
+0x30:0x05:0xffff   //<Intel General Application>:<Get PDB FW Version>
+0x30:0x09:0xffff   //<Intel General Application>:<Get BMC Config>
+0x30:0x14:0xffff   //<Intel General Application>:<Get SM Signal>
+0x30:0x15:0x7fff   //<Intel General Application>:<Set SM Signal>
+0x30:0x19:0xffff   //<Intel General Application>:<Read LAN Channel Port Value>
+0x30:0x1a:0xffff   //<Intel General Application>:<Get NIC Info>
+0x30:0x1b:0xffff   //<Intel General Application>:<Get LAN Available>
+0x30:0x1c:0x7fff   //<Intel General Application>:<Set Master MAC>
+0x30:0x1d:0xffff   //<Intel General Application>:<Get Master MAC>
+0x30:0x1f:0xffff   //<Intel General Application>:<Get Secure Mode>
+0x30:0x20:0xffff   //<Intel General Application>:<OEM Get SEL info>
+0x30:0x21:0xffff   //<Intel General Application>:<OEM Get SEL Allocation Info>
+0x30:0x22:0xffff   //<Intel General Application>:<OEM Platform Event Message>
+0x30:0x23:0xffff   //<Intel General Application>:<OEM Get SEL Entry>
+0x30:0x24:0x7fff   //<Intel General Application>:<OEM Add SEL Entry>
+0x30:0x26:0xffff   //<Intel General Application>:<Set BIOS ID>
+0x30:0x27:0xffff   //<Intel General Application>:<Get OEM Device Information>
+0x30:0x29:0x7fff   //<Intel General Application>:<Write SSL Certificate File>
+0x30:0x2c:0x7fff   //<Intel General Application>:<Set Processor Tcontrol>
+0x30:0x2d:0x7fff   //<Intel General Application>:<Set Cold Redundancy Configuration>
+0x30:0x2e:0xffff   //<Intel General Application>:<Get Cold Redundancy Configuration>
+0x30:0x30:0xffff   //<Intel General Application>:<Get Sensor Severity>
+0x30:0x31:0xffff   //<Intel General Application>:<Get AIC Slot FRU ID SLOT POS Records>
+0x30:0x33:0xffff   //<Intel General Application>:<Get Controller Status>
+0x30:0x38:0xffff   //<Intel General Application>:<Get Satellite Firmware update status>
+0x30:0x39:0xffff   //<Intel General Application>:<HSBP Get Owner>
+0x30:0x3b:0x7fff   //<Intel General Application>:<Set AIC MAC>
+0x30:0x3c:0xffff   //<Intel General Application>:<Get AIC MAC>
+0x30:0x3d:0x7fff   //<Intel General Application>:<Clear All AIC MACs>
+0x30:0x3f:0x7fff   //<Intel General Application>:<Enable Onboard TPM>
+0x30:0x40:0x7fff   //<Intel General Application>:<Resolve IP Address>
+0x30:0x41:0xffff   //<Intel General Application>:<Set System GUID>
+0x30:0x42:0x7fff   //<Intel General Application>:<Disable BMC System Reset Action>
+0x30:0x43:0xffff   //<Intel General Application>:<Get BMC Reset Disables>
+0x30:0x44:0xffff   //<Intel General Application>:<Send Embedded Firmware Update Status>
+0x30:0x47:0xffff   //<Intel General Application>:<HSBP Get Version>
+0x30:0x48:0x7fff   //<Intel General Application>:<Internal Platform Event>
+0x30:0x54:0x7fff   //<Intel General Application>:<Set Power Restore Delay>
+0x30:0x55:0xffff   //<Intel General Application>:<Get Power Restore Delay>
+0x30:0x57:0x7fff   //<Intel General Application>:<Set Fault Indication>
+0x30:0x58:0xffff   //<Intel General Application>:<Get DIMM Fault Status>
+0x30:0x5f:0x7fff   //<Intel General Application>:<Set Special User Password>
+0x30:0x60:0x7fff   //<Intel General Application>:<Set Shutdown Policy>
+0x30:0x62:0xffff   //<Intel General Application>:<Get Shutdown Policy>
+0x30:0x63:0xffff   //<Intel General Application>:<Get Node Slot Presence>
+0x30:0x64:0x7fff   //<Intel General Application>:<Set HDD Drive Fault LED State>
+0x30:0x65:0xffff   //<Intel General Application>:<Get HDD Drive Fault LED State>
+0x30:0x66:0xffff   //<Intel General Application>:<Get Buffer Size>
+0x30:0x67:0x7fff   //<Intel General Application>:<OEM Misc>
+0x30:0x71:0xffff   //<Intel General Application>:<Get Advanced Support>
+0x30:0x72:0x7fff   //<Intel General Application>:<Set EFI Payload>
+0x30:0x73:0xffff   //<Intel General Application>:<Get EFI Payload>
+0x30:0x74:0xffff   //<Intel General Application>:<Get RMM Status>
+0x30:0x75:0xffff   //<Intel General Application>:<Get Voltage Name>
+0x30:0x80:0xffff   //<Intel General Application>:<HSBP Get Register From Memory>
+0x30:0x81:0xffff   //<Intel General Application>:<Get Power State>
+0x30:0x82:0xffff   //<Intel General Application>:<Get ACPI Config>
+0x30:0x85:0xffff   //<Intel General Application>:<Get SF PWM>
+0x30:0x87:0x7fff   //<Intel General Application>:<Set DIMM Thermal Threshold>
+0x30:0x88:0x7fff   //<Intel General Application>:<Fans-off Configuration>
+0x30:0x89:0x7fff   //<Intel General Application>:<Set Fan Control Configuration>
+0x30:0x8a:0xffff   //<Intel General Application>:<Get Fan Control Configuration>
+0x30:0x8b:0xffff   //<Intel General Application>:<Auto Fan Detect>
+0x30:0x8c:0x7fff   //<Intel General Application>:<Set fan speed offset>
+0x30:0x8d:0xffff   //<Intel General Application>:<Get fan speed offset>
+0x30:0x8e:0x7fff   //<Intel General Application>:<Set DIMM offset>
+0x30:0x8f:0xffff   //<Intel General Application>:<Get DIMM offset>
+0x30:0x90:0x7fff   //<Intel General Application>:<Set FSC Parameter>
+0x30:0x91:0xffff   //<Intel General Application>:<Get FSC Parameter>
+0x30:0x92:0xffff   //<Intel General Application>:<Get Chassis Identifier>
+0x30:0x93:0xffff   //<Intel General Application>:<Read Base Board Product ID>
+0x30:0x94:0xffff   //<Intel General Application>:<Get BMC Revision ID>
+0x30:0x95:0xffff   //<Intel General Application>:<Get Is AP CPU>
+0x30:0x9a:0xffff   //<Intel General Application>:<Get Processor Error Configuration and Status>
+0x30:0x9b:0x7fff   //<Intel General Application>:<Set Processor Error Configuration>
+0x30:0x9c:0x7fff   //<Intel General Application>:<Set Fan PWM Limit>
+0x30:0x9d:0xffff   //<Intel General Application>:<Get Fan PWM Limit>
+0x30:0xb0:0xffff   //<Intel General Application>:<Get LED Status>
+0x30:0xb1:0x7fff   //<Intel General Application>:<Control BMC Services>
+0x30:0xb2:0xffff   //<Intel General Application>:<Get BMC Service Status>
+0x30:0xb3:0xffff   //<Intel General Application>:<Get BMC Security Control Mode>
+0x30:0xb4:0x7fff   //<Intel General Application>:<Set BMC Security Control Mode>
+0x30:0xbb:0xffff   //<Intel General Application>:<Get CPLD Revision ID>
+0x30:0xc2:0xffff   //<Intel General Application>:<Get OEM Extended Sys Info>
+0x30:0xc3:0x7fff   //<Intel General Application>:<Mount Virtual USB Device>
+0x30:0xc4:0x7fff   //<Intel General Application>:<Unmount Virtual USB Device>
+0x30:0xc6:0xffff   //<Intel General Application>:<Get Partition Config>
+0x30:0xc7:0xffff   //<Intel General Application>:<Get Zone Information>
+0x30:0xc9:0xffff   //<Intel General Application>:<Get Configuration Status>
+0x30:0xca:0xffff   //<Intel General Application>:<Get Fabric Information>
+0x30:0xcb:0xffff   //<Intel General Application>:<Get EndPoints Information>
+0x30:0xcc:0xffff   //<Intel General Application>:<Get Switches Information>
+0x30:0xcd:0xffff   //<Intel General Application>:<Get Switch Collection Information>
+0x30:0xd0:0xffff   //<Intel General Application>:<Get NVMe Drive Data>
+0x30:0xd1:0xffff   //<Intel General Application>:<HSBP Statistics>
+0x30:0xd3:0x7fff   //<Intel General Application>:<Set BIOS Feature Capability>
+0x30:0xd4:0xffff   //<Intel General Application>:<Get BIOS Capsule (OOB Update)>
+0x30:0xd5:0x7fff   //<Intel General Application>:<Set Payload>
+0x30:0xd6:0xffff   //<Intel General Application>:<Get Payload>
+0x30:0xd7:0x7fff   //<Intel General Application>:<Set BIOS Password Hash Info>
+0x30:0xd8:0xffff   //<Intel General Application>:<Get Stored BIOS Password>
+0x30:0xd9:0x7fff   //<Intel General Application>:<OOB Update Status>
+0x30:0xdb:0x7fff   //<Intel General Application>:<Get/Set BMC Remote Debug Parameters>
+0x30:0xe2:0xffff   //<Intel General Application>:<OEM Get Reading>
+0x30:0xe5:0xffff   //<Intel General Application>:<Get NMI Source>
+0x30:0xe6:0x7fff   //<Intel General Application>:<Send Raw PECI>
+0x30:0xe7:0x7fff   //<Intel General Application>:<Aggregate Send Raw PECI>
+0x30:0xe8:0xffff   //<Intel General Application>:<Get PCIe SMBus Slot Card Info>
+0x30:0xe9:0xffff   //<Intel General Application>:<Get BIOS POST CODE>
+0x30:0xf9:0xffff   //<Intel General Application>:<Get POST Progress Codes>
+0x30:0xfa:0x7fff   //<Intel General Application>:<Disable PSU for ME>
+0x30:0xfb:0x7fff   //<Intel General Application>:<Restore PSU for ME>
+0x30:0xfd:0xffff   //<Intel General Application>:<Get Riser Presence>
+0x32:0x60:0xffff   //<Intel OEM Platform>:<Get PM Bus Information>
+0x32:0x63:0xffff   //<Intel OEM Platform>:<Get Tach Information>
+0x32:0x80:0xffff   //<Intel OEM Platform>:<Get SOL Log Number>
+0x32:0x81:0xffff   //<Intel OEM Platform>:<Get SOL Log Entry>
+0x32:0x83:0xffff   //<Intel OEM Platform>:<Get SOL Control>
+0x32:0x8d:0xffff   //<Intel OEM Platform>:<Get SSD Power>
+0x32:0x90:0x7fff   //<Intel OEM Platform>:<Get-Set Serial Port Speed>
+0x3e:0x02:0xffff   //<Intel Managed Data Region>:<BMC Data Region Update Event Message>
+0x3e:0x20:0x7fff   //<Intel Managed Data Region>:<BMC Region Status>
+0x3e:0x21:0x7fff   //<Intel Managed Data Region>:<BMC Region Update Complete>
+0x3e:0x22:0xffff   //<Intel Managed Data Region>:<MDR Event>
+0x3e:0x23:0xffff   //<Intel Managed Data Region>:<BMC Region Read>
+0x3e:0x24:0x7fff   //<Intel Managed Data Region>:<BMC Region Write>
+0x3e:0x25:0x7fff   //<Intel Managed Data Region>:<BMC Region Lock>
+0x3e:0x28:0xffff   //<Intel Managed Data Region>:<Get DIMM information>
+0x3e:0x30:0xffff   //<Intel Managed Data Region>:<MDR2 Status>
+0x3e:0x31:0xffff   //<Intel Managed Data Region>:<MDR2 GET Direction>
+0x3e:0x32:0xffff   //<Intel Managed Data Region>:<MDR2 Get Data Set Info>
+0x3e:0x33:0xffff   //<Intel Managed Data Region>:<MDR2 Lock Data>
+0x3e:0x34:0xffff   //<Intel Managed Data Region>:<MDR2 Unlock Data>
+0x3e:0x35:0xffff   //<Intel Managed Data Region>:<MDR2 Dget Data Block>
+0x3e:0x38:0xffff   //<Intel Managed Data Region>:<MDR2 Send Direction>
+0x3e:0x39:0xffff   //<Intel Managed Data Region>:<MDR2 Data Info Offer>
+0x3e:0x3a:0x7fff   //<Intel Managed Data Region>:<MDR2 Data Info>
+0x3e:0x3b:0x7fff   //<Intel Managed Data Region>:<MDR2 Data Start>
+0x3e:0x3c:0x7fff   //<Intel Managed Data Region>:<MDR2 Data Done>
+0x3e:0x3d:0x7fff   //<Intel Managed Data Region>:<MDR2 Data Block>
+0x3e:0x40:0x7fff   //<Intel Managed Data Region>:<Set Get LAN Failover>
+0x3e:0x41:0xffff   //<Intel Managed Data Region>:<Enter Platform Debug Log file transfer mode>
+0x3e:0x42:0xffff   //<Intel Managed Data Region>:<Read Platform Debug Log file>
+0x3e:0x43:0xffff   //<Intel Managed Data Region>:<Status of the Platform Debug Log file transfer mode>
+0x3e:0x44:0xffff   //<Intel Managed Data Region>:<Exit Platform Debug Log file transfer mode>
+0x3e:0x47:0x7fff   //<Intel Managed Data Region>:<Get/Set BMC Application Fault Management Config>
+0x3e:0x48:0x7fff   //<Intel Managed Data Region>:<Get/Set BMC Boot Fault Management Config>
+0x3e:0x50:0xffff   //<Intel Managed Data Region>:<Node IPMB slave address>
+0x3e:0x51:0xffff   //<Intel Managed Data Region>:<Slot IPMB>
+0x3e:0x52:0xffff   //<Intel Managed Data Region>:<Slot I2C Master Write Read>
+0x3e:0x70:0x7fff   //<Intel Managed Data Region>:<SDR Configuration File control>
+0x3e:0x71:0x7fff   //<Intel Managed Data Region>:<SDR Configuration File Write>
+0x3e:0x72:0x7fff   //<Intel Managed Data Region>:<SDR Configuration File Read>
+0x3e:0x73:0x7fff   //<Intel Managed Data Region>:<SDR Configuration File Management>
+0x3e:0x75:0xffff   //<Intel Managed Data Region>:<Get Remote Log IP>
+0x3e:0x76:0x7fff   //<Intel Managed Data Region>:<Get/Set Password Mode>