[PATCH v5 0/9] Congatec Board Controller: Add storage devices support

From: Thomas Richard (congatec GmbH)

Date: Tue Nov 03 2026 - 12:21:26 EST


In this v5, I re-ordered a bit the patches to fix I2C bus names first.
I also made an error message more user friendly.

Lee, this series conflicts with some other ongoing patches series:
- mfd: Assorted resource lifetime, teardown, and error-handling fixes [1]
- mfd: Constify mfd_cell arrays [2]

To make your life easier I rebased this series on top of them. Please let
me know if you want to proceed in an other way.

[1] https://lore.kernel.org/all/20261027093306.2812695-1-lee@xxxxxxxxxx/
[2] https://lore.kernel.org/all/20261030071137.100954-3-krzysztof.kozlowski@xxxxxxxxxxxxxxxx/

Best Regards,
Thomas

Signed-off-by: Thomas Richard (congatec GmbH) <thomas.richard@xxxxxxxxxxx>
---
Changes in v5:
- mfd: fix error message in case we fail to get session handle.
- fix I2C bus names earlier in the series.
- Link to v4: https://patch.msgid.link/20261002-cgbc-i2c-storage-devices-support-v4-0-eb42e0f1df59@xxxxxxxxxxx

Changes in v4:
- Fix struct cgbc_i2c_platform_data comment (kernel-doc warning)
- Move struct cgbc_i2c_platform_data from linux/platform_data/i2c-cgbc.h to
linux/mfd/cgbc.h
- Use MFD_CELL_NAME macros.
- Link to v3: https://patch.msgid.link/20260911-cgbc-i2c-storage-devices-support-v3-0-594b53fbc5ea@xxxxxxxxxxx

Changes in v3:
- rebased on v7.3-rc2
- use PLATFORM_DEVID_AUTO for child devices
- move I2C bus and I2C device definition in the MFD driver
- Link to v2: https://patch.msgid.link/20260811-cgbc-i2c-storage-devices-support-v2-0-3efa998e0ef5@xxxxxxxxxxx

Changes in v2:
- i2c: fix typo in CGBC BIOS EEPROM label.
- mfd: make cgbc_devs const
- Link to v1: https://patch.msgid.link/20260804-cgbc-i2c-storage-devices-support-v1-0-fed38510671c@xxxxxxxxxxx

To: Thomas Richard <thomas.richard@xxxxxxxxxxx>
To: Lee Jones <lee@xxxxxxxxxx>
To: Andi Shyti <andi.shyti@xxxxxxxxxx>
Cc: Thomas Petazzoni <thomas.petazzoni@xxxxxxxxxxx>
Cc: Werner Gartner <Werner.Gartner@xxxxxxxxxxxx>
Cc: mfd@xxxxxxxxxxxxxxx
Cc: linux-kernel@xxxxxxxxxxxxxxx
Cc: linux-i2c@xxxxxxxxxxxxxxx

---
Thomas Richard (congatec GmbH) (9):
mfd: cgbc: Fix use of negative error code as valid session handle
i2c: cgbc: Use real I2C bus names
mfd: cgbc: Add I2C platform data
i2c: cgbc: Use plateform data to get bus ID and adapter name
mfd: cgbc: Use PLATFORM_DEVID_AUTO for child device registration
i2c: cgbc: Add support for fixed frequency buses
mfd: cgbc: Add virtual I2C bus support
mfd: cgbc: Add virtual storage devices on the virtual I2C bus
i2c: cgbc: Register known I2C devices on the bus

drivers/i2c/busses/i2c-cgbc.c | 108 ++++++++++++------------
drivers/mfd/cgbc-core.c | 187 +++++++++++++++++++++++++++++++++++++++---
include/linux/mfd/cgbc.h | 16 ++++
3 files changed, 244 insertions(+), 67 deletions(-)
---
base-commit: d3dfdb6b429a5b99bfd47176bf07cad0956f14ed
change-id: 20260717-cgbc-i2c-storage-devices-support-b3ee7cea3320
prerequisite-message-id: 20261027093306.2812695-1-lee@xxxxxxxxxx
prerequisite-patch-id: 7d50ed21b2d5d1bb25290d19c46b4668073feddf
prerequisite-patch-id: 45cdf12f5527ab86a560ba98c02cc447bf6eee4e
prerequisite-patch-id: 6148da531ee7713f8afb7bec90fb3f548b562d28
prerequisite-patch-id: fb0c30c409ef451192973c417a0585f989f8917b
prerequisite-patch-id: 8403fcd8efcd44138f139767624773fa654a5a2f
prerequisite-patch-id: 434546741519ecd3032e19f3acf2c5370e9a454c
prerequisite-patch-id: 29540ca5739d6f6f3e2d3fe5b87893ad31f6c3ee
prerequisite-patch-id: a33adadb2e2efe82d2a14417c1c35c579bf212d0
prerequisite-patch-id: dd53f1e6db35d71b51061dad45de28dde9ebc70f
prerequisite-patch-id: 85a1da1285d64ce3fc78c8ae7969fbb0dc7c3cd7
prerequisite-patch-id: e9b952ebc380d058ac2144771c780a0b08c3b7c3
prerequisite-patch-id: 1f0dcc7a8c5df7ae1c8bfb5a1c8f62b441704286
prerequisite-patch-id: 077a4ef70d74321711e2efd4e016e01a1d41c818
prerequisite-patch-id: 4dcd6cc156bb6ba43684605972fb179557a3891e
prerequisite-patch-id: 62e87491674feaae09327a99a5ff1b4ed368f221
prerequisite-patch-id: ab1eac435fd40cdb3d9a8d453a12852a105f57c4
prerequisite-patch-id: 1cbcc3b666db27cbe9f3fa6c6ead2f49a0d459da
prerequisite-patch-id: ecb566a7bea44600e9d7e9617e280c994773e3dd
prerequisite-patch-id: 20e295db85a31587d342471a3c341615c8eb0fd7
prerequisite-patch-id: 06118bf6e5affc234e7edbdb5c0aae9b05412b33
prerequisite-patch-id: 17afeb13c5012348feee8eb739ff058e84ed2df8
prerequisite-patch-id: 27693bdeffbc7a0a295c165912b89af5ca3264aa
prerequisite-patch-id: 8313fe2293eaf0e69ffd2f0017e18fde64ca68f7
prerequisite-patch-id: fc53af34353efecb4490087ed066ccb256a74695
prerequisite-patch-id: 02ad8a3b1fddb4f4e806939d36ae642c01004c36
prerequisite-patch-id: 7b9b8460613f4240492ffe11ee7ee0e6c0b6ded8
prerequisite-patch-id: 699c068a32ac9d3171e7a494fb2ca5522045779a
prerequisite-message-id: 20261030140240.211786-3-krzysztof.kozlowski@xxxxxxxxxxxxxxxx
prerequisite-patch-id: f6cf975bf90acb029fa985ecd659b59076fdc0cd
prerequisite-patch-id: 4f16ad80662de796ae1454904c938e7e85115fbd

Best regards,
--
Best Regards,
Thomas Richard