- 06 3月, 2007 3 次提交
-
-
由 Pierre Ossman 提交于
Release the device's irq during sleep, as all well-behaved drivers should. Signed-off-by: NPierre Ossman <drzeus@drzeus.cx> -
由 Mark Lord 提交于
The interrupt is shared with another device, which resumes earlier than the sdhci controller, and generates an interrupt. The sdhci interrupt handler runs, sees 0xffffffff in its own device's interrupt status, and tries to handle it.. The reason for the 0xffffffff is that the device is still suspended, and *all* regs are reading back 0xffffffff. Signed-off-by: NMark Lord <mlord@pobox.com> Signed-off-by: NAndrew Morton <akpm@linux-foundation.org> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Pierre Ossman 提交于
The new high-speed timings are similar to each other and the old system, but not identical. And although things "just work" most of the time, sometimes it does not. So we need to start marking which hosts are known to fully comply with the new timings. Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
- 15 2月, 2007 1 次提交
-
-
由 Tim Schmielau 提交于
After Al Viro (finally) succeeded in removing the sched.h #include in module.h recently, it makes sense again to remove other superfluous sched.h includes. There are quite a lot of files which include it but don't actually need anything defined in there. Presumably these includes were once needed for macros that used to live in sched.h, but moved to other header files in the course of cleaning it up. To ease the pain, this time I did not fiddle with any header files and only removed #includes from .c-files, which tend to cause less trouble. Compile tested against 2.6.20-rc2 and 2.6.20-rc2-mm2 (with offsets) on alpha, arm, i386, ia64, mips, powerpc, and x86_64 with allnoconfig, defconfig, allmodconfig, and allyesconfig as well as a few randconfigs on x86_64 and all configs in arch/arm/configs on arm. I also checked that no new warnings were introduced by the patch (actually, some warnings are removed that were emitted by unnecessarily included header files). Signed-off-by: NTim Schmielau <tim@physik3.uni-rostock.de> Acked-by: NRussell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: NAndrew Morton <akpm@linux-foundation.org> Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-
- 11 2月, 2007 2 次提交
-
-
由 Alex Dubov 提交于
TI FlasMedia controller attempts to validate command responses and issues a "status error" if response does not matches its perceived (by controller) value. As mmc layer does its own validation we can safely ignore the controller's opinion. Signed-off-by: NAlex Dubov <oakad@yahoo.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Pierre Ossman 提交于
There was one kunmap_atomic() left over from 4a0ddbd2 that was causing crashes. Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
- 10 2月, 2007 1 次提交
-
-
由 Al Viro 提交于
Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk> Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-
- 09 2月, 2007 3 次提交
-
-
由 Pierre Ossman 提交于
We get enough error reports without having to ask for it. Remove notices about mailing the development list. Signed-off-by: NPierre Ossman <drzeus@drzeus.cx> -
由 Pierre Ossman 提交于
The driver version was only really meaningful when it was an out-of-tree driver. Now we can use the version of the kernel. Signed-off-by: NPierre Ossman <drzeus@drzeus.cx> -
由 Pierre Ossman 提交于
The driver version was only really meaningful when it was an out-of-tree driver. Now we can use the version of the kernel. Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
- 08 2月, 2007 1 次提交
-
-
由 Andrew Victor 提交于
The Atmel AT91 and AVR32 processor architectures share many of the same peripherals. The PDC (Peripheral Data Controller) registers are also implemented within in a number of the on-chip peripherals (eg, USART, MMC, SPI, SSC, etc). In a attempt not to duplicate the register definitions in each peripheral, or in each architecture, the at91_pdc.h header in asm-arm/arch-at91 and asm-avr32/arch-at32ap has been replaced with linux/atmel_pdc.h. The definitions have also been renamed from AT91_PDC_* to ATMEL_PDC_*, and the drivers updated accordingly. Original patch from Nicolas Ferre. Signed-off-by: NAndrew Victor <andrew@sanpeople.com> Acked-by: NHaavard Skinnemoen <hskinnemoen@atmel.com> Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
- 05 2月, 2007 24 次提交
-
-
由 Pierre Ossman 提交于
Since we actively avoid highmem, calling kmap_atomic() instead of page_address() is effectively only obfuscation. Signed-off-by: NPierre Ossman <drzeus@drzeus.cx> -
由 Pierre Ossman 提交于
Some bad if-clauses caused the driver to just report the highest supported voltage, not all. Signed-off-by: NPierre Ossman <drzeus@drzeus.cx> -
由 Pierre Ossman 提交于
Since we actively avoid highmem, calling kmap_atomic() instead of page_address() is effectively only obfuscation. Signed-off-by: NPierre Ossman <drzeus@drzeus.cx> -
由 Pierre Ossman 提交于
Since we actively avoid highmem, calling kmap_atomic() instead of page_address() is effectively only obfuscation. Signed-off-by: NPierre Ossman <drzeus@drzeus.cx> -
由 Pierre Ossman 提交于
Make sure we report back any errors from pci_enable_device(). Signed-off-by: NPierre Ossman <drzeus@drzeus.cx> -
由 Pierre Ossman 提交于
Make sure we release the claim on the host even on failure. Signed-off-by: NPierre Ossman <drzeus@drzeus.cx> -
由 Pierre Ossman 提交于
MMC high-speed, wide bus support and SD high-speed are functions that aren't critical for correct operation of the card. As such, they shouldn't mark the card as bad or dead when there is a failure activating these features. This is needed in particular on some really stupid hardware (e.g. Winbond's) where not all data transfer commands are supported. Signed-off-by: NPierre Ossman <drzeus@drzeus.cx> -
由 Pierre Ossman 提交于
The wbsd hardware is so incredibly brain damaged that it has an internal list of commands that result in data transfers. The result being that commands that aren't on this list aren't supported. Instead of locking up, waiting for a data interrupt that will never come, we try to fail a bit more gracefully. Signed-off-by: NPierre Ossman <drzeus@drzeus.cx> -
由 Pierre Ossman 提交于
Many controllers have an upper limit on the number of blocks that can be transferred in one request. Allow the host drivers to specify this and make sure we avoid hitting this limit. Also change the max_sectors field to avoid confusion. This makes it map less directly to the block layer limits, but as they didn't apply directly on MMC cards anyway, this isn't a great loss. Signed-off-by: NPierre Ossman <drzeus@drzeus.cx> -
由 Pierre Ossman 提交于
Most controllers have an upper limit on the block size. Allow the host drivers to specify this and make sure we avoid hitting this limit. Signed-off-by: NPierre Ossman <drzeus@drzeus.cx> -
由 Alex Dubov 提交于
Signed-off-by: NAlex Dubov <oakad@yahoo.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Alex Dubov 提交于
Signed-off-by: NAlex Dubov <oakad@yahoo.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Alex Dubov 提交于
This patch introduces no semantic changes - it is here for estetic purposes. Signed-off-by: NAlex Dubov <oakad@yahoo.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Alex Dubov 提交于
In order to support correct suspend and resume several changes were needed: 1. Switch from work_struct to tasklet for command handling. When device suspend is called workqueues are already frozen and can not be used. 2. Separate host initialization code from driver's probe and don't rely on interrupts for host initialization. This, in turn, addresses two problems: a) Resume needs to re-initialize the host, but can not assume that device interrupts were already re-armed. b) Previously, probe will return successfully before really knowing the state of the host, as host interrupts were not armed in time. Now it uses polling to determine the real host state before returning. 3. Separate termination code from driver's remove. Termination may be caused by resume, if media changed type or became unavailable during suspend. Signed-off-by: NAlex Dubov <oakad@yahoo.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx> -
由 Alex Dubov 提交于
The register access order when setting hardware timeout was incorrect and causing problems (wrong timeout intervals). This is now fixed. Signed-off-by: NAlex Dubov <oakad@yahoo.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Alex Dubov 提交于
Two changes are introduced to software timeout handler in order to simplify its management: 1. The implementation is switched from work_struct to timer 2. Previously, software timeout was rearmed with each interrupt. Now, current request must complete entirely within timeout interval. Signed-off-by: NAlex Dubov <oakad@yahoo.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Alex Dubov 提交于
Data buffer for PIO transfer used to be mapped in advance with kmap. Abolish it in favor of on-demand kmap_atomic. Signed-off-by: NAlex Dubov <oakad@yahoo.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Alex Dubov 提交于
Previously, stop command was issued right after BRS (block received/sent) event. Stop command completion event could interfere with the card busy event, causing miscount of the written blocks. This patch ensures that stop command issued as last action for a particular command, after DMA sompletion event and written block count verification. Signed-off-by: NAlex Dubov <oakad@yahoo.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Philip Langdale 提交于
Thanks to the generous donation of an SDHC card by John Gilmore, and the surprisingly enlightened decision by the SD Card Association to publish useful specs, I've been able to bash out support for SDHC. The changes are not too profound: i) Add a card flag indicating the card uses block level addressing and check it in the block driver. As we never took advantage of byte-level addressing, this simply involves skipping the block -> byte translation when sending commands. ii) The layout of the CSD is changed - a set of fields are discarded to make space for a larger C_SIZE. We did not reference any of the discarded fields except those related to the C_SIZE. iii) Read and write timeouts are fixed values and not calculated from CSD values. iv) Before invoking SEND_APP_OP_COND, we must invoke the new SEND_IF_COND to inform the card we support SDHC. Signed-off-by: NPhilipl Langdale <philipl@overt.org> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Darren Salt 提交于
Support for these devices was broken for 2.6.18-rc1 and later by commit 146ad66e, which added voltage level support. This restores the previous behaviour for these devices by ensuring that when the voltage is changed, only one write to set the voltage is performed. It may be that both writes are needed if the voltage is being changed between two non-zero values or that it's safe to ensure that only one write is done if the hardware only supports one voltage; I don't know whether either is the case nor can I test since I have only the one SD reader (1524:0550), and it supports just the one voltage. Signed-off-by: NDarren Salt <linux@youmustbejoking.demon.co.uk> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Pierre Ossman 提交于
Change the parent of cards to be a specific host (a class device), not the physical controller. This is particularly useful when the hardware has multiple slots, meaning multiple hosts. Signed-off-by: NPierre Ossman <drzeus@drzeus.cx> -
由 Pierre Ossman 提交于
As card_busy was only used to indicate if the host was exclusively claimed and not really used to identify a particular card, replacing it with just a boolean makes things a lot more easily understandable. Signed-off-by: NPierre Ossman <drzeus@drzeus.cx> -
由 Manuel Lauss 提交于
au1xmmc: return error when encountering unhandled/unknown response type. Signed-off-by: NManuel Lauss <mano@roarinelk.homelinux.net> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Manuel Lauss 提交于
au1xmmc: implement proper R/O switch detection. Signed-off-by: NManuel Lauss <mano@roarinelk.homelinux.net> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
- 15 1月, 2007 2 次提交
-
-
由 Philip Langdale 提交于
During development of SDHC support, it was discovered that the definition for R6 was incorrect. This patch fixes that and patches the drivers that do switch on the response type. Signed-off-by: NPhilip Langdale <philipl@overt.org> Cc: Alex Dubov <oakad@yahoo.com> Cc: Pavel Pisa <ppisa@pikron.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Carlos Eduardo Aguiar 提交于
This patch is a fix in order to update MMC response types. This modification is needed to allow SD card support on OMAP platforms. Signed-off-by: NCarlos Eduardo Aguiar <carlos.aguiar@indt.org.br> Signed-off-by: NYuha Yrjola <juha.yrjola@solidboot.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
- 09 1月, 2007 1 次提交
-
-
由 Russell King 提交于
The MMCI driver might end up aborting the initial command and leaving the data part of the command sequence still in place. Avoid this problem by ensuring that any data sequence is properly cleared out when a command completes. Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
- 04 1月, 2007 2 次提交
-
-
由 David Brownell 提交于
Linker level tweaks for the AT91 MMC driver: - fix a wrongly-exported symbol - move probe() to init section - move remove() to exit section When this driver is statically linked, this patch shrinks the driver's runtime I-space footprint by over 20% (950 bytes). Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Kyungmin Park 提交于
fix OMAP MMC workqueue in recent workqueue change Signed-off-by: NKyungmin Park <kyungmin.park@samsung.com> Signed-off-by: NTony Lindgren <tony@atomide.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-