Re: [PATCH v5 2/4] soc: samsung: usi: add a routine for unconfiguring the ip

From: Krzysztof Kozlowski
Date: Wed Jan 15 2025 - 03:25:20 EST


On 14/01/2025 22:57, Ivaylo Ivanov wrote:
> On 1/14/25 20:03, Krzysztof Kozlowski wrote:
>> On 09/01/2025 10:03, Ivaylo Ivanov wrote:
>>> +static void exynos_usi_unconfigure(void *data)
>>> +{
>>> + struct exynos_usi *usi = data;
>>> + u32 val;
>>> +
>>> + /* Make sure that we've stopped providing the clock to USI IP */
>>> + val = readl(usi->regs + USI_OPTION);
>>> + val &= ~USI_OPTION_CLKREQ_ON;
>>> + val |= ~USI_OPTION_CLKSTOP_ON;
>>> + writel(val, usi->regs + USI_OPTION);
>>> +
>>> + /* Set USI block state to reset */
>>> + val = readl(usi->regs + USI_CON);
>>> + val |= USI_CON_RESET;
>>> + writel(val, usi->regs + USI_CON);
>> Also shouldn't you enable clocks for accessing these? They are being
>> disabled at the end of exynos_usi_enable().
>
> Hm, perhaps. But I find that weird, since I haven't seen it in the downstream
> driver implementation.

So the downstream enables clocks when configured usi, but never when
unconfiguring? I could believe that no one cared about remove/error
paths, thus never tested.

Best regards,
Krzysztof