return 0;
}
+void rk2928_usb_wifi_on(void)
+{
+ struct regulator *ldo;
+ ldo = regulator_get(NULL, "vmmc"); //vccio_wl
+ regulator_enable(ldo);
+ printk("%s: vccio_wl enable\n", __func__);
+ regulator_put(ldo);
+ udelay(100);
+}
+EXPORT_SYMBOL(rk2928_usb_wifi_on);
+void rk2928_usb_wifi_off(void)
+{
+ struct regulator *ldo;
+ ldo = regulator_get(NULL, "vmmc"); //vccio_wl
+ printk("%s: vccio_wl disable\n", __func__);
+ regulator_disable(ldo);
+ regulator_put(ldo);
+ udelay(100);
+}
+EXPORT_SYMBOL(rk2928_usb_wifi_off);
+
+
int tps65910_post_init(struct tps65910 *tps65910)
{
struct regulator *dcdc;
regulator_set_voltage(ldo,3300000,3300000);
regulator_enable(ldo);
printk("%s set vmmc vccio_wl=%dmV end\n", __func__, regulator_get_voltage(ldo));
+ regulator_disable(ldo);
regulator_put(ldo);
udelay(100);
return 0;
}
-
static struct regulator_consumer_supply tps65910_smps1_supply[] = {
{
.supply = "vdd1",
void board_gpio_resume(void);
void __sramfunc board_pmu_suspend(void);
void __sramfunc board_pmu_resume(void);
+#ifdef CONFIG_MACH_RK2928_A720
+void rk2928_usb_wifi_on(void);
+void rk2928_usb_wifi_off(void);
+#endif
extern struct sys_timer rk2928_timer;
#include <mach/gpio.h>\r
#include <mach/iomux.h>\r
#endif\r
+#include <mach/board.h>\r
\r
\r
#if (WIFI_GPIO_POWER_CONTROL == 1)\r
*/\r
int wifi_turn_on_rtl8192c_card(void)\r
{\r
+#ifdef CONFIG_MACH_RK2928_A720\r
+ rk2928_usb_wifi_on();\r
+#else\r
wifi_gpio_operate(&power_gpio, GPIO_SWITCH_ON);\r
+#endif\r
if (power_gpio.use_gpio != POWER_NOT_USE_GPIO)\r
msleep(1000);\r
\r
\r
int wifi_turn_off_card(void)\r
{\r
+#ifdef CONFIG_MACH_RK2928_A720\r
+ rk2928_usb_wifi_off();\r
+#else\r
wifi_gpio_operate(&power_gpio, GPIO_SWITCH_OFF);\r
+#endif\r
msleep(5);\r
\r
wifi_turn_off_callback();\r