Skip to content

Commit

Permalink
Merge pull request Samsung#1185 from dr-venkman/edit_wifi_porting_guide
Browse files Browse the repository at this point in the history
Edit WiFi Porting Guide
  • Loading branch information
sangwon03 authored Jan 15, 2018
2 parents 92142a4 + 46e199c commit 07996bc
Showing 1 changed file with 17 additions and 1 deletion.
18 changes: 17 additions & 1 deletion docs/HowToPortTizenRTOnWiFiChipset.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
There are two cases to consider towards porting TizenRT on a new WiFi chipset. The specific case depends on the vendor's decision to either use their proprietary supplicant codebase, or
to directly use TizenRT's WiFi solution.

Below are mentioned the two cases in detail. Additionally, instructions are provided to incorporate the WiFi chipset driver in TizenRT's code tree. Specifically, details are provided
Below are mentioned the two cases in detail. Additionally, we provide guidelines on how to interface TizenRT's WiFi Manager to the newly added chipset. Lastly, instructions are provided to incorporate the WiFi chipset driver in TizenRT's code tree. Specifically, details are provided
to interface driver to network stack, and to get/set WiFi configuration from a higher abstraction layer.

## How to add external WiFi library
Expand Down Expand Up @@ -69,6 +69,22 @@ const struct wpa_driver_ops *const wpa_drivers[] = {
```
This links the supplicant to the relevant WiFi driver.

## Interfacing to WiFi Manager

TizenRT features a generic WiFi Manager framework (API located at *framework/inc/wifi_manager*) for applications.
The WiFi Manager framework implements specific WiFi utility functions that will directly
talk to the WiFi supplicant software. Also, in case of a proprietary WiFi API used over WiFi supplicant, the developer
should invoke those APIs using the WiFi utility functions. TizenRT provides a standard API for WiFi utilities, which is declared under
*framework/src/wifi_manager/wifi_utils.h*. Please make sure you create a new WiFi utility file named *wifi_utils_<supplicant_prefix>.c* in the same
folder, and interface to the WiFi supplicant, using the API in *wifi_utils.h*. Developers are encouraged to consult *wifi_utils_wpa.c* as a reference implementation
that interfaces to TizenRT's WPA_SUPPLICANT. Finally, to build the utility file that you have created, please edit *framework/src/wifi_manager/Make.defs*,
and add the following lines as shown below:

```
ifeq ($(CONFIG_<SUPPLICANT_LIBRARY_NAME>), y)
CSRCS += wifi_utils_<supplicant_prefix>.c
endif
```

## Incorporating WiFi Chipset Driver

Expand Down

0 comments on commit 07996bc

Please sign in to comment.