diff mbox series

[v2,2/3] dt-bindings: mmc: Add a new property disable-cqe-dcmd.

Message ID 20190307084329.25416-2-christoph.muellner@theobroma-systems.com (mailing list archive)
State New, archived
Headers show
Series [v2,1/3] mmc: sdhci-of-arasan: Add DTS property to disable DCMDs. | expand

Commit Message

Christoph Muellner March 7, 2019, 8:43 a.m. UTC
This patch documents the new property disable-cqe-dcmd
for the Arasan eMMC 5.1 driver.

Signed-off-by: Christoph Muellner <christoph.muellner@theobroma-systems.com>
Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
---
 Documentation/devicetree/bindings/mmc/arasan,sdhci.txt | 4 ++++
 1 file changed, 4 insertions(+)

Comments

Adrian Hunter March 8, 2019, 12:46 p.m. UTC | #1
On 7/03/19 10:43 AM, Christoph Muellner wrote:
> This patch documents the new property disable-cqe-dcmd
> for the Arasan eMMC 5.1 driver.
> 
> Signed-off-by: Christoph Muellner <christoph.muellner@theobroma-systems.com>
> Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
> ---
>  Documentation/devicetree/bindings/mmc/arasan,sdhci.txt | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt b/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt
> index 1edbb049cccb..ec699bf98b7c 100644
> --- a/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt
> +++ b/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt
> @@ -44,6 +44,10 @@ Optional Properties:
>      properly. Test mode can be used to force the controller to function.
>    - xlnx,int-clock-stable-broken: when present, the controller always reports
>      that the internal clock is stable even when it is not.
> +  - disable-cqe-dcmd: The eMMC 5.1 standard specifies direct commands (DCMDs)
> +    as part of the command queue engine (CQE). On controllers with a CQHCI,
> +    such as the Arasan eMMC 5.1 host controller, the driver has to enable DCMDs.
> +    This is done unless disable-cqe-dcmd is specified.

If "supports-cqe" is in mmc.txt, should "disable-cqe-dcmd" be there also?
Christoph Muellner March 8, 2019, 1:10 p.m. UTC | #2
> On 08.03.2019, at 13:46, Adrian Hunter <adrian.hunter@intel.com> wrote:
> 
> On 7/03/19 10:43 AM, Christoph Muellner wrote:
>> This patch documents the new property disable-cqe-dcmd
>> for the Arasan eMMC 5.1 driver.
>> 
>> Signed-off-by: Christoph Muellner <christoph.muellner@theobroma-systems.com>
>> Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
>> ---
>> Documentation/devicetree/bindings/mmc/arasan,sdhci.txt | 4 ++++
>> 1 file changed, 4 insertions(+)
>> 
>> diff --git a/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt b/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt
>> index 1edbb049cccb..ec699bf98b7c 100644
>> --- a/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt
>> +++ b/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt
>> @@ -44,6 +44,10 @@ Optional Properties:
>>     properly. Test mode can be used to force the controller to function.
>>   - xlnx,int-clock-stable-broken: when present, the controller always reports
>>     that the internal clock is stable even when it is not.
>> +  - disable-cqe-dcmd: The eMMC 5.1 standard specifies direct commands (DCMDs)
>> +    as part of the command queue engine (CQE). On controllers with a CQHCI,
>> +    such as the Arasan eMMC 5.1 host controller, the driver has to enable DCMDs.
>> +    This is done unless disable-cqe-dcmd is specified.
> 
> If "supports-cqe" is in mmc.txt, should "disable-cqe-dcmd" be there also?

The file mmc.txt says on top:
"These properties are common to multiple MMC host controllers".
As my patchset introduces "disable-cqe-dcmd" just for sdhci-of-arasan,
I would say it should not go into that file.

Also I wonder why "supports-cqe" is in mmc.txt, because
only sdhci-tegra.c is evaluating that property.
So I would expect it to be documented in
Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt

However, I see that "disable-cqe-dcmd" could go into other drivers as well.
But is this enough to document it in mmc.txt?
Heiko Stuebner March 12, 2019, 1:17 p.m. UTC | #3
Am Freitag, 8. März 2019, 14:10:45 CET schrieb Christoph Müllner:
> 
> > On 08.03.2019, at 13:46, Adrian Hunter <adrian.hunter@intel.com> wrote:
> > 
> > On 7/03/19 10:43 AM, Christoph Muellner wrote:
> >> This patch documents the new property disable-cqe-dcmd
> >> for the Arasan eMMC 5.1 driver.
> >> 
> >> Signed-off-by: Christoph Muellner <christoph.muellner@theobroma-systems.com>
> >> Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
> >> ---
> >> Documentation/devicetree/bindings/mmc/arasan,sdhci.txt | 4 ++++
> >> 1 file changed, 4 insertions(+)
> >> 
> >> diff --git a/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt b/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt
> >> index 1edbb049cccb..ec699bf98b7c 100644
> >> --- a/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt
> >> +++ b/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt
> >> @@ -44,6 +44,10 @@ Optional Properties:
> >>     properly. Test mode can be used to force the controller to function.
> >>   - xlnx,int-clock-stable-broken: when present, the controller always reports
> >>     that the internal clock is stable even when it is not.
> >> +  - disable-cqe-dcmd: The eMMC 5.1 standard specifies direct commands (DCMDs)
> >> +    as part of the command queue engine (CQE). On controllers with a CQHCI,
> >> +    such as the Arasan eMMC 5.1 host controller, the driver has to enable DCMDs.
> >> +    This is done unless disable-cqe-dcmd is specified.

This needs a rewording please. See below for hw-description vs. driver, so
the description should be centered around why this is a property of the hw
[like faulty controller implementation or whatever]


> > If "supports-cqe" is in mmc.txt, should "disable-cqe-dcmd" be there also?
> 
> The file mmc.txt says on top:
> "These properties are common to multiple MMC host controllers".
> As my patchset introduces "disable-cqe-dcmd" just for sdhci-of-arasan,
> I would say it should not go into that file.
> 
> Also I wonder why "supports-cqe" is in mmc.txt, because
> only sdhci-tegra.c is evaluating that property.
> So I would expect it to be documented in
> Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt
> 
> However, I see that "disable-cqe-dcmd" could go into other drivers as well.
> But is this enough to document it in mmc.txt?

Devicetree is always about describing the hardware capabilites and never
about the actual nitty-gritty of driver implementation, aka it is not meant
as a space for hardware-independent config-settings or such.

As for only tegra evaluating this, is probably because it is still so new, like
january 2019 and Rob explicitly suggested it becoming common [0], which
suggests that the disable-cqe-dcmds should probably also be common.

Heiko

[0] https://lore.kernel.org/patchwork/patch/1031163/
Christoph Muellner March 12, 2019, 2:46 p.m. UTC | #4
> On 12.03.2019, at 14:17, Heiko Stuebner <heiko@sntech.de> wrote:
> 
> Am Freitag, 8. März 2019, 14:10:45 CET schrieb Christoph Müllner:
>> 
>>> On 08.03.2019, at 13:46, Adrian Hunter <adrian.hunter@intel.com> wrote:
>>> 
>>> On 7/03/19 10:43 AM, Christoph Muellner wrote:
>>>> This patch documents the new property disable-cqe-dcmd
>>>> for the Arasan eMMC 5.1 driver.
>>>> 
>>>> Signed-off-by: Christoph Muellner <christoph.muellner@theobroma-systems.com>
>>>> Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
>>>> ---
>>>> Documentation/devicetree/bindings/mmc/arasan,sdhci.txt | 4 ++++
>>>> 1 file changed, 4 insertions(+)
>>>> 
>>>> diff --git a/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt b/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt
>>>> index 1edbb049cccb..ec699bf98b7c 100644
>>>> --- a/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt
>>>> +++ b/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt
>>>> @@ -44,6 +44,10 @@ Optional Properties:
>>>>    properly. Test mode can be used to force the controller to function.
>>>>  - xlnx,int-clock-stable-broken: when present, the controller always reports
>>>>    that the internal clock is stable even when it is not.
>>>> +  - disable-cqe-dcmd: The eMMC 5.1 standard specifies direct commands (DCMDs)
>>>> +    as part of the command queue engine (CQE). On controllers with a CQHCI,
>>>> +    such as the Arasan eMMC 5.1 host controller, the driver has to enable DCMDs.
>>>> +    This is done unless disable-cqe-dcmd is specified.
> 
> This needs a rewording please. See below for hw-description vs. driver, so
> the description should be centered around why this is a property of the hw
> [like faulty controller implementation or whatever]

I understand, that you prefer a HW-specific name for a property
over one, that explains the actual effect.
However, using disable-<feature> (which is always a directive for the driver
and not a HW description) is not uncommon:

* disable-wp should be "no-wp-line-connection"
* disable-over-current -> "no-over-current-line-connection"
* srp-disable -> "not-existing-srp-implementation"
* ...

But I don't mind using something else.
Would "broken-cqe-dcmd" (like broken-cd or broken-flash-reset) be ok?
Or other suggestions?

Also I'd like to mention, that my first implementation was "supports-cqe-dcmd".
I guess that would be a good choice, if it would have been there
from the beginning. Introducing it now, would silently disable DCMD
for existing DTBs. Therefore I went on to "disable-cqe-dcmd".

> 
> 
>>> If "supports-cqe" is in mmc.txt, should "disable-cqe-dcmd" be there also?
>> 
>> The file mmc.txt says on top:
>> "These properties are common to multiple MMC host controllers".
>> As my patchset introduces "disable-cqe-dcmd" just for sdhci-of-arasan,
>> I would say it should not go into that file.
>> 
>> Also I wonder why "supports-cqe" is in mmc.txt, because
>> only sdhci-tegra.c is evaluating that property.
>> So I would expect it to be documented in
>> Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt
>> 
>> However, I see that "disable-cqe-dcmd" could go into other drivers as well.
>> But is this enough to document it in mmc.txt?
> 
> Devicetree is always about describing the hardware capabilites and never
> about the actual nitty-gritty of driver implementation, aka it is not meant
> as a space for hardware-independent config-settings or such.
> 
> As for only tegra evaluating this, is probably because it is still so new, like
> january 2019 and Rob explicitly suggested it becoming common [0], which
> suggests that the disable-cqe-dcmds should probably also be common.

So mmc.txt lists "standardised" names for properties to reduce the risk
of having similar, but distinct names for different MMC drivers.
So whenever you want to introduce a new property for a driver,
check if there isn't already something defined in mmc.txt.

When seeing it this way, it clearly makes sense to have the property there.

Thanks,
Christoph
Heiko Stuebner March 12, 2019, 5:10 p.m. UTC | #5
Hi Christoph,

Am Dienstag, 12. März 2019, 15:46:44 CET schrieb Christoph Müllner:
> > On 12.03.2019, at 14:17, Heiko Stuebner <heiko@sntech.de> wrote:
> > 
> > Am Freitag, 8. März 2019, 14:10:45 CET schrieb Christoph Müllner:
> >>> On 08.03.2019, at 13:46, Adrian Hunter <adrian.hunter@intel.com> wrote:
> >>> 
> >>> On 7/03/19 10:43 AM, Christoph Muellner wrote:
> >>>> This patch documents the new property disable-cqe-dcmd
> >>>> for the Arasan eMMC 5.1 driver.
> >>>> 
> >>>> Signed-off-by: Christoph Muellner
> >>>> <christoph.muellner@theobroma-systems.com> Signed-off-by: Philipp
> >>>> Tomsich <philipp.tomsich@theobroma-systems.com> ---
> >>>> Documentation/devicetree/bindings/mmc/arasan,sdhci.txt | 4 ++++
> >>>> 1 file changed, 4 insertions(+)
> >>>> 
> >>>> diff --git a/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt
> >>>> b/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt index
> >>>> 1edbb049cccb..ec699bf98b7c 100644
> >>>> --- a/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt
> >>>> +++ b/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt
> >>>> 
> >>>> @@ -44,6 +44,10 @@ Optional Properties:
> >>>>    properly. Test mode can be used to force the controller to function.
> >>>>  
> >>>>  - xlnx,int-clock-stable-broken: when present, the controller always
> >>>>  reports
> >>>>  
> >>>>    that the internal clock is stable even when it is not.
> >>>> 
> >>>> +  - disable-cqe-dcmd: The eMMC 5.1 standard specifies direct commands
> >>>> (DCMDs) +    as part of the command queue engine (CQE). On controllers
> >>>> with a CQHCI, +    such as the Arasan eMMC 5.1 host controller, the
> >>>> driver has to enable DCMDs. +    This is done unless disable-cqe-dcmd
> >>>> is specified.
> > 
> > This needs a rewording please. See below for hw-description vs. driver, so
> > the description should be centered around why this is a property of the hw
> > [like faulty controller implementation or whatever]
> 
> I understand, that you prefer a HW-specific name for a property
> over one, that explains the actual effect.

Actually I think the property-name is just fine :-) .

The description might profit from a rewording though. Aka not driver-
centric but hw-centric, describing why some controllers may need the
option to disable these dcmds (controller bugs or whatever).


Heiko



> However, using disable-<feature> (which is always a directive for the driver
> and not a HW description) is not uncommon:
> 
> * disable-wp should be "no-wp-line-connection"
> * disable-over-current -> "no-over-current-line-connection"
> * srp-disable -> "not-existing-srp-implementation"
> * ...
> 
> But I don't mind using something else.
> Would "broken-cqe-dcmd" (like broken-cd or broken-flash-reset) be ok?
> Or other suggestions?
> 
> Also I'd like to mention, that my first implementation was
> "supports-cqe-dcmd". I guess that would be a good choice, if it would have
> been there
> from the beginning. Introducing it now, would silently disable DCMD
> for existing DTBs. Therefore I went on to "disable-cqe-dcmd".
> 
> >>> If "supports-cqe" is in mmc.txt, should "disable-cqe-dcmd" be there
> >>> also?
> >> 
> >> The file mmc.txt says on top:
> >> "These properties are common to multiple MMC host controllers".
> >> As my patchset introduces "disable-cqe-dcmd" just for sdhci-of-arasan,
> >> I would say it should not go into that file.
> >> 
> >> Also I wonder why "supports-cqe" is in mmc.txt, because
> >> only sdhci-tegra.c is evaluating that property.
> >> So I would expect it to be documented in
> >> Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt
> >> 
> >> However, I see that "disable-cqe-dcmd" could go into other drivers as
> >> well.
> >> But is this enough to document it in mmc.txt?
> > 
> > Devicetree is always about describing the hardware capabilites and never
> > about the actual nitty-gritty of driver implementation, aka it is not
> > meant
> > as a space for hardware-independent config-settings or such.
> > 
> > As for only tegra evaluating this, is probably because it is still so new,
> > like january 2019 and Rob explicitly suggested it becoming common [0],
> > which suggests that the disable-cqe-dcmds should probably also be common.
> So mmc.txt lists "standardised" names for properties to reduce the risk
> of having similar, but distinct names for different MMC drivers.
> So whenever you want to introduce a new property for a driver,
> check if there isn't already something defined in mmc.txt.
> 
> When seeing it this way, it clearly makes sense to have the property there.
> 
> Thanks,
> Christoph
Christoph Muellner March 12, 2019, 5:16 p.m. UTC | #6
> On 12.03.2019, at 18:10, Heiko Stübner <heiko@sntech.de> wrote:
> 
> Hi Christoph,
> 
> Am Dienstag, 12. März 2019, 15:46:44 CET schrieb Christoph Müllner:
>>> On 12.03.2019, at 14:17, Heiko Stuebner <heiko@sntech.de> wrote:
>>> 
>>> Am Freitag, 8. März 2019, 14:10:45 CET schrieb Christoph Müllner:
>>>>> On 08.03.2019, at 13:46, Adrian Hunter <adrian.hunter@intel.com> wrote:
>>>>> 
>>>>> On 7/03/19 10:43 AM, Christoph Muellner wrote:
>>>>>> This patch documents the new property disable-cqe-dcmd
>>>>>> for the Arasan eMMC 5.1 driver.
>>>>>> 
>>>>>> Signed-off-by: Christoph Muellner
>>>>>> <christoph.muellner@theobroma-systems.com> Signed-off-by: Philipp
>>>>>> Tomsich <philipp.tomsich@theobroma-systems.com> ---
>>>>>> Documentation/devicetree/bindings/mmc/arasan,sdhci.txt | 4 ++++
>>>>>> 1 file changed, 4 insertions(+)
>>>>>> 
>>>>>> diff --git a/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt
>>>>>> b/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt index
>>>>>> 1edbb049cccb..ec699bf98b7c 100644
>>>>>> --- a/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt
>>>>>> +++ b/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt
>>>>>> 
>>>>>> @@ -44,6 +44,10 @@ Optional Properties:
>>>>>>   properly. Test mode can be used to force the controller to function.
>>>>>> 
>>>>>> - xlnx,int-clock-stable-broken: when present, the controller always
>>>>>> reports
>>>>>> 
>>>>>>   that the internal clock is stable even when it is not.
>>>>>> 
>>>>>> +  - disable-cqe-dcmd: The eMMC 5.1 standard specifies direct commands
>>>>>> (DCMDs) +    as part of the command queue engine (CQE). On controllers
>>>>>> with a CQHCI, +    such as the Arasan eMMC 5.1 host controller, the
>>>>>> driver has to enable DCMDs. +    This is done unless disable-cqe-dcmd
>>>>>> is specified.
>>> 
>>> This needs a rewording please. See below for hw-description vs. driver, so
>>> the description should be centered around why this is a property of the hw
>>> [like faulty controller implementation or whatever]
>> 
>> I understand, that you prefer a HW-specific name for a property
>> over one, that explains the actual effect.
> 
> Actually I think the property-name is just fine :-) .
> 
> The description might profit from a rewording though. Aka not driver-
> centric but hw-centric, describing why some controllers may need the
> option to disable these dcmds (controller bugs or whatever).

Ah, ok. Now I understand what you mean.
Will do for v3.

Thanks,
Christoph

> 
> 
> Heiko
> 
> 
> 
>> However, using disable-<feature> (which is always a directive for the driver
>> and not a HW description) is not uncommon:
>> 
>> * disable-wp should be "no-wp-line-connection"
>> * disable-over-current -> "no-over-current-line-connection"
>> * srp-disable -> "not-existing-srp-implementation"
>> * ...
>> 
>> But I don't mind using something else.
>> Would "broken-cqe-dcmd" (like broken-cd or broken-flash-reset) be ok?
>> Or other suggestions?
>> 
>> Also I'd like to mention, that my first implementation was
>> "supports-cqe-dcmd". I guess that would be a good choice, if it would have
>> been there
>> from the beginning. Introducing it now, would silently disable DCMD
>> for existing DTBs. Therefore I went on to "disable-cqe-dcmd".
>> 
>>>>> If "supports-cqe" is in mmc.txt, should "disable-cqe-dcmd" be there
>>>>> also?
>>>> 
>>>> The file mmc.txt says on top:
>>>> "These properties are common to multiple MMC host controllers".
>>>> As my patchset introduces "disable-cqe-dcmd" just for sdhci-of-arasan,
>>>> I would say it should not go into that file.
>>>> 
>>>> Also I wonder why "supports-cqe" is in mmc.txt, because
>>>> only sdhci-tegra.c is evaluating that property.
>>>> So I would expect it to be documented in
>>>> Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt
>>>> 
>>>> However, I see that "disable-cqe-dcmd" could go into other drivers as
>>>> well.
>>>> But is this enough to document it in mmc.txt?
>>> 
>>> Devicetree is always about describing the hardware capabilites and never
>>> about the actual nitty-gritty of driver implementation, aka it is not
>>> meant
>>> as a space for hardware-independent config-settings or such.
>>> 
>>> As for only tegra evaluating this, is probably because it is still so new,
>>> like january 2019 and Rob explicitly suggested it becoming common [0],
>>> which suggests that the disable-cqe-dcmds should probably also be common.
>> So mmc.txt lists "standardised" names for properties to reduce the risk
>> of having similar, but distinct names for different MMC drivers.
>> So whenever you want to introduce a new property for a driver,
>> check if there isn't already something defined in mmc.txt.
>> 
>> When seeing it this way, it clearly makes sense to have the property there.
>> 
>> Thanks,
>> Christoph
Rob Herring March 12, 2019, 7:28 p.m. UTC | #7
On Thu, Mar 07, 2019 at 09:43:27AM +0100, Christoph Muellner wrote:
> This patch documents the new property disable-cqe-dcmd
> for the Arasan eMMC 5.1 driver.
> 
> Signed-off-by: Christoph Muellner <christoph.muellner@theobroma-systems.com>
> Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
> ---
>  Documentation/devicetree/bindings/mmc/arasan,sdhci.txt | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt b/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt
> index 1edbb049cccb..ec699bf98b7c 100644
> --- a/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt
> +++ b/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt
> @@ -44,6 +44,10 @@ Optional Properties:
>      properly. Test mode can be used to force the controller to function.
>    - xlnx,int-clock-stable-broken: when present, the controller always reports
>      that the internal clock is stable even when it is not.
> +  - disable-cqe-dcmd: The eMMC 5.1 standard specifies direct commands (DCMDs)
> +    as part of the command queue engine (CQE). On controllers with a CQHCI,
> +    such as the Arasan eMMC 5.1 host controller, the driver has to enable DCMDs.
> +    This is done unless disable-cqe-dcmd is specified.

Should be common either for all controllers or all SDHCI controllers?
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt b/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt
index 1edbb049cccb..ec699bf98b7c 100644
--- a/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt
+++ b/Documentation/devicetree/bindings/mmc/arasan,sdhci.txt
@@ -44,6 +44,10 @@  Optional Properties:
     properly. Test mode can be used to force the controller to function.
   - xlnx,int-clock-stable-broken: when present, the controller always reports
     that the internal clock is stable even when it is not.
+  - disable-cqe-dcmd: The eMMC 5.1 standard specifies direct commands (DCMDs)
+    as part of the command queue engine (CQE). On controllers with a CQHCI,
+    such as the Arasan eMMC 5.1 host controller, the driver has to enable DCMDs.
+    This is done unless disable-cqe-dcmd is specified.
 
 Example:
 	sdhci@e0100000 {