Имеется система HP ProLiant DL180 G6 и Debian Squeeze 6.0.
Надо завести внутреннее общение с IPMI-интерфейсом.
При «modprobe ipmi_si» в лог пишется вот это:
[1730185.193373] Could not set up I/O space
[1730317.891364] ipmi message handler version 39.2
[1730317.893759] IPMI System Interface driver.
[1730317.894471] ipmi_si: Trying SMBIOS-specified kcs state machine at i/o address 0xca2, slave address 0x20, irq 0
[1730318.028656] ipmi: Found new BMC (man_id: 0x00000b, prod_id: 0x0000, dev_id: 0x12)
[1730318.028676] IPMI kcs interface initialized
[1730318.028690] ipmi_si: Trying ACPI-specified kcs state machine at mem address 0x0, slave address 0x0, irq 0
[1730318.028695] Could not set up I/O space
То есть, плату драйвер находит, но при попытке подключиться через ACPI почему-то запрашивает адрес 0x0 вместо 0xca2.
Прямое указывание адресов даёт тот же эффект: «modprobe ipmi_si type=kcs ports=0xca2».
# dmidecode -t 38
# dmidecode 2.9
SMBIOS 2.6 present.
Handle 0x003C, DMI type 38, 18 bytes
IPMI Device Information
Interface Type: KCS (Keyboard Control Style)
Specification Version: 2.0
I2C Slave Address: 0x10
NV Storage Device Address: 1
Base Address: 0x0000000000000CA2 (I/O)
Register Spacing: Successive Byte Boundaries
$ uname -a
Linux amber 2.6.32-5-xen-amd64 #1 SMP Sun May 6 08:57:29 UTC 2012 x86_64 GNU/Linux
Что характерно, драйвер встаёт и, после добавления ipmi_devintf даже даёт немного пообщаться:
diver@amber:~$ sudo ipmitool power status
Chassis Power is on
diver@amber:~$ sudo ipmitool sel
SEL Information
Version : 1.5 (v1.5, v2 compliant)
Entries : 62
Free Space : 6168 bytes
Percent Used : 13%
Last Add Time : 02/08/2012 04:41:26
Last Del Time : 08/21/2010 10:33:59
Overflow : false
Supported Cmds : 'Delete' 'Reserve' 'Get Alloc Info'
# of Alloc Units : 319
Alloc Unit Size : 24
# Free Units : 257
Largest Free Blk : 257
Max Record Size : 1
diver@amber:~$ sudo ipmitool sdr
OS Boot Status | Not Readable | ns
POST Error | Not Readable | ns
Memory ECC | Not Readable | ns
CPU1 DIMM1 | Not Readable | ns
CPU1 DIMM2 | Not Readable | ns
CPU1 DIMM3 | Not Readable | ns
CPU1 DIMM4 | Not Readable | ns
....<Тормоза, пропущено>...
В общем, получается так, что ACPI-шная часть драйвера (или как там оно правильно?) не завелась. Куда копать?