[PATCH v6 0/3] regcache: Avoid accessing non-initialised cache

From: Andy Shevchenko

Date: Thu Mar 05 2026 - 03:56:29 EST


Refactor regcache flow that populates cache on initialisation phase
based on the values in HW. This makes code robust against any possible
accesses to not-fully initialised caches.

Changelog v6:
- refactored to make sure we always clean up the allocated resources (Mark)
- dropped applied patches

v5: 20260303092820.2818138-1-andriy.shevchenko@xxxxxxxxxxxxxxx

Changelog v5:
- added a precursor patch to make things clearer
- also put the freeing resources into an order (Mark)
- dropped applied patches

v4: 20260302095847.2310066-1-andriy.shevchenko@xxxxxxxxxxxxxxx

Changelog v4:
- made conditional against 'count' to make it less dependent to the previous code path

v3: 20260226135918.381979-1-andriy.shevchenko@xxxxxxxxxxxxxxx

Changelog v3:
- dropped unneeded churn in patch 3 (Mark)
- fixed code to pass kunit test cases (Mark)

v2: 20260225161659.3811671-1-andriy.shevchenko@xxxxxxxxxxxxxxx

Changelog v2:
- rebased on top of the latest regmap changes (Mark)
- added two more little cleanups (patches 4 & 5)

Andy Shevchenko (3):
regcache: Move count check and cache_bypass assignment to the caller
regcache: Allocate and free reg_defaults on the same level
regcache: Move HW readback after cache initialisation

drivers/base/regmap/regcache.c | 63 +++++++++++++++++-----------------
1 file changed, 31 insertions(+), 32 deletions(-)

--
2.50.1