<feed xmlns='http://www.w3.org/2005/Atom'>
<title>u-boot.git/drivers/mtd, branch v2015.04</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/'/>
<entry>
<title>lpc32xx: mtd: nand: add MLC NAND controller</title>
<updated>2015-04-10T12:22:56+00:00</updated>
<author>
<name>Albert ARIBAUD \(3ADEV\)</name>
<email>albert.aribaud@3adev.fr</email>
</author>
<published>2015-03-31T09:40:44+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=c8381bf435ddb104594df00411a8ebd049dd753c'/>
<id>c8381bf435ddb104594df00411a8ebd049dd753c</id>
<content type='text'>
The controller's Reed-Solomon ECC hardware is
used except of course for raw reads and writes.
It covers in- and out-of-band data together.

The SPL framework is supported.

Signed-off-by: Albert ARIBAUD (3ADEV) &lt;albert.aribaud@3adev.fr&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The controller's Reed-Solomon ECC hardware is
used except of course for raw reads and writes.
It covers in- and out-of-band data together.

The SPL framework is supported.

Signed-off-by: Albert ARIBAUD (3ADEV) &lt;albert.aribaud@3adev.fr&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'master' of git://git.denx.de/u-boot-atmel</title>
<updated>2015-03-31T23:15:59+00:00</updated>
<author>
<name>Tom Rini</name>
<email>trini@konsulko.com</email>
</author>
<published>2015-03-31T23:15:59+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=10697704ca579850b0edc0e772671c32586d76ee'/>
<id>10697704ca579850b0edc0e772671c32586d76ee</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>ARM: at91: atmel_nand: Support flash based BBT</title>
<updated>2015-03-31T23:04:28+00:00</updated>
<author>
<name>David Dueck</name>
<email>davidcdueck@googlemail.com</email>
</author>
<published>2015-03-20T09:52:49+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=da78fb541494ac778a0fe66cc02e2fea33e228d9'/>
<id>da78fb541494ac778a0fe66cc02e2fea33e228d9</id>
<content type='text'>
Add support for on-flash bad block table. This makes U-Boot handle an existing
BBT correctly.

Signed-off-by: David Dueck &lt;davidcdueck@googlemail.com&gt;
Reviewed-by: Boris BREZILLON &lt;boris.brezillon@free-electrons.com&gt;
CC: Boris BREZILLON &lt;boris.brezillon@free-electrons.com&gt;
CC: Josh Wu &lt;josh.wu@atmel.com&gt;
CC: Andreas Bießmann &lt;andreas.devel@googlemail.com&gt;
CC: Scott Wood &lt;scottwood@freescale.com&gt;
Acked-by: Josh Wu &lt;josh.wu@atmel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add support for on-flash bad block table. This makes U-Boot handle an existing
BBT correctly.

Signed-off-by: David Dueck &lt;davidcdueck@googlemail.com&gt;
Reviewed-by: Boris BREZILLON &lt;boris.brezillon@free-electrons.com&gt;
CC: Boris BREZILLON &lt;boris.brezillon@free-electrons.com&gt;
CC: Josh Wu &lt;josh.wu@atmel.com&gt;
CC: Andreas Bießmann &lt;andreas.devel@googlemail.com&gt;
CC: Scott Wood &lt;scottwood@freescale.com&gt;
Acked-by: Josh Wu &lt;josh.wu@atmel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mtd: vf610_nfc: specify transfer size before each transfer</title>
<updated>2015-03-31T04:35:27+00:00</updated>
<author>
<name>Stefan Agner</name>
<email>stefan@agner.ch</email>
</author>
<published>2015-03-24T16:54:20+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=55765b1842e7dcf22efa8d973c7d1b7498dd99fa'/>
<id>55765b1842e7dcf22efa8d973c7d1b7498dd99fa</id>
<content type='text'>
Testing showed, that commands like STATUS made the buffer dirty
when executed with NFC_SECSZ set to the page size. It looks
like the controller transfers bogus data when this register
is configured. When setting it to 0, the buffer does not get
altered while the status command still seems to work flawless.

Signed-off-by: Stefan Agner &lt;stefan@agner.ch&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Testing showed, that commands like STATUS made the buffer dirty
when executed with NFC_SECSZ set to the page size. It looks
like the controller transfers bogus data when this register
is configured. When setting it to 0, the buffer does not get
altered while the status command still seems to work flawless.

Signed-off-by: Stefan Agner &lt;stefan@agner.ch&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mtd: vf610_nfc: mark page as dirty on block erase</title>
<updated>2015-03-31T04:33:42+00:00</updated>
<author>
<name>Stefan Agner</name>
<email>stefan@agner.ch</email>
</author>
<published>2015-03-24T16:54:19+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=7653fc288a964ce5bb0cff9176444260731d0f90'/>
<id>7653fc288a964ce5bb0cff9176444260731d0f90</id>
<content type='text'>
The driver tries to re-use the page buffer by storing the page
number of the current page in the buffer. The page is only read
if the requested page number is not currently in the buffer. When
a block is erased, the page number is marked as invalid if the
erased page equals the one currently in the cache. However, since
a erase block consists of multiple pages, also other page numbers
could be affected.

The commands to reproduce this issue (on a written page):
&gt; nand dump 0x800
&gt; nand erase 0x0 0x20000
&gt; nand dump 0x800

The second nand dump command returns the data from the buffer,
while in fact the page is erased (0xff).

Avoid the hassle to calculate whether the page is affected or not,
but set the page buffer unconditionally to invalid instead.

Signed-off-by: Stefan Agner &lt;stefan@agner.ch&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The driver tries to re-use the page buffer by storing the page
number of the current page in the buffer. The page is only read
if the requested page number is not currently in the buffer. When
a block is erased, the page number is marked as invalid if the
erased page equals the one currently in the cache. However, since
a erase block consists of multiple pages, also other page numbers
could be affected.

The commands to reproduce this issue (on a written page):
&gt; nand dump 0x800
&gt; nand erase 0x0 0x20000
&gt; nand dump 0x800

The second nand dump command returns the data from the buffer,
while in fact the page is erased (0xff).

Avoid the hassle to calculate whether the page is affected or not,
but set the page buffer unconditionally to invalid instead.

Signed-off-by: Stefan Agner &lt;stefan@agner.ch&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>nand: yaffs: Remove the "nand write.yaffs" command</title>
<updated>2015-03-31T04:24:39+00:00</updated>
<author>
<name>Peter Tyser</name>
<email>ptyser@xes-inc.com</email>
</author>
<published>2015-02-03T17:58:16+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=004a1fdb45fb06ee2faf6e50945ceb79d43a2f41'/>
<id>004a1fdb45fb06ee2faf6e50945ceb79d43a2f41</id>
<content type='text'>
This command is only enabled by one board, complicates the NAND code,
and doesn't appear to have been functioning properly for several
years.  If there are no bad blocks in the NAND region being written
nand_write_skip_bad() will take the shortcut of calling nand_write()
which bypasses the special yaffs handling.  This causes invalid YAFFS
data to be written. See
http://lists.denx.de/pipermail/u-boot/2011-September/102830.html for
an example and a potential workaround.

U-Boot still retains the ability to mount and access YAFFS partitions
via CONFIG_YAFFS2.

Signed-off-by: Peter Tyser &lt;ptyser@xes-inc.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This command is only enabled by one board, complicates the NAND code,
and doesn't appear to have been functioning properly for several
years.  If there are no bad blocks in the NAND region being written
nand_write_skip_bad() will take the shortcut of calling nand_write()
which bypasses the special yaffs handling.  This causes invalid YAFFS
data to be written. See
http://lists.denx.de/pipermail/u-boot/2011-September/102830.html for
an example and a potential workaround.

U-Boot still retains the ability to mount and access YAFFS partitions
via CONFIG_YAFFS2.

Signed-off-by: Peter Tyser &lt;ptyser@xes-inc.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>nand: Remove CONFIG_MTD_NAND_VERIFY_WRITE</title>
<updated>2015-03-31T04:24:39+00:00</updated>
<author>
<name>Peter Tyser</name>
<email>ptyser@xes-inc.com</email>
</author>
<published>2015-02-03T17:58:15+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=073adf987e8251ad934fcac4fd1bf20d4f34f96e'/>
<id>073adf987e8251ad934fcac4fd1bf20d4f34f96e</id>
<content type='text'>
The CONFIG_MTD_NAND_VERIFY_WRITE has been removed from Linux for some
time and a more generic method of NAND verification now exists in U-Boot.

Signed-off-by: Peter Tyser &lt;ptyser@xes-inc.com&gt;
Tested-by: Heiko Schocher &lt;hs@denx.de&gt;
Acked-by: Heiko Schocher &lt;hs@denx.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The CONFIG_MTD_NAND_VERIFY_WRITE has been removed from Linux for some
time and a more generic method of NAND verification now exists in U-Boot.

Signed-off-by: Peter Tyser &lt;ptyser@xes-inc.com&gt;
Tested-by: Heiko Schocher &lt;hs@denx.de&gt;
Acked-by: Heiko Schocher &lt;hs@denx.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>nand: Add verification functions</title>
<updated>2015-03-31T04:24:38+00:00</updated>
<author>
<name>Peter Tyser</name>
<email>ptyser@xes-inc.com</email>
</author>
<published>2015-02-03T17:58:12+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=59b5a2ad83dfefae75011a839e94d4880ff02933'/>
<id>59b5a2ad83dfefae75011a839e94d4880ff02933</id>
<content type='text'>
Add nand_verify() and nand_verify_page_oob().  nand_verify() verifies
NAND contents against an arbitrarily sized buffer using ECC while
nand_verify_page_oob() verifies a NAND page's contents and OOB.

Signed-off-by: Peter Tyser &lt;ptyser@xes-inc.com&gt;
Tested-by: Heiko Schocher &lt;hs@denx.de&gt;
Acked-by: Heiko Schocher &lt;hs@denx.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add nand_verify() and nand_verify_page_oob().  nand_verify() verifies
NAND contents against an arbitrarily sized buffer using ECC while
nand_verify_page_oob() verifies a NAND page's contents and OOB.

Signed-off-by: Peter Tyser &lt;ptyser@xes-inc.com&gt;
Tested-by: Heiko Schocher &lt;hs@denx.de&gt;
Acked-by: Heiko Schocher &lt;hs@denx.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mtd: nand: mxs: fix PIO_WORDs in mxs_nand_write_buf()</title>
<updated>2015-03-31T03:25:54+00:00</updated>
<author>
<name>Luca Ellero</name>
<email>luca.ellero@brickedbrain.com</email>
</author>
<published>2014-12-16T14:36:15+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=88a2cbb2aeb34c7c91f7cd30b59066368063bd07'/>
<id>88a2cbb2aeb34c7c91f7cd30b59066368063bd07</id>
<content type='text'>
There is only one pio_word in this DMA transaction so data field must be 1.

Signed-off-by: Luca Ellero &lt;luca.ellero@brickedbrain.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
There is only one pio_word in this DMA transaction so data field must be 1.

Signed-off-by: Luca Ellero &lt;luca.ellero@brickedbrain.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mtd: nand: mxs: fix PIO_WORDs in mxs_nand_read_buf()</title>
<updated>2015-03-31T03:25:47+00:00</updated>
<author>
<name>Luca Ellero</name>
<email>luca.ellero@brickedbrain.com</email>
</author>
<published>2014-12-16T14:36:14+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=5263a02e8b5034dfe962ed2ce9892a617bac8583'/>
<id>5263a02e8b5034dfe962ed2ce9892a617bac8583</id>
<content type='text'>
There is only one pio_word in this DMA transaction so data field must be 1.

Signed-off-by: Luca Ellero &lt;luca.ellero@brickedbrain.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
There is only one pio_word in this DMA transaction so data field must be 1.

Signed-off-by: Luca Ellero &lt;luca.ellero@brickedbrain.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
