mfd: rtsx: Fix issue that booting OS with SD card inserted
authorWei WANG <wei_wang@realsil.com.cn>
Fri, 8 Feb 2013 07:24:27 +0000 (15:24 +0800)
committerSamuel Ortiz <sameo@linux.intel.com>
Wed, 13 Feb 2013 23:24:12 +0000 (00:24 +0100)
commitc3481955f6c78c8dd99921759306d7469c999ec2
treeae65ba72e1076dd94690f16c2d03cdce56d7f34d
parent0cd5b6d08c7bf8b2d81eb1413ea1463cc72487b1
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>
drivers/memstick/host/rtsx_pci_ms.c
drivers/mfd/rtsx_pcr.c
drivers/mmc/host/rtsx_pci_sdmmc.c
include/linux/mfd/rtsx_pci.h