msm: 9615: Add hardware based SD/MMC card detection

Change-Id: Id31f289b271b39070daefae7057da5ca4a9937a1
Signed-off-by: Krishna Konda <kkonda@codeaurora.org>
Signed-off-by: Ramakrishna Prasad N <crpn@codeaurora.org>
diff --git a/arch/arm/mach-msm/board-9615.c b/arch/arm/mach-msm/board-9615.c
index 40cbee0..cf92347 100644
--- a/arch/arm/mach-msm/board-9615.c
+++ b/arch/arm/mach-msm/board-9615.c
@@ -198,7 +198,8 @@
 #if (defined(CONFIG_MMC_MSM_SDC1_SUPPORT)\
 	|| defined(CONFIG_MMC_MSM_SDC2_SUPPORT))
 
-#define GPIO_SDCARD_PWR_EN 18
+#define GPIO_SDCARD_PWR_EN	18
+#define GPIO_SDC1_HW_DET	80
 
 /* MDM9x15 have 2 SDCC controllers */
 enum sdcc_controllers {
@@ -373,6 +374,11 @@
 	.sup_clk_cnt	= ARRAY_SIZE(sdc1_sup_clk_rates),
 	.sdcc_v4_sup    = true,
 	.pin_data	= &mmc_slot_pin_data[SDCC1],
+#ifdef CONFIG_MMC_MSM_CARD_HW_DETECTION
+	.status_gpio	= GPIO_SDC1_HW_DET,
+	.status_irq	= MSM_GPIO_TO_INT(GPIO_SDC1_HW_DET),
+	.irq_flags	= IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,
+#endif
 };
 static struct mmc_platform_data *msm9615_sdc1_pdata = &sdc1_data;
 #else