| .. | .. |
|---|
| 1 | | -* Aspeed KCS (Keyboard Controller Style) IPMI interface |
|---|
| 1 | +# Aspeed KCS (Keyboard Controller Style) IPMI interface |
|---|
| 2 | 2 | |
|---|
| 3 | 3 | The Aspeed SOCs (AST2400 and AST2500) are commonly used as BMCs |
|---|
| 4 | 4 | (Baseboard Management Controllers) and the KCS interface can be |
|---|
| 5 | 5 | used to perform in-band IPMI communication with their host. |
|---|
| 6 | 6 | |
|---|
| 7 | +## v1 |
|---|
| 7 | 8 | Required properties: |
|---|
| 8 | 9 | - compatible : should be one of |
|---|
| 9 | 10 | "aspeed,ast2400-kcs-bmc" |
|---|
| .. | .. |
|---|
| 12 | 13 | - kcs_chan : The LPC channel number in the controller |
|---|
| 13 | 14 | - kcs_addr : The host CPU IO map address |
|---|
| 14 | 15 | |
|---|
| 16 | +## v2 |
|---|
| 17 | +Required properties: |
|---|
| 18 | +- compatible : should be one of |
|---|
| 19 | + "aspeed,ast2400-kcs-bmc-v2" |
|---|
| 20 | + "aspeed,ast2500-kcs-bmc-v2" |
|---|
| 21 | +- reg : The address and size of the IDR, ODR and STR registers |
|---|
| 22 | +- interrupts : interrupt generated by the controller |
|---|
| 23 | +- aspeed,lpc-io-reg : The host CPU LPC IO address for the device |
|---|
| 15 | 24 | |
|---|
| 16 | 25 | Example: |
|---|
| 17 | 26 | |
|---|
| 18 | | - kcs3: kcs3@0 { |
|---|
| 19 | | - compatible = "aspeed,ast2500-kcs-bmc"; |
|---|
| 20 | | - reg = <0x0 0x80>; |
|---|
| 27 | + kcs3: kcs@24 { |
|---|
| 28 | + compatible = "aspeed,ast2500-kcs-bmc-v2"; |
|---|
| 29 | + reg = <0x24 0x1>, <0x30 0x1>, <0x3c 0x1>; |
|---|
| 30 | + aspeed,lpc-reg = <0xca2>; |
|---|
| 21 | 31 | interrupts = <8>; |
|---|
| 22 | | - kcs_chan = <3>; |
|---|
| 23 | | - kcs_addr = <0xCA2>; |
|---|
| 24 | 32 | status = "okay"; |
|---|
| 25 | 33 | }; |
|---|