Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

dt-bindings: ipmi: Add optional SerIRQ property to ASPEED KCS devices

Allocating IO and IRQ resources to LPC devices is in-theory an operation
for the host, however ASPEED don't appear to expose this capability
outside the BMC (e.g. SuperIO). Instead, we are left with BMC-internal
registers for managing these resources, so introduce a devicetree
property for KCS devices to describe SerIRQ properties.

Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Reviewed-by: Rob Herring <robh@kernel.org>
Message-Id: <20210608104757.582199-14-andrew@aj.id.au>
Signed-off-by: Corey Minyard <cminyard@mvista.com>

authored by

Andrew Jeffery and committed by
Corey Minyard
a7fd43d9 e880275c

+14
+14
Documentation/devicetree/bindings/ipmi/aspeed,ast2400-kcs-bmc.yaml
··· 49 49 channels the status address is derived from the data address, but the 50 50 status address may be optionally provided. 51 51 52 + aspeed,lpc-interrupts: 53 + $ref: "/schemas/types.yaml#/definitions/uint32-array" 54 + minItems: 2 55 + maxItems: 2 56 + description: | 57 + A 2-cell property expressing the LPC SerIRQ number and the interrupt 58 + level/sense encoding (specified in the standard fashion). 59 + 60 + Note that the generated interrupt is issued from the BMC to the host, and 61 + thus the target interrupt controller is not captured by the BMC's 62 + devicetree. 63 + 52 64 kcs_chan: 53 65 deprecated: true 54 66 $ref: '/schemas/types.yaml#/definitions/uint32' ··· 96 84 97 85 examples: 98 86 - | 87 + #include <dt-bindings/interrupt-controller/irq.h> 99 88 kcs3: kcs@24 { 100 89 compatible = "aspeed,ast2600-kcs-bmc"; 101 90 reg = <0x24 0x1>, <0x30 0x1>, <0x3c 0x1>; 102 91 aspeed,lpc-io-reg = <0xca2>; 92 + aspeed,lpc-interrupts = <11 IRQ_TYPE_LEVEL_LOW>; 103 93 interrupts = <8>; 104 94 };