sdhci: Revert "add optional quirk property to disable card insertion/removal interrupts"
This reverts commit 723697551a
.
This change was poorly tested on my part. It squelched card insertion
interrupts on reset, but that was not necessary because sdhci_reset()
clears all the registers (via the call to memset), so the subsequent
sdhci_insert_eject_cb() call never sees the card insert interrupt
enabled. However, not calling the insert_eject_cb results in prnsts
remaining 0, when it actually needs to be updated to indicate card
presence and R/O status.
Signed-off-by: Andrew Baumann <Andrew.Baumann@microsoft.com>
Message-id: 1456436130-7048-2-git-send-email-Andrew.Baumann@microsoft.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
ed0db8663a
commit
5c1bc9a234
@ -198,11 +198,9 @@ static void sdhci_reset(SDHCIState *s)
|
||||
* initialization */
|
||||
memset(&s->sdmasysad, 0, (uintptr_t)&s->capareg - (uintptr_t)&s->sdmasysad);
|
||||
|
||||
if (!s->noeject_quirk) {
|
||||
/* Reset other state based on current card insertion/readonly status */
|
||||
sdhci_set_inserted(dev, sdbus_get_inserted(&s->sdbus));
|
||||
sdhci_set_readonly(dev, sdbus_get_readonly(&s->sdbus));
|
||||
}
|
||||
|
||||
s->data_count = 0;
|
||||
s->stopped_state = sdhc_not_stopped;
|
||||
@ -1275,7 +1273,6 @@ static Property sdhci_sysbus_properties[] = {
|
||||
DEFINE_PROP_UINT32("capareg", SDHCIState, capareg,
|
||||
SDHC_CAPAB_REG_DEFAULT),
|
||||
DEFINE_PROP_UINT32("maxcurr", SDHCIState, maxcurr, 0),
|
||||
DEFINE_PROP_BOOL("noeject-quirk", SDHCIState, noeject_quirk, false),
|
||||
DEFINE_PROP_END_OF_LIST(),
|
||||
};
|
||||
|
||||
|
@ -76,7 +76,6 @@ typedef struct SDHCIState {
|
||||
uint32_t buf_maxsz;
|
||||
uint16_t data_count; /* current element in FIFO buffer */
|
||||
uint8_t stopped_state;/* Current SDHC state */
|
||||
bool noeject_quirk;/* Quirk to disable card insert/remove interrupts */
|
||||
/* Buffer Data Port Register - virtual access point to R and W buffers */
|
||||
/* Software Reset Register - always reads as 0 */
|
||||
/* Force Event Auto CMD12 Error Interrupt Reg - write only */
|
||||
|
Loading…
Reference in New Issue
Block a user