Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit da5d1f4c authored by Yusuke Goda's avatar Yusuke Goda Committed by Paul Mundt
Browse files

ARM: mach-shmobile: mackerel: Add support get_cd in CN23

parent e54be894
Loading
Loading
Loading
Loading
+14 −0
Original line number Diff line number Diff line
@@ -729,6 +729,15 @@ static struct platform_device sdhi1_device = {
};
#endif

/*
 * The card detect pin of the top SD/MMC slot (CN23) is active low and is
 * connected to GPIO SCIFB_SCK of SH7372 (GPIO_PORT162).
 */
static int slot_cn23_get_cd(struct platform_device *pdev)
{
	return !gpio_get_value(GPIO_PORT162);
}

/* SDHI2 */
static struct sh_mobile_sdhi_info sdhi2_info = {
	.dma_slave_tx	= SHDMA_SLAVE_SDHI2_TX,
@@ -736,6 +745,7 @@ static struct sh_mobile_sdhi_info sdhi2_info = {
	.tmio_flags	= TMIO_MMC_WRPROTECT_DISABLE,
	.tmio_caps	= MMC_CAP_SD_HIGHSPEED |
			  MMC_CAP_NEEDS_POLL,
	.get_cd		= slot_cn23_get_cd,
};

static struct resource sdhi2_resources[] = {
@@ -1127,6 +1137,10 @@ static void __init mackerel_init(void)
	gpio_request(GPIO_FN_SDHID2_1, NULL);
	gpio_request(GPIO_FN_SDHID2_0, NULL);

	/* card detect pin for microSD slot (CN23) */
	gpio_request(GPIO_PORT162, NULL);
	gpio_direction_input(GPIO_PORT162);

	/* MMCIF */
	gpio_request(GPIO_FN_MMCD0_0, NULL);
	gpio_request(GPIO_FN_MMCD0_1, NULL);