NOTICE: The Processors Wiki will End-of-Life on January 15, 2021. It is recommended to download any files or other content you may need that are hosted on processors.wiki.ti.com. The site is now set to read only.
WL18xx First Time Getting Started Guide (IMX6SL)
Contents
- 1 Hardware
- 2 Preparing the Environment
- 3 Building Everything From Sources
- 3.1 fetching and building the imx kernel source code
- 3.2 Patching the kernel for WiLink8 build
- 3.3 Installing build artifacts into the file system
- 3.4 Building WiLink8 related artifacts
- 3.5 Installing WiLink8 build artifacts into the rootfs partition of your sdcard
- 3.6 Required Connection for HW Integration design
- 4 Running the Demos
Hardware[edit]
- i.MX Solo lite EVK board (imx6sl-evk): See This Link
- TI WiLink™ WL18xx WLAN SDIO/BT UART adapter Board: wl18xxcom82sdmmc Adapter kit
- TI - WL1835MOD COM8 Kit ,* or TI WL1837MOD COM8 Kit
- SD Card (2GB minimum)
- 5V Power supply
- microUSB cable
Preparing the Environment[edit]
Configure your Host PC - Serial Terminal[edit]
In order to communicate with the IMX6SLEVK board and run the WLAN/BT demos, a serial port terminal program must be installed on your host PC.
For Windows, you could use Teraterm or PuTTY. For Linux, we recommend Minicom.
Open PC's serial port terminal program and use the following settings:
Baud rate: 115200 Data : 8 bit Parity: None Stop: 1 bit Flow control: none Transmit delay msec/char: 1 Transmit delay msec/line: 1
Setup your IMX6SLEVK board[edit]
This section will walk you through setting-up your IMX6SLEVK board for use with the WiLink8 Demos:
- Plug the WL18xx SDIO Board into the SD3 port of the IMX6SLEVK board
Important Note: 7 lines should be connected between the wl18xxcom82sdmmc adapter board jumpers and SD1 port of the IMX6SLEVK following the table: BT UART interface (TX,RX,RTS,CTS) - 4 Yellow wires WL IRQ line - White wire
BT/WL enable lines - Blue/Green wire respectfully
Detailed connection scheme
The adapter board comes with default jumpers assembly to work with a host [wl18xxcom82sdmmc User guide] .
- Plug the WL18xxMOD COM8 Kit into the WL18xx SDIO Board.
- Insert the SD card loaded with the latest image to the SD2 port of the IMX6SLEVK board.
- Plug the USB cable into your host PC and plug it to the IMX6SLEVK board USB port J26.
- Plug the 5V Power supply into the IMX6SLEVK board power jack J6and power on the EVM using PWR switch SW14.
Building Everything From Sources[edit]
To build and integrate the WiLink8 related software components into your own file system, you need to start by getting the official imx linux kernel source. The kernel source code is available at the following git:
git.freescale.com/git/cgit.cgi/imx/linux-2.6-imx.git
fetching and building the imx kernel source code[edit]
1. create a working directory on you linux host
2. clone the git to this location
3. Checkout the release tag (currently rel_imx_3.10.53_1.1.0_ga)
mkdir ~/imx cd ~/imx git clone http://git.freescale.com/git/cgit.cgi/imx/linux-2.6-imx.git git checkout rel_imx_3.10.53_1.1.0_ga
Patching the kernel for WiLink8 build[edit]
The WiLink8 drivers are built out of tree using the build script provided here. These scripts now also provide the option to apply all the patched required to the i.Mx kernel to add WiLink8 Wifi and Bluetooth as well as patching the device tree files for the EVK and SABRE boards to enable them. So initial step is to download the script (step 1 on link) and then modify setup-env for your configuration (step 2). They key item here is to add KERNEL_VARIANT to setup-env in order to get the script to patch the rel_imx_3.10.53_1.1.0_ga release.
... export KERNEL_VARIANT=imx-3.10.53 ...
Next step is to apply the required patches to the kernel
./build_wl18xx.sh patch_kernel
Now the kernel can be built with these patches applied as follows from inside the kernel source directory:
ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- make imx_v7_defconfig ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- make zImage modules dtbs
Installing build artifacts into the file system[edit]
Assuming your sdcard has two partions (boot and rootfs) and is mounted at /media/boot and /media/rootfs the following commands can be used to install all build artifacts into your sdcard:
- from the kernel source directory run the following command to install the kernel modules into your file system
ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- make modules_install INSTALL_MOD_PATH=/media/rootfs
- copy the zImage and .dtb file for the IMX6SLEVK board to your boot partition
cp arch/arm/boot/zImage /media/boot cp arch arm/boot/dts/imxsl-evk.dtb /media/boot
[edit]
Now the kernel has been built the next stage is to do a full build of the WiLink8 related components using the build script. This is done by following step 3 (download code) and step 4 (build drivers) from WL18xx System Build Scripts page.
Installing WiLink8 build artifacts into the rootfs partition of your sdcard[edit]
Once a full ./build_wl18xx.sh has been completed, a tar file containing all build artifacts is created inside the outputs directory inside the build-utilites directory.
This tar file is called fs_skeleton.tbz2
extract the content of this tar file on top of your rootfs sdcard partition.
See the following example:
cd /media/rootfs sudo tar xf ~/build-utilities/outputs/fs_skeleton.tbz2 depmod -a
Required Connection for HW Integration design[edit]
NOTE The connection is based on i.MX Solo lite EVK board with PCIMX6L8DVN10AA device)
Following pin to pin connections are required in order to integrate smoothly WL8 Ti module with IMXSL device.
IMXSL Line name | IMXSL pin | WL8 module pin | WL8 Line name |
---|---|---|---|
SD1_DAT7
|
A19
|
51
|
HCI UART CTS
|
SD1_DAT6
|
A20
|
50
|
HCI UART RTS
|
SD1_DAT5
|
A21
|
52
|
HCI UART TX
|
SD1_DAT4
|
A22
|
53
|
HCI UART RX
|
SD1_DAT3
|
B22
|
41
|
BT EN
|
SD1_DAT2
|
C22
|
40
|
WL EN
|
SD1_DAT1
|
A23
|
14
|
WL IRQ
|
SD3_DAT3
|
AD12
|
13
|
WL SDIO D3
|
SD3_DAT2
|
AC12
|
12
|
WL SDIO D2
|
SD3_DAT1
|
AD11
|
11
|
WL SDIO D1
|
SD3_DAT0
|
AC11
|
10
|
WL SDIO D0
|
SD3_CLK
|
AB11
|
8
|
WL SDIO CLK
|
SD3_CMD
|
AA11
|
6
|
WL SDIO CMD
|
Running the Demos[edit]
Boot the Board[edit]
To boot the board, simply apply power to the board by plugging in the 5V Power Supply. If the USB cable is plugged in and the serial port is configured correctly, you should see the output on your serial terminal(will take 1-2 min to load). You will see the board reach u-boot, and then automatically boot into the Linux kernel.
When prompted for a login, use root.
Demo Guide[edit]
The demos for both BT & WLAN is available on the main WL18xx page