Index: linux-2.6.39.4/drivers/mmc/host/atmel-mci.c =================================================================== --- linux-2.6.39.4.orig/drivers/mmc/host/atmel-mci.c 2012-05-10 11:44:02.069173755 -0500 +++ linux-2.6.39.4/drivers/mmc/host/atmel-mci.c 2012-05-11 11:21:42.119198300 -0500 @@ -1059,6 +1059,10 @@ dev_dbg(&mmc->class_dev, "card is %spresent\n", present ? "" : "not "); } + else { + // jjg - assume card is present if detect pin is unset + present = 1; + } return present; } @@ -1655,8 +1659,12 @@ } } - if (!gpio_is_valid(slot->detect_pin)) - mmc->caps |= MMC_CAP_NEEDS_POLL; + // jjg - if detect pin isn't set, don't poll -- just assume device + // is there and mark it non-removable + if (!gpio_is_valid(slot->detect_pin)) { + dev_info(&host->pdev->dev,"No detect pin, marking non-removable and assuming device is present\n"); + mmc->caps |= MMC_CAP_NONREMOVABLE; + } if (gpio_is_valid(slot->wp_pin)) { if (gpio_request(slot->wp_pin, "mmc_wp")) {