diff options
author | Jonathan Herman <hermanjl@cs.unc.edu> | 2013-01-17 16:15:55 -0500 |
---|---|---|
committer | Jonathan Herman <hermanjl@cs.unc.edu> | 2013-01-17 16:15:55 -0500 |
commit | 8dea78da5cee153b8af9c07a2745f6c55057fe12 (patch) | |
tree | a8f4d49d63b1ecc92f2fddceba0655b2472c5bd9 /Documentation/IPMI.txt | |
parent | 406089d01562f1e2bf9f089fd7637009ebaad589 (diff) |
Patched in Tegra support.
Diffstat (limited to 'Documentation/IPMI.txt')
-rw-r--r-- | Documentation/IPMI.txt | 65 |
1 files changed, 62 insertions, 3 deletions
diff --git a/Documentation/IPMI.txt b/Documentation/IPMI.txt index 16eb4c9e923..b2bea15137d 100644 --- a/Documentation/IPMI.txt +++ b/Documentation/IPMI.txt | |||
@@ -42,7 +42,13 @@ The driver interface depends on your hardware. If your system | |||
42 | properly provides the SMBIOS info for IPMI, the driver will detect it | 42 | properly provides the SMBIOS info for IPMI, the driver will detect it |
43 | and just work. If you have a board with a standard interface (These | 43 | and just work. If you have a board with a standard interface (These |
44 | will generally be either "KCS", "SMIC", or "BT", consult your hardware | 44 | will generally be either "KCS", "SMIC", or "BT", consult your hardware |
45 | manual), choose the 'IPMI SI handler' option. | 45 | manual), choose the 'IPMI SI handler' option. A driver also exists |
46 | for direct I2C access to the IPMI management controller. Some boards | ||
47 | support this, but it is unknown if it will work on every board. For | ||
48 | this, choose 'IPMI SMBus handler', but be ready to try to do some | ||
49 | figuring to see if it will work on your system if the SMBIOS/APCI | ||
50 | information is wrong or not present. It is fairly safe to have both | ||
51 | these enabled and let the drivers auto-detect what is present. | ||
46 | 52 | ||
47 | You should generally enable ACPI on your system, as systems with IPMI | 53 | You should generally enable ACPI on your system, as systems with IPMI |
48 | can have ACPI tables describing them. | 54 | can have ACPI tables describing them. |
@@ -52,7 +58,8 @@ their job correctly, the IPMI controller should be automatically | |||
52 | detected (via ACPI or SMBIOS tables) and should just work. Sadly, | 58 | detected (via ACPI or SMBIOS tables) and should just work. Sadly, |
53 | many boards do not have this information. The driver attempts | 59 | many boards do not have this information. The driver attempts |
54 | standard defaults, but they may not work. If you fall into this | 60 | standard defaults, but they may not work. If you fall into this |
55 | situation, you need to read the section below named 'The SI Driver'. | 61 | situation, you need to read the section below named 'The SI Driver' or |
62 | "The SMBus Driver" on how to hand-configure your system. | ||
56 | 63 | ||
57 | IPMI defines a standard watchdog timer. You can enable this with the | 64 | IPMI defines a standard watchdog timer. You can enable this with the |
58 | 'IPMI Watchdog Timer' config option. If you compile the driver into | 65 | 'IPMI Watchdog Timer' config option. If you compile the driver into |
@@ -97,7 +104,12 @@ driver, each open file for this device ties in to the message handler | |||
97 | as an IPMI user. | 104 | as an IPMI user. |
98 | 105 | ||
99 | ipmi_si - A driver for various system interfaces. This supports KCS, | 106 | ipmi_si - A driver for various system interfaces. This supports KCS, |
100 | SMIC, and BT interfaces. | 107 | SMIC, and BT interfaces. Unless you have an SMBus interface or your |
108 | own custom interface, you probably need to use this. | ||
109 | |||
110 | ipmi_smb - A driver for accessing BMCs on the SMBus. It uses the | ||
111 | I2C kernel driver's SMBus interfaces to send and receive IPMI messages | ||
112 | over the SMBus. | ||
101 | 113 | ||
102 | ipmi_watchdog - IPMI requires systems to have a very capable watchdog | 114 | ipmi_watchdog - IPMI requires systems to have a very capable watchdog |
103 | timer. This driver implements the standard Linux watchdog timer | 115 | timer. This driver implements the standard Linux watchdog timer |
@@ -470,6 +482,53 @@ for specifying an interface. Note that when removing an interface, | |||
470 | only the first three parameters (si type, address type, and address) | 482 | only the first three parameters (si type, address type, and address) |
471 | are used for the comparison. Any options are ignored for removing. | 483 | are used for the comparison. Any options are ignored for removing. |
472 | 484 | ||
485 | The SMBus Driver | ||
486 | ---------------- | ||
487 | |||
488 | The SMBus driver allows up to 4 SMBus devices to be configured in the | ||
489 | system. By default, the driver will register any SMBus interfaces it finds | ||
490 | in the I2C address range of 0x20 to 0x4f on any adapter. You can change this | ||
491 | at module load time (for a module) with: | ||
492 | |||
493 | modprobe ipmi_smb.o | ||
494 | addr=<adapter1>,<i2caddr1>[,<adapter2>,<i2caddr2>[,...]] | ||
495 | dbg=<flags1>,<flags2>... | ||
496 | [defaultprobe=1] [dbg_probe=1] | ||
497 | |||
498 | The addresses are specified in pairs, the first is the adapter ID and the | ||
499 | second is the I2C address on that adapter. | ||
500 | |||
501 | The debug flags are bit flags for each BMC found, they are: | ||
502 | IPMI messages: 1, driver state: 2, timing: 4, I2C probe: 8 | ||
503 | |||
504 | Setting smb_defaultprobe to zero disabled the default probing of SMBus | ||
505 | interfaces at address range 0x20 to 0x4f. This means that only the | ||
506 | BMCs specified on the smb_addr line will be detected. | ||
507 | |||
508 | Setting smb_dbg_probe to 1 will enable debugging of the probing and | ||
509 | detection process for BMCs on the SMBusses. | ||
510 | |||
511 | Discovering the IPMI compliant BMC on the SMBus can cause devices | ||
512 | on the I2C bus to fail. The SMBus driver writes a "Get Device ID" IPMI | ||
513 | message as a block write to the I2C bus and waits for a response. | ||
514 | This action can be detrimental to some I2C devices. It is highly recommended | ||
515 | that the known I2c address be given to the SMBus driver in the smb_addr | ||
516 | parameter. The default address range will not be used when a smb_addr | ||
517 | parameter is provided. | ||
518 | |||
519 | When compiled into the kernel, the addresses can be specified on the | ||
520 | kernel command line as: | ||
521 | |||
522 | ipmb_smb.addr=<adapter1>,<i2caddr1>[,<adapter2>,<i2caddr2>[,...]] | ||
523 | ipmi_smb.dbg=<flags1>,<flags2>... | ||
524 | ipmi_smb.defaultprobe=0 ipmi_smb.dbg_probe=1 | ||
525 | |||
526 | These are the same options as on the module command line. | ||
527 | |||
528 | Note that you might need some I2C changes if CONFIG_IPMI_PANIC_EVENT | ||
529 | is enabled along with this, so the I2C driver knows to run to | ||
530 | completion during sending a panic event. | ||
531 | |||
473 | 532 | ||
474 | Other Pieces | 533 | Other Pieces |
475 | ------------ | 534 | ------------ |