WEC7 PCIe Driver support for i.MX6Q

WEC7 PCIe Driver support for i.MX6Q

iWave’s Windows Embedded Compact 7 (WEC7) BSP on iWave’s i.MX6 Development Platform and Freescale’s SABRE SDP platform supports RS232 Serial Console port, SDHC, USB 2.0 Host, USB2.0 device, Ethernet, 7” TFT LCD, Touch Screen support, SATA HDD port, HDMI port and also necessary hardware codecs supported by the CPU. Debugging tools like KITL and Active Sync are also supported.

iWave has extended its support to PCIe controller in i.MX6 processor in its WEC7 BSP using generic PCI Bus driver in WEC7.

Peripheral Component Interconnect Express (PCIe or PCI-E) is a serial expansion bus standard for connecting a processor to one or more peripheral devices. The peripheral can be a memory device such as hard disk, or sound or video card, Ethernet or WiFi controller etc.

The WEC7 PCI bus driver is responsible for configuration, power control, bus address translation, and loading the client drivers.

OAL layer in iWave’s BSP takes care of hardware initialization of PCIe controller, and link up of PCIe device. OAL layer also implements the functions to read and write config area of PCIe. PCI bus uses these functions from OAL layer to read/write the config space of PCIe. PCI bus also looks for the matches for the connected device in registry, and loads the client driver accordingly.

iWave has also developed PCIe test driver and application using which user can see a list of attached PCIe devices. This will help a driver developer to select/develop corresponding PCIe client driver.

In addition, iWave can also do customization service for integration of the various PCIe module drivers such as Ethernet and WiFi PCIe drivers withWEC7 on Freescale’s i.MX6.

PCIe Driver features:

iWave WEC7 PCIe driver supports the following features:

1. Enumeration of the PCIe Endpoint device and listing

2. Enumeration of the PCIe switch/bridge and listing

3. Configuration Read/Write

4. Memory Read/Write

5. IO Read/Write

6. PCIe test application for listing of connected PCIe devices


Any PCIe device with WEC7 driver binaries can be merged easily to iWave’s WEC7 BSP and PCIe device can be plugged in to the development board and used. PCI bus will take care of loading of the client driver, by using driver’s registry.

Expansions such as WiFi, Ethernet, USB can be connected easily.

Peripheral performance will be high, because of PCI bus used.

Effective use of the i.MX6 hardware and WEC7 supported features.

Target Applications:


Industrial HMI

PCIe client driver,

PCIe Endpoint,

WEC7 PCI bus driver,

Architecture of PCIe bus interface,

PCIe controller driver,

PCIe module drivers,

Intel 82574L module,

WINCE network drivers,

Config space of PCIe