WLAN board configuration
From OMAPpedia
|
[edit] GPIO Configuration
Brief summary of WLAN HW configuration in OMAP platforms.
WLAN is connected to OMAP via MMC lines and we also need a power enable GPIO and an irg GPIO.
Find below the summary of configurations of these two GPIOs in OMAP development platforms,
| OMAP Platform | WLAN PMEN | WLAN IRQ | MMC Controller |
|---|---|---|---|
| OMAP5 sEVM | GPIO 140 | GPIO 9 | 3 |
| OMAP5 uEVM (pandaboard) | GPIO 140 | GPIO 14 | 3 |
| OMAP4 Pandaboard | GPIO 43 | GPIO 53 | 5 |
| OMAP4 Blaze/Tablet | GPIO 54 | GPIO 53 | 5 |
| OMAP3 ZOOM | GPIO 101 | GPIO 162 | 3 |
[edit] Clock Configuration (fref,tcxo)
How to change clock configuration in kernel as per WiLink module being used.
The ref_clock and tcxo_clock configuration needs to define in kernel board file for functioning of WiFi. The clock configuration depends on COM module being used and the clock hardware architecture. The clock setting has to match the architecture otherwise the WLAN functionality will fail to work at all.
By default the board files for Blaze (arch/arm/mach-omap2/board-4430sdp.c) and Tablet (arch/arm/mach-omap2/board-44xx-tablet.c) configures both ref_clock and txco_clock to 26 MHz. This configuration is used for COM7 module.
static struct wl12xx_platform_data omap4_sdp4430_wlan_data __initdata = {
.irq = OMAP_GPIO_IRQ(GPIO_WIFI_IRQ),
.board_ref_clock = WL12XX_REFCLOCK_26,
.board_tcxo_clock = WL12XX_TCXOCLOCK_26,
};
Please change the clock configuration based on the clock being used in COM6, COM7, and COM8 modules.
Typical configurations:
COM6 (WL127x) module (with 38.4 MHz TCXO)
struct wl12xx_platform_data am335xevm_wlan_data = {
.irq = OMAP_GPIO_IRQ(AM335XEVM_WLAN_IRQ_GPIO),
.board_ref_clock = WL12XX_REFCLOCK_38_XTAL,
};
COM7 (WL128x) module
static struct wl12xx_platform_data omap4_sdp4430_wlan_data __initdata = {
.irq = OMAP_GPIO_IRQ(GPIO_WIFI_IRQ),
.board_ref_clock = WL12XX_REFCLOCK_26,
.board_tcxo_clock = WL12XX_TCXOCLOCK_26,
};
COM8 (WL18xx) module
static struct wl12xx_platform_data omap5_sdp5430_wlan_data __initdata = {
.irq = OMAP_GPIO_IRQ(GPIO_WIFI_IRQ),
.board_ref_clock = WL12XX_REFCLOCK_26,
.board_tcxo_clock = WL12XX_TCXOCLOCK_26,
};