<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/drivers/mtd, branch linux-2.6.35.y</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=linux-2.6.35.y</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=linux-2.6.35.y'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2011-08-01T20:54:50+00:00</updated>
<entry>
<title>mtd: mtdconcat: fix NAND OOB write</title>
<updated>2011-08-01T20:54:50+00:00</updated>
<author>
<name>Felix Radensky</name>
<email>felix@embedded-sol.com</email>
</author>
<published>2011-04-24T22:57:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=4613fee87c204e79ebd9c1c269c53ee3c9204451'/>
<id>urn:sha1:4613fee87c204e79ebd9c1c269c53ee3c9204451</id>
<content type='text'>
commit 431e1ecabddcd7cbba237182ddf431771f98bb4c upstream.

Currently mtdconcat is broken for NAND. An attemtpt to create
JFFS2 filesystem on concatenation of several NAND devices fails
with OOB write errors. This patch fixes that problem.

Signed-off-by: Felix Radensky &lt;felix@embedded-sol.com&gt;
Signed-off-by: Artem Bityutskiy &lt;Artem.Bityutskiy@nokia.com&gt;
Signed-off-by: David Woodhouse &lt;David.Woodhouse@intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
Signed-off-by: Andi Kleen &lt;ak@linux.intel.com&gt;

</content>
</entry>
<entry>
<title>mtd: add "platform:" prefix for platform modalias</title>
<updated>2011-03-31T18:58:35+00:00</updated>
<author>
<name>Axel Lin</name>
<email>axel.lin@gmail.com</email>
</author>
<published>2011-03-07T03:04:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=a2ee4c35474fb4c5151e0c691540b375fe5f97cf'/>
<id>urn:sha1:a2ee4c35474fb4c5151e0c691540b375fe5f97cf</id>
<content type='text'>
commit c804c733846572ca85c2bba60c7fe6fa024dff18 upstream.

Since 43cc71eed1250755986da4c0f9898f9a635cb3bf (platform: prefix MODALIAS
with "platform:"), the platform modalias is prefixed with "platform:".

Signed-off-by: Axel Lin &lt;axel.lin@gmail.com&gt;
Signed-off-by: Artem Bityutskiy &lt;Artem.Bityutskiy@nokia.com&gt;
Signed-off-by: David Woodhouse &lt;David.Woodhouse@intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
Signed-off-by: Andi Kleen &lt;ak@linux.intel.com&gt;

</content>
</entry>
<entry>
<title>gen_nand: Test if nr_chips field is valid</title>
<updated>2010-08-26T23:46:08+00:00</updated>
<author>
<name>Marek Vasut</name>
<email>marek.vasut@gmail.com</email>
</author>
<published>2010-08-12T02:53:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=1cfe75af2d0dd55aa30acbff82e37598d07c2763'/>
<id>urn:sha1:1cfe75af2d0dd55aa30acbff82e37598d07c2763</id>
<content type='text'>
commit 01cd2ababddd55a127caa1cd20d570637e0d42e1 upstream.

Signed-off-by: Marek Vasut &lt;marek.vasut@gmail.com&gt;
Signed-off-by: David Woodhouse &lt;David.Woodhouse@intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>mtd: change struct flchip_shared spinlock locking into mutex</title>
<updated>2010-08-26T23:45:54+00:00</updated>
<author>
<name>Stefani Seibold</name>
<email>stefani@seibold.net</email>
</author>
<published>2010-08-05T07:19:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=6eb22281116bd7eea73f63884b74b3c0aca0a5d3'/>
<id>urn:sha1:6eb22281116bd7eea73f63884b74b3c0aca0a5d3</id>
<content type='text'>
commit 8ae664184c45def51ff0b61d4bd6c6671db6cb4f upstream.

This patch prevent to schedule while atomic by changing the
flchip_shared spinlock into a mutex. This should be save since no atomic
path will use this lock.

It was suggested by Arnd Bergmann and Vasiliy Kulikov.

Signed-off-by: Stefani Seibold &lt;stefani@seibold.net&gt;
Signed-off-by: Artem Bityutskiy &lt;Artem.Bityutskiy@nokia.com&gt;
Signed-off-by: David Woodhouse &lt;David.Woodhouse@intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>mtd: nand: Fix probe of Samsung NAND chips</title>
<updated>2010-08-26T23:45:54+00:00</updated>
<author>
<name>Tilman Sauerbeck</name>
<email>tilman@code-monkey.de</email>
</author>
<published>2010-08-20T21:01:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=01be8ecc0e14a6c3478088f73cdaf2008d1dbdec'/>
<id>urn:sha1:01be8ecc0e14a6c3478088f73cdaf2008d1dbdec</id>
<content type='text'>
commit cfe3fdadb16162327773ef01a575a32000b8c7f4 upstream.

Apparently, the check for a 6-byte ID string introduced by commit
426c457a3216fac74e3d44dd39729b0689f4c7ab ("mtd: nand: extend NAND flash
detection to new MLC chips") is NOT sufficient to determine whether or
not a Samsung chip uses their new MLC detection scheme or the old,
standard scheme. This adds a condition to check cell type.

Signed-off-by: Tilman Sauerbeck &lt;tilman@code-monkey.de&gt;
Signed-off-by: Brian Norris &lt;norris@broadcom.com&gt;
Signed-off-by: David Woodhouse &lt;David.Woodhouse@intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>pxa3xx: fix ns2cycle equation</title>
<updated>2010-08-26T23:45:53+00:00</updated>
<author>
<name>Axel Lin</name>
<email>axel.lin@gmail.com</email>
</author>
<published>2010-08-16T08:09:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=f50b2280832c249cdd0829e98be5b7eec8f55afc'/>
<id>urn:sha1:f50b2280832c249cdd0829e98be5b7eec8f55afc</id>
<content type='text'>
commit 93b352fce679945845664b56b0c3afbd655a7a12 upstream.

Test on a PXA310 platform with Samsung K9F2G08X0B NAND flash,
with tCH=5 and clk is 156MHz, ns2cycle(5, 156000000) returns -1.

ns2cycle returns negtive value will break NDTR0_tXX macros.

After checking the commit log, I found the problem is introduced by
commit 5b0d4d7c8a67c5ba3d35e6ceb0c5530cc6846db7
"[MTD] [NAND] pxa3xx: convert from ns to clock ticks more accurately"

To get num of clock cycles, we use below equation:
num of clock cycles = time (ns) / one clock cycle (ns) + 1
We need to add 1 cycle here because integer division will truncate the result.
It is possible the developers set the Min values in SPEC for timing settings.
Thus the truncate may cause problem, and it is safe to add an extra cycle here.

The various fields in NDTR{01} are in units of clock ticks minus one,
thus we should subtract 1 cycle then.

Thus the correct equation should be:
num of clock cycles = time (ns) / one clock cycle (ns) + 1 - 1
                    = time (ns) / one clock cycle (ns)

Signed-off-by: Axel Lin &lt;axel.lin@gmail.com&gt;
Signed-off-by: Lei Wen &lt;leiwen@marvell.com&gt;
Acked-by: Eric Miao &lt;eric.y.miao@gmail.com&gt;
Signed-off-by: David Woodhouse &lt;David.Woodhouse@intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>mtd: gen_nand: fix support for multiple chips</title>
<updated>2010-08-13T20:31:04+00:00</updated>
<author>
<name>Marek Vasut</name>
<email>marek.vasut@gmail.com</email>
</author>
<published>2010-07-28T05:36:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=a456e2bf311123a0d2fa313a7e51611ab7b0439e'/>
<id>urn:sha1:a456e2bf311123a0d2fa313a7e51611ab7b0439e</id>
<content type='text'>
commit 81cbb0b17796d81cbd92defe113cf2a7c7a21fbb upstream.

This patch corrects a problem where gen_nand driver assumed there can be only
one chip and ignored the pdata-&gt;chip.nr_chips value.

Signed-off-by: Marek Vasut &lt;marek.vasut@gmail.com&gt;
Signed-off-by: Artem Bityutskiy &lt;Artem.Bityutskiy@nokia.com&gt;
Signed-off-by: David Woodhouse &lt;David.Woodhouse@intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>mtd: mxc_nand: fix unbalanced enable for IRQ</title>
<updated>2010-08-13T20:31:03+00:00</updated>
<author>
<name>Eric Bénard</name>
<email>eric@eukrea.com</email>
</author>
<published>2010-06-10T14:03:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=01806c2cc09e580a312c9812d4c88e7ed9dfffb6'/>
<id>urn:sha1:01806c2cc09e580a312c9812d4c88e7ed9dfffb6</id>
<content type='text'>
commit 6a8cfcfb0de881735df4031eb5cc99be3d0971e9 upstream.

* preset should be done before sending the reset command

* without this, I get the following error on an i.MX35 :
[    0.900000] ------------[ cut here ]------------
[    0.900000] WARNING: at kernel/irq/manage.c:290 __enable_irq+0x4c/0x88()
[    0.900000] Unbalanced enable for IRQ 33
[    0.900000] Modules linked in:
[    0.900000] [&lt;c002ffb8&gt;] (unwind_backtrace+0x0/0xf0) from [&lt;c02f7d0c&gt;] (dump_stack+0x18/0x1c)
[    0.900000] [&lt;c02f7d0c&gt;] (dump_stack+0x18/0x1c) from [&lt;c0049a44&gt;] (warn_slowpath_common+0x54/0x6c)
[    0.900000] [&lt;c0049a44&gt;] (warn_slowpath_common+0x54/0x6c) from [&lt;c0049b00&gt;] (warn_slowpath_fmt+0x38/0x40)
[    0.900000] [&lt;c0049b00&gt;] (warn_slowpath_fmt+0x38/0x40) from [&lt;c008f65c&gt;] (__enable_irq+0x4c/0x88)
[    0.900000] [&lt;c008f65c&gt;] (__enable_irq+0x4c/0x88) from [&lt;c008fca0&gt;] (enable_irq+0x54/0x98)
[    0.900000] [&lt;c008fca0&gt;] (enable_irq+0x54/0x98) from [&lt;c021e618&gt;] (wait_op_done+0x40/0x134)
[    0.900000] [&lt;c021e618&gt;] (wait_op_done+0x40/0x134) from [&lt;c021e808&gt;] (send_cmd+0x30/0x38)
[    0.900000] [&lt;c021e808&gt;] (send_cmd+0x30/0x38) from [&lt;c021eb8c&gt;] (mxc_nand_command+0x26c/0x328)
[    0.900000] [&lt;c021eb8c&gt;] (mxc_nand_command+0x26c/0x328) from [&lt;c021aa60&gt;] (nand_scan_ident+0x188/0x6c0)
[    0.900000] [&lt;c021aa60&gt;] (nand_scan_ident+0x188/0x6c0) from [&lt;c001a9cc&gt;] (mxcnd_probe+0x2b8/0x3d0)
[    0.900000] [&lt;c001a9cc&gt;] (mxcnd_probe+0x2b8/0x3d0) from [&lt;c01f9e88&gt;] (platform_drv_probe+0x20/0x24)
[    0.900000] [&lt;c01f9e88&gt;] (platform_drv_probe+0x20/0x24) from [&lt;c01f8c38&gt;] (driver_probe_device+0xb0/0x164)
[    0.900000] [&lt;c01f8c38&gt;] (driver_probe_device+0xb0/0x164) from [&lt;c01f8d54&gt;] (__driver_attach+0x68/0x8c)
[    0.900000] [&lt;c01f8d54&gt;] (__driver_attach+0x68/0x8c) from [&lt;c01f8348&gt;] (bus_for_each_dev+0x50/0x84)
[    0.900000] [&lt;c01f8348&gt;] (bus_for_each_dev+0x50/0x84) from [&lt;c01f8a9c&gt;] (driver_attach+0x20/0x28)
[    0.900000] [&lt;c01f8a9c&gt;] (driver_attach+0x20/0x28) from [&lt;c01f7c00&gt;] (bus_add_driver+0x144/0x2dc)
[    0.900000] [&lt;c01f7c00&gt;] (bus_add_driver+0x144/0x2dc) from [&lt;c01f906c&gt;] (driver_register+0xb0/0x13c)
[    0.900000] [&lt;c01f906c&gt;] (driver_register+0xb0/0x13c) from [&lt;c01fa13c&gt;] (platform_driver_register+0x4c/0x60)
[    0.900000] [&lt;c01fa13c&gt;] (platform_driver_register+0x4c/0x60) from [&lt;c01fa170&gt;] (platform_driver_probe+0x20/0xa0)
[    0.900000] [&lt;c01fa170&gt;] (platform_driver_probe+0x20/0xa0) from [&lt;c001a708&gt;] (mxc_nd_init+0x18/0x24)
[    0.900000] [&lt;c001a708&gt;] (mxc_nd_init+0x18/0x24) from [&lt;c002938c&gt;] (do_one_initcall+0x64/0x1bc)
[    0.900000] [&lt;c002938c&gt;] (do_one_initcall+0x64/0x1bc) from [&lt;c00084c4&gt;] (kernel_init+0xe8/0x1ac)
[    0.900000] [&lt;c00084c4&gt;] (kernel_init+0xe8/0x1ac) from [&lt;c002aee8&gt;] (kernel_thread_exit+0x0/0x8)
[    0.900000] ---[ end trace 8bf72ac6ba089a19 ]---
[    1.140000] NAND device: Manufacturer ID: 0x2c, Chip ID: 0xda (Micron NAND 256MiB 3,3V 8-bit)

Signed-off-by: Eric Bénard &lt;eric@eukrea.com&gt;
Signed-off-by: Artem Bityutskiy &lt;Artem.Bityutskiy@nokia.com&gt;
Signed-off-by: David Woodhouse &lt;David.Woodhouse@intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>Merge git://git.infradead.org/~dwmw2/mtd-2.6.35</title>
<updated>2010-06-08T00:10:06+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2010-06-08T00:10:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=3975d16760d4be7402d1067c548c30c427971331'/>
<id>urn:sha1:3975d16760d4be7402d1067c548c30c427971331</id>
<content type='text'>
* git://git.infradead.org/~dwmw2/mtd-2.6.35:
  jffs2: update ctime when changing the file's permission by setfacl
  jffs2: Fix NFS race by using insert_inode_locked()
  jffs2: Fix in-core inode leaks on error paths
  mtd: Fix NAND submenu
  mtd/r852: update card detect early.
  mtd/r852: Fixes in case of DMA timeout
  mtd/r852: register IRQ as last step
  drivers/mtd: Use memdup_user
  docbook: make mtd nand module init static
</content>
</entry>
<entry>
<title>Merge branch 'i2c-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging</title>
<updated>2010-06-03T22:44:43+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2010-06-03T22:44:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=ceadda057c000fa82e6bbe508923d8181414dea7'/>
<id>urn:sha1:ceadda057c000fa82e6bbe508923d8181414dea7</id>
<content type='text'>
* 'i2c-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging:
  i2c: Remove all i2c_set_clientdata(client, NULL) in drivers
  i2c/busses: Move two drivers to embedded section
  i2c: Rename i2c_check_addr to i2c_check_addr_busy
  i2c: Document reserved I2C addresses
  i2c: Check for address validity on client registration
  i2c: Share the I2C device presence detection code
  Documentation/i2c: Checkpatch cleanup
</content>
</entry>
</feed>
