[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <AANLkTimWHFak52cs7nv2DcRnaJkgi6xSXJKCJ-N5jAwD@mail.gmail.com>
Date: Mon, 21 Jun 2010 12:54:29 -0400
From: Mike Frysinger <vapier.adi@...il.com>
To: Anton Vorontsov <cbouatmailru@...il.com>
Cc: Barry Song <21cnbao@...il.com>,
"Song, Barry" <Barry.Song@...log.com>,
David Brownell <dbrownell@...rs.sourceforge.net>,
Artem Bityutskiy <dedekind1@...il.com>,
linux-kernel@...r.kernel.org, linuxppc-dev@...abs.org,
linux-mtd@...ts.infradead.org,
uclinux-dist-devel@...ckfin.uclinux.org,
Andrew Morton <akpm@...ux-foundation.org>
Subject: Re: [Uclinux-dist-devel] [PATCH 1/2] mtd: m25p80: Reworkprobing/JEDEC
code
On Mon, Jun 21, 2010 at 12:47, Anton Vorontsov wrote:
> On Mon, Jun 21, 2010 at 12:34:05PM -0400, Mike Frysinger wrote:
>> On Mon, Jun 21, 2010 at 07:20, Anton Vorontsov wrote:
>> > You can't easily change OF. It's like "let's change ACPI tables
>> > or BIOS in these PCs". Doable, but involves things like reflashing.
>> > And we usually have to support old BIOSes as well.
>> >
>> > OTOH, I see (git grep m25p arch/powerpc/boot/dts/) that in
>> > mainline kernel only MPC8569 board has a correct m25p
>> > node, and it is STMicro variant (it is JEDEC capable).
>> >
>> > As we don't really have to support out of tree code, I'd
>> > just go with this patch, assuming that we have to change
>> > device tree for boards with non-JEDEC flashes. It's
>> > effectively the same thing as platform data flag, except
>> > that it works automatically for OF platforms.
>> >
>> > diff --git a/drivers/mtd/devices/m25p80.c b/drivers/mtd/devices/m25p80.c
>> > index 81e49a9..a610ca9 100644
>> > --- a/drivers/mtd/devices/m25p80.c
>> > +++ b/drivers/mtd/devices/m25p80.c
>> > @@ -680,6 +680,16 @@ static const struct spi_device_id m25p_ids[] = {
>> > { "m25p64", INFO(0x202017, 0, 64 * 1024, 128, 0) },
>> > { "m25p128", INFO(0x202018, 0, 256 * 1024, 64, 0) },
>> >
>> > + { "m25p05-nonjedec", INFO(0, 0, 32 * 1024, 2, 0) },
>> > + { "m25p10-nonjedec", INFO(0, 0, 32 * 1024, 4, 0) },
>> > + { "m25p20-nonjedec", INFO(0, 0, 64 * 1024, 4, 0) },
>> > + { "m25p40-nonjedec", INFO(0, 0, 64 * 1024, 8, 0) },
>> > + { "m25p80-nonjedec", INFO(0, 0, 64 * 1024, 16, 0) },
>> > + { "m25p16-nonjedec", INFO(0, 0, 64 * 1024, 32, 0) },
>> > + { "m25p32-nonjedec", INFO(0, 0, 64 * 1024, 64, 0) },
>> > + { "m25p64-nonjedec", INFO(0, 0, 64 * 1024, 128, 0) },
>> > + { "m25p128-nonjedec", INFO(0, 0, 256 * 1024, 64, 0) },
>> > +
>>
>> are you picking the m25p because its flash geometry matches whatever
>> you're using, or because you have some weird variant of the m25p that
>> has JEDEC commands removed ?
>
> The latter. It's Numonyx M25Pxx flashes, see
> http://www.numonyx.com/Documents/Datasheets/M25P80.pdf
>
> The RDID instruction is available only for parts made with 110
> nm Technology identified with Process letter '4'.
lovely. i guess this patch is the way to go to satisfy everyone's
requirements. i'm also of the mindset that a mtd should not be
created if the SPI flash isnt there simply because the resources say
it might be.
-mike
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists