pub const EC_COMMAND_PROTOCOL_3: u8 = 0xda;
const _EC_LPC_STATUS_TO_HOST: u8 = 0x01;
pub const EC_LPC_STATUS_FROM_HOST: u8 = 0x02;
pub const EC_LPC_STATUS_PROCESSING: u8 = 0x04;
const _EC_LPC_STATUS_LAST_CMD: u8 = 0x08;
const _EC_LPC_STATUS_BURST_MODE: u8 = 0x10;
const _EC_LPC_STATUS_SCI_PENDING: u8 = 0x20;
const _EC_LPC_STATUS_SMI_PENDING: u8 = 0x40;
const _EC_LPC_STATUS_RESERVED: u8 = 0x80;
pub const EC_LPC_STATUS_BUSY_MASK: u8 = EC_LPC_STATUS_FROM_HOST | EC_LPC_STATUS_PROCESSING;
const _EC_LPC_ADDR_ACPI_DATA: u16 = 0x62;
const _EC_LPC_ADDR_ACPI_CMD: u16 = 0x66;
pub const EC_LPC_ADDR_HOST_DATA: u16 = 0x200;
pub const EC_LPC_ADDR_HOST_CMD: u16 = 0x204;
pub const EC_LPC_ADDR_HOST_ARGS: u16 = 0x800;
const _EC_LPC_ADDR_HOST_PARAM: u16 = 0x804;
const _EC_LPC_ADDR_HOST_PACKET: u16 = 0x800;
pub const EC_LPC_HOST_PACKET_SIZE: u16 = 0x100;
pub const MEC_MEMMAP_OFFSET: u16 = 0x100;
pub const NPC_MEMMAP_OFFSET: u16 = 0xE00;
const _EC_HOST_CMD_REGION0: u16 = 0x800;
const _EC_HOST_CMD_REGION1: u16 = 0x8800;
const _EC_HOST_CMD_REGION_SIZE: u16 = 0x80;
const _EC_LPC_CMDR_DATA: u16 = 1 << 0; const _EC_LPC_CMDR_PENDING: u16 = 1 << 1; const _EC_LPC_CMDR_BUSY: u16 = 1 << 2; const _EC_LPC_CMDR_CMD: u16 = 1 << 3; const _EC_LPC_CMDR_ACPI_BRST: u16 = 1 << 4; const _EC_LPC_CMDR_SCI: u16 = 1 << 5; const _EC_LPC_CMDR_SMI: u16 = 1 << 6;
pub const EC_HOST_REQUEST_VERSION: u8 = 3;
#[repr(C, packed)]
pub struct EcHostRequest {
pub struct_version: u8,
pub checksum: u8,
pub command: u16,
pub command_version: u8,
pub reserved: u8,
pub data_len: u16,
}
pub const EC_HOST_RESPONSE_VERSION: u8 = 3;
#[repr(C, packed)]
pub struct EcHostResponse {
pub struct_version: u8,
pub checksum: u8,
pub result: u16,
pub data_len: u16,
pub reserved: u16,
}
pub const HEADER_LEN: usize = std::mem::size_of::<EcHostResponse>();