From 0a7ac9f9e72246ce41dfb101c77a58de607aef7c Mon Sep 17 00:00:00 2001 From: Andrew Baumann Date: Thu, 25 Feb 2016 13:35:30 -0800 Subject: sdhci: add quirk property for card insert interrupt status on Raspberry Pi This quirk is a workaround for the following hardware behaviour, on which UEFI (specifically, the bootloader for Windows on Pi2) depends: 1. at boot with an SD card present, the interrupt status/enable registers are initially zero 2. upon enabling it in the interrupt enable register, the card insert bit in the interrupt status register is immediately set 3. after a subsequent controller reset, the card insert interrupt does not fire, even if enabled in the interrupt enable register Signed-off-by: Andrew Baumann Message-id: 1456436130-7048-3-git-send-email-Andrew.Baumann@microsoft.com Reviewed-by: Peter Maydell Signed-off-by: Peter Maydell --- include/hw/sd/sdhci.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'include/hw/sd') diff --git a/include/hw/sd/sdhci.h b/include/hw/sd/sdhci.h index 4816516a26..0f0c3f1e64 100644 --- a/include/hw/sd/sdhci.h +++ b/include/hw/sd/sdhci.h @@ -76,6 +76,8 @@ typedef struct SDHCIState { uint32_t buf_maxsz; uint16_t data_count; /* current element in FIFO buffer */ uint8_t stopped_state;/* Current SDHC state */ + bool pending_insert_quirk;/* Quirk for Raspberry Pi card insert int */ + bool pending_insert_state; /* 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 */ -- cgit v1.2.3