Merge tag 'mmc-10-10-2019' of https://gitlab.denx.de/u-boot/custodians/u-boot-mmc
- Add sdhci driver for Broadcom iProc platform - Add a driver callback for power-cycle for mmc - Implement host_power_cycle callback for stm32_sdmmc2 - spl: dm_mmc: Initialize only the required mmc device
This commit is contained in:
@@ -466,6 +466,16 @@ struct dm_mmc_ops {
|
||||
/* set_enhanced_strobe() - set HS400 enhanced strobe */
|
||||
int (*set_enhanced_strobe)(struct udevice *dev);
|
||||
#endif
|
||||
|
||||
/**
|
||||
* host_power_cycle - host specific tasks in power cycle sequence
|
||||
* Called between mmc_power_off() and
|
||||
* mmc_power_on()
|
||||
*
|
||||
* @dev: Device to check
|
||||
* @return 0 if not present, 1 if present, -ve on error
|
||||
*/
|
||||
int (*host_power_cycle)(struct udevice *dev);
|
||||
};
|
||||
|
||||
#define mmc_get_ops(dev) ((struct dm_mmc_ops *)(dev)->driver->ops)
|
||||
@@ -477,6 +487,7 @@ int dm_mmc_get_cd(struct udevice *dev);
|
||||
int dm_mmc_get_wp(struct udevice *dev);
|
||||
int dm_mmc_execute_tuning(struct udevice *dev, uint opcode);
|
||||
int dm_mmc_wait_dat0(struct udevice *dev, int state, int timeout_us);
|
||||
int dm_mmc_host_power_cycle(struct udevice *dev);
|
||||
|
||||
/* Transition functions for compatibility */
|
||||
int mmc_set_ios(struct mmc *mmc);
|
||||
@@ -485,6 +496,7 @@ int mmc_getwp(struct mmc *mmc);
|
||||
int mmc_execute_tuning(struct mmc *mmc, uint opcode);
|
||||
int mmc_wait_dat0(struct mmc *mmc, int state, int timeout_us);
|
||||
int mmc_set_enhanced_strobe(struct mmc *mmc);
|
||||
int mmc_host_power_cycle(struct mmc *mmc);
|
||||
|
||||
#else
|
||||
struct mmc_ops {
|
||||
@@ -494,6 +506,7 @@ struct mmc_ops {
|
||||
int (*init)(struct mmc *mmc);
|
||||
int (*getcd)(struct mmc *mmc);
|
||||
int (*getwp)(struct mmc *mmc);
|
||||
int (*host_power_cycle)(struct mmc *mmc);
|
||||
};
|
||||
#endif
|
||||
|
||||
@@ -698,6 +711,7 @@ void mmc_destroy(struct mmc *mmc);
|
||||
*/
|
||||
int mmc_unbind(struct udevice *dev);
|
||||
int mmc_initialize(bd_t *bis);
|
||||
int mmc_init_device(int num);
|
||||
int mmc_init(struct mmc *mmc);
|
||||
int mmc_send_tuning(struct mmc *mmc, u32 opcode, int *cmd_error);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user