linux/drivers/base/regmap
Cosmin Tanislav 2c3524a308 regmap: detach regmap from dev on regmap_exit
commit 3061e17038 upstream.

At the end of __regmap_init(), if dev is not NULL, regmap_attach_dev()
is called, which adds a devres reference to the regmap, to be able to
retrieve a dev's regmap by name using dev_get_regmap().

When calling regmap_exit, the opposite does not happen, and the
reference is kept until the dev is detached.

Add a regmap_detach_dev() function and call it in regmap_exit() to make
sure that the devres reference is not kept.

Cc: stable@vger.kernel.org
Fixes: 72b39f6f2b ("regmap: Implement dev_get_regmap()")
Signed-off-by: Cosmin Tanislav <demonsingur@gmail.com>
Rule: add
Link: https://lore.kernel.org/stable/20241128130554.362486-1-demonsingur%40gmail.com
Link: https://patch.msgid.link/20241128131625.363835-1-demonsingur@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Link: https://lore.kernel.org/r/20250115033314.2540588-1-tzungbi@kernel.org
Link: https://lore.kernel.org/r/20250115033244.2540522-1-tzungbi@kernel.org
Signed-off-by: Tzung-Bi Shih <tzungbi@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2025-02-01 18:24:00 +01:00
..
internal.h regmap: Add bulk read/write callbacks into regmap_config 2024-03-15 10:48:23 -04:00
Kconfig regmap: Add MDIO bus support 2021-05-19 14:19:10 +01:00
Makefile regmap: Add MDIO bus support 2021-05-19 14:19:10 +01:00
regcache-flat.c regmap: add proper SPDX identifiers on files that did not have them. 2019-04-25 20:22:15 +01:00
regcache-lzo.c regmap: lzo: Switch to bitmap_zalloc() 2019-06-17 15:18:44 +01:00
regcache-rbtree.c regmap: rbtree: Fix wrong register marked as in-cache when creating new node 2023-10-10 21:59:06 +02:00
regcache.c regmap: fix bogus error on regcache_sync success 2023-12-13 18:36:44 +01:00
regmap-ac97.c regmap: add proper SPDX identifiers on files that did not have them. 2019-04-25 20:22:15 +01:00
regmap-debugfs.c regmap: debugfs: Fix a erroneous check after snprintf() 2023-11-20 11:08:16 +01:00
regmap-i2c.c regmap-i2c: Subtract reg size from max_write 2024-07-18 13:07:35 +02:00
regmap-i3c.c regmap: add i3c bus support 2019-06-07 13:09:55 +01:00
regmap-irq.c regmap: irq: Set lockdep class for hierarchical IRQ domains 2024-12-14 19:50:49 +01:00
regmap-mdio.c regmap: mdio: Reject invalid addresses 2021-06-14 15:00:29 +01:00
regmap-mmio.c regmap: Prefer unsigned int to bare use of unsigned 2021-07-11 23:48:43 +01:00
regmap-sccb.c regmap: sccb: fix typo and sort headers alphabetically 2018-07-23 18:05:08 +01:00
regmap-sdw-mbq.c regmap: sdw-mbq: use MODULE_LICENSE("GPL") 2021-02-11 10:54:00 +05:30
regmap-sdw.c regmap: sdw: use _no_pm functions in regmap_read/write 2021-02-11 10:54:00 +05:30
regmap-slimbus.c regmap: slimbus: add support to multi read/write 2018-07-11 11:58:04 +01:00
regmap-spi-avmm.c regmap: Drop initial version of maximum transfer length fixes 2023-07-27 08:46:54 +02:00
regmap-spi.c regmap: add proper SPDX identifiers on files that did not have them. 2019-04-25 20:22:15 +01:00
regmap-spmi.c regmap: add proper SPDX identifiers on files that did not have them. 2019-04-25 20:22:15 +01:00
regmap-w1.c regmap: regmap-w1: Drop unreachable code 2019-11-19 13:09:20 +00:00
regmap.c regmap: detach regmap from dev on regmap_exit 2025-02-01 18:24:00 +01:00
trace.h regmap: Remove duplicate type field from regmap regcache_sync trace event 2020-11-24 14:14:00 +00:00