[PATCH v8 1/3] dt-bindings: mmc: mtk-sd: extend interrupts and pinctrls properties

AngeloGioacchino Del Regno angelogioacchino.delregno at collabora.com
Tue Mar 22 01:42:28 PDT 2022


Il 22/03/22 02:35, Axe Yang ha scritto:
> On Mon, 2022-03-21 at 18:29 -0500, Rob Herring wrote:
>> On Mon, Mar 21, 2022 at 07:51:32PM +0800, Axe Yang wrote:
>>> Extend interrupts and pinctrls for SDIO wakeup interrupt feature.
>>> This feature allow SDIO devices alarm asynchronous interrupt to
>>> host
>>> even when host stop providing clock to SDIO card. An extra wakeup
>>> interrupt and pinctrl states for SDIO DAT1 pin state switching are
>>> required in this scenario.
>>>
>>> Signed-off-by: Axe Yang <axe.yang at mediatek.com>
>>> ---
>>>   .../devicetree/bindings/mmc/mtk-sd.yaml       | 23
>>> ++++++++++++++++++-
>>>   1 file changed, 22 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/Documentation/devicetree/bindings/mmc/mtk-sd.yaml
>>> b/Documentation/devicetree/bindings/mmc/mtk-sd.yaml
>>> index 297ada03e3de..f57774535a1d 100644
>>> --- a/Documentation/devicetree/bindings/mmc/mtk-sd.yaml
>>> +++ b/Documentation/devicetree/bindings/mmc/mtk-sd.yaml
>>> @@ -69,12 +69,23 @@ properties:
>>>         - const: ahb_cg
>>>   
>>>     interrupts:
>>> -    maxItems: 1
>>> +    description:
>>> +      Should at least contain MSDC GIC interrupt. To support SDIO
>>> in-band wakeup, an extended
>>> +      interrupt is required and be configured as wakeup source
>>> irq.
>>> +    minItems: 1
>>> +    maxItems: 2
>>>   
>>>     pinctrl-names:
>>> +    description:
>>> +      Should at least contain default and state_uhs. To support
>>> SDIO in-band wakeup, dat1 pin
>>> +      will be switched between GPIO mode and SDIO DAT1 mode,
>>> state_eint and state_dat1 are
>>> +      mandatory in this scenarios.
>>> +    minItems: 2
>>>       items:
>>>         - const: default
>>>         - const: state_uhs
>>> +      - const: state_eint
>>> +      - const: state_dat1
>>>   
>>>     pinctrl-0:
>>>       description:
>>> @@ -86,6 +97,16 @@ properties:
>>>         should contain uhs mode pin ctrl.
>>>       maxItems: 1
>>>   
>>> +  pinctrl-2:
>>> +    description:
>>> +      should switch dat1 pin to GPIO mode.
>>> +    maxItems: 1
>>> +
>>> +  pinctrl-3:
>>> +    description:
>>> +      should switch SDIO dat1 pin from GPIO mode back to SDIO
>>> mode.
>>
>> How is this different than pinctrl-0?
> 
> pinctrl-0 contains default settings for all IO pins(CLK/CMD/DAT).
> pinctrl-1 contains settings for all IO pins(CLK/CMD/DAT) in UHS mode.
> pinctrl-3 is lightweight pinctrl-1, only keep SDIO DAT1 pin function
> switch part.
> 

Is there any particular reason why we cannot simply select pinctrl-1 again
instead of pinctrl-3, apart from the virtually not existent overhead of
one more mmio write?

> ...
> 
> Regards,
> Axe
> 




More information about the linux-arm-kernel mailing list