<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/mmc, branch v2.6.32</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v2.6.32</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v2.6.32'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2009-12-02T14:58:19Z</updated>
<entry>
<title>[ARM] pxamci: call mmc_remove_host() before freeing resources</title>
<updated>2009-12-02T14:58:19Z</updated>
<author>
<name>Daniel Mack</name>
<email>daniel@caiaq.de</email>
</author>
<published>2009-12-01T17:17:18Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=5d6b1edf8ccc4b7e4e77dff3fc80882833d6186e'/>
<id>urn:sha1:5d6b1edf8ccc4b7e4e77dff3fc80882833d6186e</id>
<content type='text'>
mmc_remove_host() will cause the mmc core to switch off the bus power by
eventually calling pxamci_set_ios(). This function uses the regulator or
the GPIO which have been freed already.

This causes the following Oops on module unload.

[   49.519649] Unable to handle kernel paging request at virtual address 30303a70
[   49.526878] pgd = c7084000
[   49.529563] [30303a70] *pgd=00000000
[   49.533136] Internal error: Oops: 5 [#1]
[   49.537025] last sysfs file: /sys/devices/platform/pxa27x-ohci/usb1/1-1/1-1:1.0/host0/target0:0:0/0:0:0:0/scsi_level
[   49.547471] Modules linked in: pxamci(-) eeti_ts
[   49.552061] CPU: 0    Not tainted  (2.6.32-rc8 #322)
[   49.557001] PC is at regulator_is_enabled+0x3c/0xbc
[   49.561846] LR is at regulator_is_enabled+0x30/0xbc
[   49.566691] pc : [&lt;c01a2448&gt;]    lr : [&lt;c01a243c&gt;]    psr: 60000013
[   49.566702] sp : c7083e70  ip : 30303a30  fp : 00000000
[   49.578093] r10: c705e200  r9 : c7082000  r8 : c705e2e0
[   49.583280] r7 : c7061340  r6 : c7061340  r5 : c7083e70  r4 : 00000000
[   49.589759] r3 : c04dc434  r2 : c04dc434  r1 : c03eecea  r0 : 00000047
[   49.596241] Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user
[   49.603329] Control: 0000397f  Table: a7084018  DAC: 00000015
[   49.609031] Process rmmod (pid: 1101, stack limit = 0xc7082278)
[   49.614908] Stack: (0xc7083e70 to 0xc7084000)
[   49.619238] 3e60:                                     c7082000 c703c4f8 c705ea00 c04f4074
[   49.627366] 3e80: 00000000 c705e3a0 ffffffff c0247ddc c70361a0 00000000 c705e3a0 ffffffff
[   49.635499] 3ea0: c705e200 bf006400 c78c4f00 c705e200 c705e3a0 ffffffff c705e200 ffffffff
[   49.643633] 3ec0: c04d8ac8 c02476d0 ffffffff c0247c60 c705e200 c0248678 c705e200 c0249064
[   49.651765] 3ee0: ffffffff bf006204 c04d8ad0 c04d8ad0 c04d8ac8 bf007490 00000880 c00440c4
[   49.659898] 3f00: 0000b748 c01c5708 bf007490 c01c44c8 c04d8ac8 c04d8afc bf007490 c01c4570
[   49.668031] 3f20: bf007490 bf00750c c04f4258 c01c37a4 00000000 bf00750c c7083f44 c007b014
[   49.676162] 3f40: 4000d000 6d617870 08006963 00000001 00000000 c7085000 00000001 00000000
[   49.684287] 3f60: 4000d000 c7083f8c 00000001 bea01a54 00005401 c7ab1400 c00440c4 00082000
[   49.692420] 3f80: bf00750c 00000880 c7083f8c 00000000 4000cfa8 00000000 00000880 bea01cc8
[   49.700552] 3fa0: 00000081 c0043f40 00000000 00000880 bea01cc8 00000880 00000006 00000000
[   49.708677] 3fc0: 00000000 00000880 bea01cc8 00000081 00000097 0000cca4 0000b748 00000000
[   49.716802] 3fe0: 4001a4f0 bea01cc0 00018bf4 4001a4fc 20000010 bea01cc8 a063e021 a063e421
[   49.724958] [&lt;c01a2448&gt;] (regulator_is_enabled+0x3c/0xbc) from [&lt;c0247ddc&gt;] (mmc_regulator_set_ocr+0x14/0xd8)
[   49.734836] [&lt;c0247ddc&gt;] (mmc_regulator_set_ocr+0x14/0xd8) from [&lt;bf006400&gt;] (pxamci_set_ios+0xd8/0x17c [pxamci])
[   49.745044] [&lt;bf006400&gt;] (pxamci_set_ios+0xd8/0x17c [pxamci]) from [&lt;c02476d0&gt;] (mmc_power_off+0x50/0x58)
[   49.754555] [&lt;c02476d0&gt;] (mmc_power_off+0x50/0x58) from [&lt;c0247c60&gt;] (mmc_detach_bus+0x68/0xc4)
[   49.763207] [&lt;c0247c60&gt;] (mmc_detach_bus+0x68/0xc4) from [&lt;c0248678&gt;] (mmc_stop_host+0xd4/0x1bc)
[   49.771944] [&lt;c0248678&gt;] (mmc_stop_host+0xd4/0x1bc) from [&lt;c0249064&gt;] (mmc_remove_host+0xc/0x20)
[   49.780681] [&lt;c0249064&gt;] (mmc_remove_host+0xc/0x20) from [&lt;bf006204&gt;] (pxamci_remove+0xc8/0x174 [pxamci])
[   49.790211] [&lt;bf006204&gt;] (pxamci_remove+0xc8/0x174 [pxamci]) from [&lt;c01c5708&gt;] (platform_drv_remove+0x1c/0x24)
[   49.800164] [&lt;c01c5708&gt;] (platform_drv_remove+0x1c/0x24) from [&lt;c01c44c8&gt;] (__device_release_driver+0x7c/0xc4)
[   49.810110] [&lt;c01c44c8&gt;] (__device_release_driver+0x7c/0xc4) from [&lt;c01c4570&gt;] (driver_detach+0x60/0x8c)
[   49.819535] [&lt;c01c4570&gt;] (driver_detach+0x60/0x8c) from [&lt;c01c37a4&gt;] (bus_remove_driver+0x90/0xcc)
[   49.828452] [&lt;c01c37a4&gt;] (bus_remove_driver+0x90/0xcc) from [&lt;c007b014&gt;] (sys_delete_module+0x1d8/0x254)
[   49.837891] [&lt;c007b014&gt;] (sys_delete_module+0x1d8/0x254) from [&lt;c0043f40&gt;] (ret_fast_syscall+0x0/0x28)
[   49.847145] Code: eb06c53a e596c030 e1a0500d e59f106c (e59c0040)
[   49.853566] ---[ end trace b5fa66a00cea142f ]---

Signed-off-by: Daniel Mack &lt;daniel@caiaq.de&gt;
Reported-by: Sven Neumann &lt;s.neumann@raumfeld.com&gt;
Cc: Pierre Ossman &lt;pierre@ossman.eu&gt;
Cc: linux-mmc@vger.kernel.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: stable@kernel.org
Signed-off-by: Eric Miao &lt;eric.y.miao@gmail.com&gt;
</content>
</entry>
<entry>
<title>mmci-omap: free irq resource</title>
<updated>2009-11-12T15:25:57Z</updated>
<author>
<name>Ladislav Michl</name>
<email>ladis@linux-mips.org</email>
</author>
<published>2009-11-11T22:26:43Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=49c1d9da1c83b83e4ed65bb84326835cdb3e7327'/>
<id>urn:sha1:49c1d9da1c83b83e4ed65bb84326835cdb3e7327</id>
<content type='text'>
Free IRQ on remove.

Signed-off-by: Ladislav Michl &lt;ladis@linux-mips.org&gt;
Acked-by: Tony Lindgren &lt;tony@atomide.com&gt;
Cc: &lt;linux-mmc@vger.kernel.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>omap_hsmmc: add missing probe handler hook</title>
<updated>2009-10-29T14:39:25Z</updated>
<author>
<name>Roger Quadros</name>
<email>ext-roger.quadros@nokia.com</email>
</author>
<published>2009-10-26T23:49:38Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=8753298a1192e5560e179e81aaada59c9809263e'/>
<id>urn:sha1:8753298a1192e5560e179e81aaada59c9809263e</id>
<content type='text'>
The missing probe handler hook will never probe the driver. Add it back.
Fixes broken MMC on OMAP.

We use platform_driver_probe() API since omap_hsmmc is not a hot-pluggable
device.

Signed-off-by: Roger Quadros &lt;ext-roger.quadros@nokia.com&gt;
Tested-by: Felipe Contreras &lt;felipe.contreras@gmail.com&gt;
Tested-by: Tony Lindgren &lt;tony@atomide.com&gt;
Cc: Jiri Kosina &lt;jkosina@suse.cz&gt;
Cc: Felipe Contreras &lt;felipe.contreras@gmail.com&gt;
Cc: Denis Karpov &lt;ext-denis.2.karpov@nokia.com&gt;
Cc: Madhusudhan Chikkature &lt;madhu.cr@ti.com&gt;
Cc: Greg KH &lt;gregkh@suse.de&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>mmc: at91_mci: Don't include asm/mach/mmc.h</title>
<updated>2009-10-21T23:22:25Z</updated>
<author>
<name>Uwe Kleine-König</name>
<email>u.kleine-koenig@pengutronix.de</email>
</author>
<published>2009-10-21T07:46:59Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=af2bd9d534ca9f1ffdeb0780fb8508e71ed55803'/>
<id>urn:sha1:af2bd9d534ca9f1ffdeb0780fb8508e71ed55803</id>
<content type='text'>
This fixes a compile bug introduced in

	6ef297f (ARM: 5720/1: Move MMCI header to amba include dir)

That commit moved arch/arm/include/asm/mach/mmc.h to
include/linux/amba/mmci.h.  Just removing the include was enough.

Signed-off-by: Uwe Kleine-König &lt;u.kleine-koenig@pengutronix.de&gt;
Acked-by: Linus Walleij &lt;linus.walleij@stericsson.com&gt;
Acked-by: Nicolas Ferre &lt;nicolas.ferre@atmel.com&gt;
Acked-by: Bill Gatliff &lt;bgat@billgatliff.com&gt;
Cc: Catalin Marinas &lt;catalin.marinas@arm.com&gt;
Cc: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
Cc: Pierre Ossman &lt;drzeus@drzeus.cx&gt;
Cc: linux-arm-kernel@lists.infradead.org
Cc: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>[ARM] pxamci: fix printing gpio numbers in pxamci_probe</title>
<updated>2009-10-12T07:30:50Z</updated>
<author>
<name>Antonio Ospite</name>
<email>ospite@studenti.unina.it</email>
</author>
<published>2009-10-02T14:24:02Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=48f029542f1219eb50ade5e24b1b2799bd057413'/>
<id>urn:sha1:48f029542f1219eb50ade5e24b1b2799bd057413</id>
<content type='text'>
Signed-off-by: Antonio Ospite &lt;ospite@studenti.unina.it&gt;
Reviewed-by: Robert Jarzmik &lt;robert.jarzmik@free.fr&gt;
Signed-off-by: Eric Miao &lt;eric.y.miao@gmail.com&gt;
</content>
</entry>
<entry>
<title>mmc: sdio: don't require CISTPL_VERS_1 to contain 4 strings</title>
<updated>2009-10-08T14:36:40Z</updated>
<author>
<name>David Vrabel</name>
<email>david.vrabel@csr.com</email>
</author>
<published>2009-10-07T23:32:33Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=a1125b1e41228bc2e5b4f023004a4280282d1dab'/>
<id>urn:sha1:a1125b1e41228bc2e5b4f023004a4280282d1dab</id>
<content type='text'>
The PC Card 8.0 specification (vol.  4, section 3.2.10) says the
TPLLV1_INFO field of the CISTPL_VERS_1 tuple must contain 4 strings.  Some
cards don't have all 4 so just parse as many as we can.

[akpm@linux-foundation.org: coding-style fixes]
Signed-off-by: David Vrabel &lt;david.vrabel@csr.com&gt;
Tested-by: Jonathan Cameron &lt;jic23@cam.ac.uk&gt;
Tested-by: Bing Zhao &lt;bzhao@marvell.com&gt;
Cc: Roel Kluin &lt;roel.kluin@gmail.com&gt;
Cc: &lt;linux-mmc@vger.kernel.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>Merge master.kernel.org:/home/rmk/linux-2.6-arm</title>
<updated>2009-10-02T23:20:43Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2009-10-02T23:20:43Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=a037a79dceaf717409fbf42f4ad209b9c15f435c'/>
<id>urn:sha1:a037a79dceaf717409fbf42f4ad209b9c15f435c</id>
<content type='text'>
* master.kernel.org:/home/rmk/linux-2.6-arm: (25 commits)
  ARM: 5728/1: Proper prefetch abort handling on ARMv6 and ARMv7
  ARM: 5727/1: Pass IFSR register to do_PrefetchAbort()
  ARM: 5740/1: fix valid_phys_addr_range() range check
  ARM: 5739/1: ARM: allow empty ATAG_CORE
  ARM: 5735/1: sa1111: CodingStyle cleanups
  ARM: 5738/1: Correct TCM documentation
  ARM: 5734/1: arm: fix compilation of entry-common.S for older CPUs
  ARM: 5733/1: fix bcmring compile error
  ARM: 5732/1: remove redundant include file
  ARM: 5731/2: Fix U300 generic GPIO, remove ifdefs from MMCI v3
  ARM: Ensure do_cache_op takes mmap_sem
  ARM: Fix __cpuexit section mismatch warnings
  ARM: Don't allow highmem on SMP platforms without h/w TLB ops broadcast
  ARM: includecheck fix: mach-davinci, board-dm365-evm.c
  ARM: Remove unused CONFIG SA1100_H3XXX
  ARM: Fix warning: unused variable 'highmem'
  ARM: Fix warning: #warning syscall migrate_pages not implemented
  ARM: Fix SA11x0 clocksource warning
  ARM: Fix SA1100 Neponset serial section mismatch
  ARM: Fix SA1100 Assabet/Neponset PCMCIA section mismatch warnings
  ...
</content>
</entry>
<entry>
<title>s3cmci: add better support for no card detect or write protect available</title>
<updated>2009-10-01T23:11:15Z</updated>
<author>
<name>Ben Dooks</name>
<email>ben@simtec.co.uk</email>
</author>
<published>2009-10-01T22:44:21Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=00acfaeead211562cc5f88882c47bf1cb16c041a'/>
<id>urn:sha1:00acfaeead211562cc5f88882c47bf1cb16c041a</id>
<content type='text'>
Add better support for omitting either the card detect or the write
protect GPIOs if the board does not support it.  Add the fields
no_wprotect and no_detect to the platform data which when set indicate the
absence of the respective GPIOs.

Note, this also fixes a minor bug where it tries to free IRQ0 if there is
no detect gpio available.

Signed-off-by: Ben Dooks &lt;ben@simtec.co.uk&gt;
Cc: &lt;linux-mmc@vger.kernel.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>s3cmci: make SDIO IRQ hardware IRQ support build-time configurable</title>
<updated>2009-10-01T23:11:15Z</updated>
<author>
<name>Ben Dooks</name>
<email>ben@simtec.co.uk</email>
</author>
<published>2009-10-01T22:44:20Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=5a2c4fe04dca1ee801d20fa07f347a9d6b7ec521'/>
<id>urn:sha1:5a2c4fe04dca1ee801d20fa07f347a9d6b7ec521</id>
<content type='text'>
We have found a couple of boards where the SDIO IRQ hardware support has
failed to work properly, and thus we should make it configurable whether
or not to be included in the driver.

Signed-off-by: Ben Dooks &lt;ben@simtec.co.uk&gt;
Cc: &lt;linux-mmc@vger.kernel.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>s3cmci: DMA fixes</title>
<updated>2009-10-01T23:11:15Z</updated>
<author>
<name>Ben Dooks</name>
<email>ben@simtec.co.uk</email>
</author>
<published>2009-10-01T22:44:19Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=68c5ed592fdae16982ffe36aef89faba70a32cfc'/>
<id>urn:sha1:68c5ed592fdae16982ffe36aef89faba70a32cfc</id>
<content type='text'>
Fixes for the DMA transfer mode of the driver to try and improve the state
of the code:

- Ensure that dma_complete is set during the end of the command phase
  so that transfers do not stall awaiting the completion

- Update the DMA debugging to provide a bit more useful information
  such as how many DMA descriptors where not processed and print the
  DMA addresses in hexadecimal.

- Fix the DMA channel request code to actually request DMA for the
  S3CMCI block instead of whatever '0' signified.

- Add fallback to PIO if we cannot get the DMA channel, as many of the
  devices with this block only have a limited number of DMA channels.

- Only try and claim and free the DMA channel if we are trying to use it.

This improves the driver DMA code to the point where it can now identify a
card and read the partition table.  However the DMA can still stall when
trying to move data between the host and memory.

Signed-off-by: Ben Dooks &lt;ben@simtec.co.uk&gt;
Cc: &lt;linux-mmc@vger.kernel.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
</feed>
