不是 因为WiFi厂商提供的驱动源码是基于三星板子的 ,所以他们的源码是这样的:
void bcm_wlan_power_on(int flag)
{
if (flag == 1) {
printk("======== PULL WL_REG_ON HIGH! ========\n");
gpio_set_value(EXYNOS4_GPK1(0), 1);
mdelay(100);
printk("======== Card detection to detect SDIO card ========\n");
sdhci_s3c_force_presence_change(&sdmmc_channel, 1);
} else {
printk("======== PULL WL_REG_ON HIGH! (flag = %d) ========\n", flag);
gpio_set_value(EXYNOS4_GPK1(0), 1);
}
}
void bcm_wlan_power_off(int flag)
{
if (flag == 1) {
printk("======== Card detection to remove SDIO card ========\n");
sdhci_s3c_force_presence_change(&sdmmc_channel, 0);
mdelay(100);
printk("======== PULL WL_REG_ON LOW! ========\n");
gpio_set_value(EXYNOS4_GPK1(0), 0);
} else {
printk("======== PULL WL_REG_ON LOW! (flag = %d) ========\n", flag);
gpio_set_value(EXYNOS4_GPK1(0), 0);
}
}
那个引脚定义改过来倒是简单,可 sdhci_s3c_force_presence_change 这个函数编译不过我当时就直接屏蔽了,现在厂商那边说就是这个函数导致了这个问题,所以需要找到平台中和这个函数匹配的替换掉,可这驱动源码中也没有sdhci_s3c_force_presence_change 这个函数的原型 ,我也不知道去哪给它找个匹配的
|