All of lore.kernel.org
 help / color / mirror / Atom feed
* arasan,sdhci.txt "compatibility" DT binding
@ 2016-02-02  9:49 Mason
  2016-02-03  2:33 ` Shawn Lin
  0 siblings, 1 reply; 33+ messages in thread
From: Mason @ 2016-02-02  9:49 UTC (permalink / raw)
  To: linux-mmc
  Cc: Michal Simek, Anton Vorontsov, Xiaobo Xie, Suman Tripathi, Shawn Lin

Hello everyone,

Documentation/devicetree/bindings/mmc/arasan,sdhci.txt states:

Required Properties:
  - compatible: Compatibility string. Must be 'arasan,sdhci-8.9a' or
                'arasan,sdhci-4.9a' or 'arasan,sdhci-5.1'

What do 8.9a, 4.9a, and 5.1 refer to?

$ git ls Documentation/devicetree/bindings/mmc/arasan,sdhci.txt
da795ec26e25 mmc: sdhci-of-arasan: Add the support for sdhci-5.1
308f3f8d8112 mmc: sdhci-of-arasan: Add the support for sdhci-arasan4.9a
e3ec3a3d11ad mmc: arasan: Add driver for Arasan SDHCI


I found two Arasan data sheets.

The first data sheet, created 2010-02-19, is titled
"SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller"
and the documentation revision number is 6.0

The revision history mentions:

1.0	05.02.2005
1.1	02.08.2006
1.2	03.10.2006
1.3	03.27.2006
1.4	04.11.2006
1.5	04.18.2006
1.6	05.18.2006
1.7	06.05.2006
1.8	10.06.2006
1.9	19.06.2006
2.0	01.08.2007
2.1	01.30.2007
2.2	02.22.2007
2.3	04.30.2007
2.4	05.07.2007
2.5	06.04.2007
2.6	06.25.2007
2.7	06.29.2007
2.8	07.24.2007
2.9	07.31.2007
3.0	11.12.2007
3.1	11.14.2007
3.2	11.21.2007
3.3	12.13.2007
3.4	12.15.2007
3.5	04.11.2008
3.6	08.19.2008
3.7	10.11.2008
3.7a	11.11.2008
3.8a	11.25.2008
3.9a	01.22.2009
4.0a	02.13.2009
4.1a	04.06.2009
4.2a	06.16.2009
5.0	07.01.2009
5.1	07.13.2009
5.2	07.16.2009
5.3	07.29.2009
5.4	08.17.2009
5.5	08.29.2009
5.6	09.30.2009
5.7	11.04.2009
5.8	12.04.2009
5.9	01.19.2010
6.0	02.19.2010


The second data sheet, created 2012-09-07, is titled
"SD3.0 / SDIO3.0/ eMMC4.5 Host Controller"
and the documentation revision number is 1.13

Revision history mentions a "new architecture" for rev 1.0
in 2011-06-01


Neither of these data sheets mention anything about a 4.9a or 8.9a
version of the controller... And I don't think 5.1 refers to the
documentation rev, right?

So what do 8.9a, 4.9a, and 5.1 refer to?

Regards.

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: arasan,sdhci.txt "compatibility" DT binding
  2016-02-02  9:49 arasan,sdhci.txt "compatibility" DT binding Mason
@ 2016-02-03  2:33 ` Shawn Lin
  2016-02-03  7:20   ` Michal Simek
  0 siblings, 1 reply; 33+ messages in thread
From: Shawn Lin @ 2016-02-03  2:33 UTC (permalink / raw)
  To: Mason, linux-mmc
  Cc: shawn.lin, Michal Simek, Anton Vorontsov, Xiaobo Xie,
	Suman Tripathi, Michal Simek, soren.brinkmann

+ Michal, Sören Brinkmann

On 2016/2/2 17:49, Mason wrote:
> Hello everyone,
>
> Documentation/devicetree/bindings/mmc/arasan,sdhci.txt states:
>
> Required Properties:
>    - compatible: Compatibility string. Must be 'arasan,sdhci-8.9a' or
>                  'arasan,sdhci-4.9a' or 'arasan,sdhci-5.1'
>
> What do 8.9a, 4.9a, and 5.1 refer to?
>

Good question.

Michal told me that 8.9a and 4.9a came from Xilinx
databook which define their available arasan controller to be version
4.9a and 8.9a.

5.1 refer to the lastest arasan controller version which supports
emmc standard 5.1+(with a command queue engine and enhanced-strobe 
function inside)

I not 100% sure how arasan folks define these versions or just
vendor define it themself in thire databook. But, something need to
be done to clarify these vague definitions.

Hello, Michal and Soren,

Could you elaborate more? :)

> $ git ls Documentation/devicetree/bindings/mmc/arasan,sdhci.txt
> da795ec26e25 mmc: sdhci-of-arasan: Add the support for sdhci-5.1
> 308f3f8d8112 mmc: sdhci-of-arasan: Add the support for sdhci-arasan4.9a
> e3ec3a3d11ad mmc: arasan: Add driver for Arasan SDHCI
>
>
> I found two Arasan data sheets.
>
> The first data sheet, created 2010-02-19, is titled
> "SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller"
> and the documentation revision number is 6.0
>

----8<------------

>
> The second data sheet, created 2012-09-07, is titled
> "SD3.0 / SDIO3.0/ eMMC4.5 Host Controller"
> and the documentation revision number is 1.13
>
> Revision history mentions a "new architecture" for rev 1.0
> in 2011-06-01
>
>
> Neither of these data sheets mention anything about a 4.9a or 8.9a
> version of the controller... And I don't think 5.1 refers to the
> documentation rev, right?
>
> So what do 8.9a, 4.9a, and 5.1 refer to?
>
> Regards.
>
>
>


-- 
Best Regards
Shawn Lin


^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: arasan,sdhci.txt "compatibility" DT binding
  2016-02-03  2:33 ` Shawn Lin
@ 2016-02-03  7:20   ` Michal Simek
  2016-02-03  8:31     ` Mason
  0 siblings, 1 reply; 33+ messages in thread
From: Michal Simek @ 2016-02-03  7:20 UTC (permalink / raw)
  To: Shawn Lin, Mason, linux-mmc
  Cc: Michal Simek, Anton Vorontsov, Xiaobo Xie, Suman Tripathi,
	Michal Simek, soren.brinkmann

Hi,

On 3.2.2016 03:33, Shawn Lin wrote:
> + Michal, Sören Brinkmann
> 
> On 2016/2/2 17:49, Mason wrote:
>> Hello everyone,
>>
>> Documentation/devicetree/bindings/mmc/arasan,sdhci.txt states:
>>
>> Required Properties:
>>    - compatible: Compatibility string. Must be 'arasan,sdhci-8.9a' or
>>                  'arasan,sdhci-4.9a' or 'arasan,sdhci-5.1'
>>
>> What do 8.9a, 4.9a, and 5.1 refer to?
>>
> 
> Good question.
> 
> Michal told me that 8.9a and 4.9a came from Xilinx
> databook which define their available arasan controller to be version
> 4.9a and 8.9a.

Our version is coming from here.
http://www.xilinx.com/support/documentation/user_guides/ug585-Zynq-7000-TRM.pdf
page 28

Datasheets from 2012 and 2010 doesn't look too recent and I expect that
Arasan did a lot of work from that time that's why I am not surprised
that you are not able to see that versions.

Thanks,
Michal


^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: arasan,sdhci.txt "compatibility" DT binding
  2016-02-03  7:20   ` Michal Simek
@ 2016-02-03  8:31     ` Mason
  2016-02-03  9:58       ` Michal Simek
  0 siblings, 1 reply; 33+ messages in thread
From: Mason @ 2016-02-03  8:31 UTC (permalink / raw)
  To: Michal Simek, Shawn Lin, linux-mmc
  Cc: Michal Simek, Anton Vorontsov, Xiaobo Xie, Suman Tripathi,
	soren.brinkmann

On 03/02/2016 08:20, Michal Simek wrote:

> Hi,
> 
> On 3.2.2016 03:33, Shawn Lin wrote:
>> + Michal, Sören Brinkmann
>>
>> On 2016/2/2 17:49, Mason wrote:
>>> Hello everyone,
>>>
>>> Documentation/devicetree/bindings/mmc/arasan,sdhci.txt states:
>>>
>>> Required Properties:
>>>    - compatible: Compatibility string. Must be 'arasan,sdhci-8.9a' or
>>>                  'arasan,sdhci-4.9a' or 'arasan,sdhci-5.1'
>>>
>>> What do 8.9a, 4.9a, and 5.1 refer to?
>>>
>>
>> Good question.
>>
>> Michal told me that 8.9a and 4.9a came from Xilinx
>> databook which define their available arasan controller to be version
>> 4.9a and 8.9a.
> 
> Our version is coming from here.
> http://www.xilinx.com/support/documentation/user_guides/ug585-Zynq-7000-TRM.pdf
> page 28
> 
> Datasheets from 2012 and 2010 doesn't look too recent and I expect that
> Arasan did a lot of work from that time that's why I am not surprised
> that you are not able to see that versions.

Hello Michal,

I'm even more confused.

Arasan's 2010-02-19 data sheet is titled
SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller

Page 28 of the Xilinx data sheet mentions
SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller
Version 8.9A_apr02nd_2010

It does not make sense that Arasan would support SD3.0 in February,
then go back to SD 2.0 in April.

I do note eMMC4.4 vs MMC3.31 => perhaps these are two *different*
IP blocks?

Do your data sheets come with revision history?

Regards.


^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: arasan,sdhci.txt "compatibility" DT binding
  2016-02-03  8:31     ` Mason
@ 2016-02-03  9:58       ` Michal Simek
  2016-02-03 15:21         ` Sören Brinkmann
  0 siblings, 1 reply; 33+ messages in thread
From: Michal Simek @ 2016-02-03  9:58 UTC (permalink / raw)
  To: Mason, Michal Simek, Shawn Lin, linux-mmc
  Cc: Michal Simek, Anton Vorontsov, Xiaobo Xie, Suman Tripathi,
	soren.brinkmann

On 3.2.2016 09:31, Mason wrote:
> On 03/02/2016 08:20, Michal Simek wrote:
> 
>> Hi,
>>
>> On 3.2.2016 03:33, Shawn Lin wrote:
>>> + Michal, Sören Brinkmann
>>>
>>> On 2016/2/2 17:49, Mason wrote:
>>>> Hello everyone,
>>>>
>>>> Documentation/devicetree/bindings/mmc/arasan,sdhci.txt states:
>>>>
>>>> Required Properties:
>>>>    - compatible: Compatibility string. Must be 'arasan,sdhci-8.9a' or
>>>>                  'arasan,sdhci-4.9a' or 'arasan,sdhci-5.1'
>>>>
>>>> What do 8.9a, 4.9a, and 5.1 refer to?
>>>>
>>>
>>> Good question.
>>>
>>> Michal told me that 8.9a and 4.9a came from Xilinx
>>> databook which define their available arasan controller to be version
>>> 4.9a and 8.9a.
>>
>> Our version is coming from here.
>> http://www.xilinx.com/support/documentation/user_guides/ug585-Zynq-7000-TRM.pdf
>> page 28
>>
>> Datasheets from 2012 and 2010 doesn't look too recent and I expect that
>> Arasan did a lot of work from that time that's why I am not surprised
>> that you are not able to see that versions.
> 
> Hello Michal,
> 
> I'm even more confused.
> 
> Arasan's 2010-02-19 data sheet is titled
> SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller
> 
> Page 28 of the Xilinx data sheet mentions
> SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller
> Version 8.9A_apr02nd_2010
> 
> It does not make sense that Arasan would support SD3.0 in February,
> then go back to SD 2.0 in April.
> 
> I do note eMMC4.4 vs MMC3.31 => perhaps these are two *different*
> IP blocks?
> 
> Do your data sheets come with revision history?

I don't have datasheet for this IP in my hand that's why I can't check it.
But I can't see any problem with it. Our zynq SoC supports SD2.0 and it
was requirement at that time. Bugs can happen. Arasan fixed it and
create new version.
At the same time can have 3.0 versions but vendor is just decide not to
use it for whatever reason.

That's why timing of features and versions can upgrade any time and
unfortunately bugs happen.

Thanks,
Michal

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: arasan,sdhci.txt "compatibility" DT binding
  2016-02-03  9:58       ` Michal Simek
@ 2016-02-03 15:21         ` Sören Brinkmann
  2016-02-03 15:33           ` Mason
  0 siblings, 1 reply; 33+ messages in thread
From: Sören Brinkmann @ 2016-02-03 15:21 UTC (permalink / raw)
  To: Michal Simek
  Cc: Mason, Shawn Lin, linux-mmc, Michal Simek, Anton Vorontsov,
	Xiaobo Xie, Suman Tripathi

On Wed, 2016-02-03 at 10:58:24 +0100, Michal Simek wrote:
> On 3.2.2016 09:31, Mason wrote:
> > On 03/02/2016 08:20, Michal Simek wrote:
> > 
> >> Hi,
> >>
> >> On 3.2.2016 03:33, Shawn Lin wrote:
> >>> + Michal, Sören Brinkmann
> >>>
> >>> On 2016/2/2 17:49, Mason wrote:
> >>>> Hello everyone,
> >>>>
> >>>> Documentation/devicetree/bindings/mmc/arasan,sdhci.txt states:
> >>>>
> >>>> Required Properties:
> >>>>    - compatible: Compatibility string. Must be 'arasan,sdhci-8.9a' or
> >>>>                  'arasan,sdhci-4.9a' or 'arasan,sdhci-5.1'
> >>>>
> >>>> What do 8.9a, 4.9a, and 5.1 refer to?
> >>>>
> >>>
> >>> Good question.
> >>>
> >>> Michal told me that 8.9a and 4.9a came from Xilinx
> >>> databook which define their available arasan controller to be version
> >>> 4.9a and 8.9a.
> >>
> >> Our version is coming from here.
> >> http://www.xilinx.com/support/documentation/user_guides/ug585-Zynq-7000-TRM.pdf
> >> page 28
> >>
> >> Datasheets from 2012 and 2010 doesn't look too recent and I expect that
> >> Arasan did a lot of work from that time that's why I am not surprised
> >> that you are not able to see that versions.
> > 
> > Hello Michal,
> > 
> > I'm even more confused.
> > 
> > Arasan's 2010-02-19 data sheet is titled
> > SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller
> > 
> > Page 28 of the Xilinx data sheet mentions
> > SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller
> > Version 8.9A_apr02nd_2010
> > 
> > It does not make sense that Arasan would support SD3.0 in February,
> > then go back to SD 2.0 in April.
> > 
> > I do note eMMC4.4 vs MMC3.31 => perhaps these are two *different*
> > IP blocks?
> > 
> > Do your data sheets come with revision history?
> 
> I don't have datasheet for this IP in my hand that's why I can't check it.
> But I can't see any problem with it. Our zynq SoC supports SD2.0 and it
> was requirement at that time. Bugs can happen. Arasan fixed it and
> create new version.
> At the same time can have 3.0 versions but vendor is just decide not to
> use it for whatever reason.
> 
> That's why timing of features and versions can upgrade any time and
> unfortunately bugs happen.

We have several Arasan data sheets here. The document names are:
"SD2.0 / SDIO2.0 / MMC3.31 AHB Userguide" and the revisions are 9.2a,
4.4a and 5.4a. I have the feeling that the document revisions have
been mistaken as the IP revision. I cannot find any other indicator
for the IP revision though. Does the IP have a way to discover its
revision?

	Sören

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: arasan,sdhci.txt "compatibility" DT binding
  2016-02-03 15:21         ` Sören Brinkmann
@ 2016-02-03 15:33           ` Mason
  2016-11-18 10:37               ` Mason
  0 siblings, 1 reply; 33+ messages in thread
From: Mason @ 2016-02-03 15:33 UTC (permalink / raw)
  To: Soren Brinkmann, Michal Simek
  Cc: Shawn Lin, linux-mmc, Michal Simek, Anton Vorontsov, Xiaobo Xie,
	Suman Tripathi

On 03/02/2016 16:21, Sören Brinkmann wrote:
> On Wed, 2016-02-03 at 10:58:24 +0100, Michal Simek wrote:
>> On 3.2.2016 09:31, Mason wrote:
>>> On 03/02/2016 08:20, Michal Simek wrote:
>>>
>>>> Hi,
>>>>
>>>> On 3.2.2016 03:33, Shawn Lin wrote:
>>>>> + Michal, Sören Brinkmann
>>>>>
>>>>> On 2016/2/2 17:49, Mason wrote:
>>>>>> Hello everyone,
>>>>>>
>>>>>> Documentation/devicetree/bindings/mmc/arasan,sdhci.txt states:
>>>>>>
>>>>>> Required Properties:
>>>>>>    - compatible: Compatibility string. Must be 'arasan,sdhci-8.9a' or
>>>>>>                  'arasan,sdhci-4.9a' or 'arasan,sdhci-5.1'
>>>>>>
>>>>>> What do 8.9a, 4.9a, and 5.1 refer to?
>>>>>>
>>>>>
>>>>> Good question.
>>>>>
>>>>> Michal told me that 8.9a and 4.9a came from Xilinx
>>>>> databook which define their available arasan controller to be version
>>>>> 4.9a and 8.9a.
>>>>
>>>> Our version is coming from here.
>>>> http://www.xilinx.com/support/documentation/user_guides/ug585-Zynq-7000-TRM.pdf
>>>> page 28
>>>>
>>>> Datasheets from 2012 and 2010 doesn't look too recent and I expect that
>>>> Arasan did a lot of work from that time that's why I am not surprised
>>>> that you are not able to see that versions.
>>>
>>> Hello Michal,
>>>
>>> I'm even more confused.
>>>
>>> Arasan's 2010-02-19 data sheet is titled
>>> SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller
>>>
>>> Page 28 of the Xilinx data sheet mentions
>>> SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller
>>> Version 8.9A_apr02nd_2010
>>>
>>> It does not make sense that Arasan would support SD3.0 in February,
>>> then go back to SD 2.0 in April.
>>>
>>> I do note eMMC4.4 vs MMC3.31 => perhaps these are two *different*
>>> IP blocks?
>>>
>>> Do your data sheets come with revision history?
>>
>> I don't have datasheet for this IP in my hand that's why I can't check it.
>> But I can't see any problem with it. Our zynq SoC supports SD2.0 and it
>> was requirement at that time. Bugs can happen. Arasan fixed it and
>> create new version.
>> At the same time can have 3.0 versions but vendor is just decide not to
>> use it for whatever reason.
>>
>> That's why timing of features and versions can upgrade any time and
>> unfortunately bugs happen.
> 
> We have several Arasan data sheets here. The document names are:
> "SD2.0 / SDIO2.0 / MMC3.31 AHB Userguide" and the revisions are 9.2a,
> 4.4a and 5.4a. I have the feeling that the document revisions have
> been mistaken as the IP revision. I cannot find any other indicator
> for the IP revision though. Does the IP have a way to discover its
> revision?

To summarize, it looks to me like
4.9a and 8.9a are documentation revision numbers for this IP:
"SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller"

and 5.1 seems to be the eMMC standard, so one of these IP:
http://arasan.com/products/emmc51/sd3-emmc-5-1-host/
http://arasan.com/products/emmc51/emmc-5-1-sd-4-1-host/

Whereas my board is using still another IP:
"SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller"


If that is correct, then I should be able to use the 8.9a
compatible string, and perhaps my hardware will work in
slightly degraded performance mode, from not using the
newest protocol gizmos available.

Does that look likely?

Regards.


^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: arasan,sdhci.txt "compatibility" DT binding
  2016-02-03 15:33           ` Mason
@ 2016-11-18 10:37               ` Mason
  0 siblings, 0 replies; 33+ messages in thread
From: Mason @ 2016-11-18 10:37 UTC (permalink / raw)
  To: Linux ARM, linux-mmc
  Cc: Soren Brinkmann, Michal Simek, Shawn Lin, Michal Simek,
	Anton Vorontsov, Xiaobo Xie, Suman Tripathi, Linus Walleij,
	Maxime Ripard, Arnd Bergmann, Rob Herring, Adrian Hunter,
	Zach Brown, Ulf Hansson, Douglas Anderson, Heiko Stuebner,
	Jisheng Zhang, Rameshwar Prasad Sahu, Suneel Garapati,
	Russell King

On 03/02/2016 16:33, Mason wrote:
> On 03/02/2016 16:21, Sören Brinkmann wrote:
>> On Wed, 2016-02-03 at 10:58:24 +0100, Michal Simek wrote:
>>> On 3.2.2016 09:31, Mason wrote:
>>>> On 03/02/2016 08:20, Michal Simek wrote:
>>>>
>>>>> On 3.2.2016 03:33, Shawn Lin wrote:
>>>>>> + Michal, Sören Brinkmann
>>>>>>
>>>>>> On 2016/2/2 17:49, Mason wrote:
>>>>>>> Hello everyone,
>>>>>>>
>>>>>>> Documentation/devicetree/bindings/mmc/arasan,sdhci.txt states:
>>>>>>>
>>>>>>> Required Properties:
>>>>>>>    - compatible: Compatibility string. Must be 'arasan,sdhci-8.9a' or
>>>>>>>                  'arasan,sdhci-4.9a' or 'arasan,sdhci-5.1'
>>>>>>>
>>>>>>> What do 8.9a, 4.9a, and 5.1 refer to?
>>>>>>>
>>>>>>
>>>>>> Good question.
>>>>>>
>>>>>> Michal told me that 8.9a and 4.9a came from Xilinx
>>>>>> databook which define their available arasan controller to be version
>>>>>> 4.9a and 8.9a.
>>>>>
>>>>> Our version is coming from here.
>>>>> http://www.xilinx.com/support/documentation/user_guides/ug585-Zynq-7000-TRM.pdf
>>>>> page 28
>>>>>
>>>>> Datasheets from 2012 and 2010 doesn't look too recent and I expect that
>>>>> Arasan did a lot of work from that time that's why I am not surprised
>>>>> that you are not able to see that versions.
>>>>
>>>> Hello Michal,
>>>>
>>>> I'm even more confused.
>>>>
>>>> Arasan's 2010-02-19 data sheet is titled
>>>> SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller
>>>>
>>>> Page 28 of the Xilinx data sheet mentions
>>>> SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller
>>>> Version 8.9A_apr02nd_2010
>>>>
>>>> It does not make sense that Arasan would support SD3.0 in February,
>>>> then go back to SD 2.0 in April.
>>>>
>>>> I do note eMMC4.4 vs MMC3.31 => perhaps these are two *different*
>>>> IP blocks?
>>>>
>>>> Do your data sheets come with revision history?
>>>
>>> I don't have datasheet for this IP in my hand that's why I can't check it.
>>> But I can't see any problem with it. Our zynq SoC supports SD2.0 and it
>>> was requirement at that time. Bugs can happen. Arasan fixed it and
>>> create new version.
>>> At the same time can have 3.0 versions but vendor is just decide not to
>>> use it for whatever reason.
>>>
>>> That's why timing of features and versions can upgrade any time and
>>> unfortunately bugs happen.
>>
>> We have several Arasan data sheets here. The document names are:
>> "SD2.0 / SDIO2.0 / MMC3.31 AHB Userguide" and the revisions are 9.2a,
>> 4.4a and 5.4a. I have the feeling that the document revisions have
>> been mistaken as the IP revision. I cannot find any other indicator
>> for the IP revision though. Does the IP have a way to discover its
>> revision?
> 
> To summarize, it looks to me like
> 4.9a and 8.9a are documentation revision numbers for this IP:
> "SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller"
> 
> and 5.1 seems to be the eMMC standard, so one of these IP:
> http://arasan.com/products/emmc51/sd3-emmc-5-1-host/
> http://arasan.com/products/emmc51/emmc-5-1-sd-4-1-host/
> 
> Whereas my board is using still another IP:
> "SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller"
> 
> 
> If that is correct, then I should be able to use the 8.9a
> compatible string, and perhaps my hardware will work in
> slightly degraded performance mode, from not using the
> newest protocol gizmos available.

Resurrecting this thread after a chat with Michal on IRC.

The driver now supports a few more compatible strings.
Tracing the history...

Soren/Xilinx defined "arasan,sdhci-8.9a" in e3ec3a3d11ad
They have the "SD2.0/SDIO2.0/MMC3.31 AHB Host Controller" version
(8.9a might be a document revision number, dated 2010-04-02)

Suman/APM added "arasan,sdhci-4.9a" in 308f3f8d8112
@Suman, @Rameshwar: what specific IP block does your SoC embed?
What does 4.9a refer to? The documentation revision number?

Shawn/Rockchip added "arasan,sdhci-5.1" in da795ec26e25
This seems to be for an *actual* eMMC 5.1 version
(instead of a documentation version) as mentioned in
the commit message.

Douglas added "rockchip,rk3399-sdhci-5.1"
and made several other improvements.

I have reached out to Arasan support. Hopefully they can also
help clear up the confusion, assuming they care about the
Linux driver.

Regards.


^ permalink raw reply	[flat|nested] 33+ messages in thread

* arasan,sdhci.txt "compatibility" DT binding
@ 2016-11-18 10:37               ` Mason
  0 siblings, 0 replies; 33+ messages in thread
From: Mason @ 2016-11-18 10:37 UTC (permalink / raw)
  To: linux-arm-kernel

On 03/02/2016 16:33, Mason wrote:
> On 03/02/2016 16:21, S?ren Brinkmann wrote:
>> On Wed, 2016-02-03 at 10:58:24 +0100, Michal Simek wrote:
>>> On 3.2.2016 09:31, Mason wrote:
>>>> On 03/02/2016 08:20, Michal Simek wrote:
>>>>
>>>>> On 3.2.2016 03:33, Shawn Lin wrote:
>>>>>> + Michal, S?ren Brinkmann
>>>>>>
>>>>>> On 2016/2/2 17:49, Mason wrote:
>>>>>>> Hello everyone,
>>>>>>>
>>>>>>> Documentation/devicetree/bindings/mmc/arasan,sdhci.txt states:
>>>>>>>
>>>>>>> Required Properties:
>>>>>>>    - compatible: Compatibility string. Must be 'arasan,sdhci-8.9a' or
>>>>>>>                  'arasan,sdhci-4.9a' or 'arasan,sdhci-5.1'
>>>>>>>
>>>>>>> What do 8.9a, 4.9a, and 5.1 refer to?
>>>>>>>
>>>>>>
>>>>>> Good question.
>>>>>>
>>>>>> Michal told me that 8.9a and 4.9a came from Xilinx
>>>>>> databook which define their available arasan controller to be version
>>>>>> 4.9a and 8.9a.
>>>>>
>>>>> Our version is coming from here.
>>>>> http://www.xilinx.com/support/documentation/user_guides/ug585-Zynq-7000-TRM.pdf
>>>>> page 28
>>>>>
>>>>> Datasheets from 2012 and 2010 doesn't look too recent and I expect that
>>>>> Arasan did a lot of work from that time that's why I am not surprised
>>>>> that you are not able to see that versions.
>>>>
>>>> Hello Michal,
>>>>
>>>> I'm even more confused.
>>>>
>>>> Arasan's 2010-02-19 data sheet is titled
>>>> SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller
>>>>
>>>> Page 28 of the Xilinx data sheet mentions
>>>> SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller
>>>> Version 8.9A_apr02nd_2010
>>>>
>>>> It does not make sense that Arasan would support SD3.0 in February,
>>>> then go back to SD 2.0 in April.
>>>>
>>>> I do note eMMC4.4 vs MMC3.31 => perhaps these are two *different*
>>>> IP blocks?
>>>>
>>>> Do your data sheets come with revision history?
>>>
>>> I don't have datasheet for this IP in my hand that's why I can't check it.
>>> But I can't see any problem with it. Our zynq SoC supports SD2.0 and it
>>> was requirement at that time. Bugs can happen. Arasan fixed it and
>>> create new version.
>>> At the same time can have 3.0 versions but vendor is just decide not to
>>> use it for whatever reason.
>>>
>>> That's why timing of features and versions can upgrade any time and
>>> unfortunately bugs happen.
>>
>> We have several Arasan data sheets here. The document names are:
>> "SD2.0 / SDIO2.0 / MMC3.31 AHB Userguide" and the revisions are 9.2a,
>> 4.4a and 5.4a. I have the feeling that the document revisions have
>> been mistaken as the IP revision. I cannot find any other indicator
>> for the IP revision though. Does the IP have a way to discover its
>> revision?
> 
> To summarize, it looks to me like
> 4.9a and 8.9a are documentation revision numbers for this IP:
> "SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller"
> 
> and 5.1 seems to be the eMMC standard, so one of these IP:
> http://arasan.com/products/emmc51/sd3-emmc-5-1-host/
> http://arasan.com/products/emmc51/emmc-5-1-sd-4-1-host/
> 
> Whereas my board is using still another IP:
> "SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller"
> 
> 
> If that is correct, then I should be able to use the 8.9a
> compatible string, and perhaps my hardware will work in
> slightly degraded performance mode, from not using the
> newest protocol gizmos available.

Resurrecting this thread after a chat with Michal on IRC.

The driver now supports a few more compatible strings.
Tracing the history...

Soren/Xilinx defined "arasan,sdhci-8.9a" in e3ec3a3d11ad
They have the "SD2.0/SDIO2.0/MMC3.31 AHB Host Controller" version
(8.9a might be a document revision number, dated 2010-04-02)

Suman/APM added "arasan,sdhci-4.9a" in 308f3f8d8112
@Suman, @Rameshwar: what specific IP block does your SoC embed?
What does 4.9a refer to? The documentation revision number?

Shawn/Rockchip added "arasan,sdhci-5.1" in da795ec26e25
This seems to be for an *actual* eMMC 5.1 version
(instead of a documentation version) as mentioned in
the commit message.

Douglas added "rockchip,rk3399-sdhci-5.1"
and made several other improvements.

I have reached out to Arasan support. Hopefully they can also
help clear up the confusion, assuming they care about the
Linux driver.

Regards.

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: arasan,sdhci.txt "compatibility" DT binding
  2016-11-18 10:37               ` Mason
@ 2016-11-18 10:49                 ` Rameshwar Sahu
  -1 siblings, 0 replies; 33+ messages in thread
From: Rameshwar Sahu @ 2016-11-18 10:49 UTC (permalink / raw)
  To: Mason
  Cc: Linux ARM, linux-mmc, Soren Brinkmann, Michal Simek, Shawn Lin,
	Michal Simek, Anton Vorontsov, Xiaobo Xie, Suman Tripathi,
	Linus Walleij, Maxime Ripard, Arnd Bergmann, Rob Herring,
	Adrian Hunter, Zach Brown, Ulf Hansson, Douglas Anderson,
	Heiko Stuebner, Jisheng Zhang, Suneel Garapati

Hi Mason,


Suman/APM added "arasan,sdhci-4.9a" in 308f3f8d8112
@Suman, @Rameshwar: what specific IP block does your SoC embed?
What does 4.9a refer to? The documentation revision number?

We have Arasan SD3.0/ SDIO3.0/ eMMC4.41 AHB Host Controller IP
embedded in our SoC and 4.9a is documentation revision number which
was given by arasan.
FYI this documentation date was May, 2012.

Thanks,
Ram

On Fri, Nov 18, 2016 at 4:07 PM, Mason <slash.tmp@free.fr> wrote:
> On 03/02/2016 16:33, Mason wrote:
>> On 03/02/2016 16:21, Sören Brinkmann wrote:
>>> On Wed, 2016-02-03 at 10:58:24 +0100, Michal Simek wrote:
>>>> On 3.2.2016 09:31, Mason wrote:
>>>>> On 03/02/2016 08:20, Michal Simek wrote:
>>>>>
>>>>>> On 3.2.2016 03:33, Shawn Lin wrote:
>>>>>>> + Michal, Sören Brinkmann
>>>>>>>
>>>>>>> On 2016/2/2 17:49, Mason wrote:
>>>>>>>> Hello everyone,
>>>>>>>>
>>>>>>>> Documentation/devicetree/bindings/mmc/arasan,sdhci.txt states:
>>>>>>>>
>>>>>>>> Required Properties:
>>>>>>>>    - compatible: Compatibility string. Must be 'arasan,sdhci-8.9a' or
>>>>>>>>                  'arasan,sdhci-4.9a' or 'arasan,sdhci-5.1'
>>>>>>>>
>>>>>>>> What do 8.9a, 4.9a, and 5.1 refer to?
>>>>>>>>
>>>>>>>
>>>>>>> Good question.
>>>>>>>
>>>>>>> Michal told me that 8.9a and 4.9a came from Xilinx
>>>>>>> databook which define their available arasan controller to be version
>>>>>>> 4.9a and 8.9a.
>>>>>>
>>>>>> Our version is coming from here.
>>>>>> http://www.xilinx.com/support/documentation/user_guides/ug585-Zynq-7000-TRM.pdf
>>>>>> page 28
>>>>>>
>>>>>> Datasheets from 2012 and 2010 doesn't look too recent and I expect that
>>>>>> Arasan did a lot of work from that time that's why I am not surprised
>>>>>> that you are not able to see that versions.
>>>>>
>>>>> Hello Michal,
>>>>>
>>>>> I'm even more confused.
>>>>>
>>>>> Arasan's 2010-02-19 data sheet is titled
>>>>> SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller
>>>>>
>>>>> Page 28 of the Xilinx data sheet mentions
>>>>> SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller
>>>>> Version 8.9A_apr02nd_2010
>>>>>
>>>>> It does not make sense that Arasan would support SD3.0 in February,
>>>>> then go back to SD 2.0 in April.
>>>>>
>>>>> I do note eMMC4.4 vs MMC3.31 => perhaps these are two *different*
>>>>> IP blocks?
>>>>>
>>>>> Do your data sheets come with revision history?
>>>>
>>>> I don't have datasheet for this IP in my hand that's why I can't check it.
>>>> But I can't see any problem with it. Our zynq SoC supports SD2.0 and it
>>>> was requirement at that time. Bugs can happen. Arasan fixed it and
>>>> create new version.
>>>> At the same time can have 3.0 versions but vendor is just decide not to
>>>> use it for whatever reason.
>>>>
>>>> That's why timing of features and versions can upgrade any time and
>>>> unfortunately bugs happen.
>>>
>>> We have several Arasan data sheets here. The document names are:
>>> "SD2.0 / SDIO2.0 / MMC3.31 AHB Userguide" and the revisions are 9.2a,
>>> 4.4a and 5.4a. I have the feeling that the document revisions have
>>> been mistaken as the IP revision. I cannot find any other indicator
>>> for the IP revision though. Does the IP have a way to discover its
>>> revision?
>>
>> To summarize, it looks to me like
>> 4.9a and 8.9a are documentation revision numbers for this IP:
>> "SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller"
>>
>> and 5.1 seems to be the eMMC standard, so one of these IP:
>> http://arasan.com/products/emmc51/sd3-emmc-5-1-host/
>> http://arasan.com/products/emmc51/emmc-5-1-sd-4-1-host/
>>
>> Whereas my board is using still another IP:
>> "SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller"
>>
>>
>> If that is correct, then I should be able to use the 8.9a
>> compatible string, and perhaps my hardware will work in
>> slightly degraded performance mode, from not using the
>> newest protocol gizmos available.
>
> Resurrecting this thread after a chat with Michal on IRC.
>
> The driver now supports a few more compatible strings.
> Tracing the history...
>
> Soren/Xilinx defined "arasan,sdhci-8.9a" in e3ec3a3d11ad
> They have the "SD2.0/SDIO2.0/MMC3.31 AHB Host Controller" version
> (8.9a might be a document revision number, dated 2010-04-02)
>
> Suman/APM added "arasan,sdhci-4.9a" in 308f3f8d8112
> @Suman, @Rameshwar: what specific IP block does your SoC embed?
> What does 4.9a refer to? The documentation revision number?
>
> Shawn/Rockchip added "arasan,sdhci-5.1" in da795ec26e25
> This seems to be for an *actual* eMMC 5.1 version
> (instead of a documentation version) as mentioned in
> the commit message.
>
> Douglas added "rockchip,rk3399-sdhci-5.1"
> and made several other improvements.
>
> I have reached out to Arasan support. Hopefully they can also
> help clear up the confusion, assuming they care about the
> Linux driver.
>
> Regards.
>

^ permalink raw reply	[flat|nested] 33+ messages in thread

* arasan,sdhci.txt "compatibility" DT binding
@ 2016-11-18 10:49                 ` Rameshwar Sahu
  0 siblings, 0 replies; 33+ messages in thread
From: Rameshwar Sahu @ 2016-11-18 10:49 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Mason,


Suman/APM added "arasan,sdhci-4.9a" in 308f3f8d8112
@Suman, @Rameshwar: what specific IP block does your SoC embed?
What does 4.9a refer to? The documentation revision number?

We have Arasan SD3.0/ SDIO3.0/ eMMC4.41 AHB Host Controller IP
embedded in our SoC and 4.9a is documentation revision number which
was given by arasan.
FYI this documentation date was May, 2012.

Thanks,
Ram

On Fri, Nov 18, 2016 at 4:07 PM, Mason <slash.tmp@free.fr> wrote:
> On 03/02/2016 16:33, Mason wrote:
>> On 03/02/2016 16:21, S?ren Brinkmann wrote:
>>> On Wed, 2016-02-03 at 10:58:24 +0100, Michal Simek wrote:
>>>> On 3.2.2016 09:31, Mason wrote:
>>>>> On 03/02/2016 08:20, Michal Simek wrote:
>>>>>
>>>>>> On 3.2.2016 03:33, Shawn Lin wrote:
>>>>>>> + Michal, S?ren Brinkmann
>>>>>>>
>>>>>>> On 2016/2/2 17:49, Mason wrote:
>>>>>>>> Hello everyone,
>>>>>>>>
>>>>>>>> Documentation/devicetree/bindings/mmc/arasan,sdhci.txt states:
>>>>>>>>
>>>>>>>> Required Properties:
>>>>>>>>    - compatible: Compatibility string. Must be 'arasan,sdhci-8.9a' or
>>>>>>>>                  'arasan,sdhci-4.9a' or 'arasan,sdhci-5.1'
>>>>>>>>
>>>>>>>> What do 8.9a, 4.9a, and 5.1 refer to?
>>>>>>>>
>>>>>>>
>>>>>>> Good question.
>>>>>>>
>>>>>>> Michal told me that 8.9a and 4.9a came from Xilinx
>>>>>>> databook which define their available arasan controller to be version
>>>>>>> 4.9a and 8.9a.
>>>>>>
>>>>>> Our version is coming from here.
>>>>>> http://www.xilinx.com/support/documentation/user_guides/ug585-Zynq-7000-TRM.pdf
>>>>>> page 28
>>>>>>
>>>>>> Datasheets from 2012 and 2010 doesn't look too recent and I expect that
>>>>>> Arasan did a lot of work from that time that's why I am not surprised
>>>>>> that you are not able to see that versions.
>>>>>
>>>>> Hello Michal,
>>>>>
>>>>> I'm even more confused.
>>>>>
>>>>> Arasan's 2010-02-19 data sheet is titled
>>>>> SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller
>>>>>
>>>>> Page 28 of the Xilinx data sheet mentions
>>>>> SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller
>>>>> Version 8.9A_apr02nd_2010
>>>>>
>>>>> It does not make sense that Arasan would support SD3.0 in February,
>>>>> then go back to SD 2.0 in April.
>>>>>
>>>>> I do note eMMC4.4 vs MMC3.31 => perhaps these are two *different*
>>>>> IP blocks?
>>>>>
>>>>> Do your data sheets come with revision history?
>>>>
>>>> I don't have datasheet for this IP in my hand that's why I can't check it.
>>>> But I can't see any problem with it. Our zynq SoC supports SD2.0 and it
>>>> was requirement at that time. Bugs can happen. Arasan fixed it and
>>>> create new version.
>>>> At the same time can have 3.0 versions but vendor is just decide not to
>>>> use it for whatever reason.
>>>>
>>>> That's why timing of features and versions can upgrade any time and
>>>> unfortunately bugs happen.
>>>
>>> We have several Arasan data sheets here. The document names are:
>>> "SD2.0 / SDIO2.0 / MMC3.31 AHB Userguide" and the revisions are 9.2a,
>>> 4.4a and 5.4a. I have the feeling that the document revisions have
>>> been mistaken as the IP revision. I cannot find any other indicator
>>> for the IP revision though. Does the IP have a way to discover its
>>> revision?
>>
>> To summarize, it looks to me like
>> 4.9a and 8.9a are documentation revision numbers for this IP:
>> "SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller"
>>
>> and 5.1 seems to be the eMMC standard, so one of these IP:
>> http://arasan.com/products/emmc51/sd3-emmc-5-1-host/
>> http://arasan.com/products/emmc51/emmc-5-1-sd-4-1-host/
>>
>> Whereas my board is using still another IP:
>> "SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller"
>>
>>
>> If that is correct, then I should be able to use the 8.9a
>> compatible string, and perhaps my hardware will work in
>> slightly degraded performance mode, from not using the
>> newest protocol gizmos available.
>
> Resurrecting this thread after a chat with Michal on IRC.
>
> The driver now supports a few more compatible strings.
> Tracing the history...
>
> Soren/Xilinx defined "arasan,sdhci-8.9a" in e3ec3a3d11ad
> They have the "SD2.0/SDIO2.0/MMC3.31 AHB Host Controller" version
> (8.9a might be a document revision number, dated 2010-04-02)
>
> Suman/APM added "arasan,sdhci-4.9a" in 308f3f8d8112
> @Suman, @Rameshwar: what specific IP block does your SoC embed?
> What does 4.9a refer to? The documentation revision number?
>
> Shawn/Rockchip added "arasan,sdhci-5.1" in da795ec26e25
> This seems to be for an *actual* eMMC 5.1 version
> (instead of a documentation version) as mentioned in
> the commit message.
>
> Douglas added "rockchip,rk3399-sdhci-5.1"
> and made several other improvements.
>
> I have reached out to Arasan support. Hopefully they can also
> help clear up the confusion, assuming they care about the
> Linux driver.
>
> Regards.
>

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: arasan,sdhci.txt "compatibility" DT binding
  2016-11-18 10:49                 ` Rameshwar Sahu
@ 2016-11-18 12:42                   ` Mason
  -1 siblings, 0 replies; 33+ messages in thread
From: Mason @ 2016-11-18 12:42 UTC (permalink / raw)
  To: Rameshwar Sahu
  Cc: Linux ARM, linux-mmc, Soren Brinkmann, Michal Simek, Shawn Lin,
	Michal Simek, Anton Vorontsov, Xiaobo Xie, Suman Tripathi,
	Linus Walleij, Maxime Ripard, Arnd Bergmann, Rob Herring,
	Adrian Hunter, Zach Brown, Ulf Hansson, Douglas Anderson,
	Heiko Stuebner, Jisheng Zhang, Suneel Garapati

On 18/11/2016 11:49, Rameshwar Sahu wrote:

> Mason wrote:
>
>> Suman/APM added "arasan,sdhci-4.9a" in 308f3f8d8112
>> @Suman, @Rameshwar: what specific IP block does your SoC embed?
>> What does 4.9a refer to? The documentation revision number?
> 
> We have Arasan SD3.0/ SDIO3.0/ eMMC4.41 AHB Host Controller IP
> embedded in our SoC and 4.9a is documentation revision number which
> was given by Arasan.
> FYI this documentation date was May, 2012.

Hello Ram,

Thanks for the information.

  Xilinx is using "SD2.0/SDIO2.0/MMC3.31 AHB Host Controller"
     APM is using "SD3.0/SDIO3.0/eMMC4.41 AHB Host Controller"
   Sigma is using "SD3.0/SDIO3.0/eMMC4.4 AHB Host Controller"
Rockchip is using ? (Shawn could you specify exactly which IP you use?)

And it looks like Arasan is using different revision numbers for
every documentation they have.

The "SD3.0/SDIO3.0/eMMC4.4 AHB Host Controller" doc I have is
at rev number 6.0, dated 2010-02-19.

Regards.


^ permalink raw reply	[flat|nested] 33+ messages in thread

* arasan,sdhci.txt "compatibility" DT binding
@ 2016-11-18 12:42                   ` Mason
  0 siblings, 0 replies; 33+ messages in thread
From: Mason @ 2016-11-18 12:42 UTC (permalink / raw)
  To: linux-arm-kernel

On 18/11/2016 11:49, Rameshwar Sahu wrote:

> Mason wrote:
>
>> Suman/APM added "arasan,sdhci-4.9a" in 308f3f8d8112
>> @Suman, @Rameshwar: what specific IP block does your SoC embed?
>> What does 4.9a refer to? The documentation revision number?
> 
> We have Arasan SD3.0/ SDIO3.0/ eMMC4.41 AHB Host Controller IP
> embedded in our SoC and 4.9a is documentation revision number which
> was given by Arasan.
> FYI this documentation date was May, 2012.

Hello Ram,

Thanks for the information.

  Xilinx is using "SD2.0/SDIO2.0/MMC3.31 AHB Host Controller"
     APM is using "SD3.0/SDIO3.0/eMMC4.41 AHB Host Controller"
   Sigma is using "SD3.0/SDIO3.0/eMMC4.4 AHB Host Controller"
Rockchip is using ? (Shawn could you specify exactly which IP you use?)

And it looks like Arasan is using different revision numbers for
every documentation they have.

The "SD3.0/SDIO3.0/eMMC4.4 AHB Host Controller" doc I have is
at rev number 6.0, dated 2010-02-19.

Regards.

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: arasan,sdhci.txt "compatibility" DT binding
  2016-11-18 12:42                   ` Mason
@ 2016-11-18 13:22                     ` Michal Simek
  -1 siblings, 0 replies; 33+ messages in thread
From: Michal Simek @ 2016-11-18 13:22 UTC (permalink / raw)
  To: Mason, Rameshwar Sahu
  Cc: Ulf Hansson, Suman Tripathi, Heiko Stuebner, Shawn Lin,
	Adrian Hunter, Jisheng Zhang, Russell King, Anton Vorontsov,
	Michal Simek, Soren Brinkmann, Linus Walleij, P L Sai Krishna,
	Zach Brown, Sebastian Frias, Arnd Bergmann, Suneel Garapati,
	Linux ARM, Michal Simek, linux-mmc, Douglas Anderson,
	Maxime Ripard, Xiaobo Xie

On 18.11.2016 13:42, Mason wrote:
> On 18/11/2016 11:49, Rameshwar Sahu wrote:
> 
>> Mason wrote:
>>
>>> Suman/APM added "arasan,sdhci-4.9a" in 308f3f8d8112
>>> @Suman, @Rameshwar: what specific IP block does your SoC embed?
>>> What does 4.9a refer to? The documentation revision number?
>>
>> We have Arasan SD3.0/ SDIO3.0/ eMMC4.41 AHB Host Controller IP
>> embedded in our SoC and 4.9a is documentation revision number which
>> was given by Arasan.
>> FYI this documentation date was May, 2012.
> 
> Hello Ram,
> 
> Thanks for the information.
> 
>   Xilinx is using "SD2.0/SDIO2.0/MMC3.31 AHB Host Controller"

in Xilinx Zynq device

and
Xilinx ZynqMP device is using
"SD3.0/SDIO3.0/eMMC4.51 AHB Host Controller"

Thanks,
Michal

^ permalink raw reply	[flat|nested] 33+ messages in thread

* arasan,sdhci.txt "compatibility" DT binding
@ 2016-11-18 13:22                     ` Michal Simek
  0 siblings, 0 replies; 33+ messages in thread
From: Michal Simek @ 2016-11-18 13:22 UTC (permalink / raw)
  To: linux-arm-kernel

On 18.11.2016 13:42, Mason wrote:
> On 18/11/2016 11:49, Rameshwar Sahu wrote:
> 
>> Mason wrote:
>>
>>> Suman/APM added "arasan,sdhci-4.9a" in 308f3f8d8112
>>> @Suman, @Rameshwar: what specific IP block does your SoC embed?
>>> What does 4.9a refer to? The documentation revision number?
>>
>> We have Arasan SD3.0/ SDIO3.0/ eMMC4.41 AHB Host Controller IP
>> embedded in our SoC and 4.9a is documentation revision number which
>> was given by Arasan.
>> FYI this documentation date was May, 2012.
> 
> Hello Ram,
> 
> Thanks for the information.
> 
>   Xilinx is using "SD2.0/SDIO2.0/MMC3.31 AHB Host Controller"

in Xilinx Zynq device

and
Xilinx ZynqMP device is using
"SD3.0/SDIO3.0/eMMC4.51 AHB Host Controller"

Thanks,
Michal

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: arasan,sdhci.txt "compatibility" DT binding
  2016-11-18 13:22                     ` Michal Simek
@ 2016-11-28 15:44                       ` Mason
  -1 siblings, 0 replies; 33+ messages in thread
From: Mason @ 2016-11-28 15:44 UTC (permalink / raw)
  To: linux-mmc, Shawn Lin, Adrian Hunter
  Cc: Michal Simek, Rameshwar Sahu, Linux ARM, Soren Brinkmann,
	Michal Simek, Anton Vorontsov, Xiaobo Xie, Suman Tripathi,
	Linus Walleij, Maxime Ripard, Arnd Bergmann, Rob Herring,
	Zach Brown, Ulf Hansson, Douglas Anderson, Heiko Stuebner,
	Jisheng Zhang, Suneel Garapati, Russell King, Sebastian Frias

Hello,

@Shawn Lin, could you take a look below and tell me exactly
which IP core(s) Rockchip is using in its SoCs?

Based on the feedback I received, here is an updated list of
compatible strings and controller versions dealt with by the
drivers/mmc/host/sdhci-of-arasan.c code.


Xilinx Zynq:
"SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller"
"arasan,sdhci-8.9a"
NB: 8.9a is the documentation revision (dated 2011-10-19)
subsequent tweaks labeled 9.0a, 9.1a, 9.2a

Xilinx ZynqMP:
"SD3.0 / SDIO3.0 / eMMC4.51 AHB Host Controller"
"arasan,sdhci-8.9a"
NB: using the same compatible string as Zynq

Sigma SMP87xx
"SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller"
no compatible string yet, platform-specific init required

APM:
"SD3.0 / SDIO3.0 / eMMC4.41 AHB Host Controller"
"arasan,sdhci-4.9a"
NB: 4.9a appears to be the documentation revision
no functional diff with "arasan,sdhci-8.9a"

Rockchip
Exact IP unknown, waiting for Shawn's answer
"arasan,sdhci-5.1"
NB: 5.1 appears to refer to the eMMC standard supported


On a final note, there are many variations of the Arasan IP.
I've tracked down at least the following:

SD_2.0_SDIO_2.0__MMC_3.31_AHB_Host_Controller.pdf
SD_3.0_SDIO_3.0_eMMC_4.41_OCP_Host_Controller.pdf
SD_3.0_SDIO_3.0_eMMC_4.4__AHB_Host_Controller.pdf
SD_3.0_SDIO_3.0_eMMC_4.51_Host_Controller.pdf
SD_3.0_SDIO_3.0_eMMC_4.5__Host_Controller.pdf
SD_4.1_SDIO_4.1_eMMC_4.51_Host_Controller.pdf
SD_4.1_SDIO_4.1_eMMC_5.1__Host_Controller.pdf

It seems to me the compatible string should specify
the SD/SDIO version AND the eMMC version, since it
seems many combinations are allowed, e.g. eMMC 4.51
has two possible SD versions.

What do you think?

Regards.


^ permalink raw reply	[flat|nested] 33+ messages in thread

* arasan,sdhci.txt "compatibility" DT binding
@ 2016-11-28 15:44                       ` Mason
  0 siblings, 0 replies; 33+ messages in thread
From: Mason @ 2016-11-28 15:44 UTC (permalink / raw)
  To: linux-arm-kernel

Hello,

@Shawn Lin, could you take a look below and tell me exactly
which IP core(s) Rockchip is using in its SoCs?

Based on the feedback I received, here is an updated list of
compatible strings and controller versions dealt with by the
drivers/mmc/host/sdhci-of-arasan.c code.


Xilinx Zynq:
"SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller"
"arasan,sdhci-8.9a"
NB: 8.9a is the documentation revision (dated 2011-10-19)
subsequent tweaks labeled 9.0a, 9.1a, 9.2a

Xilinx ZynqMP:
"SD3.0 / SDIO3.0 / eMMC4.51 AHB Host Controller"
"arasan,sdhci-8.9a"
NB: using the same compatible string as Zynq

Sigma SMP87xx
"SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller"
no compatible string yet, platform-specific init required

APM:
"SD3.0 / SDIO3.0 / eMMC4.41 AHB Host Controller"
"arasan,sdhci-4.9a"
NB: 4.9a appears to be the documentation revision
no functional diff with "arasan,sdhci-8.9a"

Rockchip
Exact IP unknown, waiting for Shawn's answer
"arasan,sdhci-5.1"
NB: 5.1 appears to refer to the eMMC standard supported


On a final note, there are many variations of the Arasan IP.
I've tracked down at least the following:

SD_2.0_SDIO_2.0__MMC_3.31_AHB_Host_Controller.pdf
SD_3.0_SDIO_3.0_eMMC_4.41_OCP_Host_Controller.pdf
SD_3.0_SDIO_3.0_eMMC_4.4__AHB_Host_Controller.pdf
SD_3.0_SDIO_3.0_eMMC_4.51_Host_Controller.pdf
SD_3.0_SDIO_3.0_eMMC_4.5__Host_Controller.pdf
SD_4.1_SDIO_4.1_eMMC_4.51_Host_Controller.pdf
SD_4.1_SDIO_4.1_eMMC_5.1__Host_Controller.pdf

It seems to me the compatible string should specify
the SD/SDIO version AND the eMMC version, since it
seems many combinations are allowed, e.g. eMMC 4.51
has two possible SD versions.

What do you think?

Regards.

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: arasan,sdhci.txt "compatibility" DT binding
  2016-11-28 15:44                       ` Mason
@ 2016-11-28 16:15                         ` Arnd Bergmann
  -1 siblings, 0 replies; 33+ messages in thread
From: Arnd Bergmann @ 2016-11-28 16:15 UTC (permalink / raw)
  To: Mason
  Cc: linux-mmc, Shawn Lin, Adrian Hunter, Michal Simek,
	Rameshwar Sahu, Linux ARM, Soren Brinkmann, Michal Simek,
	Anton Vorontsov, Xiaobo Xie, Suman Tripathi, Linus Walleij,
	Maxime Ripard, Rob Herring, Zach Brown, Ulf Hansson,
	Douglas Anderson, Heiko Stuebner, Jisheng Zhang, Suneel Garapati

On Monday, November 28, 2016 4:44:39 PM CET Mason wrote:
> Hello,
> 
> @Shawn Lin, could you take a look below and tell me exactly
> which IP core(s) Rockchip is using in its SoCs?
> 
> Based on the feedback I received, here is an updated list of
> compatible strings and controller versions dealt with by the
> drivers/mmc/host/sdhci-of-arasan.c code.
> 
> 
> Xilinx Zynq:
> "SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller"
> "arasan,sdhci-8.9a"
> NB: 8.9a is the documentation revision (dated 2011-10-19)
> subsequent tweaks labeled 9.0a, 9.1a, 9.2a
> 
> Xilinx ZynqMP:
> "SD3.0 / SDIO3.0 / eMMC4.51 AHB Host Controller"
> "arasan,sdhci-8.9a"
> NB: using the same compatible string as Zynq
> 
> Sigma SMP87xx
> "SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller"
> no compatible string yet, platform-specific init required
> 
> APM:
> "SD3.0 / SDIO3.0 / eMMC4.41 AHB Host Controller"
> "arasan,sdhci-4.9a"
> NB: 4.9a appears to be the documentation revision
> no functional diff with "arasan,sdhci-8.9a"
> 
> Rockchip
> Exact IP unknown, waiting for Shawn's answer
> "arasan,sdhci-5.1"
> NB: 5.1 appears to refer to the eMMC standard supported
> 
> 
> On a final note, there are many variations of the Arasan IP.
> I've tracked down at least the following:
> 
> SD_2.0_SDIO_2.0__MMC_3.31_AHB_Host_Controller.pdf
> SD_3.0_SDIO_3.0_eMMC_4.41_OCP_Host_Controller.pdf
> SD_3.0_SDIO_3.0_eMMC_4.4__AHB_Host_Controller.pdf
> SD_3.0_SDIO_3.0_eMMC_4.51_Host_Controller.pdf
> SD_3.0_SDIO_3.0_eMMC_4.5__Host_Controller.pdf
> SD_4.1_SDIO_4.1_eMMC_4.51_Host_Controller.pdf
> SD_4.1_SDIO_4.1_eMMC_5.1__Host_Controller.pdf
> 
> It seems to me the compatible string should specify
> the SD/SDIO version AND the eMMC version, since it
> seems many combinations are allowed, e.g. eMMC 4.51
> has two possible SD versions.
> 
> What do you think?

It seems wrong to have the eMMC or SD version in the compatible
string.  Is that the only difference between the documents you
found? Normally there should be a version of IP block itself,
besides the supported protocol.

	Arnd

^ permalink raw reply	[flat|nested] 33+ messages in thread

* arasan,sdhci.txt "compatibility" DT binding
@ 2016-11-28 16:15                         ` Arnd Bergmann
  0 siblings, 0 replies; 33+ messages in thread
From: Arnd Bergmann @ 2016-11-28 16:15 UTC (permalink / raw)
  To: linux-arm-kernel

On Monday, November 28, 2016 4:44:39 PM CET Mason wrote:
> Hello,
> 
> @Shawn Lin, could you take a look below and tell me exactly
> which IP core(s) Rockchip is using in its SoCs?
> 
> Based on the feedback I received, here is an updated list of
> compatible strings and controller versions dealt with by the
> drivers/mmc/host/sdhci-of-arasan.c code.
> 
> 
> Xilinx Zynq:
> "SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller"
> "arasan,sdhci-8.9a"
> NB: 8.9a is the documentation revision (dated 2011-10-19)
> subsequent tweaks labeled 9.0a, 9.1a, 9.2a
> 
> Xilinx ZynqMP:
> "SD3.0 / SDIO3.0 / eMMC4.51 AHB Host Controller"
> "arasan,sdhci-8.9a"
> NB: using the same compatible string as Zynq
> 
> Sigma SMP87xx
> "SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller"
> no compatible string yet, platform-specific init required
> 
> APM:
> "SD3.0 / SDIO3.0 / eMMC4.41 AHB Host Controller"
> "arasan,sdhci-4.9a"
> NB: 4.9a appears to be the documentation revision
> no functional diff with "arasan,sdhci-8.9a"
> 
> Rockchip
> Exact IP unknown, waiting for Shawn's answer
> "arasan,sdhci-5.1"
> NB: 5.1 appears to refer to the eMMC standard supported
> 
> 
> On a final note, there are many variations of the Arasan IP.
> I've tracked down at least the following:
> 
> SD_2.0_SDIO_2.0__MMC_3.31_AHB_Host_Controller.pdf
> SD_3.0_SDIO_3.0_eMMC_4.41_OCP_Host_Controller.pdf
> SD_3.0_SDIO_3.0_eMMC_4.4__AHB_Host_Controller.pdf
> SD_3.0_SDIO_3.0_eMMC_4.51_Host_Controller.pdf
> SD_3.0_SDIO_3.0_eMMC_4.5__Host_Controller.pdf
> SD_4.1_SDIO_4.1_eMMC_4.51_Host_Controller.pdf
> SD_4.1_SDIO_4.1_eMMC_5.1__Host_Controller.pdf
> 
> It seems to me the compatible string should specify
> the SD/SDIO version AND the eMMC version, since it
> seems many combinations are allowed, e.g. eMMC 4.51
> has two possible SD versions.
> 
> What do you think?

It seems wrong to have the eMMC or SD version in the compatible
string.  Is that the only difference between the documents you
found? Normally there should be a version of IP block itself,
besides the supported protocol.

	Arnd

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: arasan,sdhci.txt "compatibility" DT binding
  2016-11-28 15:44                       ` Mason
@ 2016-11-28 16:23                         ` Sebastian Frias
  -1 siblings, 0 replies; 33+ messages in thread
From: Sebastian Frias @ 2016-11-28 16:23 UTC (permalink / raw)
  To: Mason, linux-mmc, Shawn Lin, Adrian Hunter
  Cc: Jisheng Zhang, Michal Simek, Rameshwar Sahu, Suman Tripathi,
	Arnd Bergmann, Xiaobo Xie, P L Sai Krishna, Linus Walleij,
	Anton Vorontsov, Heiko Stuebner, Michal Simek, Ulf Hansson,
	Douglas Anderson, Linux ARM, Mark Rutland, Russell King,
	Maxime Ripard, Suneel Garapati, Soren Brinkmann, Zach Brown

On 28/11/16 16:44, Mason wrote:
> Hello,
> 
> @Shawn Lin, could you take a look below and tell me exactly
> which IP core(s) Rockchip is using in its SoCs?
> 
> Based on the feedback I received, here is an updated list of
> compatible strings and controller versions dealt with by the
> drivers/mmc/host/sdhci-of-arasan.c code.
> 
> 
> Xilinx Zynq:
> "SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller"
> "arasan,sdhci-8.9a"
> NB: 8.9a is the documentation revision (dated 2011-10-19)
> subsequent tweaks labeled 9.0a, 9.1a, 9.2a
> 
> Xilinx ZynqMP:
> "SD3.0 / SDIO3.0 / eMMC4.51 AHB Host Controller"
> "arasan,sdhci-8.9a"
> NB: using the same compatible string as Zynq
> 
> Sigma SMP87xx
> "SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller"
> no compatible string yet, platform-specific init required
> 
> APM:
> "SD3.0 / SDIO3.0 / eMMC4.41 AHB Host Controller"
> "arasan,sdhci-4.9a"
> NB: 4.9a appears to be the documentation revision
> no functional diff with "arasan,sdhci-8.9a"
> 
> Rockchip
> Exact IP unknown, waiting for Shawn's answer
> "arasan,sdhci-5.1"
> NB: 5.1 appears to refer to the eMMC standard supported
> 
> 
> On a final note, there are many variations of the Arasan IP.
> I've tracked down at least the following:
> 
> SD_2.0_SDIO_2.0__MMC_3.31_AHB_Host_Controller.pdf
> SD_3.0_SDIO_3.0_eMMC_4.41_OCP_Host_Controller.pdf
> SD_3.0_SDIO_3.0_eMMC_4.4__AHB_Host_Controller.pdf
> SD_3.0_SDIO_3.0_eMMC_4.51_Host_Controller.pdf
> SD_3.0_SDIO_3.0_eMMC_4.5__Host_Controller.pdf
> SD_4.1_SDIO_4.1_eMMC_4.51_Host_Controller.pdf
> SD_4.1_SDIO_4.1_eMMC_5.1__Host_Controller.pdf
> 
> It seems to me the compatible string should specify
> the SD/SDIO version AND the eMMC version, since it
> seems many combinations are allowed, e.g. eMMC 4.51
> has two possible SD versions.
> 
> What do you think?


I'm trying to picture this. Imagine:
a) SoC XYZ used two versions:
  - SD_3.0_SDIO_3.0_eMMC_4.4__AHB_Host_Controller.pdf
  - SD_3.0_SDIO_3.0_eMMC_4.5__Host_Controller.pdf
b) That the compatible suffixes were defined as "sd30-emmc44" and
"sd30-emmc45" respectively
c) That the chip-specific init is the same for both.

What would be the recommended way of dealing with that at DT/driver level?

1) XYZ's DT1: compatible = "arasan,sdhci-sd30-emmc44", "XYZ,sdhci"
         DT2: compatible = "arasan,sdhci-sd30-emmc45", "XYZ,sdhci"
   driver: match "XYZ,sdhci" for chip-specific init, and then leaves
"arasan,sdhci-sd30-emmc44" or arasan,sdhci-sd30-emmc45" for generic part

2) XYZ's DT1: compatible = "XYZ,arasan-sdhci-sd30-emmc44"
         DT2: compatible = "XYZ,arasan-sdhci-sd30-emmc45"
   driver: match "XYZ,arasan-sdhci-sd30-emmc44" or "XYZ,arasan-sdhci-sd30-emmc45"
for chip-specific init and generic parts

3) XYZ's DT1: compatible = "arasan,sdhci-sd30-emmc44"
         DT2: compatible = "arasan,sdhci-sd30-emmc45"
   driver: match "arasan,sdhci-sd30-emmc44" or "arasan,sdhci-sd30-emmc45" for
generic part; chip-specific init done somewhere else (bootloader?)

4) something else?

How would those solutions be affected if condition c) was changed to
"chip-specific init is different for both"?


> 
> Regards.
> 

^ permalink raw reply	[flat|nested] 33+ messages in thread

* arasan,sdhci.txt "compatibility" DT binding
@ 2016-11-28 16:23                         ` Sebastian Frias
  0 siblings, 0 replies; 33+ messages in thread
From: Sebastian Frias @ 2016-11-28 16:23 UTC (permalink / raw)
  To: linux-arm-kernel

On 28/11/16 16:44, Mason wrote:
> Hello,
> 
> @Shawn Lin, could you take a look below and tell me exactly
> which IP core(s) Rockchip is using in its SoCs?
> 
> Based on the feedback I received, here is an updated list of
> compatible strings and controller versions dealt with by the
> drivers/mmc/host/sdhci-of-arasan.c code.
> 
> 
> Xilinx Zynq:
> "SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller"
> "arasan,sdhci-8.9a"
> NB: 8.9a is the documentation revision (dated 2011-10-19)
> subsequent tweaks labeled 9.0a, 9.1a, 9.2a
> 
> Xilinx ZynqMP:
> "SD3.0 / SDIO3.0 / eMMC4.51 AHB Host Controller"
> "arasan,sdhci-8.9a"
> NB: using the same compatible string as Zynq
> 
> Sigma SMP87xx
> "SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller"
> no compatible string yet, platform-specific init required
> 
> APM:
> "SD3.0 / SDIO3.0 / eMMC4.41 AHB Host Controller"
> "arasan,sdhci-4.9a"
> NB: 4.9a appears to be the documentation revision
> no functional diff with "arasan,sdhci-8.9a"
> 
> Rockchip
> Exact IP unknown, waiting for Shawn's answer
> "arasan,sdhci-5.1"
> NB: 5.1 appears to refer to the eMMC standard supported
> 
> 
> On a final note, there are many variations of the Arasan IP.
> I've tracked down at least the following:
> 
> SD_2.0_SDIO_2.0__MMC_3.31_AHB_Host_Controller.pdf
> SD_3.0_SDIO_3.0_eMMC_4.41_OCP_Host_Controller.pdf
> SD_3.0_SDIO_3.0_eMMC_4.4__AHB_Host_Controller.pdf
> SD_3.0_SDIO_3.0_eMMC_4.51_Host_Controller.pdf
> SD_3.0_SDIO_3.0_eMMC_4.5__Host_Controller.pdf
> SD_4.1_SDIO_4.1_eMMC_4.51_Host_Controller.pdf
> SD_4.1_SDIO_4.1_eMMC_5.1__Host_Controller.pdf
> 
> It seems to me the compatible string should specify
> the SD/SDIO version AND the eMMC version, since it
> seems many combinations are allowed, e.g. eMMC 4.51
> has two possible SD versions.
> 
> What do you think?


I'm trying to picture this. Imagine:
a) SoC XYZ used two versions:
  - SD_3.0_SDIO_3.0_eMMC_4.4__AHB_Host_Controller.pdf
  - SD_3.0_SDIO_3.0_eMMC_4.5__Host_Controller.pdf
b) That the compatible suffixes were defined as "sd30-emmc44" and
"sd30-emmc45" respectively
c) That the chip-specific init is the same for both.

What would be the recommended way of dealing with that at DT/driver level?

1) XYZ's DT1: compatible = "arasan,sdhci-sd30-emmc44", "XYZ,sdhci"
         DT2: compatible = "arasan,sdhci-sd30-emmc45", "XYZ,sdhci"
   driver: match "XYZ,sdhci" for chip-specific init, and then leaves
"arasan,sdhci-sd30-emmc44" or arasan,sdhci-sd30-emmc45" for generic part

2) XYZ's DT1: compatible = "XYZ,arasan-sdhci-sd30-emmc44"
         DT2: compatible = "XYZ,arasan-sdhci-sd30-emmc45"
   driver: match "XYZ,arasan-sdhci-sd30-emmc44" or "XYZ,arasan-sdhci-sd30-emmc45"
for chip-specific init and generic parts

3) XYZ's DT1: compatible = "arasan,sdhci-sd30-emmc44"
         DT2: compatible = "arasan,sdhci-sd30-emmc45"
   driver: match "arasan,sdhci-sd30-emmc44" or "arasan,sdhci-sd30-emmc45" for
generic part; chip-specific init done somewhere else (bootloader?)

4) something else?

How would those solutions be affected if condition c) was changed to
"chip-specific init is different for both"?


> 
> Regards.
> 

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: arasan,sdhci.txt "compatibility" DT binding
  2016-11-28 16:15                         ` Arnd Bergmann
@ 2016-11-28 16:52                           ` Mason
  -1 siblings, 0 replies; 33+ messages in thread
From: Mason @ 2016-11-28 16:52 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: linux-mmc, Shawn Lin, Adrian Hunter, Michal Simek,
	Rameshwar Sahu, Linux ARM, Soren Brinkmann, Michal Simek,
	Anton Vorontsov, Xiaobo Xie, Suman Tripathi, Linus Walleij,
	Maxime Ripard, Rob Herring, Zach Brown, Ulf Hansson,
	Douglas Anderson, Heiko Stuebner, Jisheng Zhang, Suneel Garapati

On 28/11/2016 17:15, Arnd Bergmann wrote:

> On Monday, November 28, 2016 4:44:39 PM CET Mason wrote:
>
>> Hello,
>>
>> @Shawn Lin, could you take a look below and tell me exactly
>> which IP core(s) Rockchip is using in its SoCs?
>>
>> Based on the feedback I received, here is an updated list of
>> compatible strings and controller versions dealt with by the
>> drivers/mmc/host/sdhci-of-arasan.c code.
>>
>>
>> Xilinx Zynq:
>> "SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller"
>> "arasan,sdhci-8.9a"
>> NB: 8.9a is the documentation revision (dated 2011-10-19)
>> subsequent tweaks labeled 9.0a, 9.1a, 9.2a
>>
>> Xilinx ZynqMP:
>> "SD3.0 / SDIO3.0 / eMMC4.51 AHB Host Controller"
>> "arasan,sdhci-8.9a"
>> NB: using the same compatible string as Zynq
>>
>> Sigma SMP87xx
>> "SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller"
>> no compatible string yet, platform-specific init required
>>
>> APM:
>> "SD3.0 / SDIO3.0 / eMMC4.41 AHB Host Controller"
>> "arasan,sdhci-4.9a"
>> NB: 4.9a appears to be the documentation revision
>> no functional diff with "arasan,sdhci-8.9a"
>>
>> Rockchip
>> Exact IP unknown, waiting for Shawn's answer
>> "arasan,sdhci-5.1"
>> NB: 5.1 appears to refer to the eMMC standard supported
>>
>>
>> On a final note, there are many variations of the Arasan IP.
>> I've tracked down at least the following:
>>
>> SD_2.0_SDIO_2.0__MMC_3.31_AHB_Host_Controller.pdf
>> SD_3.0_SDIO_3.0_eMMC_4.41_OCP_Host_Controller.pdf
>> SD_3.0_SDIO_3.0_eMMC_4.4__AHB_Host_Controller.pdf
>> SD_3.0_SDIO_3.0_eMMC_4.51_Host_Controller.pdf
>> SD_3.0_SDIO_3.0_eMMC_4.5__Host_Controller.pdf
>> SD_4.1_SDIO_4.1_eMMC_4.51_Host_Controller.pdf
>> SD_4.1_SDIO_4.1_eMMC_5.1__Host_Controller.pdf
>>
>> It seems to me the compatible string should specify
>> the SD/SDIO version AND the eMMC version, since it
>> seems many combinations are allowed, e.g. eMMC 4.51
>> has two possible SD versions.
>>
>> What do you think?
> 
> It seems wrong to have the eMMC or SD version in the compatible
> string.  Is that the only difference between the documents you
> found? Normally there should be a version of IP block itself,
> besides the supported protocol.

But that is exactly the problem :-)

Nowhere in the documentation do they specify an "IP version".
Some documents do provide a revision number, but that's just
a *documentation* revision number, e.g.

changes in version 3.6 : fix typos
changes in version 9.1a : update company logo

That's why Xilinx used "arasan,sdhci-8.9a" and APM used
"arasan,sdhci-4.9a". These are documentation revisions.
In my opinion, that information is mostly worthless.


Looking more closely at SD_3.0_SDIO_3.0_eMMC_4.4__AHB_Host_Controller.pdf
(User Guide, which has more info than Datasheet) I see this:

Changed Host Controller Version Register value from 16'h0002 to 16'h7501
Changed Host Controller Version Register value from 16'h8301 to 16'h8401
Changed Host Controller Version Register value from 16'h8401 to 16'h8501
Changed Host Controller Version Register to 16'h9502
Changed Host Controller Version Register to 16'h9602
Changed Host Controller Version Register to 16'h9902

Host controller version register (offset 0FEh)

Vendor Version Number 15:8
HwInit=0x99
This status is reserved for the vendor version number.
The HD should not use this status.

Specification Version Number 7:0
HwInit=0x02
This status indicates the Host Controller Spec. Version.
The upper and lower 4-bits indicate the version.
Description
00 - SD Host Specification version 1.0
01 - SD Host Specification version 2.00
including only the feature of the Test Register
02 - SD Host Specification Version 3.00
others - Reserved

I'm not sure what this "Vendor Version Number" specifies, nor if is
guaranteed to be unique across controllers.

In SD_3.0_SDIO_3.0_eMMC_4.5__Host_Controller_UserGuide.pdf,
they write "The Vendor Version Number is set to 0x10 (1.0)"

I don't have a UserGuide for "arasan,sdhci-5.1".

Regards.


^ permalink raw reply	[flat|nested] 33+ messages in thread

* arasan,sdhci.txt "compatibility" DT binding
@ 2016-11-28 16:52                           ` Mason
  0 siblings, 0 replies; 33+ messages in thread
From: Mason @ 2016-11-28 16:52 UTC (permalink / raw)
  To: linux-arm-kernel

On 28/11/2016 17:15, Arnd Bergmann wrote:

> On Monday, November 28, 2016 4:44:39 PM CET Mason wrote:
>
>> Hello,
>>
>> @Shawn Lin, could you take a look below and tell me exactly
>> which IP core(s) Rockchip is using in its SoCs?
>>
>> Based on the feedback I received, here is an updated list of
>> compatible strings and controller versions dealt with by the
>> drivers/mmc/host/sdhci-of-arasan.c code.
>>
>>
>> Xilinx Zynq:
>> "SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller"
>> "arasan,sdhci-8.9a"
>> NB: 8.9a is the documentation revision (dated 2011-10-19)
>> subsequent tweaks labeled 9.0a, 9.1a, 9.2a
>>
>> Xilinx ZynqMP:
>> "SD3.0 / SDIO3.0 / eMMC4.51 AHB Host Controller"
>> "arasan,sdhci-8.9a"
>> NB: using the same compatible string as Zynq
>>
>> Sigma SMP87xx
>> "SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller"
>> no compatible string yet, platform-specific init required
>>
>> APM:
>> "SD3.0 / SDIO3.0 / eMMC4.41 AHB Host Controller"
>> "arasan,sdhci-4.9a"
>> NB: 4.9a appears to be the documentation revision
>> no functional diff with "arasan,sdhci-8.9a"
>>
>> Rockchip
>> Exact IP unknown, waiting for Shawn's answer
>> "arasan,sdhci-5.1"
>> NB: 5.1 appears to refer to the eMMC standard supported
>>
>>
>> On a final note, there are many variations of the Arasan IP.
>> I've tracked down at least the following:
>>
>> SD_2.0_SDIO_2.0__MMC_3.31_AHB_Host_Controller.pdf
>> SD_3.0_SDIO_3.0_eMMC_4.41_OCP_Host_Controller.pdf
>> SD_3.0_SDIO_3.0_eMMC_4.4__AHB_Host_Controller.pdf
>> SD_3.0_SDIO_3.0_eMMC_4.51_Host_Controller.pdf
>> SD_3.0_SDIO_3.0_eMMC_4.5__Host_Controller.pdf
>> SD_4.1_SDIO_4.1_eMMC_4.51_Host_Controller.pdf
>> SD_4.1_SDIO_4.1_eMMC_5.1__Host_Controller.pdf
>>
>> It seems to me the compatible string should specify
>> the SD/SDIO version AND the eMMC version, since it
>> seems many combinations are allowed, e.g. eMMC 4.51
>> has two possible SD versions.
>>
>> What do you think?
> 
> It seems wrong to have the eMMC or SD version in the compatible
> string.  Is that the only difference between the documents you
> found? Normally there should be a version of IP block itself,
> besides the supported protocol.

But that is exactly the problem :-)

Nowhere in the documentation do they specify an "IP version".
Some documents do provide a revision number, but that's just
a *documentation* revision number, e.g.

changes in version 3.6 : fix typos
changes in version 9.1a : update company logo

That's why Xilinx used "arasan,sdhci-8.9a" and APM used
"arasan,sdhci-4.9a". These are documentation revisions.
In my opinion, that information is mostly worthless.


Looking more closely at SD_3.0_SDIO_3.0_eMMC_4.4__AHB_Host_Controller.pdf
(User Guide, which has more info than Datasheet) I see this:

Changed Host Controller Version Register value from 16'h0002 to 16'h7501
Changed Host Controller Version Register value from 16'h8301 to 16'h8401
Changed Host Controller Version Register value from 16'h8401 to 16'h8501
Changed Host Controller Version Register to 16'h9502
Changed Host Controller Version Register to 16'h9602
Changed Host Controller Version Register to 16'h9902

Host controller version register (offset 0FEh)

Vendor Version Number 15:8
HwInit=0x99
This status is reserved for the vendor version number.
The HD should not use this status.

Specification Version Number 7:0
HwInit=0x02
This status indicates the Host Controller Spec. Version.
The upper and lower 4-bits indicate the version.
Description
00 - SD Host Specification version 1.0
01 - SD Host Specification version 2.00
including only the feature of the Test Register
02 - SD Host Specification Version 3.00
others - Reserved

I'm not sure what this "Vendor Version Number" specifies, nor if is
guaranteed to be unique across controllers.

In SD_3.0_SDIO_3.0_eMMC_4.5__Host_Controller_UserGuide.pdf,
they write "The Vendor Version Number is set to 0x10 (1.0)"

I don't have a UserGuide for "arasan,sdhci-5.1".

Regards.

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: arasan,sdhci.txt "compatibility" DT binding
  2016-11-28 16:52                           ` Mason
@ 2016-11-29  7:29                             ` Rameshwar Sahu
  -1 siblings, 0 replies; 33+ messages in thread
From: Rameshwar Sahu @ 2016-11-29  7:29 UTC (permalink / raw)
  To: Mason
  Cc: Arnd Bergmann, linux-mmc, Shawn Lin, Adrian Hunter, Michal Simek,
	Linux ARM, Soren Brinkmann, Michal Simek, Anton Vorontsov,
	Xiaobo Xie, Suman Tripathi, Linus Walleij, Maxime Ripard,
	Rob Herring, Zach Brown, Ulf Hansson, Douglas Anderson,
	Heiko Stuebner, Jisheng Zhang, Suneel Garapati

Hi Mason,

Nowhere in the documentation do they specify an "IP version".
Some documents do provide a revision number, but that's just
a *documentation* revision number, e.g.

changes in version 3.6 : fix typos
changes in version 9.1a : update company logo

That's why Xilinx used "arasan,sdhci-8.9a" and APM used
"arasan,sdhci-4.9a". These are documentation revisions.
In my opinion, that information is mostly worthless.

Arasan SD/SDIO/eMMC IP has a register which tells about the SD
specification version and  Vendor version number
Reg Name: Host controller version register (offset 0FEh)
bit [15:8] is for vendor version number,
But, I have seen that Arasaan vendor version number is same as
document revision number.

On Mon, Nov 28, 2016 at 10:22 PM, Mason <slash.tmp@free.fr> wrote:
> On 28/11/2016 17:15, Arnd Bergmann wrote:
>
>> On Monday, November 28, 2016 4:44:39 PM CET Mason wrote:
>>
>>> Hello,
>>>
>>> @Shawn Lin, could you take a look below and tell me exactly
>>> which IP core(s) Rockchip is using in its SoCs?
>>>
>>> Based on the feedback I received, here is an updated list of
>>> compatible strings and controller versions dealt with by the
>>> drivers/mmc/host/sdhci-of-arasan.c code.
>>>
>>>
>>> Xilinx Zynq:
>>> "SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller"
>>> "arasan,sdhci-8.9a"
>>> NB: 8.9a is the documentation revision (dated 2011-10-19)
>>> subsequent tweaks labeled 9.0a, 9.1a, 9.2a
>>>
>>> Xilinx ZynqMP:
>>> "SD3.0 / SDIO3.0 / eMMC4.51 AHB Host Controller"
>>> "arasan,sdhci-8.9a"
>>> NB: using the same compatible string as Zynq
>>>
>>> Sigma SMP87xx
>>> "SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller"
>>> no compatible string yet, platform-specific init required
>>>
>>> APM:
>>> "SD3.0 / SDIO3.0 / eMMC4.41 AHB Host Controller"
>>> "arasan,sdhci-4.9a"
>>> NB: 4.9a appears to be the documentation revision
>>> no functional diff with "arasan,sdhci-8.9a"
>>>
>>> Rockchip
>>> Exact IP unknown, waiting for Shawn's answer
>>> "arasan,sdhci-5.1"
>>> NB: 5.1 appears to refer to the eMMC standard supported
>>>
>>>
>>> On a final note, there are many variations of the Arasan IP.
>>> I've tracked down at least the following:
>>>
>>> SD_2.0_SDIO_2.0__MMC_3.31_AHB_Host_Controller.pdf
>>> SD_3.0_SDIO_3.0_eMMC_4.41_OCP_Host_Controller.pdf
>>> SD_3.0_SDIO_3.0_eMMC_4.4__AHB_Host_Controller.pdf
>>> SD_3.0_SDIO_3.0_eMMC_4.51_Host_Controller.pdf
>>> SD_3.0_SDIO_3.0_eMMC_4.5__Host_Controller.pdf
>>> SD_4.1_SDIO_4.1_eMMC_4.51_Host_Controller.pdf
>>> SD_4.1_SDIO_4.1_eMMC_5.1__Host_Controller.pdf
>>>
>>> It seems to me the compatible string should specify
>>> the SD/SDIO version AND the eMMC version, since it
>>> seems many combinations are allowed, e.g. eMMC 4.51
>>> has two possible SD versions.
>>>
>>> What do you think?
>>
>> It seems wrong to have the eMMC or SD version in the compatible
>> string.  Is that the only difference between the documents you
>> found? Normally there should be a version of IP block itself,
>> besides the supported protocol.
>
> But that is exactly the problem :-)
>
> Nowhere in the documentation do they specify an "IP version".
> Some documents do provide a revision number, but that's just
> a *documentation* revision number, e.g.
>
> changes in version 3.6 : fix typos
> changes in version 9.1a : update company logo
>
> That's why Xilinx used "arasan,sdhci-8.9a" and APM used
> "arasan,sdhci-4.9a". These are documentation revisions.
> In my opinion, that information is mostly worthless.
>
>
> Looking more closely at SD_3.0_SDIO_3.0_eMMC_4.4__AHB_Host_Controller.pdf
> (User Guide, which has more info than Datasheet) I see this:
>
> Changed Host Controller Version Register value from 16'h0002 to 16'h7501
> Changed Host Controller Version Register value from 16'h8301 to 16'h8401
> Changed Host Controller Version Register value from 16'h8401 to 16'h8501
> Changed Host Controller Version Register to 16'h9502
> Changed Host Controller Version Register to 16'h9602
> Changed Host Controller Version Register to 16'h9902
>
> Host controller version register (offset 0FEh)
>
> Vendor Version Number 15:8
> HwInit=0x99
> This status is reserved for the vendor version number.
> The HD should not use this status.
>
> Specification Version Number 7:0
> HwInit=0x02
> This status indicates the Host Controller Spec. Version.
> The upper and lower 4-bits indicate the version.
> Description
> 00 - SD Host Specification version 1.0
> 01 - SD Host Specification version 2.00
> including only the feature of the Test Register
> 02 - SD Host Specification Version 3.00
> others - Reserved
>
> I'm not sure what this "Vendor Version Number" specifies, nor if is
> guaranteed to be unique across controllers.
>
> In SD_3.0_SDIO_3.0_eMMC_4.5__Host_Controller_UserGuide.pdf,
> they write "The Vendor Version Number is set to 0x10 (1.0)"
>
> I don't have a UserGuide for "arasan,sdhci-5.1".
>
> Regards.
>

^ permalink raw reply	[flat|nested] 33+ messages in thread

* arasan,sdhci.txt "compatibility" DT binding
@ 2016-11-29  7:29                             ` Rameshwar Sahu
  0 siblings, 0 replies; 33+ messages in thread
From: Rameshwar Sahu @ 2016-11-29  7:29 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Mason,

Nowhere in the documentation do they specify an "IP version".
Some documents do provide a revision number, but that's just
a *documentation* revision number, e.g.

changes in version 3.6 : fix typos
changes in version 9.1a : update company logo

That's why Xilinx used "arasan,sdhci-8.9a" and APM used
"arasan,sdhci-4.9a". These are documentation revisions.
In my opinion, that information is mostly worthless.

Arasan SD/SDIO/eMMC IP has a register which tells about the SD
specification version and  Vendor version number
Reg Name: Host controller version register (offset 0FEh)
bit [15:8] is for vendor version number,
But, I have seen that Arasaan vendor version number is same as
document revision number.

On Mon, Nov 28, 2016 at 10:22 PM, Mason <slash.tmp@free.fr> wrote:
> On 28/11/2016 17:15, Arnd Bergmann wrote:
>
>> On Monday, November 28, 2016 4:44:39 PM CET Mason wrote:
>>
>>> Hello,
>>>
>>> @Shawn Lin, could you take a look below and tell me exactly
>>> which IP core(s) Rockchip is using in its SoCs?
>>>
>>> Based on the feedback I received, here is an updated list of
>>> compatible strings and controller versions dealt with by the
>>> drivers/mmc/host/sdhci-of-arasan.c code.
>>>
>>>
>>> Xilinx Zynq:
>>> "SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller"
>>> "arasan,sdhci-8.9a"
>>> NB: 8.9a is the documentation revision (dated 2011-10-19)
>>> subsequent tweaks labeled 9.0a, 9.1a, 9.2a
>>>
>>> Xilinx ZynqMP:
>>> "SD3.0 / SDIO3.0 / eMMC4.51 AHB Host Controller"
>>> "arasan,sdhci-8.9a"
>>> NB: using the same compatible string as Zynq
>>>
>>> Sigma SMP87xx
>>> "SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller"
>>> no compatible string yet, platform-specific init required
>>>
>>> APM:
>>> "SD3.0 / SDIO3.0 / eMMC4.41 AHB Host Controller"
>>> "arasan,sdhci-4.9a"
>>> NB: 4.9a appears to be the documentation revision
>>> no functional diff with "arasan,sdhci-8.9a"
>>>
>>> Rockchip
>>> Exact IP unknown, waiting for Shawn's answer
>>> "arasan,sdhci-5.1"
>>> NB: 5.1 appears to refer to the eMMC standard supported
>>>
>>>
>>> On a final note, there are many variations of the Arasan IP.
>>> I've tracked down at least the following:
>>>
>>> SD_2.0_SDIO_2.0__MMC_3.31_AHB_Host_Controller.pdf
>>> SD_3.0_SDIO_3.0_eMMC_4.41_OCP_Host_Controller.pdf
>>> SD_3.0_SDIO_3.0_eMMC_4.4__AHB_Host_Controller.pdf
>>> SD_3.0_SDIO_3.0_eMMC_4.51_Host_Controller.pdf
>>> SD_3.0_SDIO_3.0_eMMC_4.5__Host_Controller.pdf
>>> SD_4.1_SDIO_4.1_eMMC_4.51_Host_Controller.pdf
>>> SD_4.1_SDIO_4.1_eMMC_5.1__Host_Controller.pdf
>>>
>>> It seems to me the compatible string should specify
>>> the SD/SDIO version AND the eMMC version, since it
>>> seems many combinations are allowed, e.g. eMMC 4.51
>>> has two possible SD versions.
>>>
>>> What do you think?
>>
>> It seems wrong to have the eMMC or SD version in the compatible
>> string.  Is that the only difference between the documents you
>> found? Normally there should be a version of IP block itself,
>> besides the supported protocol.
>
> But that is exactly the problem :-)
>
> Nowhere in the documentation do they specify an "IP version".
> Some documents do provide a revision number, but that's just
> a *documentation* revision number, e.g.
>
> changes in version 3.6 : fix typos
> changes in version 9.1a : update company logo
>
> That's why Xilinx used "arasan,sdhci-8.9a" and APM used
> "arasan,sdhci-4.9a". These are documentation revisions.
> In my opinion, that information is mostly worthless.
>
>
> Looking more closely at SD_3.0_SDIO_3.0_eMMC_4.4__AHB_Host_Controller.pdf
> (User Guide, which has more info than Datasheet) I see this:
>
> Changed Host Controller Version Register value from 16'h0002 to 16'h7501
> Changed Host Controller Version Register value from 16'h8301 to 16'h8401
> Changed Host Controller Version Register value from 16'h8401 to 16'h8501
> Changed Host Controller Version Register to 16'h9502
> Changed Host Controller Version Register to 16'h9602
> Changed Host Controller Version Register to 16'h9902
>
> Host controller version register (offset 0FEh)
>
> Vendor Version Number 15:8
> HwInit=0x99
> This status is reserved for the vendor version number.
> The HD should not use this status.
>
> Specification Version Number 7:0
> HwInit=0x02
> This status indicates the Host Controller Spec. Version.
> The upper and lower 4-bits indicate the version.
> Description
> 00 - SD Host Specification version 1.0
> 01 - SD Host Specification version 2.00
> including only the feature of the Test Register
> 02 - SD Host Specification Version 3.00
> others - Reserved
>
> I'm not sure what this "Vendor Version Number" specifies, nor if is
> guaranteed to be unique across controllers.
>
> In SD_3.0_SDIO_3.0_eMMC_4.5__Host_Controller_UserGuide.pdf,
> they write "The Vendor Version Number is set to 0x10 (1.0)"
>
> I don't have a UserGuide for "arasan,sdhci-5.1".
>
> Regards.
>

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: arasan,sdhci.txt "compatibility" DT binding
  2016-11-29  7:29                             ` Rameshwar Sahu
@ 2016-11-30 10:51                               ` Sebastian Frias
  -1 siblings, 0 replies; 33+ messages in thread
From: Sebastian Frias @ 2016-11-30 10:51 UTC (permalink / raw)
  To: Rameshwar Sahu, Mason
  Cc: Mark Rutland, Ulf Hansson, Suman Tripathi, Heiko Stuebner,
	Shawn Lin, Adrian Hunter, Jisheng Zhang, Russell King,
	Anton Vorontsov, Michal Simek, Linux ARM, Linus Walleij,
	P L Sai Krishna, Zach Brown, Arnd Bergmann, Suneel Garapati,
	Soren Brinkmann, Michal Simek, linux-mmc, Douglas Anderson,
	Maxime Ripard, Xiaobo Xie

On 29/11/16 08:29, Rameshwar Sahu wrote:
> Hi Mason,
> 
> Nowhere in the documentation do they specify an "IP version".
> Some documents do provide a revision number, but that's just
> a *documentation* revision number, e.g.
> 
> changes in version 3.6 : fix typos
> changes in version 9.1a : update company logo
> 
> That's why Xilinx used "arasan,sdhci-8.9a" and APM used
> "arasan,sdhci-4.9a". These are documentation revisions.
> In my opinion, that information is mostly worthless.
> 

For the record, the important information conveyed by Rameshwar's
email is the following:

Arasan SD/SDIO/eMMC IP has a register which tells about the SD
specification version and  Vendor version number
Reg Name: Host controller version register (offset 0FEh)
bit [15:8] is for vendor version number,
But, I have seen that Arasaan vendor version number is same as
document revision number.

(At first I had ignored the email because it repeated Mason's email
without quoting, but then I realised it contained some information)



> 
> On Mon, Nov 28, 2016 at 10:22 PM, Mason <slash.tmp@free.fr> wrote:
>> On 28/11/2016 17:15, Arnd Bergmann wrote:
>>
>>> On Monday, November 28, 2016 4:44:39 PM CET Mason wrote:
>>>
>>>> Hello,
>>>>
>>>> @Shawn Lin, could you take a look below and tell me exactly
>>>> which IP core(s) Rockchip is using in its SoCs?
>>>>
>>>> Based on the feedback I received, here is an updated list of
>>>> compatible strings and controller versions dealt with by the
>>>> drivers/mmc/host/sdhci-of-arasan.c code.
>>>>
>>>>
>>>> Xilinx Zynq:
>>>> "SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller"
>>>> "arasan,sdhci-8.9a"
>>>> NB: 8.9a is the documentation revision (dated 2011-10-19)
>>>> subsequent tweaks labeled 9.0a, 9.1a, 9.2a
>>>>
>>>> Xilinx ZynqMP:
>>>> "SD3.0 / SDIO3.0 / eMMC4.51 AHB Host Controller"
>>>> "arasan,sdhci-8.9a"
>>>> NB: using the same compatible string as Zynq
>>>>
>>>> Sigma SMP87xx
>>>> "SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller"
>>>> no compatible string yet, platform-specific init required
>>>>
>>>> APM:
>>>> "SD3.0 / SDIO3.0 / eMMC4.41 AHB Host Controller"
>>>> "arasan,sdhci-4.9a"
>>>> NB: 4.9a appears to be the documentation revision
>>>> no functional diff with "arasan,sdhci-8.9a"
>>>>
>>>> Rockchip
>>>> Exact IP unknown, waiting for Shawn's answer
>>>> "arasan,sdhci-5.1"
>>>> NB: 5.1 appears to refer to the eMMC standard supported
>>>>
>>>>
>>>> On a final note, there are many variations of the Arasan IP.
>>>> I've tracked down at least the following:
>>>>
>>>> SD_2.0_SDIO_2.0__MMC_3.31_AHB_Host_Controller.pdf
>>>> SD_3.0_SDIO_3.0_eMMC_4.41_OCP_Host_Controller.pdf
>>>> SD_3.0_SDIO_3.0_eMMC_4.4__AHB_Host_Controller.pdf
>>>> SD_3.0_SDIO_3.0_eMMC_4.51_Host_Controller.pdf
>>>> SD_3.0_SDIO_3.0_eMMC_4.5__Host_Controller.pdf
>>>> SD_4.1_SDIO_4.1_eMMC_4.51_Host_Controller.pdf
>>>> SD_4.1_SDIO_4.1_eMMC_5.1__Host_Controller.pdf
>>>>
>>>> It seems to me the compatible string should specify
>>>> the SD/SDIO version AND the eMMC version, since it
>>>> seems many combinations are allowed, e.g. eMMC 4.51
>>>> has two possible SD versions.
>>>>
>>>> What do you think?
>>>
>>> It seems wrong to have the eMMC or SD version in the compatible
>>> string.  Is that the only difference between the documents you
>>> found? Normally there should be a version of IP block itself,
>>> besides the supported protocol.
>>
>> But that is exactly the problem :-)
>>
>> Nowhere in the documentation do they specify an "IP version".
>> Some documents do provide a revision number, but that's just
>> a *documentation* revision number, e.g.
>>
>> changes in version 3.6 : fix typos
>> changes in version 9.1a : update company logo
>>
>> That's why Xilinx used "arasan,sdhci-8.9a" and APM used
>> "arasan,sdhci-4.9a". These are documentation revisions.
>> In my opinion, that information is mostly worthless.
>>
>>
>> Looking more closely at SD_3.0_SDIO_3.0_eMMC_4.4__AHB_Host_Controller.pdf
>> (User Guide, which has more info than Datasheet) I see this:
>>
>> Changed Host Controller Version Register value from 16'h0002 to 16'h7501
>> Changed Host Controller Version Register value from 16'h8301 to 16'h8401
>> Changed Host Controller Version Register value from 16'h8401 to 16'h8501
>> Changed Host Controller Version Register to 16'h9502
>> Changed Host Controller Version Register to 16'h9602
>> Changed Host Controller Version Register to 16'h9902
>>
>> Host controller version register (offset 0FEh)
>>
>> Vendor Version Number 15:8
>> HwInit=0x99
>> This status is reserved for the vendor version number.
>> The HD should not use this status.
>>
>> Specification Version Number 7:0
>> HwInit=0x02
>> This status indicates the Host Controller Spec. Version.
>> The upper and lower 4-bits indicate the version.
>> Description
>> 00 - SD Host Specification version 1.0
>> 01 - SD Host Specification version 2.00
>> including only the feature of the Test Register
>> 02 - SD Host Specification Version 3.00
>> others - Reserved
>>
>> I'm not sure what this "Vendor Version Number" specifies, nor if is
>> guaranteed to be unique across controllers.
>>
>> In SD_3.0_SDIO_3.0_eMMC_4.5__Host_Controller_UserGuide.pdf,
>> they write "The Vendor Version Number is set to 0x10 (1.0)"
>>
>> I don't have a UserGuide for "arasan,sdhci-5.1".
>>
>> Regards.
>>

^ permalink raw reply	[flat|nested] 33+ messages in thread

* arasan,sdhci.txt "compatibility" DT binding
@ 2016-11-30 10:51                               ` Sebastian Frias
  0 siblings, 0 replies; 33+ messages in thread
From: Sebastian Frias @ 2016-11-30 10:51 UTC (permalink / raw)
  To: linux-arm-kernel

On 29/11/16 08:29, Rameshwar Sahu wrote:
> Hi Mason,
> 
> Nowhere in the documentation do they specify an "IP version".
> Some documents do provide a revision number, but that's just
> a *documentation* revision number, e.g.
> 
> changes in version 3.6 : fix typos
> changes in version 9.1a : update company logo
> 
> That's why Xilinx used "arasan,sdhci-8.9a" and APM used
> "arasan,sdhci-4.9a". These are documentation revisions.
> In my opinion, that information is mostly worthless.
> 

For the record, the important information conveyed by Rameshwar's
email is the following:

Arasan SD/SDIO/eMMC IP has a register which tells about the SD
specification version and  Vendor version number
Reg Name: Host controller version register (offset 0FEh)
bit [15:8] is for vendor version number,
But, I have seen that Arasaan vendor version number is same as
document revision number.

(At first I had ignored the email because it repeated Mason's email
without quoting, but then I realised it contained some information)



> 
> On Mon, Nov 28, 2016 at 10:22 PM, Mason <slash.tmp@free.fr> wrote:
>> On 28/11/2016 17:15, Arnd Bergmann wrote:
>>
>>> On Monday, November 28, 2016 4:44:39 PM CET Mason wrote:
>>>
>>>> Hello,
>>>>
>>>> @Shawn Lin, could you take a look below and tell me exactly
>>>> which IP core(s) Rockchip is using in its SoCs?
>>>>
>>>> Based on the feedback I received, here is an updated list of
>>>> compatible strings and controller versions dealt with by the
>>>> drivers/mmc/host/sdhci-of-arasan.c code.
>>>>
>>>>
>>>> Xilinx Zynq:
>>>> "SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller"
>>>> "arasan,sdhci-8.9a"
>>>> NB: 8.9a is the documentation revision (dated 2011-10-19)
>>>> subsequent tweaks labeled 9.0a, 9.1a, 9.2a
>>>>
>>>> Xilinx ZynqMP:
>>>> "SD3.0 / SDIO3.0 / eMMC4.51 AHB Host Controller"
>>>> "arasan,sdhci-8.9a"
>>>> NB: using the same compatible string as Zynq
>>>>
>>>> Sigma SMP87xx
>>>> "SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller"
>>>> no compatible string yet, platform-specific init required
>>>>
>>>> APM:
>>>> "SD3.0 / SDIO3.0 / eMMC4.41 AHB Host Controller"
>>>> "arasan,sdhci-4.9a"
>>>> NB: 4.9a appears to be the documentation revision
>>>> no functional diff with "arasan,sdhci-8.9a"
>>>>
>>>> Rockchip
>>>> Exact IP unknown, waiting for Shawn's answer
>>>> "arasan,sdhci-5.1"
>>>> NB: 5.1 appears to refer to the eMMC standard supported
>>>>
>>>>
>>>> On a final note, there are many variations of the Arasan IP.
>>>> I've tracked down at least the following:
>>>>
>>>> SD_2.0_SDIO_2.0__MMC_3.31_AHB_Host_Controller.pdf
>>>> SD_3.0_SDIO_3.0_eMMC_4.41_OCP_Host_Controller.pdf
>>>> SD_3.0_SDIO_3.0_eMMC_4.4__AHB_Host_Controller.pdf
>>>> SD_3.0_SDIO_3.0_eMMC_4.51_Host_Controller.pdf
>>>> SD_3.0_SDIO_3.0_eMMC_4.5__Host_Controller.pdf
>>>> SD_4.1_SDIO_4.1_eMMC_4.51_Host_Controller.pdf
>>>> SD_4.1_SDIO_4.1_eMMC_5.1__Host_Controller.pdf
>>>>
>>>> It seems to me the compatible string should specify
>>>> the SD/SDIO version AND the eMMC version, since it
>>>> seems many combinations are allowed, e.g. eMMC 4.51
>>>> has two possible SD versions.
>>>>
>>>> What do you think?
>>>
>>> It seems wrong to have the eMMC or SD version in the compatible
>>> string.  Is that the only difference between the documents you
>>> found? Normally there should be a version of IP block itself,
>>> besides the supported protocol.
>>
>> But that is exactly the problem :-)
>>
>> Nowhere in the documentation do they specify an "IP version".
>> Some documents do provide a revision number, but that's just
>> a *documentation* revision number, e.g.
>>
>> changes in version 3.6 : fix typos
>> changes in version 9.1a : update company logo
>>
>> That's why Xilinx used "arasan,sdhci-8.9a" and APM used
>> "arasan,sdhci-4.9a". These are documentation revisions.
>> In my opinion, that information is mostly worthless.
>>
>>
>> Looking more closely at SD_3.0_SDIO_3.0_eMMC_4.4__AHB_Host_Controller.pdf
>> (User Guide, which has more info than Datasheet) I see this:
>>
>> Changed Host Controller Version Register value from 16'h0002 to 16'h7501
>> Changed Host Controller Version Register value from 16'h8301 to 16'h8401
>> Changed Host Controller Version Register value from 16'h8401 to 16'h8501
>> Changed Host Controller Version Register to 16'h9502
>> Changed Host Controller Version Register to 16'h9602
>> Changed Host Controller Version Register to 16'h9902
>>
>> Host controller version register (offset 0FEh)
>>
>> Vendor Version Number 15:8
>> HwInit=0x99
>> This status is reserved for the vendor version number.
>> The HD should not use this status.
>>
>> Specification Version Number 7:0
>> HwInit=0x02
>> This status indicates the Host Controller Spec. Version.
>> The upper and lower 4-bits indicate the version.
>> Description
>> 00 - SD Host Specification version 1.0
>> 01 - SD Host Specification version 2.00
>> including only the feature of the Test Register
>> 02 - SD Host Specification Version 3.00
>> others - Reserved
>>
>> I'm not sure what this "Vendor Version Number" specifies, nor if is
>> guaranteed to be unique across controllers.
>>
>> In SD_3.0_SDIO_3.0_eMMC_4.5__Host_Controller_UserGuide.pdf,
>> they write "The Vendor Version Number is set to 0x10 (1.0)"
>>
>> I don't have a UserGuide for "arasan,sdhci-5.1".
>>
>> Regards.
>>

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: arasan,sdhci.txt "compatibility" DT binding
  2016-11-30 10:51                               ` Sebastian Frias
@ 2016-11-30 13:17                                 ` Michal Simek
  -1 siblings, 0 replies; 33+ messages in thread
From: Michal Simek @ 2016-11-30 13:17 UTC (permalink / raw)
  To: Sebastian Frias, Rameshwar Sahu, Mason
  Cc: Arnd Bergmann, linux-mmc, Shawn Lin, Adrian Hunter, Michal Simek,
	Linux ARM, Soren Brinkmann, Michal Simek, Anton Vorontsov,
	Xiaobo Xie, Suman Tripathi, Linus Walleij, Maxime Ripard,
	Rob Herring, Zach Brown, Ulf Hansson, Douglas Anderson,
	Heiko Stuebner, Jisheng Zhang, Suneel

On 30.11.2016 11:51, Sebastian Frias wrote:
> On 29/11/16 08:29, Rameshwar Sahu wrote:
>> Hi Mason,
>>
>> Nowhere in the documentation do they specify an "IP version".
>> Some documents do provide a revision number, but that's just
>> a *documentation* revision number, e.g.
>>
>> changes in version 3.6 : fix typos
>> changes in version 9.1a : update company logo
>>
>> That's why Xilinx used "arasan,sdhci-8.9a" and APM used
>> "arasan,sdhci-4.9a". These are documentation revisions.
>> In my opinion, that information is mostly worthless.
>>
> 
> For the record, the important information conveyed by Rameshwar's
> email is the following:
> 
> Arasan SD/SDIO/eMMC IP has a register which tells about the SD
> specification version and  Vendor version number
> Reg Name: Host controller version register (offset 0FEh)
> bit [15:8] is for vendor version number,
> But, I have seen that Arasaan vendor version number is same as
> document revision number.
> 
> (At first I had ignored the email because it repeated Mason's email
> without quoting, but then I realised it contained some information)
> 
> 

Values on real HW.

ZynqMP device
xsdb% mrd 0xFF1600FC
FF1600FC:   10020000

Zynq device:
xsdb% mrd 0xE01000FC
E01000FC:   89010000

Based on docs I have access to.

Specification_Version_Number (bits:23:16)
00 - SD Host Specification version 1.0
01 - SD Host Specification version 2.00 including only the feature of
the Test Register
02 - SD Host Specification version 3.00


Vendor_Version_Number 	31:24

with 32bit access from FC

Thanks,
Michal


^ permalink raw reply	[flat|nested] 33+ messages in thread

* arasan,sdhci.txt "compatibility" DT binding
@ 2016-11-30 13:17                                 ` Michal Simek
  0 siblings, 0 replies; 33+ messages in thread
From: Michal Simek @ 2016-11-30 13:17 UTC (permalink / raw)
  To: linux-arm-kernel

On 30.11.2016 11:51, Sebastian Frias wrote:
> On 29/11/16 08:29, Rameshwar Sahu wrote:
>> Hi Mason,
>>
>> Nowhere in the documentation do they specify an "IP version".
>> Some documents do provide a revision number, but that's just
>> a *documentation* revision number, e.g.
>>
>> changes in version 3.6 : fix typos
>> changes in version 9.1a : update company logo
>>
>> That's why Xilinx used "arasan,sdhci-8.9a" and APM used
>> "arasan,sdhci-4.9a". These are documentation revisions.
>> In my opinion, that information is mostly worthless.
>>
> 
> For the record, the important information conveyed by Rameshwar's
> email is the following:
> 
> Arasan SD/SDIO/eMMC IP has a register which tells about the SD
> specification version and  Vendor version number
> Reg Name: Host controller version register (offset 0FEh)
> bit [15:8] is for vendor version number,
> But, I have seen that Arasaan vendor version number is same as
> document revision number.
> 
> (At first I had ignored the email because it repeated Mason's email
> without quoting, but then I realised it contained some information)
> 
> 

Values on real HW.

ZynqMP device
xsdb% mrd 0xFF1600FC
FF1600FC:   10020000

Zynq device:
xsdb% mrd 0xE01000FC
E01000FC:   89010000

Based on docs I have access to.

Specification_Version_Number (bits:23:16)
00 - SD Host Specification version 1.0
01 - SD Host Specification version 2.00 including only the feature of
the Test Register
02 - SD Host Specification version 3.00


Vendor_Version_Number 	31:24

with 32bit access from FC

Thanks,
Michal

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: arasan,sdhci.txt "compatibility" DT binding
  2016-11-28 15:44                       ` Mason
@ 2016-12-01  4:09                         ` Shawn Lin
  -1 siblings, 0 replies; 33+ messages in thread
From: Shawn Lin @ 2016-12-01  4:09 UTC (permalink / raw)
  To: Mason, linux-mmc, Adrian Hunter
  Cc: shawn.lin, Michal Simek, Rameshwar Sahu, Linux ARM,
	Soren Brinkmann, Michal Simek, Anton Vorontsov, Xiaobo Xie,
	Suman Tripathi, Linus Walleij, Maxime Ripard, Arnd Bergmann,
	Rob Herring, Zach Brown, Ulf Hansson, Douglas Anderson,
	Heiko Stuebner, Jisheng Zhang, Suneel Garapati, Russell King

On 2016/11/28 23:44, Mason wrote:
> Hello,
>
> @Shawn Lin, could you take a look below and tell me exactly
> which IP core(s) Rockchip is using in its SoCs?
>

 From the Host Controller version register (0xfe)
bit[7:0]: 0x2 : specification version number is 3.00
bit[15:8]: 0x10: Vendor version number is 1.0


Command Queueing version register (0x200)
bit[11:8]: 0x5  eMMC Major version number
bit[7:4]: 0x1 eMMC manor version number
bit[3:0]: 0x0 eMMC version suffix

User guide "eMMC 5.1/SD3.0/SDIO3.0 Host Controller"
Revision number: 1.14
Released on Dec. 2014

> Based on the feedback I received, here is an updated list of
> compatible strings and controller versions dealt with by the
> drivers/mmc/host/sdhci-of-arasan.c code.
>
>
> Xilinx Zynq:
> "SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller"
> "arasan,sdhci-8.9a"
> NB: 8.9a is the documentation revision (dated 2011-10-19)
> subsequent tweaks labeled 9.0a, 9.1a, 9.2a
>
> Xilinx ZynqMP:
> "SD3.0 / SDIO3.0 / eMMC4.51 AHB Host Controller"
> "arasan,sdhci-8.9a"
> NB: using the same compatible string as Zynq
>
> Sigma SMP87xx
> "SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller"
> no compatible string yet, platform-specific init required
>
> APM:
> "SD3.0 / SDIO3.0 / eMMC4.41 AHB Host Controller"
> "arasan,sdhci-4.9a"
> NB: 4.9a appears to be the documentation revision
> no functional diff with "arasan,sdhci-8.9a"
>
> Rockchip
> Exact IP unknown, waiting for Shawn's answer
> "arasan,sdhci-5.1"
> NB: 5.1 appears to refer to the eMMC standard supported
>
>
> On a final note, there are many variations of the Arasan IP.
> I've tracked down at least the following:
>
> SD_2.0_SDIO_2.0__MMC_3.31_AHB_Host_Controller.pdf
> SD_3.0_SDIO_3.0_eMMC_4.41_OCP_Host_Controller.pdf
> SD_3.0_SDIO_3.0_eMMC_4.4__AHB_Host_Controller.pdf
> SD_3.0_SDIO_3.0_eMMC_4.51_Host_Controller.pdf
> SD_3.0_SDIO_3.0_eMMC_4.5__Host_Controller.pdf
> SD_4.1_SDIO_4.1_eMMC_4.51_Host_Controller.pdf
> SD_4.1_SDIO_4.1_eMMC_5.1__Host_Controller.pdf
>
> It seems to me the compatible string should specify
> the SD/SDIO version AND the eMMC version, since it
> seems many combinations are allowed, e.g. eMMC 4.51
> has two possible SD versions.
>
> What do you think?
>
> Regards.
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>


-- 
Best Regards
Shawn Lin


^ permalink raw reply	[flat|nested] 33+ messages in thread

* arasan,sdhci.txt "compatibility" DT binding
@ 2016-12-01  4:09                         ` Shawn Lin
  0 siblings, 0 replies; 33+ messages in thread
From: Shawn Lin @ 2016-12-01  4:09 UTC (permalink / raw)
  To: linux-arm-kernel

On 2016/11/28 23:44, Mason wrote:
> Hello,
>
> @Shawn Lin, could you take a look below and tell me exactly
> which IP core(s) Rockchip is using in its SoCs?
>

 From the Host Controller version register (0xfe)
bit[7:0]: 0x2 : specification version number is 3.00
bit[15:8]: 0x10: Vendor version number is 1.0


Command Queueing version register (0x200)
bit[11:8]: 0x5  eMMC Major version number
bit[7:4]: 0x1 eMMC manor version number
bit[3:0]: 0x0 eMMC version suffix

User guide "eMMC 5.1/SD3.0/SDIO3.0 Host Controller"
Revision number: 1.14
Released on Dec. 2014

> Based on the feedback I received, here is an updated list of
> compatible strings and controller versions dealt with by the
> drivers/mmc/host/sdhci-of-arasan.c code.
>
>
> Xilinx Zynq:
> "SD2.0 / SDIO2.0 / MMC3.31 AHB Host Controller"
> "arasan,sdhci-8.9a"
> NB: 8.9a is the documentation revision (dated 2011-10-19)
> subsequent tweaks labeled 9.0a, 9.1a, 9.2a
>
> Xilinx ZynqMP:
> "SD3.0 / SDIO3.0 / eMMC4.51 AHB Host Controller"
> "arasan,sdhci-8.9a"
> NB: using the same compatible string as Zynq
>
> Sigma SMP87xx
> "SD3.0 / SDIO3.0 / eMMC4.4 AHB Host Controller"
> no compatible string yet, platform-specific init required
>
> APM:
> "SD3.0 / SDIO3.0 / eMMC4.41 AHB Host Controller"
> "arasan,sdhci-4.9a"
> NB: 4.9a appears to be the documentation revision
> no functional diff with "arasan,sdhci-8.9a"
>
> Rockchip
> Exact IP unknown, waiting for Shawn's answer
> "arasan,sdhci-5.1"
> NB: 5.1 appears to refer to the eMMC standard supported
>
>
> On a final note, there are many variations of the Arasan IP.
> I've tracked down at least the following:
>
> SD_2.0_SDIO_2.0__MMC_3.31_AHB_Host_Controller.pdf
> SD_3.0_SDIO_3.0_eMMC_4.41_OCP_Host_Controller.pdf
> SD_3.0_SDIO_3.0_eMMC_4.4__AHB_Host_Controller.pdf
> SD_3.0_SDIO_3.0_eMMC_4.51_Host_Controller.pdf
> SD_3.0_SDIO_3.0_eMMC_4.5__Host_Controller.pdf
> SD_4.1_SDIO_4.1_eMMC_4.51_Host_Controller.pdf
> SD_4.1_SDIO_4.1_eMMC_5.1__Host_Controller.pdf
>
> It seems to me the compatible string should specify
> the SD/SDIO version AND the eMMC version, since it
> seems many combinations are allowed, e.g. eMMC 4.51
> has two possible SD versions.
>
> What do you think?
>
> Regards.
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
> the body of a message to majordomo at vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>


-- 
Best Regards
Shawn Lin

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: arasan,sdhci.txt "compatibility" DT binding
  2016-12-01  4:09                         ` Shawn Lin
@ 2016-12-01 12:29                           ` Mason
  -1 siblings, 0 replies; 33+ messages in thread
From: Mason @ 2016-12-01 12:29 UTC (permalink / raw)
  To: linux-mmc
  Cc: Mark Rutland, Ulf Hansson, Rameshwar Sahu, Suman Tripathi,
	Heiko Stuebner, Shawn Lin, Adrian Hunter, Jisheng Zhang,
	Russell King, Anton Vorontsov, Michal Simek, Soren Brinkmann,
	Linus Walleij, P L Sai Krishna, Zach Brown, Sebastian Frias,
	Arnd Bergmann, Suneel Garapati, Linux ARM, Michal Simek,
	Douglas Anderson, Maxime Ripard, Xiaobo Xie

On 01/12/2016 05:09, Shawn Lin wrote:

> On 2016/11/28 23:44, Mason wrote:
>
>> Shawn Lin, could you take a look below and tell me exactly
>> which IP core(s) Rockchip is using in its SoCs?
> 
> From the Host Controller version register (0xfe)
> bit[7:0]: 0x2 : specification version number is 3.00
> bit[15:8]: 0x10: Vendor version number is 1.0
> 
> Command Queueing version register (0x200)
> bit[11:8]: 0x5  eMMC Major version number
> bit[7:4]: 0x1 eMMC manor version number
> bit[3:0]: 0x0 eMMC version suffix
> 
> User guide "eMMC 5.1/SD3.0/SDIO3.0 Host Controller"
> Revision number: 1.14
> Released on Dec. 2014

Wow! Yet another HW revision I wasn't aware of :-)

For the record, I think the 0x200 register was introduced fairly
recently, as it's not documented in any of the user guides I have
access to.


To summarize the situation, Arasan has made (at least) the
following versions of the HW block:

  SD_2.0_SDIO_2.0__MMC_3.31_Host_Controller
  SD_3.0_SDIO_3.0_eMMC_4.4__Host_Controller
  SD_3.0_SDIO_3.0_eMMC_4.41_Host_Controller
  SD_3.0_SDIO_3.0_eMMC_4.5__Host_Controller
  SD_3.0_SDIO_3.0_eMMC_4.51_Host_Controller
  SD_3.0_SDIO_3.0_eMMC_5.1__Host Controller
  SD_4.1_SDIO_4.1_eMMC_4.51_Host_Controller
  SD_4.1_SDIO_4.1_eMMC_5.1__Host_Controller


Xilinx = "arasan,sdhci-8.9a" compat string
SD2.0 / SDIO2.0 /  MMC3.31 (in Zynq)
SD3.0 / SDIO3.0 / eMMC4.51 (in ZynqMP)
Vendor version 0x89 (Zynq, from 8.9a) and 0x10 (ZynqMP)

Sigma = no compat string yet
SD3.0 / SDIO3.0 / eMMC4.4  (in SMP87xx)
Vendor version 0x99 (not related to document revision)

APM = "arasan,sdhci-4.9a"
SD3.0 / SDIO3.0 / eMMC4.41
Vendor version unknown

Rockchip = "arasan,sdhci-5.1"
SD3.0 / SDIO3.0 / eMMC 5.1
Vendor version 0x10

Conclusion, it doesn't look like the "Vendor version" field
contains dependable information, considering the duplicate
0x10 in different HW revisions.

Regards.

^ permalink raw reply	[flat|nested] 33+ messages in thread

* arasan,sdhci.txt "compatibility" DT binding
@ 2016-12-01 12:29                           ` Mason
  0 siblings, 0 replies; 33+ messages in thread
From: Mason @ 2016-12-01 12:29 UTC (permalink / raw)
  To: linux-arm-kernel

On 01/12/2016 05:09, Shawn Lin wrote:

> On 2016/11/28 23:44, Mason wrote:
>
>> Shawn Lin, could you take a look below and tell me exactly
>> which IP core(s) Rockchip is using in its SoCs?
> 
> From the Host Controller version register (0xfe)
> bit[7:0]: 0x2 : specification version number is 3.00
> bit[15:8]: 0x10: Vendor version number is 1.0
> 
> Command Queueing version register (0x200)
> bit[11:8]: 0x5  eMMC Major version number
> bit[7:4]: 0x1 eMMC manor version number
> bit[3:0]: 0x0 eMMC version suffix
> 
> User guide "eMMC 5.1/SD3.0/SDIO3.0 Host Controller"
> Revision number: 1.14
> Released on Dec. 2014

Wow! Yet another HW revision I wasn't aware of :-)

For the record, I think the 0x200 register was introduced fairly
recently, as it's not documented in any of the user guides I have
access to.


To summarize the situation, Arasan has made (at least) the
following versions of the HW block:

  SD_2.0_SDIO_2.0__MMC_3.31_Host_Controller
  SD_3.0_SDIO_3.0_eMMC_4.4__Host_Controller
  SD_3.0_SDIO_3.0_eMMC_4.41_Host_Controller
  SD_3.0_SDIO_3.0_eMMC_4.5__Host_Controller
  SD_3.0_SDIO_3.0_eMMC_4.51_Host_Controller
  SD_3.0_SDIO_3.0_eMMC_5.1__Host Controller
  SD_4.1_SDIO_4.1_eMMC_4.51_Host_Controller
  SD_4.1_SDIO_4.1_eMMC_5.1__Host_Controller


Xilinx = "arasan,sdhci-8.9a" compat string
SD2.0 / SDIO2.0 /  MMC3.31 (in Zynq)
SD3.0 / SDIO3.0 / eMMC4.51 (in ZynqMP)
Vendor version 0x89 (Zynq, from 8.9a) and 0x10 (ZynqMP)

Sigma = no compat string yet
SD3.0 / SDIO3.0 / eMMC4.4  (in SMP87xx)
Vendor version 0x99 (not related to document revision)

APM = "arasan,sdhci-4.9a"
SD3.0 / SDIO3.0 / eMMC4.41
Vendor version unknown

Rockchip = "arasan,sdhci-5.1"
SD3.0 / SDIO3.0 / eMMC 5.1
Vendor version 0x10

Conclusion, it doesn't look like the "Vendor version" field
contains dependable information, considering the duplicate
0x10 in different HW revisions.

Regards.

^ permalink raw reply	[flat|nested] 33+ messages in thread

end of thread, other threads:[~2016-12-01 12:29 UTC | newest]

Thread overview: 33+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-02-02  9:49 arasan,sdhci.txt "compatibility" DT binding Mason
2016-02-03  2:33 ` Shawn Lin
2016-02-03  7:20   ` Michal Simek
2016-02-03  8:31     ` Mason
2016-02-03  9:58       ` Michal Simek
2016-02-03 15:21         ` Sören Brinkmann
2016-02-03 15:33           ` Mason
2016-11-18 10:37             ` Mason
2016-11-18 10:37               ` Mason
2016-11-18 10:49               ` Rameshwar Sahu
2016-11-18 10:49                 ` Rameshwar Sahu
2016-11-18 12:42                 ` Mason
2016-11-18 12:42                   ` Mason
2016-11-18 13:22                   ` Michal Simek
2016-11-18 13:22                     ` Michal Simek
2016-11-28 15:44                     ` Mason
2016-11-28 15:44                       ` Mason
2016-11-28 16:15                       ` Arnd Bergmann
2016-11-28 16:15                         ` Arnd Bergmann
2016-11-28 16:52                         ` Mason
2016-11-28 16:52                           ` Mason
2016-11-29  7:29                           ` Rameshwar Sahu
2016-11-29  7:29                             ` Rameshwar Sahu
2016-11-30 10:51                             ` Sebastian Frias
2016-11-30 10:51                               ` Sebastian Frias
2016-11-30 13:17                               ` Michal Simek
2016-11-30 13:17                                 ` Michal Simek
2016-11-28 16:23                       ` Sebastian Frias
2016-11-28 16:23                         ` Sebastian Frias
2016-12-01  4:09                       ` Shawn Lin
2016-12-01  4:09                         ` Shawn Lin
2016-12-01 12:29                         ` Mason
2016-12-01 12:29                           ` Mason

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.