|
@@ -218,6 +218,8 @@ struct sdhci_host {
|
|
#define SDHCI_QUIRK_BROKEN_CARD_DETECTION (1<<15)
|
|
#define SDHCI_QUIRK_BROKEN_CARD_DETECTION (1<<15)
|
|
/* Controller reports inverted write-protect state */
|
|
/* Controller reports inverted write-protect state */
|
|
#define SDHCI_QUIRK_INVERTED_WRITE_PROTECT (1<<16)
|
|
#define SDHCI_QUIRK_INVERTED_WRITE_PROTECT (1<<16)
|
|
|
|
+/* Controller has nonstandard clock management */
|
|
|
|
+#define SDHCI_QUIRK_NONSTANDARD_CLOCK (1<<17)
|
|
|
|
|
|
int irq; /* Device IRQ */
|
|
int irq; /* Device IRQ */
|
|
void __iomem * ioaddr; /* Mapped address */
|
|
void __iomem * ioaddr; /* Mapped address */
|
|
@@ -284,6 +286,8 @@ struct sdhci_ops {
|
|
void (*writeb)(struct sdhci_host *host, u8 val, int reg);
|
|
void (*writeb)(struct sdhci_host *host, u8 val, int reg);
|
|
#endif
|
|
#endif
|
|
|
|
|
|
|
|
+ void (*set_clock)(struct sdhci_host *host, unsigned int clock);
|
|
|
|
+
|
|
int (*enable_dma)(struct sdhci_host *host);
|
|
int (*enable_dma)(struct sdhci_host *host);
|
|
unsigned int (*get_max_clock)(struct sdhci_host *host);
|
|
unsigned int (*get_max_clock)(struct sdhci_host *host);
|
|
unsigned int (*get_timeout_clock)(struct sdhci_host *host);
|
|
unsigned int (*get_timeout_clock)(struct sdhci_host *host);
|