Hello, I am probably working on a 'buggy hardware' based on i.MX6 that isn't able to manage a SDcard speed properly. I mean, u-boot starts, but as soon as I try to perform a fatload if the uImage the command won't work properly. I had the possibility to test the SoM on another carrier with a different layout and a different microSD connector and it works at every boot. The quick and dirty hack I found is to modify sd_switch() in drivers/mmc/mmc.c in this way
/* * Reduce SD/MMC speed * u-boot> mmc info * before : Tran Speed: 50000000 * after : Tran Speed: 25000000 */ printf("*** Skip support SD_HIGHSPEED in sd_change_freq\n") ; return 0; just before /* If high-speed isn't supported, we return */ if (!(__be32_to_cpu(switch_status[3]) & SD_HIGHSPEED_SUPPORTED)) return 0; the problem is that on 80% of the carrier boards the problem is still present. My questions are: 1. is this hack the best solution in this case or can you suggest me another better way to proceed? 2. would be possible to reduce the speed more than this and how? thank you in advance -- Marco _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot