linux-mtd.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
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

      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).