WP7607 SDIO voltage levels

The SDIO data lines voltage is specified in the datasheet to have two levels 1.8V/2.85V

Is there a way to tell the WP7607 to use SDIO data signals at 1.8V and if yes how?

Seems this is controlled by protocol negotiation.

I saw the folowing in yocto source about mmc card which seems can set the voltage, you can give a try:

/kernel/driver/mmc/core/core.c, in function mmc_power_up(),

/* Try to set signal voltage to 3.3V but fall back to 1.8v or 1.2v */
// if (__mmc_set_signal_voltage(host, MMC_SIGNAL_VOLTAGE_330) == 0)
// dev_dbg(mmc_dev(host), “Initial signal voltage of 3.3v\n”);
// else if (__mmc_set_signal_voltage(host, MMC_SIGNAL_VOLTAGE_180) == 0)
if (__mmc_set_signal_voltage(host, MMC_SIGNAL_VOLTAGE_180) == 0)
dev_dbg(mmc_dev(host), “Initial signal voltage of 1.8v\n”);
else if (__mmc_set_signal_voltage(host, MMC_SIGNAL_VOLTAGE_120) == 0)
dev_dbg(mmc_dev(host), “Initial signal voltage of 1.2v\n”);

Thanks for the info, this solved part of the problem

Our application is battery operated and as such the Wi-Fi module is switched off until it is needed
We see that on power up the WP7607 tries to access the SDIO bus in 1.8V and then in 2.85V and then it decides that there is no SDIO user.
1 - is it possible to stop the WP7607 from searching SDIO device on power up?
2 - is there a HW siganl that the WP7607 is checking to decide if to start negotiations on the SDIO bus?
3 - How to restart the SDIO bus negotiation on demand (after Wi-Fi module power up) and to ensure it does the negotiations only at 1.8V?
4 - is there a special procedure to do before disconnecting the communication with the Wi-Fi module so it can be switched off?
5 - Is it possible to save last session parameters in order to reestablish connection with the Wi-Fi module faster next time the Wi-Fi module is powered?


  1. Have you tried the sd card detect pin?
  2. Better consult the wifi vendor

Thanks for the prompt response

Please answer on points 1, 4 & 5
point 3 - I found a possible answer in StackExchange Linux forum, I’ll try it


4.5 Better consult the wifi vendor

  1. If i remember correctly, the default voltage for sd is 3V
  1. Another method is to use level shifter, you can refer to the mangoh schematic

We managed to make the WP7607 work only at 1.8V SDIO signal levels

Do you use level shifter?

No, we managed to find the place in the SDIO driver and modify it to work only at 1.8V