Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc
[pandora-kernel.git] / include / linux / mmc / sd.h
index 3fd85e0..1ebcf9b 100644 (file)
@@ -9,14 +9,15 @@
  * your option) any later version.
  */
 
-#ifndef MMC_SD_H
-#define MMC_SD_H
+#ifndef LINUX_MMC_SD_H
+#define LINUX_MMC_SD_H
 
 /* SD commands                           type  argument     response */
   /* class 0 */
 /* This is basically the same command as for MMC with some quirks. */
 #define SD_SEND_RELATIVE_ADDR     3   /* bcr                     R6  */
 #define SD_SEND_IF_COND           8   /* bcr  [11:0] See below   R7  */
+#define SD_SWITCH_VOLTAGE         11  /* ac                      R1  */
 
   /* class 10 */
 #define SD_SWITCH                 6   /* adtc [31:0] See below   R1  */
 #define SD_APP_OP_COND           41   /* bcr  [31:0] OCR         R3  */
 #define SD_APP_SEND_SCR          51   /* adtc                    R1  */
 
+/* OCR bit definitions */
+#define SD_OCR_S18R            (1 << 24)    /* 1.8V switching request */
+#define SD_ROCR_S18A           SD_OCR_S18R  /* 1.8V switching accepted by card */
+#define SD_OCR_XPC             (1 << 28)    /* SDXC power control */
+#define SD_OCR_CCS             (1 << 30)    /* Card Capacity Status */
+
 /*
  * SD_SWITCH argument format:
  *
@@ -59,7 +66,7 @@
 
 #define SCR_SPEC_VER_0         0       /* Implements system specification 1.0 - 1.01 */
 #define SCR_SPEC_VER_1         1       /* Implements system specification 1.10 */
-#define SCR_SPEC_VER_2         2       /* Implements system specification 2.00 */
+#define SCR_SPEC_VER_2         2       /* Implements system specification 2.00-3.0X */
 
 /*
  * SD bus widths
@@ -84,5 +91,4 @@
 #define SD_SWITCH_ACCESS_DEF   0
 #define SD_SWITCH_ACCESS_HS    1
 
-#endif
-
+#endif /* LINUX_MMC_SD_H */