#ifdef CUSTOMER_HW_AMLOGIC
extern void sdio_reinit(void);
extern void extern_wifi_set_enable(int is_on);
+extern void pci_remove_reinit(unsigned int vid, unsigned int pid, int delBus);
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 14, 0))
extern int wifi_irq_num(void);
#endif
}
}
#ifdef CUSTOMER_HW_AMLOGIC
+#ifdef BCMSDIO
extern_wifi_set_enable(0);
mdelay(200);
extern_wifi_set_enable(1);
mdelay(200);
// sdio_reinit();
#endif
+#endif
#if defined(BUS_POWER_RESTORE)
#if defined(BCMSDIO)
if (adapter->sdio_func && adapter->sdio_func->card && adapter->sdio_func->card->host) {
#ifdef CUSTOMER_HW_AMLOGIC
sdio_reinit();
#endif
-#elif defined(BCMPCIE)
- printf("======== Card detection to detect PCIE card! ========\n");
#endif
} else {
#if defined(BCMSDIO)
#endif
#elif defined(BCMPCIE)
printf("======== Card detection to remove PCIE card! ========\n");
+ extern_wifi_set_enable(0);
+ mdelay(200);
#endif
}
#endif /* BUS_POWER_RESTORE */
gpio_wl_host_wake = -1;
#endif
+#if defined(BCMPCIE)
+ printf("======== Card detection to detect PCIE card! ========\n");
+ pci_remove_reinit(0x14e4, 0x43ec, 1);
+#endif
printf("%s: GPIO(WL_REG_ON) = %d\n", __FUNCTION__, gpio_wl_reg_on);
if (gpio_wl_reg_on >= 0) {
err = gpio_request(gpio_wl_reg_on, "WL_REG_ON");