Merge tag 'mmc-2020-3-9' of https://gitlab.denx.de/u-boot/custodians/u-boot-mmc
- DM support for CAxxxx SoCs - eMMC board for presidio-asic - Add defer probe for mmc sdhci - TI SoCs mmc misc update
This commit is contained in:
@@ -127,8 +127,6 @@
|
||||
#define CONFIG_SYS_MMC_ENV_PART 1
|
||||
#endif
|
||||
|
||||
#define CONFIG_SUPPORT_EMMC_BOOT
|
||||
|
||||
/* Now for the remaining common defines */
|
||||
#include <configs/ti_armv7_common.h>
|
||||
|
||||
|
||||
@@ -15,6 +15,8 @@
|
||||
#include <linux/dma-direction.h>
|
||||
#include <part.h>
|
||||
|
||||
struct bd_info;
|
||||
|
||||
#if CONFIG_IS_ENABLED(MMC_HS200_SUPPORT)
|
||||
#define MMC_SUPPORTS_TUNING
|
||||
#endif
|
||||
@@ -407,6 +409,14 @@ struct mmc;
|
||||
|
||||
#if CONFIG_IS_ENABLED(DM_MMC)
|
||||
struct dm_mmc_ops {
|
||||
/**
|
||||
* deferred_probe() - Some configurations that need to be deferred
|
||||
* to just before enumerating the device
|
||||
*
|
||||
* @dev: Device to init
|
||||
* @return 0 if Ok, -ve if error
|
||||
*/
|
||||
int (*deferred_probe)(struct udevice *dev);
|
||||
/**
|
||||
* send_cmd() - Send a command to the MMC device
|
||||
*
|
||||
@@ -490,6 +500,7 @@ 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);
|
||||
int dm_mmc_deferred_probe(struct udevice *dev);
|
||||
|
||||
/* Transition functions for compatibility */
|
||||
int mmc_set_ios(struct mmc *mmc);
|
||||
@@ -499,6 +510,7 @@ 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);
|
||||
int mmc_deferred_probe(struct mmc *mmc);
|
||||
|
||||
#else
|
||||
struct mmc_ops {
|
||||
@@ -533,7 +545,6 @@ struct sd_ssr {
|
||||
|
||||
enum bus_mode {
|
||||
MMC_LEGACY,
|
||||
SD_LEGACY,
|
||||
MMC_HS,
|
||||
SD_HS,
|
||||
MMC_HS_52,
|
||||
@@ -603,6 +614,7 @@ struct mmc {
|
||||
bool clk_disable; /* true if the clock can be turned off */
|
||||
uint bus_width;
|
||||
uint clock;
|
||||
uint saved_clock;
|
||||
enum mmc_voltage signal_voltage;
|
||||
uint card_caps;
|
||||
uint host_caps;
|
||||
@@ -712,7 +724,7 @@ void mmc_destroy(struct mmc *mmc);
|
||||
* @return 0 if OK, -ve on error
|
||||
*/
|
||||
int mmc_unbind(struct udevice *dev);
|
||||
int mmc_initialize(bd_t *bis);
|
||||
int mmc_initialize(struct bd_info *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);
|
||||
@@ -857,8 +869,8 @@ void mmc_set_preinit(struct mmc *mmc, int preinit);
|
||||
#endif
|
||||
|
||||
void board_mmc_power_init(void);
|
||||
int board_mmc_init(bd_t *bis);
|
||||
int cpu_mmc_init(bd_t *bis);
|
||||
int board_mmc_init(struct bd_info *bis);
|
||||
int cpu_mmc_init(struct bd_info *bis);
|
||||
int mmc_get_env_addr(struct mmc *mmc, int copy, u32 *env_addr);
|
||||
# ifdef CONFIG_SYS_MMC_ENV_PART
|
||||
extern uint mmc_get_env_part(struct mmc *mmc);
|
||||
|
||||
@@ -268,6 +268,7 @@ struct sdhci_ops {
|
||||
void (*set_clock)(struct sdhci_host *host, u32 div);
|
||||
int (*platform_execute_tuning)(struct mmc *host, u8 opcode);
|
||||
void (*set_delay)(struct sdhci_host *host);
|
||||
int (*deferred_probe)(struct sdhci_host *host);
|
||||
};
|
||||
|
||||
#if CONFIG_IS_ENABLED(MMC_SDHCI_ADMA)
|
||||
|
||||
Reference in New Issue
Block a user