sh_mobile_sdhi.h 1005 字节
Newer Older
1 2
#ifndef LINUX_MMC_SH_MOBILE_SDHI_H
#define LINUX_MMC_SH_MOBILE_SDHI_H
3 4 5

#include <linux/types.h>

6 7
struct platform_device;

8 9 10 11
#define SH_MOBILE_SDHI_IRQ_CARD_DETECT	"card_detect"
#define SH_MOBILE_SDHI_IRQ_SDCARD	"sdcard"
#define SH_MOBILE_SDHI_IRQ_SDIO		"sdio"

12 13 14 15 16 17 18 19
/**
 * struct sh_mobile_sdhi_ops - SDHI driver callbacks
 * @cd_wakeup:		trigger a card-detection run
 */
struct sh_mobile_sdhi_ops {
	void (*cd_wakeup)(const struct platform_device *pdev);
};

20 21 22 23 24
struct sh_mobile_sdhi_info {
	int dma_slave_tx;
	int dma_slave_rx;
	unsigned long tmio_flags;
	unsigned long tmio_caps;
25
	unsigned long tmio_caps2;
26
	u32 tmio_ocr_mask;	/* available MMC voltages */
27
	unsigned int cd_gpio;
28 29
	void (*set_pwr)(struct platform_device *pdev, int state);
	int (*get_cd)(struct platform_device *pdev);
30 31

	/* callbacks for board specific setup code */
32 33
	int (*init)(struct platform_device *pdev,
		    const struct sh_mobile_sdhi_ops *ops);
34
	void (*cleanup)(struct platform_device *pdev);
35 36
};

37
#endif /* LINUX_MMC_SH_MOBILE_SDHI_H */