linux-gbmc(npcm): i2c: Add clock toggle recovery

During init of the bus, the module checks that the bus is idle.
If one of the lines are stuck try to recover them first before failing.
Sometimes SDA and SCL are low if improper reset occurs (e.g., reboot).

Upstream-process:
https://patchwork.ozlabs.org/project/linux-i2c/patch/20250327193816.670658-1-mohammed.0.elbadry@gmail.com/
Tested: Repeated hardware lockup and can see bus recovering.
Google-Bug-Id: 392117920
Change-Id: I9fc2671c89c88bf849177f0855888694b984f3ea
Signed-off-by: Mo Elbadry <elbadrym@google.com>
5 files changed
tree: bcfafbd3303e556250e43a6b741103c402c657d8
  1. classes/
  2. conf/
  3. dynamic-layers/
  4. recipes-bsp/
  5. recipes-connectivity/
  6. recipes-core/
  7. recipes-devtools/
  8. recipes-extended/
  9. recipes-google/
  10. recipes-kernel/
  11. recipes-phosphor/
  12. recipes-support/
  13. recipes-tpm1/
  14. recipes-tpm2/
  15. LICENSE
  16. README.md
README.md

meta-gbmc-staging

This repository contains additions to the openbmc/meta-google layer that are not yet ready for OpenBMC inclusion.

How to use this layer

  1. Clone openbmc/openbmc from GitHub.
  2. Clone this layer from GitHub into a subdirectory of openbmc.