All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 0/6] Add LCLK control into Aspeed LPC sub drivers
@ 2021-11-08 19:01 ` jae.hyun.yoo
  0 siblings, 0 replies; 18+ messages in thread
From: jae.hyun.yoo @ 2021-11-08 19:01 UTC (permalink / raw)
  To: Rob Herring, Corey Minyard, Joel Stanley, Andrew Jeffery,
	Cedric Le Goater, Haiyue Wang, ChiaWei Wang, Jae Hyun Yoo
  Cc: devicetree, linux-arm-kernel, linux-aspeed, openipmi-developer

From: Jae Hyun Yoo <jae.hyun.yoo@linux.intel.com>

Hello all,

This series is for appliying below fix to all Aspped LPC sub drivers.
https://lore.kernel.org/all/20201208091748.1920-1-wangzhiqiang.bj@bytedance.com/

An LPC sub driver can be enabled without using the lpc-ctrl driver or it
can be registered ahead of lpc-ctrl depends on each system configuration and
this difference introduces that LPC can be enabled without heart beating of
LCLK so it 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 clock control logic into the remaining Aspeed LPC sub
drivers.

Please review this series.

Thanks,
Jae

Changes sinve v2:
 * Rebased it on the latest master.
 * Made dts and bindigs changes' commit message more descriptive.
 * Simplified the -EPROBE_DEFER handling using dev_err_probe().

Changes sinve v1:
 * Added 'clocks' property into ibt and kcs-bmc bindings using
   'aspeed,ast2400-ibt-bmc.txt' and 'aspeed,ast2400-kcs-bmc.yaml'
   respectively because these are not merged into 'aspeed-lpc.yaml' yet.
   The bindings merging could be done using a separate patch later.

Jae Hyun Yoo (6):
  ARM: dts: aspeed: add LCLK setting into LPC IBT node
  dt-bindings: ipmi: bt-bmc: add 'clocks' as a required property
  ipmi: bt: add clock control logic
  ARM: dts: aspeed: add LCLK setting into LPC KCS nodes
  dt-bindings: ipmi: aspeed,kcs-bmc: add 'clocks' as a required property
  ipmi: kcs_bmc_aspeed: add clock control logic

 .../bindings/ipmi/aspeed,ast2400-ibt-bmc.txt  |  2 ++
 .../bindings/ipmi/aspeed,ast2400-kcs-bmc.yaml |  7 +++++
 arch/arm/boot/dts/aspeed-g4.dtsi              |  1 +
 arch/arm/boot/dts/aspeed-g5.dtsi              |  5 ++++
 arch/arm/boot/dts/aspeed-g6.dtsi              |  5 ++++
 drivers/char/ipmi/bt-bmc.c                    | 21 +++++++++++++-
 drivers/char/ipmi/kcs_bmc_aspeed.c            | 28 ++++++++++++++++---
 7 files changed, 64 insertions(+), 5 deletions(-)

-- 
2.25.1


^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2021-11-19  1:09 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-08 19:01 [PATCH v3 0/6] Add LCLK control into Aspeed LPC sub drivers jae.hyun.yoo
2021-11-08 19:01 ` jae.hyun.yoo
2021-11-08 19:01 ` [PATCH v3 1/6] ARM: dts: aspeed: add LCLK setting into LPC IBT node jae.hyun.yoo
2021-11-08 19:01   ` jae.hyun.yoo
2021-11-08 19:01 ` [PATCH v3 2/6] dt-bindings: ipmi: bt-bmc: add 'clocks' as a required property jae.hyun.yoo
2021-11-08 19:01   ` jae.hyun.yoo
2021-11-19  1:07   ` Rob Herring
2021-11-19  1:07     ` Rob Herring
2021-11-08 19:01 ` [PATCH v3 3/6] ipmi: bt: add clock control logic jae.hyun.yoo
2021-11-08 19:01   ` jae.hyun.yoo
2021-11-08 19:01 ` [PATCH v3 4/6] ARM: dts: aspeed: add LCLK setting into LPC KCS nodes jae.hyun.yoo
2021-11-08 19:01   ` jae.hyun.yoo
2021-11-08 19:01 ` [PATCH v3 5/6] dt-bindings: ipmi: aspeed,kcs-bmc: add 'clocks' as a required property jae.hyun.yoo
2021-11-08 19:01   ` [PATCH v3 5/6] dt-bindings: ipmi: aspeed, kcs-bmc: " jae.hyun.yoo
2021-11-19  1:08   ` [PATCH v3 5/6] dt-bindings: ipmi: aspeed,kcs-bmc: " Rob Herring
2021-11-19  1:08     ` Rob Herring
2021-11-08 19:02 ` [PATCH v3 6/6] ipmi: kcs_bmc_aspeed: add clock control logic jae.hyun.yoo
2021-11-08 19:02   ` jae.hyun.yoo

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.