All of lore.kernel.org
 help / color / mirror / Atom feed
From: Huang Shijie <b32955@freescale.com>
To: <dedekind1@gmail.com>
Cc: dwmw2@infradead.org, computersforpeace@gmail.com,
	Huang Shijie <shijie8@gmail.com>,
	linux-kernel@vger.kernel.org, linux-mtd@lists.infradead.org
Subject: Re: [PATCH V3 1/3] mtd: add new fields to nand_flash_dev{}
Date: Mon, 4 Mar 2013 13:57:51 +0800	[thread overview]
Message-ID: <513437DF.2030505@freescale.com> (raw)
In-Reply-To: <1362234094.2745.9.camel@sauron>

于 2013年03月02日 22:21, Artem Bityutskiy 写道:
> On Sat, 2013-02-16 at 11:56 +0800, Huang Shijie wrote:
>> On Tue, Feb 12, 2013 at 11:47 PM, Artem Bityutskiy<dedekind1@gmail.com>  wrote:
>>> On Mon, 2013-01-28 at 12:57 +0800, Huang Shijie wrote:
>>>> +       {"SmartMedia 256MiB 3,3V",      {0, 0x71}, 512, 256, 0x4000 },
>>>> +       {"SmartMedia 256MiB 3,3V ROM",  {0, 0x5b}, 512, 256, 0x4000,
>>>> NAND_ROM},
>>> Sorry for a possibly stupid question, but what does it buy you adding
>>> another "0" to all the entries? I see you add another table, which you
>>> look up if the "traditional" table does not work. Why you need to add
>>> these zeroes?
>> The zeros are for the maf_id.
>>
>> The dev_id is the second byte of the 8-byte id data.
> It does not really make me understand why we add these zeroes, they
> still look useless to me... Would you please be a little more verbose
> about your solution?
>
the 8bytes id data read out by the READ ID command is in the following 
order:
    byte 0(Maker id): such as 0x98 stands for Toshiba, 0xec stands for 
Samsung.
    byte 1(device id):
    byte 2(used to store the chip number,cell type information):
    byte 3(used to store the page size, block size information)
    byte 4(used to store the Plane information).
    ........................


The current code uses the @id to store the device id(byte 1).
But if we use the 8 bytes id data as the keyword, and expand the @id 
field to 8byte array,
the device id is the second byte now. All the added zeros are for the 
Maker id.
For example,
     {"SmartMedia 256MiB 3,3V",      {0, 0x71}, 512, 256, 0x4000 },

We really do not use the zeros. All the zeros are added for avoiding the 
misunderstanding.
If we do not add the zero, it will looks like:

      {"SmartMedia 256MiB 3,3V",      {0x71}, 512, 256, 0x4000 },

The device id (0x71) becomes the first byte of 8byte id array, people will treat the 0x71 as the Maker code.


thanks
Huang Shijie

WARNING: multiple messages have this Message-ID (diff)
From: Huang Shijie <b32955@freescale.com>
To: <dedekind1@gmail.com>
Cc: Huang Shijie <shijie8@gmail.com>, <dwmw2@infradead.org>,
	<computersforpeace@gmail.com>, <linux-mtd@lists.infradead.org>,
	<linux-kernel@vger.kernel.org>
Subject: Re: [PATCH V3 1/3] mtd: add new fields to nand_flash_dev{}
Date: Mon, 4 Mar 2013 13:57:51 +0800	[thread overview]
Message-ID: <513437DF.2030505@freescale.com> (raw)
In-Reply-To: <1362234094.2745.9.camel@sauron>

于 2013年03月02日 22:21, Artem Bityutskiy 写道:
> On Sat, 2013-02-16 at 11:56 +0800, Huang Shijie wrote:
>> On Tue, Feb 12, 2013 at 11:47 PM, Artem Bityutskiy<dedekind1@gmail.com>  wrote:
>>> On Mon, 2013-01-28 at 12:57 +0800, Huang Shijie wrote:
>>>> +       {"SmartMedia 256MiB 3,3V",      {0, 0x71}, 512, 256, 0x4000 },
>>>> +       {"SmartMedia 256MiB 3,3V ROM",  {0, 0x5b}, 512, 256, 0x4000,
>>>> NAND_ROM},
>>> Sorry for a possibly stupid question, but what does it buy you adding
>>> another "0" to all the entries? I see you add another table, which you
>>> look up if the "traditional" table does not work. Why you need to add
>>> these zeroes?
>> The zeros are for the maf_id.
>>
>> The dev_id is the second byte of the 8-byte id data.
> It does not really make me understand why we add these zeroes, they
> still look useless to me... Would you please be a little more verbose
> about your solution?
>
the 8bytes id data read out by the READ ID command is in the following 
order:
    byte 0(Maker id): such as 0x98 stands for Toshiba, 0xec stands for 
Samsung.
    byte 1(device id):
    byte 2(used to store the chip number,cell type information):
    byte 3(used to store the page size, block size information)
    byte 4(used to store the Plane information).
    ........................


The current code uses the @id to store the device id(byte 1).
But if we use the 8 bytes id data as the keyword, and expand the @id 
field to 8byte array,
the device id is the second byte now. All the added zeros are for the 
Maker id.
For example,
     {"SmartMedia 256MiB 3,3V",      {0, 0x71}, 512, 256, 0x4000 },

We really do not use the zeros. All the zeros are added for avoiding the 
misunderstanding.
If we do not add the zero, it will looks like:

      {"SmartMedia 256MiB 3,3V",      {0x71}, 512, 256, 0x4000 },

The device id (0x71) becomes the first byte of 8byte id array, people will treat the 0x71 as the Maker code.


thanks
Huang Shijie



  reply	other threads:[~2013-03-04  5:57 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-01-28  4:57 [PATCH V3 0/3] mtd: use the full-id as the keyword Huang Shijie
2013-01-28  4:57 ` Huang Shijie
2013-01-28  4:57 ` [PATCH V3 1/3] mtd: add new fields to nand_flash_dev{} Huang Shijie
2013-01-28  4:57   ` Huang Shijie
2013-02-12 15:47   ` Artem Bityutskiy
2013-02-12 15:47     ` Artem Bityutskiy
2013-02-16  3:56     ` Huang Shijie
2013-02-16  3:56       ` Huang Shijie
2013-03-02 14:21       ` Artem Bityutskiy
2013-03-02 14:21         ` Artem Bityutskiy
2013-03-04  5:57         ` Huang Shijie [this message]
2013-03-04  5:57           ` Huang Shijie
2013-03-04  7:50           ` Artem Bityutskiy
2013-03-04  7:50             ` Artem Bityutskiy
2013-03-04  8:08             ` Huang Shijie
2013-03-04  8:08               ` Huang Shijie
2013-03-04  8:24               ` Artem Bityutskiy
2013-03-04  8:24                 ` Artem Bityutskiy
2013-03-04  8:40                 ` Huang Shijie
2013-03-04  8:40                   ` Huang Shijie
2013-03-04  8:46                   ` Artem Bityutskiy
2013-03-04  8:46                     ` Artem Bityutskiy
2013-03-04  8:59                     ` Huang Shijie
2013-03-04  8:59                       ` Huang Shijie
2013-03-04 19:27                       ` Brian Norris
2013-03-04 19:27                         ` Brian Norris
2013-08-08 18:38                       ` Brian Norris
2013-08-08 18:38                         ` Brian Norris
2013-03-04  8:37               ` Artem Bityutskiy
2013-03-04  8:37                 ` Artem Bityutskiy
2013-03-04  8:57                 ` Huang Shijie
2013-03-04  8:57                   ` Huang Shijie
2013-02-28  8:25     ` Huang Shijie
2013-02-28  8:25       ` Huang Shijie
2013-03-02 14:19   ` Artem Bityutskiy
2013-03-02 14:19     ` Artem Bityutskiy
2013-03-04  3:06     ` Huang Shijie
2013-03-04  3:06       ` Huang Shijie
2013-01-28  4:57 ` [PATCH V3 2/3] mtd: add a new table for the unparsable nand chips Huang Shijie
2013-01-28  4:57   ` Huang Shijie
2013-01-28  4:57 ` [PATCH V3 3/3] mtd: add the new detection method " Huang Shijie
2013-01-28  4:57   ` Huang Shijie

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=513437DF.2030505@freescale.com \
    --to=b32955@freescale.com \
    --cc=computersforpeace@gmail.com \
    --cc=dedekind1@gmail.com \
    --cc=dwmw2@infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mtd@lists.infradead.org \
    --cc=shijie8@gmail.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 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.