summaryrefslogtreecommitdiff
path: root/drivers/mmc/tegra2_mmc.h
diff options
context:
space:
mode:
authorStephen Warren <swarren@nvidia.com>2011-10-31 06:51:36 +0000
committerAlbert ARIBAUD <albert.u.boot@aribaud.net>2011-12-09 17:30:08 +0100
commit9877841f6bba3723f5d21cc58eb99f3417e90725 (patch)
treef49cfd7af63e74b3e02cafbbf95e2d484e39dddc /drivers/mmc/tegra2_mmc.h
parentae03661fda98465420016b410a27e6bf2a3c03f4 (diff)
downloadu-boot-imx-9877841f6bba3723f5d21cc58eb99f3417e90725.zip
u-boot-imx-9877841f6bba3723f5d21cc58eb99f3417e90725.tar.gz
u-boot-imx-9877841f6bba3723f5d21cc58eb99f3417e90725.tar.bz2
tegra2: Modify MMC driver to handle power and cd GPIOs
Pass the GPIO numbers for power and card detect to tegra2_mmc_init(), and modify that function to perform all required GPIO initialization. This removes the need for board files to perform these operations. Move board_mmc_getcd() into tegra2_mmc.c now that the driver knows which GPIOs to use. Update affected call-sites in seaboard.c and harmony.c. Note that this change should make all SD ports work on Harmony, since the required GPIO setup is now being performed. v4: Fix prototype of tegra2_mmc_init() in board.h to match driver change. Remove prototype of gpio_config_mmc() from board.h Signed-off-by: Stephen Warren <swarren@nvidia.com> Cc: Andy Fleming <afleming@gmail.com> Tested-by: Simon Glass <sjg@chromium.org> Acked-by: Simon Glass <sjg@chromium.org> Acked-by: Andy Fleming <afleming@freescale.com> Signed-off-by: Tom Warren <twarren@nvidia.com>
Diffstat (limited to 'drivers/mmc/tegra2_mmc.h')
-rw-r--r--drivers/mmc/tegra2_mmc.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/mmc/tegra2_mmc.h b/drivers/mmc/tegra2_mmc.h
index 671583c..b2f6c5b 100644
--- a/drivers/mmc/tegra2_mmc.h
+++ b/drivers/mmc/tegra2_mmc.h
@@ -123,9 +123,11 @@ struct mmc_host {
unsigned int clock; /* Current clock (MHz) */
unsigned int base; /* Base address, SDMMC1/2/3/4 */
enum periph_id mmc_id; /* Peripheral ID: PERIPH_ID_... */
+ int pwr_gpio; /* Power GPIO */
+ int cd_gpio; /* Change Detect GPIO */
};
-int tegra2_mmc_init(int dev_index, int bus_width);
+int tegra2_mmc_init(int dev_index, int bus_width, int pwr_gpio, int cd_gpio);
#endif /* __ASSEMBLY__ */
#endif /* __TEGRA2_MMC_H_ */