| 1 |
|
| 2 | struct acpi_smb_hc;
|
| 3 | enum acpi_smb_protocol {
|
| 4 | SMBUS_WRITE_QUICK = 2,
|
| 5 | SMBUS_READ_QUICK = 3,
|
| 6 | SMBUS_SEND_BYTE = 4,
|
| 7 | SMBUS_RECEIVE_BYTE = 5,
|
| 8 | SMBUS_WRITE_BYTE = 6,
|
| 9 | SMBUS_READ_BYTE = 7,
|
| 10 | SMBUS_WRITE_WORD = 8,
|
| 11 | SMBUS_READ_WORD = 9,
|
| 12 | SMBUS_WRITE_BLOCK = 0xa,
|
| 13 | SMBUS_READ_BLOCK = 0xb,
|
| 14 | SMBUS_PROCESS_CALL = 0xc,
|
| 15 | SMBUS_BLOCK_PROCESS_CALL = 0xd,
|
| 16 | };
|
| 17 |
|
| 18 | enum acpi_sbs_device_addr {
|
| 19 | ACPI_SBS_CHARGER = 0x9,
|
| 20 | ACPI_SBS_MANAGER = 0xa,
|
| 21 | ACPI_SBS_BATTERY = 0xb,
|
| 22 | };
|
| 23 |
|
| 24 | typedef void (*smbus_alarm_callback)(void *context);
|
| 25 |
|
| 26 | extern int acpi_smbus_read(struct acpi_smb_hc *hc, u8 protocol, u8 address,
|
| 27 | u8 command, u8 *data);
|
| 28 | extern int acpi_smbus_write(struct acpi_smb_hc *hc, u8 protocol, u8 slave_address,
|
| 29 | u8 command, u8 *data, u8 length);
|
| 30 | extern int acpi_smbus_register_callback(struct acpi_smb_hc *hc,
|
| 31 | smbus_alarm_callback callback, void *context);
|
| 32 | extern int acpi_smbus_unregister_callback(struct acpi_smb_hc *hc);
|