Merge "platform: msm_shared: Add API to disable sdhc mode"
diff --git a/platform/msm_shared/include/sdhci_msm.h b/platform/msm_shared/include/sdhci_msm.h
index bc36348..93a8457 100644
--- a/platform/msm_shared/include/sdhci_msm.h
+++ b/platform/msm_shared/include/sdhci_msm.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2013, The Linux Foundation. All rights reserved.
+/* Copyright (c) 2013-2014, The Linux Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -110,5 +110,5 @@
void sdhci_msm_init(struct sdhci_host *host, struct sdhci_msm_data *data);
uint32_t sdhci_msm_execute_tuning(struct sdhci_host *host, uint32_t bus_width);
-
+void sdhci_mode_disable(struct sdhci_host *host);
#endif
diff --git a/platform/msm_shared/sdhci_msm.c b/platform/msm_shared/sdhci_msm.c
index 9c1129a..fb278a7 100644
--- a/platform/msm_shared/sdhci_msm.c
+++ b/platform/msm_shared/sdhci_msm.c
@@ -1,4 +1,4 @@
-/* Copyright (c) 2013, The Linux Foundation. All rights reserved.
+/* Copyright (c) 2013-2014, The Linux Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -623,3 +623,13 @@
host->msm_host->tuning_done = true;
return ret;
}
+
+/*
+ * API to disable HC mode
+ */
+void sdhci_mode_disable(struct sdhci_host *host)
+{
+ /* Disable HC mode */
+ RMWREG32((host->msm_host->pwrctl_base + SDCC_MCI_HC_MODE), SDHCI_HC_START_BIT, SDHCI_HC_WIDTH, 0);
+}
+