|
@@ -65,14 +65,16 @@ struct mmc_card {
|
|
|
struct mmc_host *host; /* the host this device belongs to */
|
|
|
struct device dev; /* the device */
|
|
|
unsigned int rca; /* relative card address of device */
|
|
|
+ unsigned int type; /* card type */
|
|
|
+#define MMC_TYPE_MMC 0 /* MMC card */
|
|
|
+#define MMC_TYPE_SD 1 /* SD card */
|
|
|
unsigned int state; /* (our) card state */
|
|
|
#define MMC_STATE_PRESENT (1<<0) /* present in sysfs */
|
|
|
#define MMC_STATE_DEAD (1<<1) /* device no longer in stack */
|
|
|
#define MMC_STATE_BAD (1<<2) /* unrecognised device */
|
|
|
-#define MMC_STATE_SDCARD (1<<3) /* is an SD card */
|
|
|
-#define MMC_STATE_READONLY (1<<4) /* card is read-only */
|
|
|
-#define MMC_STATE_HIGHSPEED (1<<5) /* card is in high speed mode */
|
|
|
-#define MMC_STATE_BLOCKADDR (1<<6) /* card uses block-addressing */
|
|
|
+#define MMC_STATE_READONLY (1<<3) /* card is read-only */
|
|
|
+#define MMC_STATE_HIGHSPEED (1<<4) /* card is in high speed mode */
|
|
|
+#define MMC_STATE_BLOCKADDR (1<<5) /* card uses block-addressing */
|
|
|
u32 raw_cid[4]; /* raw card CID */
|
|
|
u32 raw_csd[4]; /* raw card CSD */
|
|
|
u32 raw_scr[2]; /* raw card SCR */
|
|
@@ -83,10 +85,12 @@ struct mmc_card {
|
|
|
struct sd_switch_caps sw_caps; /* switch (CMD6) caps */
|
|
|
};
|
|
|
|
|
|
+#define mmc_card_mmc(c) ((c)->type == MMC_TYPE_MMC)
|
|
|
+#define mmc_card_sd(c) ((c)->type == MMC_TYPE_SD)
|
|
|
+
|
|
|
#define mmc_card_present(c) ((c)->state & MMC_STATE_PRESENT)
|
|
|
#define mmc_card_dead(c) ((c)->state & MMC_STATE_DEAD)
|
|
|
#define mmc_card_bad(c) ((c)->state & MMC_STATE_BAD)
|
|
|
-#define mmc_card_sd(c) ((c)->state & MMC_STATE_SDCARD)
|
|
|
#define mmc_card_readonly(c) ((c)->state & MMC_STATE_READONLY)
|
|
|
#define mmc_card_highspeed(c) ((c)->state & MMC_STATE_HIGHSPEED)
|
|
|
#define mmc_card_blockaddr(c) ((c)->state & MMC_STATE_BLOCKADDR)
|
|
@@ -94,7 +98,6 @@ struct mmc_card {
|
|
|
#define mmc_card_set_present(c) ((c)->state |= MMC_STATE_PRESENT)
|
|
|
#define mmc_card_set_dead(c) ((c)->state |= MMC_STATE_DEAD)
|
|
|
#define mmc_card_set_bad(c) ((c)->state |= MMC_STATE_BAD)
|
|
|
-#define mmc_card_set_sd(c) ((c)->state |= MMC_STATE_SDCARD)
|
|
|
#define mmc_card_set_readonly(c) ((c)->state |= MMC_STATE_READONLY)
|
|
|
#define mmc_card_set_highspeed(c) ((c)->state |= MMC_STATE_HIGHSPEED)
|
|
|
#define mmc_card_set_blockaddr(c) ((c)->state |= MMC_STATE_BLOCKADDR)
|