summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorTom Rini <[email protected]>2025-04-11 08:50:55 -0600
committerTom Rini <[email protected]>2025-04-11 08:51:22 -0600
commit048266be426865282e8a482fe1f25bb919a9bfb8 (patch)
tree27772aa5d197dd95b038706928bc4f76d0a97b47 /include
parent7dd49a9264a6de349343a873e465e1a5fcd459e3 (diff)
parent7550bfdbf41b721f750a62b87a42a3329a2e2f81 (diff)
Merge tag 'mmc-2025-04-11' of https://source.denx.de/u-boot/custodians/u-boot-mmc
CI: https://source.denx.de/u-boot/custodians/u-boot-mmc/-/pipelines/25640 - Support Sandisk and Micron eMMC BOOT/RPMB hardware partition resizing - Optimize eMMC erasing time - Simplify poll CD logic - Fix possible Synchronous Abort for sdhci - Kconfig dependencies fix - Minor code update, return fail if mmc_complete_init, avoid uniniting twice
Diffstat (limited to 'include')
-rw-r--r--include/mmc.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/include/mmc.h b/include/mmc.h
index 81bccb4cf12..52cacfd0eab 100644
--- a/include/mmc.h
+++ b/include/mmc.h
@@ -79,6 +79,10 @@ struct bd_info;
#define IS_SD(x) ((x)->version & SD_VERSION_SD)
#define IS_MMC(x) ((x)->version & MMC_VERSION_MMC)
+#define CID_MANFID_MICRON 0x13
+#define CID_MANFID_SAMSUNG 0x15
+#define CID_MANFID_SANDISK 0x45
+
#define MMC_DATA_READ 1
#define MMC_DATA_WRITE 2
@@ -112,6 +116,7 @@ struct bd_info;
#define MMC_CMD62_ARG1 0xefac62ec
#define MMC_CMD62_ARG2 0xcbaea7
+#define MMC_CMD62_ARG_SANDISK 0x254ddec4
#define SD_CMD_SEND_RELATIVE_ADDR 3
#define SD_CMD_SWITCH_FUNC 6
@@ -205,6 +210,7 @@ static inline bool mmc_is_tuning_cmd(uint cmdidx)
/*
* EXT_CSD fields
*/
+#define EXT_CSD_BOOT_SIZE_MULT_MICRON 125 /* R/W, vendor specific field */
#define EXT_CSD_ENH_START_ADDR 136 /* R/W */
#define EXT_CSD_ENH_SIZE_MULT 140 /* R/W */
#define EXT_CSD_GP_SIZE_MULT 143 /* R/W */
@@ -759,7 +765,11 @@ struct mmc {
enum bus_mode user_speed_mode; /* input speed mode from user */
- CONFIG_IS_ENABLED(CYCLIC, (struct cyclic_info cyclic));
+ /*
+ * If CONFIG_CYCLIC is not set, struct cyclic_info is
+ * zero-size structure and does not add any space here.
+ */
+ struct cyclic_info cyclic;
};
#if CONFIG_IS_ENABLED(DM_MMC)