linux/drivers/mfd
Wei WANG c3481955f6 mfd: rtsx: Fix issue that booting OS with SD card inserted
Realtek card reader supports both SD and MS card. According to the
settings of rtsx MFD driver, SD host will be probed before MS host.
If we boot/reboot Linux with SD card inserted, the resetting flow of SD
card will succeed, and the following resetting flow of MS is sure to fail.
Then MS upper-level driver will ask rtsx driver to turn power off. This
request leads to the result that the following SD commands fail and SD card
can't be accessed again.

In this commit, Realtek's SD and MS host driver will check whether the card
that upper driver requesting is the one existing in the slot. If not, Realtek's
host driver will refuse the operation to make sure the exlusive accessing
at the same time.

Signed-off-by: Wei WANG <wei_wang@realsil.com.cn>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2013-02-14 00:24:12 +01:00
..
88pm80x.c mfd: 88pm80x: Remove redundant devm_* calls 2013-02-14 00:22:54 +01:00
88pm800.c mfd: 88pm80x: Remove redundant devm_* calls 2013-02-14 00:22:54 +01:00
88pm805.c mfd: 88pm80x: Remove redundant devm_* calls 2013-02-14 00:22:54 +01:00
88pm860x-core.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
88pm860x-i2c.c mfd: Convert struct i2c_msg initialization to C99 format 2012-09-21 23:40:34 +02:00
aat2870-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
ab3100-core.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
ab3100-otp.c
ab8500-core.c Merge branch 'for-mfd' of git://git.linaro.org/people/ljones/linux-3.0-ux500 into for-next 2013-02-14 00:23:17 +01:00
ab8500-debugfs.c mfd: ab8500: Fix compile error 2013-02-14 00:24:07 +01:00
ab8500-gpadc.c mfd: ab8500-gpadc: Remove unused 'struct ab8500_gpadc' 2013-02-04 08:33:29 +00:00
ab8500-sysctrl.c mfd: ab8500-sysctrl: export read/write symbols 2013-02-04 08:31:33 +00:00
abx500-core.c mfd: abx500-core: Provide an API to dump all ABx500 registers 2013-02-04 08:31:34 +00:00
adp5520.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
arizona-core.c mfd: arizona: Provide platform data for MICBIAS configuration 2013-02-14 00:22:48 +01:00
arizona-i2c.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
arizona-irq.c mfd: arizona: Disable control interface reporting for WM5102 and WM5110 2013-01-22 01:17:29 +01:00
arizona-spi.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
arizona.h mfd: Initial support for the WM5110 2012-07-16 15:00:32 +02:00
as3711.c mfd: Add an AS3711 PMIC MFD driver 2012-11-23 12:09:19 +01:00
asic3.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
cs5535-mfd.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
da903x.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
da9052-core.c This is the MFD patch set for the 3.8 merge window. 2012-12-16 18:55:20 -08:00
da9052-i2c.c mfd: da9052/53 lockup fix 2013-01-27 01:35:32 +01:00
da9052-irq.c mfd: da9052: Introduce da9052-irq.c 2012-11-20 12:21:10 +01:00
da9052-spi.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
da9055-core.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
da9055-i2c.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
davinci_voicecodec.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
db8500-prcmu.c mfd: db8500-prcmu: Add ux500_wdt mfd_cell 2013-02-14 00:22:54 +01:00
dbx500-prcmu-regs.h mfd: dbx500: Provide a more accurate smp_twd clock 2012-09-23 20:51:34 +02:00
dm355evm_msp.c
ezx-pcap.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
htc-egpio.c
htc-i2cpld.c mfd: remove use of __devinit 2012-11-28 12:20:19 -08:00
htc-pasic3.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
intel_msic.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
janz-cmodio.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
jz4740-adc.c This is the MFD patch set for the 3.8 merge window. 2012-12-16 18:55:20 -08:00
Kconfig mfd: Add missing GENERIC_HARDIRQS dependecies 2013-02-14 00:23:59 +01:00
lm3533-core.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
lm3533-ctrlbank.c mfd: Use SI-units for the lm3533 max-current interface 2012-05-20 17:27:02 +02:00
lp8788-irq.c mfd: Add lp8788 mfd driver 2012-09-23 20:51:34 +02:00
lp8788.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
lpc_ich.c mfd: lpc_ich: Fix gpio base and control offsets 2013-02-14 00:22:52 +01:00
lpc_sch.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
Makefile mfd: rtsx: Support RTS5227 2013-02-14 00:22:59 +01:00
max8907.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
max8925-core.c mfd: max8925: Fix onkey driver irq base 2013-02-14 00:23:00 +01:00
max8925-i2c.c mfd: max8925: Add irqdomain for dt 2013-02-14 00:23:00 +01:00
max8997-irq.c mfd: Add irq domain support for max8997 interrupts 2012-07-09 00:16:13 +02:00
max8997.c Drivers: mfd: remove __dev* attributes. 2013-01-03 15:57:14 -08:00
max8998-irq.c
max8998.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
max77686-irq.c mfd: Allow to specify max77686 interrupt through DT or platform file also 2012-07-09 15:13:42 +02:00
max77686.c mfd: max77686: Init max77686->dev before using it 2013-01-22 03:02:21 +01:00
max77693-irq.c mfd: MAX77693: Fix interrupt handling bug 2012-09-16 00:32:57 +02:00
max77693.c mfd: max77693: Init max77693->dev before using it 2013-01-22 03:02:22 +01:00
mc13xxx-core.c mfd: mc13xxx: Add support for mc34708 2012-11-06 23:14:08 +01:00
mc13xxx-i2c.c This is the MFD patch set for the 3.8 merge window. 2012-12-16 18:55:20 -08:00
mc13xxx-spi.c This is the MFD patch set for the 3.8 merge window. 2012-12-16 18:55:20 -08:00
mc13xxx.h mfd: mc13xxx: Add support for mc34708 2012-11-06 23:14:08 +01:00
mcp-core.c Disintegrate and delete asm/system.h 2012-03-28 15:58:21 -07:00
mcp-sa11x0.c ARM: sa1100: move platform_data definitions 2012-09-14 11:18:57 +02:00
menelaus.c ARM: OMAP2: Move plat/menelaus.h to linux/mfd/menelaus.h 2012-10-15 13:53:41 -07:00
mfd-core.c mfd: Only unregister platform devices allocated by the mfd core 2012-11-20 12:21:12 +01:00
omap-usb-host.c mfd: omap-usb-host: get rid of cpu_is_omap..() macros 2012-12-14 11:48:06 -08:00
omap-usb-tll.c ARM: arm-soc: Header cleanups 2012-12-12 11:45:16 -08:00
omap-usb.h ARM: OMAP: move OMAP USB platform data to <linux/platform_data/omap-usb.h> 2012-10-24 14:26:55 -07:00
palmas.c mfd: palmas: Add rtc irq number as irq resource for palmas-rtc 2013-02-14 00:22:44 +01:00
pcf50633-adc.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
pcf50633-core.c mfd: pcf50633: Init pcf->dev before using it 2013-01-22 03:05:33 +01:00
pcf50633-gpio.c
pcf50633-irq.c mfd: Include linux/mfd/pcf50633/mbc.h in pcf50633-irq.c 2012-03-06 18:46:51 +01:00
pm8xxx-irq.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
pm8921-core.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
rc5t583-irq.c mfd: rc5t583: Fix array subscript is above array bounds 2012-11-26 12:10:51 +01:00
rc5t583.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
rdc321x-southbridge.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
retu-mfd.c Drivers: mfd: remove __dev* attributes. 2013-01-03 15:57:14 -08:00
rtl8411.c mfd: rtsx: Implement driving adjustment to device-dependent callbacks 2013-02-14 00:22:59 +01:00
rts5209.c mfd: rtsx: Implement driving adjustment to device-dependent callbacks 2013-02-14 00:22:59 +01:00
rts5227.c mfd: rtsx: Support RTS5227 2013-02-14 00:22:59 +01:00
rts5229.c mfd: rtsx: Implement driving adjustment to device-dependent callbacks 2013-02-14 00:22:59 +01:00
rtsx_pcr.c mfd: rtsx: Fix issue that booting OS with SD card inserted 2013-02-14 00:24:12 +01:00
rtsx_pcr.h mfd: rtsx: Support RTS5227 2013-02-14 00:22:59 +01:00
sec-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
sec-irq.c mfd: sec: Fix reg_offset for interrupt registers 2012-11-26 00:35:08 +01:00
sm501.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
smsc-ece1099.c mfd: smsc: Add support for smsc gpio io/keypad driver 2012-10-01 15:27:48 +02:00
sta2x11-mfd.c Drivers: mfd: remove __dev* attributes. 2013-01-03 15:57:14 -08:00
stmpe-i2c.c This is the MFD patch set for the 3.8 merge window. 2012-12-16 18:55:20 -08:00
stmpe-spi.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
stmpe.c Drivers: mfd: remove __dev* attributes. 2013-01-03 15:57:14 -08:00
stmpe.h
syscon.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
t7l66xb.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
tc3589x.c mfd: tc3589x: Use simple irqdomain 2013-01-22 03:08:34 +01:00
tc6387xb.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
tc6393xb.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
ti_am335x_tscadc.c Drivers: mfd: remove __dev* attributes. 2013-01-03 15:57:14 -08:00
ti-ssp.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
timberdale.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
timberdale.h
tmio_core.c
tps6105x.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
tps6507x.c mfd: tps6507x: Add DT support 2013-02-14 00:22:54 +01:00
tps6586x.c This is the MFD patch set for the 3.8 merge window. 2012-12-16 18:55:20 -08:00
tps65010.c mfd: remove IRQF_SAMPLE_RANDOM which is now a no-op 2012-07-19 10:38:33 -04:00
tps65090.c mfd: tps65090: remove suspend/resume callbacks 2013-02-14 00:22:56 +01:00
tps65217.c This is the MFD patch set for the 3.8 merge window. 2012-12-16 18:55:20 -08:00
tps65910.c This is the MFD patch set for the 3.8 merge window. 2012-12-16 18:55:20 -08:00
tps65911-comparator.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
tps65912-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
tps65912-i2c.c
tps65912-irq.c
tps65912-spi.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
tps80031.c Drivers: mfd: remove __dev* attributes. 2013-01-03 15:57:14 -08:00
twl4030-audio.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
twl4030-irq.c This is the MFD patch set for the 3.8 merge window. 2012-12-16 18:55:20 -08:00
twl4030-madc.c This is the MFD patch set for the 3.8 merge window. 2012-12-16 18:55:20 -08:00
twl4030-power.c mfd: twl4030: Don't warn about uninitialized return code 2013-01-27 02:18:01 +01:00
twl6030-irq.c mfd/rtc/gpio: twl: No need to allocate bigger buffer for write 2012-11-21 16:08:00 +01:00
twl6040.c Drivers: mfd: remove __dev* attributes. 2013-01-03 15:57:14 -08:00
twl-core.c mfd: twl-core: Move twl_i2c_read/write_u8 to header as inline function 2013-02-14 00:22:52 +01:00
twl-core.h mfd: Move twl-core IRQ allocation into twl[4030|6030]-irq files 2012-03-22 13:04:33 +01:00
ucb1x00-assabet.c
ucb1x00-core.c
ucb1x00-ts.c
ucb1400_core.c
vexpress-config.c mfd: vexpress: Export global functions to fix build error 2013-01-22 17:28:34 +01:00
vexpress-sysreg.c mfd: vexpress: Allow vexpress-sysreg to self-initialise 2013-02-14 00:22:59 +01:00
viperboard.c mfd: viperboard: Do version query in dma memory 2012-11-26 11:48:56 +01:00
vx855.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
wl1273-core.c mfd: remove use of __devinit 2012-11-28 12:20:19 -08:00
wm831x-auxadc.c mfd: Convert wm831x to irq_domain 2012-05-20 17:27:07 +02:00
wm831x-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
wm831x-i2c.c
wm831x-irq.c mfd: Emulate active low IRQs as well as active high IRQs for wm831x 2012-05-20 17:27:14 +02:00
wm831x-otp.c mfd: wm831x: Feed the device UUID into device_add_randomness() 2012-07-19 10:38:31 -04:00
wm831x-spi.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
wm5102-tables.c mfd: wm5102: Make DSP scratch registers readable 2013-02-14 00:22:55 +01:00
wm5110-tables.c mfd: wm5110: Add register patches for revision B 2012-09-28 23:57:28 +02:00
wm8350-core.c mfd: Remove custom wm8350 cache implementation 2012-07-09 00:16:10 +02:00
wm8350-gpio.c
wm8350-i2c.c mfd: Add regmap cache support for wm8350 2012-07-09 00:16:10 +02:00
wm8350-irq.c mfd: Rely on regmap cache in wm8350 interrupt controller 2012-07-09 00:16:10 +02:00
wm8350-regmap.c mfd: Remove custom wm8350 cache implementation 2012-07-09 00:16:10 +02:00
wm8400-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
wm8994-core.c mfd: wm8994: Use devm_regulator_bulk_get API 2013-02-14 00:22:46 +01:00
wm8994-irq.c mfd: wm8994: Flag the interrupt block as requiring runtime PM be enabled 2012-08-07 20:30:00 +01:00
wm8994-regmap.c mfd: wm8994: Implement support for WM1811 devices with higher cust_ids 2012-09-14 09:52:11 +02:00
wm8994.h