<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/mtd, branch v3.14.14</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers/mtd?h=v3.14.14</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers/mtd?h=v3.14.14'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2014-07-28T15:06:03Z</updated>
<entry>
<title>mtd: devices: elm: fix elm_context_save() and elm_context_restore() functions</title>
<updated>2014-07-28T15:06:03Z</updated>
<author>
<name>Ted Juan</name>
<email>ted.juan@gmail.com</email>
</author>
<published>2014-06-20T09:32:05Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=f4a407b32de430e751a24e8d579af36ac74d99b3'/>
<id>urn:sha1:f4a407b32de430e751a24e8d579af36ac74d99b3</id>
<content type='text'>
commit 6938ad40cb97a52d88a763008935340729a4acc7 upstream.

These two function's switch case lack the 'break' that make them always
return error.

Signed-off-by: Ted Juan &lt;ted.juan@gmail.com&gt;
Acked-by: Pekon Gupta &lt;pekon@ti.com&gt;
Signed-off-by: Brian Norris &lt;computersforpeace@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>mtd: pxa3xx_nand: make the driver work on big-endian systems</title>
<updated>2014-07-09T18:18:24Z</updated>
<author>
<name>Thomas Petazzoni</name>
<email>thomas.petazzoni@free-electrons.com</email>
</author>
<published>2014-05-22T12:56:52Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=8b1666574453b5758688c81ae52bb77ec789545f'/>
<id>urn:sha1:8b1666574453b5758688c81ae52bb77ec789545f</id>
<content type='text'>
commit b7e460624f0f3c31150f3b09e75b0d009e22ba5f upstream.

The pxa3xx_nand driver currently uses __raw_writel() and __raw_readl()
to access I/O registers. However, those functions do not do any
endianness swapping, which means that they won't work when the CPU
runs in big-endian but the I/O registers are little endian, which is
the common situation for ARM systems running big endian.

Since __raw_writel() and __raw_readl() do not include any memory
barriers and the pxa3xx_nand driver can only be compiled for ARM
platforms, the closest I/o accessors functions that do endianess
swapping are writel_relaxed() and readl_relaxed().

This patch has been verified to work on Armada XP GP: without the
patch, the NAND is not detected when the kernel runs big endian while
it is properly detected when the kernel runs little endian. With the
patch applied, the NAND is properly detected in both situations
(little and big endian).

Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
Signed-off-by: Brian Norris &lt;computersforpeace@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>mtd: nand: omap: fix BCHx ecc.correct to return detected bit-flips in erased-page</title>
<updated>2014-07-09T18:18:24Z</updated>
<author>
<name>pekon gupta</name>
<email>pekon@ti.com</email>
</author>
<published>2014-03-20T13:19:58Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=d2c672058a57e1640205a2afe04fecff75161e56'/>
<id>urn:sha1:d2c672058a57e1640205a2afe04fecff75161e56</id>
<content type='text'>
commit f306e8c3b667632952f1a4a74ffb910bbc06255f upstream.

fixes: commit 62116e5171e00f85a8d53f76e45b84423c89ff34
       mtd: nand: omap2: Support for hardware BCH error correction.

In omap_elm_correct_data(), if bitflip_count in an erased-page is within the
correctable limit (&lt; ecc.strength), then it is not indicated back to the caller
ecc-&gt;read_page().

This mis-guides upper layers like MTD and UBIFS layer to assume erased-page as
perfectly clean and use it for writing even if actual bitflip_count was
dangerously high (bitflip_count &gt; mtd-&gt;bitflip_threshold).

This patch fixes this above issue, by returning 'stats' to caller
ecc-&gt;read_page() under all scenarios.

Reported-by: Brian Norris &lt;computersforpeace@gmail.com&gt;
Signed-off-by: Pekon Gupta &lt;pekon@ti.com&gt;
Signed-off-by: Brian Norris &lt;computersforpeace@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>mtd: eLBC NAND: fix subpage write support</title>
<updated>2014-07-09T18:18:24Z</updated>
<author>
<name>Pekon Gupta</name>
<email>pekon@ti.com</email>
</author>
<published>2014-05-06T04:11:32Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=fb4b756348079c378874d232f0f3664be6551aeb'/>
<id>urn:sha1:fb4b756348079c378874d232f0f3664be6551aeb</id>
<content type='text'>
commit f034d87def51f026b735d1e2877e9387011b2ba3 upstream.

As subpage write is enabled by default for all drivers, nand_write_subpage_hwecc
causes a crash if the driver did not register ecc-&gt;hwctl or ecc-&gt;calculate.
This behavior was introduced in
   commit 837a6ba4f3b6d23026674e6af6b6849a4634fff9
   "mtd: nand: subpage write support for hardware based ECC schemes".

This fixes a crash by emulating subpage write support by padding sub-page data
with 0xff on either sides to make it full page compatible.

Reported-by: Helmut Schaa &lt;helmut.schaa@googlemail.com&gt;
Tested-by: Helmut Schaa &lt;helmut.schaa@googlemail.com&gt;
Signed-off-by: Pekon Gupta &lt;pekon@ti.com&gt;
Reviewed-by: Scott Wood &lt;scottwood@freescale.com&gt;
Signed-off-by: Brian Norris &lt;computersforpeace@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>mtd: sm_ftl: heap corruption in sm_create_sysfs_attributes()</title>
<updated>2014-05-13T11:32:55Z</updated>
<author>
<name>Dan Carpenter</name>
<email>dan.carpenter@oracle.com</email>
</author>
<published>2013-12-05T14:53:50Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=93dd8b49c22623eb72a10beb44926dbd948c3618'/>
<id>urn:sha1:93dd8b49c22623eb72a10beb44926dbd948c3618</id>
<content type='text'>
commit b4c233057771581698a13694ab6f33b48ce837dc upstream.

We always put a NUL terminator one space past the end of the "vendor"
buffer.  Walter Harms also pointed out that this should just use
kstrndup().

Fixes: 7d17c02a01a1 ('mtd: Add new SmartMedia/xD FTL')

Signed-off-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Signed-off-by: Brian Norris &lt;computersforpeace@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>mtd: nuc900_nand: NULL dereference in nuc900_nand_enable()</title>
<updated>2014-05-13T11:32:54Z</updated>
<author>
<name>Dan Carpenter</name>
<email>dan.carpenter@oracle.com</email>
</author>
<published>2014-02-17T20:03:08Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=9ef4bb8b24c83617043c6804fb547dbe1c4d9052'/>
<id>urn:sha1:9ef4bb8b24c83617043c6804fb547dbe1c4d9052</id>
<content type='text'>
commit c69dbbf3335a21aae74376d7e5db50a486d52439 upstream.

Instead of writing to "nand-&gt;reg + REG_FMICSR" we write to "REG_FMICSR"
which is NULL and not a valid register.

Fixes: 8bff82cbc308 ('mtd: add nand support for w90p910 (v2)')
Signed-off-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Signed-off-by: Brian Norris &lt;computersforpeace@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>mtd: diskonchip: mem resource name is not optional</title>
<updated>2014-05-13T11:32:54Z</updated>
<author>
<name>Sasha Levin</name>
<email>sasha.levin@oracle.com</email>
</author>
<published>2014-03-19T22:24:37Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=81cb54ac10383b6d8c19674c9498a4f0e880250d'/>
<id>urn:sha1:81cb54ac10383b6d8c19674c9498a4f0e880250d</id>
<content type='text'>
commit 86e4bbc766b9456f583f2fc3c4f6c623b422af88 upstream.

Passing a name to request_mem_region() isn't optional and can't just
be NULL. Passing NULL causes a NULL ptr deref later in the boot
process.

Signed-off-by: Sasha Levin &lt;sasha.levin@oracle.com&gt;
Tested-by: Alexander Shiyan &lt;shc_work@mail.ru&gt;
Signed-off-by: Brian Norris &lt;computersforpeace@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>mtd: atmel_nand: Disable subpage NAND write when using Atmel PMECC</title>
<updated>2014-05-13T11:32:54Z</updated>
<author>
<name>Herve Codina</name>
<email>Herve.CODINA@celad.com</email>
</author>
<published>2014-03-03T11:15:29Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=4893808f711ae288cfd36c86e4a1ad694dad3d9e'/>
<id>urn:sha1:4893808f711ae288cfd36c86e4a1ad694dad3d9e</id>
<content type='text'>
commit 90445ff6241e2a13445310803e2efa606c61f276 upstream.

Crash detected on sam5d35 and its pmecc nand ecc controller.

The problem was a call to chip-&gt;ecc.hwctl from nand_write_subpage_hwecc
(nand_base.c) when we write a sub page.
chip-&gt;ecc.hwctl function is not set when we are using PMECC controller.
As a workaround, set NAND_NO_SUBPAGE_WRITE for PMECC controller in
order to disable sub page access in nand_write_page.

Signed-off-by: Herve Codina &lt;Herve.CODINA@celad.com&gt;
Acked-by: Josh Wu &lt;josh.wu@atmel.com&gt;
Signed-off-by: Brian Norris &lt;computersforpeace@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>Merge tag 'upstream-3.14-rc5' of git://git.infradead.org/linux-ubifs</title>
<updated>2014-02-27T18:36:50Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2014-02-27T18:36:50Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=bb7d43b149ef88cd0d3cb38bb49ebb69a460b42b'/>
<id>urn:sha1:bb7d43b149ef88cd0d3cb38bb49ebb69a460b42b</id>
<content type='text'>
Pull ubifs fix from Artem Bityutskiy:
 "Just a single fix for the UBI module unload path which makes sure we
  do not touch freed memory"

* tag 'upstream-3.14-rc5' of git://git.infradead.org/linux-ubifs:
  UBI: fix some use after free bugs
</content>
</entry>
<entry>
<title>mtd: nand: omap: fix ecclayout-&gt;oobfree-&gt;length</title>
<updated>2014-02-23T22:49:57Z</updated>
<author>
<name>Pekon Gupta</name>
<email>pekon@ti.com</email>
</author>
<published>2014-02-17T07:41:25Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=bb38eefb6858ce16b34716145b9597a5680aa54c'/>
<id>urn:sha1:bb38eefb6858ce16b34716145b9597a5680aa54c</id>
<content type='text'>
This patch excludes reserved-marker byte-position from oobfree-&gt;length
calculation. Thus all bytes from oobfree-&gt;offset till end of OOB are free.

CC: &lt;stable@vger.kernel.org&gt; # 3.13.x+
Signed-off-by: Pekon Gupta &lt;pekon@ti.com&gt;
Signed-off-by: Brian Norris &lt;computersforpeace@gmail.com&gt;
</content>
</entry>
</feed>
