On 24 September 2015 at 14:21, Muni Sekhar <munisekharrms@xxxxxxxxx> wrote: > Hi , > > We planned to use the standard Linux MMC driver for our FPGA based SD > Host controller hardware. > > I am having couple of doubts regarding SDIO voltage change > (sdhci_do_start_signal_voltage_switch()), please clarify me on this. > > The MMC driver sets and clears bit 3 of the HOST_CONTROL_2 register, > when an IO voltage change is required (1=1.8v, 0=3.3v). > > Our hardware detects a change in this bit value, and generates a new > interrupt when a change is seen. This interrupt will be controlled by > some new registers, outside of the standard Host Controller register > set. > > The interrupt handling routine shall, when seeing this interrupt, > program the desired SDIO IO voltage change. > > MMC driver expects the voltage change to complete within 5ms - there > is a fixed 5ms wait in the MMC driver’s > sdhci_do_start_signal_voltage_switch() function. But our hardware is > nowhere near capable of conducting a voltage change in 5ms. Instead > it’s of the order of ~300ms. Does it causes any issues later during > testing? If so what should be the best possible solution? I guess this is related to a regulator ramp up time somehow. I would advise you to model this IO voltage through a regulator and thus you can take care of the ramp up time within the regulator implementation. If that's not possible, we need a way to add a time suitable for your case. Kind regards Uffe -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html