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

Krzysztof Kozlowski krzk at kernel.org
Wed Jan 15 00:24:58 PST 2025


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



More information about the linux-arm-kernel mailing list