]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
ASoC: sti: use managed regmap_field allocations
authorSander Vanheule <sander@svanheule.net>
Fri, 20 Feb 2026 15:26:34 +0000 (16:26 +0100)
committerMark Brown <broonie@kernel.org>
Sun, 1 Mar 2026 23:48:23 +0000 (23:48 +0000)
The regmap_field objects allocated at player init are never freed and
may leak resources if the driver is removed.

Switch to devm_regmap_field_alloc() to automatically limit the lifetime
of the allocations the lifetime of the device.

Fixes: 76c2145ded6b ("ASoC: sti: Add CPU DAI driver for playback")
Signed-off-by: Sander Vanheule <sander@svanheule.net>
Link: https://patch.msgid.link/20260220152634.480766-3-sander@svanheule.net
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sti/uniperif_player.c

index f1b7e76f97b58fa8d12b5014a013a06d11c10ac2..45d35b887e4ebfed329b73b0dbdcd1ca4bb5b4bd 100644 (file)
@@ -1028,11 +1028,11 @@ static int uni_player_parse_dt_audio_glue(struct platform_device *pdev,
                return PTR_ERR(regmap);
        }
 
-       player->clk_sel = regmap_field_alloc(regmap, regfield[0]);
+       player->clk_sel = devm_regmap_field_alloc(&pdev->dev, regmap, regfield[0]);
        if (IS_ERR(player->clk_sel))
                return PTR_ERR(player->clk_sel);
 
-       player->valid_sel = regmap_field_alloc(regmap, regfield[1]);
+       player->valid_sel = devm_regmap_field_alloc(&pdev->dev, regmap, regfield[1]);
        if (IS_ERR(player->valid_sel))
                return PTR_ERR(player->valid_sel);