From ad5a50ecd95aa3caa4587152ef3781ab40bedb7e Mon Sep 17 00:00:00 2001 From: CTCaer Date: Sun, 14 Jun 2020 13:31:16 +0300 Subject: [PATCH] emummc: Bail if emummc is not enabled --- bootloader/storage/emummc.c | 8 +++++--- bootloader/storage/sdmmc.c | 2 ++ 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/bootloader/storage/emummc.c b/bootloader/storage/emummc.c index eecc453..763ffd5 100644 --- a/bootloader/storage/emummc.c +++ b/bootloader/storage/emummc.c @@ -129,17 +129,19 @@ static int emummc_raw_get_part_off(int part_idx) int emummc_storage_init_mmc(sdmmc_storage_t *storage, sdmmc_t *sdmmc) { FILINFO fno; + emu_cfg.active_part = 0; + + // Always init eMMC even when in emuMMC. eMMC is needed from theh emuMMC driver anyway. if (!sdmmc_storage_init_mmc(storage, sdmmc, SDMMC_BUS_WIDTH_8, SDHCI_TIMING_MMC_HS400)) return 2; - if (h_cfg.emummc_force_disable) + if (!emu_cfg.enabled || h_cfg.emummc_force_disable) return 0; - emu_cfg.active_part = 0; if (!sd_mount()) goto out; - if (emu_cfg.enabled && !emu_cfg.sector) + if (!emu_cfg.sector) { strcpy(emu_cfg.emummc_file_based_path, emu_cfg.path); strcat(emu_cfg.emummc_file_based_path, "/eMMC"); diff --git a/bootloader/storage/sdmmc.c b/bootloader/storage/sdmmc.c index a6f8d8a..5becc4f 100644 --- a/bootloader/storage/sdmmc.c +++ b/bootloader/storage/sdmmc.c @@ -28,6 +28,8 @@ //#define DPRINTF(...) gfx_printf(__VA_ARGS__) #define DPRINTF(...) +u32 sd_power_cycle_time_start; + static inline u32 unstuff_bits(u32 *resp, u32 start, u32 size) { const u32 mask = (size < 32 ? 1 << size : 0) - 1;