Re: [PATCH] ASoC: tegra: ADX: convert map to flexible array

From: Rosen Penev

Date: Tue Aug 18 2026 - 16:34:06 EST


On Tue Aug 18, 2026 at 4:04 AM PDT, Thierry Reding wrote:
> On Fri, Aug 14, 2026 at 01:50:18PM -0700, Rosen Penev wrote:
>> Replace the pointer-based map allocation with a flexible array
>> member and use struct_size() for allocation. This simplifies
>> the code and avoid an extra allocation.
>>
>> Assisted-by: opencode:big-pickle
>> Signed-off-by: Rosen Penev <rosenp@xxxxxxxxx>
>> ---
>> sound/soc/tegra/tegra210_adx.c | 12 ++++--------
>> sound/soc/tegra/tegra210_adx.h | 2 +-
>> 2 files changed, 5 insertions(+), 9 deletions(-)
>>
>> diff --git a/sound/soc/tegra/tegra210_adx.c b/sound/soc/tegra/tegra210_adx.c
>> index 9175598b52a7..d607ba4233b6 100644
>> --- a/sound/soc/tegra/tegra210_adx.c
>> +++ b/sound/soc/tegra/tegra210_adx.c
>> @@ -677,11 +677,13 @@ static int tegra210_adx_platform_probe(struct platform_device *pdev)
>> void __iomem *regs;
>> int err, i;
>>
>> - adx = devm_kzalloc(dev, sizeof(*adx), GFP_KERNEL);
>> + soc_data = of_device_get_match_data(dev);
>> + adx = devm_kzalloc(dev,
>> + struct_size(adx, map, soc_data->ram_depth * TEGRA_ADX_SLOTS_PER_WORD),
>> + GFP_KERNEL);
>
> This is slightly hideous. Maybe add a temporary "count" variable for
> readability?
The reason for this is to allow a treewide conversion of this when
devm_kzalloc_flex() gets introduced.
>
> Either way, though, this looks correct:
>
> Reviewed-by: Thierry Reding <treding@xxxxxxxxxx>