It is a 256KiB flash with 4 KiB erase sectors
and 64KiB overlay blocks.
This is the one available on Hardkernel's Odroid U3 shield.
Signed-off-by: Alexis Ballier <[email protected]>
---
drivers/mtd/spi-nor/spi-nor.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/mtd/spi-nor/spi-nor.c b/drivers/mtd/spi-nor/spi-nor.c
index d78831b..e521b35 100644
--- a/drivers/mtd/spi-nor/spi-nor.c
+++ b/drivers/mtd/spi-nor/spi-nor.c
@@ -636,6 +636,7 @@ static const struct spi_device_id spi_nor_ids[] = {
{ "sst25wf512", INFO(0xbf2501, 0, 64 * 1024, 1, SECT_4K | SST_WRITE) },
{ "sst25wf010", INFO(0xbf2502, 0, 64 * 1024, 2, SECT_4K | SST_WRITE) },
{ "sst25wf020", INFO(0xbf2503, 0, 64 * 1024, 4, SECT_4K | SST_WRITE) },
+ { "sst25wf020a", INFO(0x621612, 0, 64 * 1024, 4, SECT_4K) },
{ "sst25wf040", INFO(0xbf2504, 0, 64 * 1024, 8, SECT_4K | SST_WRITE) },
{ "sst25wf080", INFO(0xbf2505, 0, 64 * 1024, 16, SECT_4K | SST_WRITE) },
--
2.5.0
On Friday, August 14, 2015 at 07:35:39 PM, Alexis Ballier wrote:
> It is a 256KiB flash with 4 KiB erase sectors
> and 64KiB overlay blocks.
>
> This is the one available on Hardkernel's Odroid U3 shield.
>
> Signed-off-by: Alexis Ballier <[email protected]>
> ---
> drivers/mtd/spi-nor/spi-nor.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/mtd/spi-nor/spi-nor.c b/drivers/mtd/spi-nor/spi-nor.c
> index d78831b..e521b35 100644
> --- a/drivers/mtd/spi-nor/spi-nor.c
> +++ b/drivers/mtd/spi-nor/spi-nor.c
> @@ -636,6 +636,7 @@ static const struct spi_device_id spi_nor_ids[] = {
> { "sst25wf512", INFO(0xbf2501, 0, 64 * 1024, 1, SECT_4K | SST_WRITE)
},
> { "sst25wf010", INFO(0xbf2502, 0, 64 * 1024, 2, SECT_4K | SST_WRITE)
},
> { "sst25wf020", INFO(0xbf2503, 0, 64 * 1024, 4, SECT_4K | SST_WRITE)
},
> + { "sst25wf020a", INFO(0x621612, 0, 64 * 1024, 4, SECT_4K) },
Is the SST_WRITE not needed on this device ?
Otherwise, looks pretty obvious :)
> { "sst25wf040", INFO(0xbf2504, 0, 64 * 1024, 8, SECT_4K | SST_WRITE)
},
> { "sst25wf080", INFO(0xbf2505, 0, 64 * 1024, 16, SECT_4K | SST_WRITE)
},
Best regards,
Marek Vasut
On Fri, 14 Aug 2015 22:45:14 +0200
Marek Vasut <[email protected]> wrote:
> On Friday, August 14, 2015 at 07:35:39 PM, Alexis Ballier wrote:
> > It is a 256KiB flash with 4 KiB erase sectors
> > and 64KiB overlay blocks.
> >
> > This is the one available on Hardkernel's Odroid U3 shield.
> >
> > Signed-off-by: Alexis Ballier <[email protected]>
> > ---
> > drivers/mtd/spi-nor/spi-nor.c | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/drivers/mtd/spi-nor/spi-nor.c
> > b/drivers/mtd/spi-nor/spi-nor.c index d78831b..e521b35 100644
> > --- a/drivers/mtd/spi-nor/spi-nor.c
> > +++ b/drivers/mtd/spi-nor/spi-nor.c
> > @@ -636,6 +636,7 @@ static const struct spi_device_id spi_nor_ids[]
> > = { { "sst25wf512", INFO(0xbf2501, 0, 64 * 1024, 1, SECT_4K |
> > SST_WRITE)
> },
> > { "sst25wf010", INFO(0xbf2502, 0, 64 * 1024, 2, SECT_4K
> > | SST_WRITE)
> },
> > { "sst25wf020", INFO(0xbf2503, 0, 64 * 1024, 4, SECT_4K
> > | SST_WRITE)
> },
> > + { "sst25wf020a", INFO(0x621612, 0, 64 * 1024, 4,
> > SECT_4K) },
>
> Is the SST_WRITE not needed on this device ?
Tried that at first and it didn't work (writes were silently not
performed).
I'm no expert here, but I don't see anything about auto address
increment in the spec:
http://ww1.microchip.com/downloads/en/DeviceDoc/20005139E.pdf
and it uses the page program command (0x02).
Alexis.
[...]
On Saturday, August 15, 2015 at 10:38:59 AM, Alexis Ballier wrote:
> On Fri, 14 Aug 2015 22:45:14 +0200
>
> Marek Vasut <[email protected]> wrote:
> > On Friday, August 14, 2015 at 07:35:39 PM, Alexis Ballier wrote:
> > > It is a 256KiB flash with 4 KiB erase sectors
> > > and 64KiB overlay blocks.
> > >
> > > This is the one available on Hardkernel's Odroid U3 shield.
> > >
> > > Signed-off-by: Alexis Ballier <[email protected]>
> > > ---
> > >
> > > drivers/mtd/spi-nor/spi-nor.c | 1 +
> > > 1 file changed, 1 insertion(+)
> > >
> > > diff --git a/drivers/mtd/spi-nor/spi-nor.c
> > > b/drivers/mtd/spi-nor/spi-nor.c index d78831b..e521b35 100644
> > > --- a/drivers/mtd/spi-nor/spi-nor.c
> > > +++ b/drivers/mtd/spi-nor/spi-nor.c
> > > @@ -636,6 +636,7 @@ static const struct spi_device_id spi_nor_ids[]
> > > = { { "sst25wf512", INFO(0xbf2501, 0, 64 * 1024, 1, SECT_4K |
> > > SST_WRITE)
> >
> > },
> >
> > > { "sst25wf010", INFO(0xbf2502, 0, 64 * 1024, 2, SECT_4K
> > >
> > > | SST_WRITE)
> >
> > },
> >
> > > { "sst25wf020", INFO(0xbf2503, 0, 64 * 1024, 4, SECT_4K
> > >
> > > | SST_WRITE)
> >
> > },
> >
> > > + { "sst25wf020a", INFO(0x621612, 0, 64 * 1024, 4,
> > > SECT_4K) },
> >
> > Is the SST_WRITE not needed on this device ?
>
> Tried that at first and it didn't work (writes were silently not
> performed).
This is the worst possible behavior.
> I'm no expert here, but I don't see anything about auto address
> increment in the spec:
> http://ww1.microchip.com/downloads/en/DeviceDoc/20005139E.pdf
> and it uses the page program command (0x02).
They probably decided to start rolling out a standard SPI NOR, which is good :)
Best regards,
Marek Vasut