Hi !
We are bringing up our OMAP4 platform using WL1273 and Android 2.3 (Gingerbread release L27.G.3).
We faced some problems while loading WLAN kernel module (tiwlan_drv.ko) after tapping
(Settings->Wireless & network->Wi-Fi).
Android log:
TIWLAN: driver init
TI WiLink 1283 SDIO: Driver loaded
D/Tethering( 1441): tiwlan0 is not a tetherable iface, ignoring
hPlatform_Wlan_Hardware_Init: timeout waiting for wifi device init
TIWLAN: hPlatform_initInterrupt() bad param drv->irq=0 handle_add=0xbf0013c0 !!!
wlanDrvIf_Create(): Failed to register interrupt handler!
E/Tethering( 1441): attempting to remove unknown iface (tiwlan0), ignoring
wlanDrvIf_Create: Fail, rc = -22
E/WifiService( 1441): Failed to load Wi-Fi driver.
As you can see drv->irq=0. But in platform configuration WLAN_IRQ is set to 605:
static struct wl12xx_platform_data omap4_panda_wlan_data __initdata = {
.irq = WLAN_IRQ,
.board_ref_clock = WL12XX_REFCLOCK_26,
.board_tcxo_clock = 1,
};
Module tiwlan_drv.ko is compiled as presented in
http://www.omappedia.org/wiki/PandaBoard_L27.12.1-P2_Release_Notes:
cd $YOUR_PATH/L27.12.1-P2/wlan/wl1283/platforms/os/linux
export KERNEL_DIR=$YOUR_PATH/L27.12.1-P2/kernel/android-2.6.35
make clean
make TNETW=1273
Could you please tell us what is a connection between kernel module (tiwlan_drv.ko)
and a staticly compiled in kernel part of WLAN driver ?
From where are the parameters like irq number taken ?
Do you have a detailed diagram of the structure of WLAN driver ?
Best regards,
Luke