Re: [PATCH 1/2] dt-bindings: mmc: mmc-pwrseq-simple: add support for reset control

From: POPESCU Catalin
Date: Tue Oct 08 2024 - 04:06:18 EST


On 07/10/2024 17:59, Rob Herring wrote:
> [Some people who received this message don't often get email from robh@xxxxxxxxxx. Learn why this is important at https://aka.ms/LearnAboutSenderIdentification ]
>
> This email is not from Hexagon’s Office 365 instance. Please be careful while clicking links, opening attachments, or replying to this email.
>
>
> On Mon, Oct 07, 2024 at 03:32:42PM +0000, POPESCU Catalin wrote:
>> On 05/10/2024 20:26, Rob Herring wrote:
>>> [Some people who received this message don't often get email from robh@xxxxxxxxxx. Learn why this is important at https://aka.ms/LearnAboutSenderIdentification ]
>>>
>>> This email is not from Hexagon’s Office 365 instance. Please be careful while clicking links, opening attachments, or replying to this email.
>>>
>>>
>>> On Fri, Oct 04, 2024 at 02:07:39PM +0200, Catalin Popescu wrote:
>>>> Add compatible value "mmc-pwrseq-simple-reset" to support reset control
>>>> instead of gpios. Reset controls being refcounted, they allow to use
>>>> shared resets or gpios across drivers. Support of reset control is
>>>> limited to one single reset control.
>>> Can't you do this without a binding change? Just use reset controls when
>>> there is only 1 GPIO.
>> That's a good question. The idea was to keep in place the gpio support
>> w/o impacting any platform using pwrseq-simple.
> Why would it matter? If not shared, then the behavior should be the
> same. If shared, we want to maintain the broken behavior?
Indeed, you're right. I will provide a new patchset w/o the binding
change and using reset control for 1 gpio use-case.
>> Also, later on when support for a list of reset gpios will be added to
>> the reset framework, this would not work anymore...
> Why not?
>
> How an OS handles reset-gpios is up to the OS. It can evolve. The
> binding can't evolve because it is an ABI.
>
> Also, a list is kind of broken to begin with for a "generic" binding.
> What's the order the lines should be asserted/deasserted? What about
> timing requirements? You don't know because every device is different.
> This binding would not be accepted now, so extending it is questionable.
>
> Rob