TI Shared Transport Description and Support

From OMAPpedia

(Difference between revisions)
Jump to: navigation, search
m (moved TI ST Source to TI Shared Transport Description and Support: Relevant title for understandability)
Line 18: Line 18:
support different chipsets.
support different chipsets.
</i>
</i>
 +
 +
== Shared Transport Driver: Generic Driver for Connectivity ==
 +
A ''Shared Transport driver'' is a line discipline driver. It acts as a generic transport driver for Bluetooth, FM and GPS connectivity (for WL128x).
 +
 +
Each of those protocol drivers have a register and a unregister mechanisms with the shared transport driver. Upon registration the shared transport driver can do a concurrent write. The shared transport driver then would queue up the data and send it over the UART. When the shared transport driver receives any data it interprets the data and forwards it to the receiver protocol driver via callbacks.
 +
 +
Shared transport driver is a platform device driver. Hence, for any platform which has a WL127x/WL128x device and you want to make use of this device, and the accompanying driver, you may do so by including an entry in the architecture specific board file.
 +
 +
Illustration:
 +
 +
<pre>
 +
/* wl128x BT, FM, GPS connectivity chip */
 +
struct ti_st_plat_data wilink_pdata = {
 +
        .nshutdown_gpio = 55,
 +
        .dev_name = "/dev/ttyO1",
 +
        .flow_cntrl = 1,
 +
        .baud_rate = 3000000,
 +
};
 +
static struct platform_device wl128x_device = {
 +
        .name          = "kim",
 +
        .id            = -1,
 +
        .dev.platform_data = &wilink_pdata,
 +
};
 +
</pre>
 +
 +
Also, in one of the architecture specific ''init functions'' add:
 +
<pre>
 +
platform_device_register(&wl128x_device);
 +
</pre>
 +
== User-Space/Application Code ==
== User-Space/Application Code ==

Revision as of 18:13, 19 April 2011

Contents

Shared Transport support for WiLink Chipsets

TI's Shared Transport driver currently support WL127x and WL128x WiLink Chipsets.

The drivers are located at

drivers/misc/ti-st/

directory, and are available to be built

as modules by default under 'menuconfig --> device drivers --> misc devices'

On WL127x, support exists for

On WL128x, support exists for

Note: No significant changes exist in either the architecture or code to support different chipsets.

Shared Transport Driver: Generic Driver for Connectivity

A Shared Transport driver is a line discipline driver. It acts as a generic transport driver for Bluetooth, FM and GPS connectivity (for WL128x).

Each of those protocol drivers have a register and a unregister mechanisms with the shared transport driver. Upon registration the shared transport driver can do a concurrent write. The shared transport driver then would queue up the data and send it over the UART. When the shared transport driver receives any data it interprets the data and forwards it to the receiver protocol driver via callbacks.

Shared transport driver is a platform device driver. Hence, for any platform which has a WL127x/WL128x device and you want to make use of this device, and the accompanying driver, you may do so by including an entry in the architecture specific board file.

Illustration:

/* wl128x BT, FM, GPS connectivity chip */
struct ti_st_plat_data wilink_pdata = {
        .nshutdown_gpio = 55,
        .dev_name = "/dev/ttyO1",
        .flow_cntrl = 1,
        .baud_rate = 3000000,
};
static struct platform_device wl128x_device = {
        .name           = "kim",
        .id             = -1,
        .dev.platform_data = &wilink_pdata,
};

Also, in one of the architecture specific init functions add:

platform_device_register(&wl128x_device);


User-Space/Application Code

http://git.omapzoom.org/?p=platform/hardware/ti/wpan.git;a=summary

WL128x on OMAP4/Android platform

http://git.omapzoom.org/?p=kernel/omap.git;a=shortlog;h=refs/heads/p-android-omap-2.6.35

WL128x on OMAP4 platform (Non-Android)

http://dev.omapzoom.org/?p=raja/L24x-btfm.git;a=summary

WL127x on OMAP3/Android platform

http://git.omapzoom.org/?p=kernel/omap.git;a=shortlog;h=refs/heads/p-android-omap-2.6.29

Shared Transport drivers on kernel.org

Efforts on are going to get these drivers into mainline kernel http://kernel.org As of 2.6.37,

are available at drivers/misc/ti-st/ directory.


Back to Connectivity Home Page

Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox