mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-02 15:23:53 -06:00
sd: sdhci: Implement basic vendor specific register support
The Linux kernel's IMX code now uses vendor specific commands. This results in endless warnings when booting the Linux kernel. sdhci-esdhc-imx 2194000.usdhc: esdhc_wait_for_card_clock_gate_off: card clock still not gate off in 100us!. Implement support for the vendor specific command implemented in IMX hardware to be able to avoid this warning. Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Signed-off-by: Guenter Roeck <linux@roeck-us.net> Message-id: 20200603145258.195920-2-linux@roeck-us.net Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
8095508a9d
commit
3b2d81766f
3 changed files with 27 additions and 1 deletions
|
@ -74,6 +74,7 @@ typedef struct SDHCIState {
|
|||
uint16_t acmd12errsts; /* Auto CMD12 error status register */
|
||||
uint16_t hostctl2; /* Host Control 2 */
|
||||
uint64_t admasysaddr; /* ADMA System Address Register */
|
||||
uint16_t vendor_spec; /* Vendor specific register */
|
||||
|
||||
/* Read-only registers */
|
||||
uint64_t capareg; /* Capabilities Register */
|
||||
|
@ -96,8 +97,12 @@ typedef struct SDHCIState {
|
|||
uint32_t quirks;
|
||||
uint8_t sd_spec_version;
|
||||
uint8_t uhs_mode;
|
||||
uint8_t vendor; /* For vendor specific functionality */
|
||||
} SDHCIState;
|
||||
|
||||
#define SDHCI_VENDOR_NONE 0
|
||||
#define SDHCI_VENDOR_IMX 1
|
||||
|
||||
/*
|
||||
* Controller does not provide transfer-complete interrupt when not
|
||||
* busy.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue