From: Alexey Brodkin <Alexey.Brodkin@synopsys.com>
To: "marex@denx.de" <marex@denx.de>,
"vladimir_zapolskiy@mentor.com" <vladimir_zapolskiy@mentor.com>
Cc: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"jh80.chung@samsung.com" <jh80.chung@samsung.com>,
"linux-mmc@vger.kernel.org" <linux-mmc@vger.kernel.org>,
"robh+dt@kernel.org" <robh+dt@kernel.org>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>
Subject: Re: ARC dw-mshc binding compat string
Date: Mon, 28 Mar 2016 09:37:00 +0000 [thread overview]
Message-ID: <1459157818.4785.5.camel@synopsys.com> (raw)
In-Reply-To: <56F6EFFD.9070007@denx.de>
Hi Marek, Vladimir,
On Sat, 2016-03-26 at 21:24 +0100, Marek Vasut wrote:
> On 03/26/2016 09:12 PM, Vladimir Zapolskiy wrote:
> >
> > On 26.03.2016 21:52, Marek Vasut wrote:
> > >
> > > On 03/26/2016 07:16 PM, Vladimir Zapolskiy wrote:
> > > >
> > > > On 26.03.2016 20:10, Marek Vasut wrote:
> > > > >
> > > > > On 03/26/2016 06:52 PM, Vladimir Zapolskiy wrote:
> > > > > >
> > > > > > Hi Marek,
> > > > > >
> > > > > > On 26.03.2016 19:30, Marek Vasut wrote:
> > > > > > >
> > > > > > > On 03/26/2016 06:26 PM, Vladimir Zapolskiy wrote:
> > > > > > > >
> > > > > > > > On 26.03.2016 12:14, Marek Vasut wrote:
> > > > > > > > >
> > > > > > > > > Hi!
> > > > > > > > >
> > > > > > > > > I noticed that arch/arc/boot/dts/axs10x_mb.dtsi uses "altr," prefix in
> > > > > > > > > the DT compatible string:
> > > > > > > > >
> > > > > > > > > mmc@0x15000 {
> > > > > > > > > compatible = "altr,socfpga-dw-mshc";
> > > > > > > > > reg = < 0x15000 0x400 >;
> > > > > > > > > num-slots = < 1 >;
> > > > > > > > > fifo-depth = < 16 >;
> > > > > > > > > card-detect-delay = < 200 >;
> > > > > > > > > clocks = <&apbclk>, <&mmcclk>;
> > > > > > > > > clock-names = "biu", "ciu";
> > > > > > > > > interrupts = < 7 >;
> > > > > > > > > bus-width = < 4 >;
> > > > > > > > > };
> > > > > > > > >
> > > > > > > > > I don't think this is OK, since ARC is unrelated to Altera, which is
> > > > > > > > > what the "altr," prefix stands for. I think the socfpga-dw-mshc shim
> > > > > > > > > should be extended with another compatibility string, something like
> > > > > > > > > "snps,arc-dw-mshc" and the axs10x_mb.dtsi should be adjusted
> > > > > > > > > accordingly. What do you think ?
> > > > > > > > >
> > > > > > > > There is "snps,dw-mshc" described in
> > > > > > > > Documentation/devicetree/bindings/mmc/synopsys-dw-mshc.txt and supported by
> > > > > > > > dw_mmc host controller driver.
> > > > > > > Thanks, that's even better.
> > > > > > >
> > > > > > > btw what do you think of using altr, prefix on non-altera system, that
> > > > > > > doesn't seem ok, right ?
> > > > > > according to ePAPR the prefix should represent a device (IP block here
> > > > > > I believe) manufacturer, so it should be okay to use "altr" prefix on
> > > > > > non-Altera system, if Altera provides another hardware vendor with
> > > > > > some own IP block.
> > > > > In this case, it's Synopsys who provides the SD/MMC/MS core to other
> > > > > chip makers (Altera etc).
> > > > Correct.
> > > >
> > > > >
> > > > > >
> > > > > > That said, I would rather prefer to see "snps,dw-mshc" prefix on description
> > > > > > of an MMC controller found on SoCFPGA series, "altr,socfpga-dw-mshc" seems
> > > > > > to be redundant.
> > > > > According to drivers/mmc/host/dw_mmc-pltfm.c , the Altera SoCFPGA one
> > > > > "altr,socfpga-dw-mshc" and also Imagination Technology Pistacio one
> > > > > "img,pistachio-dw-mshc" need specialty bit (SDMMC_CMD_USE_HOLD_REG),
> > > > > while the stock one "snps,dw-mshc" does not. I am not sure if the ARC
> > > > > one needs it as well, but most likely yes.
> > > > >
> > > > > I wonder if that bit is needed on some particular version of the DWMMC
> > > > > core. In that case, should we have "snps,dw-mshc" and "snps,dw-mshc-vN"
> > > > > binding ? Or should we use DT property to discern the need for this bit ?
> > > > >
> > > > That's the most common way to take into account peculiarities, add
> > > > a property and handle it from the driver.
> > > And by "that" you mean which of those two I listed , the
> > > "snps,dw-mshc-vN" or adding new DT prop ?
> > >
> > I meant to add a new property, not a new compatible, but that's just
> > my experience.
> >
> > Let me say it __might__ happen that a particular change you need is
> > specific to a particular version of the DWMMC IP (query Synopsys
> > by the way), but more probably it might be e.g. the same IP version with
> > a different reduced or extended configuration or a minor fix/improvement
> > to the IP block without resulting version number bump.
> >
> > For example I don't remember that errata fixes in IP blocks result in
> > a new compatible, instead there are quite common optional "quirk"
> > properties for broken IPs -- e.g. check bindings/usb/dwc3.txt :)
> Right, this very much matches how I see it as well. Thanks for confirming.
>
> Alexey, can you tell us if the requirement for setting
> SDMMC_CMD_USE_HOLD_REG came with some new revision of the core or
> disappeared with some revision OR if this is some configuration
> option of the core during synthesis ?
Sorry for not following that discussion during my weekend but I'll try
to address all questions now.
DW Mobile Storage databook says:
--------------------->8-----------------------
To meet the relatively high Input Hold Time requirement for SDR12, SDR25,
and other MMC speed modes, you should program bit[29]use_hold_Reg of the
CMD register to 1'b1.
--------------------->8-----------------------
So I'd say this specific setting has nothing to do with a particular IP block
but instead it is related to card's mode of operation. More precisely bus clock.
SDR12 stands for 12.5 MByte/s, SDR25 stands for 25 MByte/s. I.e. we probably need
so set that bit just for certain cases and regardless board that uses DW MMC.
I'm adding DW MMC maintainer as well as linux-mmc mailing list so people who
understands that stuff better may comment here as well.
-Alexey
next prev parent reply other threads:[~2016-03-28 9:37 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-26 10:14 ARC dw-mshc binding compat string Marek Vasut
2016-03-26 17:26 ` Vladimir Zapolskiy
[not found] ` <56F6C639.5000301-nmGgyN9QBj3QT0dZR+AlfA@public.gmane.org>
2016-03-26 17:30 ` Marek Vasut
2016-03-26 17:46 ` Alexey Brodkin
2016-03-26 17:52 ` Vladimir Zapolskiy
[not found] ` <56F6CC68.5040408-nmGgyN9QBj3QT0dZR+AlfA@public.gmane.org>
2016-03-26 18:10 ` Marek Vasut
2016-03-26 18:16 ` Vladimir Zapolskiy
[not found] ` <56F6D1E9.3050606-nmGgyN9QBj3QT0dZR+AlfA@public.gmane.org>
2016-03-26 19:52 ` Marek Vasut
[not found] ` <56F6E860.8070207-ynQEQJNshbs@public.gmane.org>
2016-03-26 20:12 ` Vladimir Zapolskiy
[not found] ` <56F6ED41.5020908-nmGgyN9QBj3QT0dZR+AlfA@public.gmane.org>
2016-03-26 20:24 ` Marek Vasut
2016-03-28 9:37 ` Alexey Brodkin [this message]
[not found] ` <1459157818.4785.5.camel-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>
2016-03-28 10:34 ` Jaehoon Chung
2016-03-28 10:55 ` Alexey Brodkin
2016-03-28 11:44 ` Jaehoon Chung
2016-03-28 12:43 ` Rob Herring
2016-03-28 12:52 ` Marek Vasut
2016-03-28 12:50 ` Marek Vasut
2016-03-28 16:16 ` Vladimir Zapolskiy
2016-03-28 19:00 ` Rob Herring
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1459157818.4785.5.camel@synopsys.com \
--to=alexey.brodkin@synopsys.com \
--cc=devicetree@vger.kernel.org \
--cc=jh80.chung@samsung.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mmc@vger.kernel.org \
--cc=marex@denx.de \
--cc=robh+dt@kernel.org \
--cc=vladimir_zapolskiy@mentor.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).