dt-bindings: ipmi: bt-bmc: add 'clocks' as a required property
authorJae Hyun Yoo <jae.hyun.yoo@linux.intel.com>
Mon, 8 Nov 2021 19:01:56 +0000 (11:01 -0800)
committerJoel Stanley <joel@jms.id.au>
Tue, 21 Dec 2021 05:02:39 +0000 (15:32 +1030)
If LPC BT driver is registered ahead of lpc-ctrl module, LPC BT
hardware block will be enabled without heart beating of LCLK until
lpc-ctrl enables the LCLK. This issue causes improper handling on
host interrupts when the host sends interrupts in that time frame.
Then kernel eventually forcibly disables the interrupt with
dumping stack and printing a 'nobody cared this irq' message out.

To prevent this issue, all LPC sub drivers should enable LCLK
individually so this patch adds 'clocks' property as one of
required properties to enable the LCLK by the LPC IBT driver.

Note: dtsi change in this patch series should be applied along with,
and dtbs should be re-compiled after applying this series since
it's adding a new required property otherwise the driver will not
be probed correctly.

Signed-off-by: Jae Hyun Yoo <jae.hyun.yoo@linux.intel.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211108190200.290957-3-jae.hyun.yoo@intel.com
Signed-off-by: Joel Stanley <joel@jms.id.au>
Documentation/devicetree/bindings/ipmi/aspeed,ast2400-ibt-bmc.txt

index c9902fd4b38b77271fd0e53c3ca937401eae79d0..25f86da804b72e90a1732442a952f56c52cfe153 100644 (file)
@@ -11,6 +11,7 @@ Required properties:
        "aspeed,ast2500-ibt-bmc"
        "aspeed,ast2600-ibt-bmc"
 - reg: physical address and size of the registers
+- clocks: clock for the device
 
 Optional properties:
 
@@ -23,4 +24,5 @@ Example:
                compatible = "aspeed,ast2400-ibt-bmc";
                reg = <0x1e789140 0x18>;
                interrupts = <8>;
+               clocks = <&syscon ASPEED_CLK_GATE_LCLK>;
        };