From: Robert Jarzmik <robert.jarzmik@free.fr>
To: Mark Rutland <mark.rutland@arm.com>
Cc: "devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
"linux-mtd@lists.infradead.org" <linux-mtd@lists.infradead.org>
Subject: Re: [PATCH v1 2/2] mtd: docg3: add device-tree documentation
Date: Fri, 26 Sep 2014 20:12:03 +0200 [thread overview]
Message-ID: <87d2aip7yk.fsf@free.fr> (raw)
In-Reply-To: <20140926175013.GL7422@leverpostej> (Mark Rutland's message of "Fri, 26 Sep 2014 18:50:13 +0100")
Mark Rutland <mark.rutland@arm.com> writes:
> Ok, so I'd label those devices with an M-Systems vendor prefix
> ("m-systems", I guess, if we don't already have one).
OK. We don't have it, so I'll add that patch for review too (I have submitted
one for sandisk, should have been m-systems ...)
>
>> - M-Systems is bought and absorbed by Sandisk
>
> For the devices sold during this time where nothing has changed other
> than the label, I'd keep the M-Systems vendor.
OK.
>
>> - Sandisk creates and ships other diskonchip, under sandisk brand
>
> These new devices I would label with a sandisk vendor-prefix.
OK.
>
>> Now I'll put in the compat whatever you advice for, I have no opinion on
>> that. I'm telling you this because I have another patch to submit for a camera
>> sensor made by Aptina. Aptina was absorbed by Micron, and the sensor was
>> released under Aptina/Micron brand (ie. Aptina team in Micron corp. if I
>> understood correctly).
>>
>> Therefore, I'll take your advice for both sandisk/msystems and aptina/micron :)
>
> I'd label something as the original brand it shipped under, unless
> there's a compelling reason not to. We can add notes in the binding
> documentation to make the bindings easier to find where a device has
> been labelled by different manufacturers.
OK.
>
>> > Are we able to detect the particular variant by reading registers on the
>> > device? Are there any differences that we can probe dynamically (even if
>> > we don't care about those at the moment)?
>>
>> Yes, what defines a docg3 is :
>> - a device mapped at address 0
>> - a read of the chip id gives DOC_CHIPID_G3
>>
>> But there is a catch : the read is not a simple memory read, it's a write to a
>> register to set the "register to read", then a read in the iospace. Doing this
>> implies you know you are in the iospace of a docg3 ...
>
> I was more concerned with the identifying information that we can
> acquire from the device than the precise sequence of steps that have to
> be performed to extract that information.
>
> You mention that the size of the flash is variable (it could be 64MB,
> 256MB, etc), but this isn't described in the binding. Therefore I assume
> there is some mechanism by which I can query this from the device?
Ah you know what, you made me understand something in here.
As there is no spec of this device, I had created the driver by observing its
behaviour under another OS on a single chip, a 512 Mbits (ie. 64MBi) one.
I had assumed that the identification string, "0x200" (ie. DOC_CHIPID_G3) was
the identifier of a G3 chip. But you opened my eyes in here : it's the size of
the docg3 !
So your answer is :
- a docg3 cannot be identified (from another diskonchip)
- the variant of the docg3, ie. its size, can be identified (even if that
doesn't change anything from a device-tree perspective). It's just something
the driver should take into account.
- I'm not aware of any other kind of variations nor any way to query them
> Are there other parameters that vary across instances? Even those for
> which we currently don't care? If so, can these be queried from the
> device?
Ah, no spec, no answer I'm afraid.
There might be variations in the ECC algorith, block size, etc ... but still no
spec.
I'm pretty sure the device has an interrupt line, and a requestor line for a DMA
most probably. No clue but heavy presomptions.
> No, the unit-address is the bit after the '@' on the node name. I'm
> asking for:
>
> docg3: flash@0 {
> ...
> reg = <0x0 0x2000>;
> ...
> };
Ah ok, I'll put that in v2.
Cheers.
--
Robert
prev parent reply other threads:[~2014-09-26 18:12 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-25 22:33 [PATCH v1 1/2] mtd: docg3: add device-tree support Robert Jarzmik
2014-09-25 22:33 ` [PATCH v1 2/2] mtd: docg3: add device-tree documentation Robert Jarzmik
2014-09-26 11:05 ` Mark Rutland
2014-09-26 17:19 ` Robert Jarzmik
2014-09-26 17:50 ` Mark Rutland
2014-09-26 18:12 ` Robert Jarzmik [this message]
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=87d2aip7yk.fsf@free.fr \
--to=robert.jarzmik@free.fr \
--cc=devicetree@vger.kernel.org \
--cc=linux-mtd@lists.infradead.org \
--cc=mark.rutland@arm.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).