diff options
author | Seungwon Jeon <tgih.jun@samsung.com> | 2014-04-23 04:07:35 -0400 |
---|---|---|
committer | Chris Ball <chris@printf.net> | 2014-05-12 18:05:53 -0400 |
commit | cdc991790c51c693d0c347a5286af017826a5d01 (patch) | |
tree | 6a40a17c97298372886e1c41a5b892974743a680 /include/linux | |
parent | b78871d0cf13d37e7bdcf39c49782ca3885343bc (diff) |
mmc: drop the speed mode of card's state
Timing mode identifier has same role and can take the place
of speed mode. This change removes all related speed mode.
Signed-off-by: Seungwon Jeon <tgih.jun@samsung.com>
Tested-by: Jaehoon Chung <jh80.chung@samsung.com>
Acked-by: Jaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Chris Ball <chris@printf.net>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/mmc/card.h | 23 | ||||
-rw-r--r-- | include/linux/mmc/host.h | 23 |
2 files changed, 29 insertions, 17 deletions
diff --git a/include/linux/mmc/card.h b/include/linux/mmc/card.h index aa7e57f60fb2..aadeaf155d0e 100644 --- a/include/linux/mmc/card.h +++ b/include/linux/mmc/card.h | |||
@@ -194,6 +194,7 @@ struct sdio_cis { | |||
194 | }; | 194 | }; |
195 | 195 | ||
196 | struct mmc_host; | 196 | struct mmc_host; |
197 | struct mmc_ios; | ||
197 | struct sdio_func; | 198 | struct sdio_func; |
198 | struct sdio_func_tuple; | 199 | struct sdio_func_tuple; |
199 | 200 | ||
@@ -250,15 +251,11 @@ struct mmc_card { | |||
250 | unsigned int state; /* (our) card state */ | 251 | unsigned int state; /* (our) card state */ |
251 | #define MMC_STATE_PRESENT (1<<0) /* present in sysfs */ | 252 | #define MMC_STATE_PRESENT (1<<0) /* present in sysfs */ |
252 | #define MMC_STATE_READONLY (1<<1) /* card is read-only */ | 253 | #define MMC_STATE_READONLY (1<<1) /* card is read-only */ |
253 | #define MMC_STATE_HIGHSPEED (1<<2) /* card is in high speed mode */ | 254 | #define MMC_STATE_BLOCKADDR (1<<2) /* card uses block-addressing */ |
254 | #define MMC_STATE_BLOCKADDR (1<<3) /* card uses block-addressing */ | 255 | #define MMC_CARD_SDXC (1<<3) /* card is SDXC */ |
255 | #define MMC_STATE_HIGHSPEED_DDR (1<<4) /* card is in high speed mode */ | 256 | #define MMC_CARD_REMOVED (1<<4) /* card has been removed */ |
256 | #define MMC_STATE_ULTRAHIGHSPEED (1<<5) /* card is in ultra high speed mode */ | 257 | #define MMC_STATE_DOING_BKOPS (1<<5) /* card is doing BKOPS */ |
257 | #define MMC_CARD_SDXC (1<<6) /* card is SDXC */ | 258 | #define MMC_STATE_SUSPENDED (1<<6) /* card is suspended */ |
258 | #define MMC_CARD_REMOVED (1<<7) /* card has been removed */ | ||
259 | #define MMC_STATE_HIGHSPEED_200 (1<<8) /* card is in HS200 mode */ | ||
260 | #define MMC_STATE_DOING_BKOPS (1<<10) /* card is doing BKOPS */ | ||
261 | #define MMC_STATE_SUSPENDED (1<<11) /* card is suspended */ | ||
262 | unsigned int quirks; /* card quirks */ | 259 | unsigned int quirks; /* card quirks */ |
263 | #define MMC_QUIRK_LENIENT_FN0 (1<<0) /* allow SDIO FN0 writes outside of the VS CCCR range */ | 260 | #define MMC_QUIRK_LENIENT_FN0 (1<<0) /* allow SDIO FN0 writes outside of the VS CCCR range */ |
264 | #define MMC_QUIRK_BLKSZ_FOR_BYTE_MODE (1<<1) /* use func->cur_blksize */ | 261 | #define MMC_QUIRK_BLKSZ_FOR_BYTE_MODE (1<<1) /* use func->cur_blksize */ |
@@ -418,11 +415,7 @@ static inline void __maybe_unused remove_quirk(struct mmc_card *card, int data) | |||
418 | 415 | ||
419 | #define mmc_card_present(c) ((c)->state & MMC_STATE_PRESENT) | 416 | #define mmc_card_present(c) ((c)->state & MMC_STATE_PRESENT) |
420 | #define mmc_card_readonly(c) ((c)->state & MMC_STATE_READONLY) | 417 | #define mmc_card_readonly(c) ((c)->state & MMC_STATE_READONLY) |
421 | #define mmc_card_highspeed(c) ((c)->state & MMC_STATE_HIGHSPEED) | ||
422 | #define mmc_card_hs200(c) ((c)->state & MMC_STATE_HIGHSPEED_200) | ||
423 | #define mmc_card_blockaddr(c) ((c)->state & MMC_STATE_BLOCKADDR) | 418 | #define mmc_card_blockaddr(c) ((c)->state & MMC_STATE_BLOCKADDR) |
424 | #define mmc_card_ddr_mode(c) ((c)->state & MMC_STATE_HIGHSPEED_DDR) | ||
425 | #define mmc_card_uhs(c) ((c)->state & MMC_STATE_ULTRAHIGHSPEED) | ||
426 | #define mmc_card_ext_capacity(c) ((c)->state & MMC_CARD_SDXC) | 419 | #define mmc_card_ext_capacity(c) ((c)->state & MMC_CARD_SDXC) |
427 | #define mmc_card_removed(c) ((c) && ((c)->state & MMC_CARD_REMOVED)) | 420 | #define mmc_card_removed(c) ((c) && ((c)->state & MMC_CARD_REMOVED)) |
428 | #define mmc_card_doing_bkops(c) ((c)->state & MMC_STATE_DOING_BKOPS) | 421 | #define mmc_card_doing_bkops(c) ((c)->state & MMC_STATE_DOING_BKOPS) |
@@ -430,11 +423,7 @@ static inline void __maybe_unused remove_quirk(struct mmc_card *card, int data) | |||
430 | 423 | ||
431 | #define mmc_card_set_present(c) ((c)->state |= MMC_STATE_PRESENT) | 424 | #define mmc_card_set_present(c) ((c)->state |= MMC_STATE_PRESENT) |
432 | #define mmc_card_set_readonly(c) ((c)->state |= MMC_STATE_READONLY) | 425 | #define mmc_card_set_readonly(c) ((c)->state |= MMC_STATE_READONLY) |
433 | #define mmc_card_set_highspeed(c) ((c)->state |= MMC_STATE_HIGHSPEED) | ||
434 | #define mmc_card_set_hs200(c) ((c)->state |= MMC_STATE_HIGHSPEED_200) | ||
435 | #define mmc_card_set_blockaddr(c) ((c)->state |= MMC_STATE_BLOCKADDR) | 426 | #define mmc_card_set_blockaddr(c) ((c)->state |= MMC_STATE_BLOCKADDR) |
436 | #define mmc_card_set_ddr_mode(c) ((c)->state |= MMC_STATE_HIGHSPEED_DDR) | ||
437 | #define mmc_card_set_uhs(c) ((c)->state |= MMC_STATE_ULTRAHIGHSPEED) | ||
438 | #define mmc_card_set_ext_capacity(c) ((c)->state |= MMC_CARD_SDXC) | 427 | #define mmc_card_set_ext_capacity(c) ((c)->state |= MMC_CARD_SDXC) |
439 | #define mmc_card_set_removed(c) ((c)->state |= MMC_CARD_REMOVED) | 428 | #define mmc_card_set_removed(c) ((c)->state |= MMC_CARD_REMOVED) |
440 | #define mmc_card_set_doing_bkops(c) ((c)->state |= MMC_STATE_DOING_BKOPS) | 429 | #define mmc_card_set_doing_bkops(c) ((c)->state |= MMC_STATE_DOING_BKOPS) |
diff --git a/include/linux/mmc/host.h b/include/linux/mmc/host.h index 0cf705c83998..a43853779799 100644 --- a/include/linux/mmc/host.h +++ b/include/linux/mmc/host.h | |||
@@ -17,6 +17,7 @@ | |||
17 | #include <linux/fault-inject.h> | 17 | #include <linux/fault-inject.h> |
18 | 18 | ||
19 | #include <linux/mmc/core.h> | 19 | #include <linux/mmc/core.h> |
20 | #include <linux/mmc/card.h> | ||
20 | #include <linux/mmc/pm.h> | 21 | #include <linux/mmc/pm.h> |
21 | 22 | ||
22 | struct mmc_ios { | 23 | struct mmc_ios { |
@@ -478,4 +479,26 @@ static inline unsigned int mmc_host_clk_rate(struct mmc_host *host) | |||
478 | return host->ios.clock; | 479 | return host->ios.clock; |
479 | } | 480 | } |
480 | #endif | 481 | #endif |
482 | |||
483 | static inline int mmc_card_hs(struct mmc_card *card) | ||
484 | { | ||
485 | return card->host->ios.timing == MMC_TIMING_SD_HS || | ||
486 | card->host->ios.timing == MMC_TIMING_MMC_HS; | ||
487 | } | ||
488 | |||
489 | static inline int mmc_card_uhs(struct mmc_card *card) | ||
490 | { | ||
491 | return card->host->ios.timing >= MMC_TIMING_UHS_SDR12 && | ||
492 | card->host->ios.timing <= MMC_TIMING_UHS_DDR50; | ||
493 | } | ||
494 | |||
495 | static inline bool mmc_card_hs200(struct mmc_card *card) | ||
496 | { | ||
497 | return card->host->ios.timing == MMC_TIMING_MMC_HS200; | ||
498 | } | ||
499 | |||
500 | static inline bool mmc_card_ddr52(struct mmc_card *card) | ||
501 | { | ||
502 | return card->host->ios.timing == MMC_TIMING_MMC_DDR52; | ||
503 | } | ||
481 | #endif /* LINUX_MMC_HOST_H */ | 504 | #endif /* LINUX_MMC_HOST_H */ |