diff --git a/docs/wls-lib.rst b/docs/wls-lib.rst
new file mode 100644
index 0000000..12c303c
--- /dev/null
+++ b/docs/wls-lib.rst
@@ -0,0 +1,76 @@
+..    Copyright (c) 2019 Intel
+..
+..  Licensed under the Apache License, Version 2.0 (the "License");
+..  you may not use this file except in compliance with the License.
+..  You may obtain a copy of the License at
+..
+..      http://www.apache.org/licenses/LICENSE-2.0
+..
+..  Unless required by applicable law or agreed to in writing, software
+..  distributed under the License is distributed on an "AS IS" BASIS,
+..  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+..  See the License for the specific language governing permissions and
+..  limitations under the License.
+
+.. |br| raw:: html
+
+   <br /> 
+   
+Wls Lib Overview
+================
+
+The Wls_lib is a Wireless Service library that supports shared memory and buffer management used by applications |br| 
+implementing a gNb or eNb. |br|
+This library uses DPDK, libhugetlbfs and pthreads to provide memcpy less data exchange between an L2 application, |br|
+API Translator Module and a L1 application by sharing the same memory zone from the DPDK perspective.
+
+Project Resources
+-----------------
+
+The source code is avalable from the Linux Foundation Gerrit server:
+    `<https://gerrit.o-ran-sc.org/r/gitweb?p=o-du%2Fphy.git;a=summary>`_
+    
+The build (CI) jobs will be in the Linux Foundation Jenkins server:
+    `<https://jenkins.o-ran-sc.org>`_
+
+Issues are tracked in the Linux Foundation Jira server:
+    `<https://jira.o-ran-sc.org/secure/Dashboard.jspa>`_
+
+Project information is available in the Linux Foundation Wiki:
+    `<https://wiki.o-ran-sc.org>`_
+    
+
+Library Functions
+-----------------
+
+* **WLS_Open() and WLS_Open_Dual()** that open a single or dual wls instance interface and registers the instance with the kernel space driver.
+    
+* **WLS_Close(), WLS_Close1()** closes the wls instance and deregisters it from the kernel space driver.
+
+* **WLS_Ready(), WLS_Ready1()** checks state of remote peer of WLS interface and returns 1 if remote peer is available.
+    
+* **WLS_Alloc()** allocates a memory block for data exchange shared memory. This block uses hugepages.
+
+* **WLS_Free()** frees memory block for data exchange shared memory.
+
+* **WLS_Put(), WLS_Put1()** puts memory block (or group of blocks) allocated from WLS memory into the interface for transfer to remote peer.
+
+* **WLS_Check(), WLS_Check1()** checks if there are memory blocks with data from remote peer and returns number of blocks available for "get" operation.
+
+* **WLS_Get(), WLS_Get1()** gets memory block from interface received from remote peer. Function is a non-blocking operation and returns NULL if no blocks available.
+
+* **WLS_Wait(), WLS_Wait1()** waits for new memory block from remote peer. This Function is a blocking call and returns number of blocks received.
+    
+* **WLS_WakeUp(), WLS_WakeUp1()** performs "wakeup" notification to remote peer to unblock "wait" operations pending.
+
+* **WLS_Get(), WLS_Get1()** gets a memory block from the interface received from remote peer. This Function is blocking operation and waits till next memory block from remote peer.
+
+* **WLS_VA2PA()** converts virtual address (VA) to physical address (PA).
+
+* **WLS_PA2VA()** converts physical address (PA) to virtual address (VA).
+
+* **WLS_EnqueueBlock(), WLS_EnqueueBlock1()** This function is used by a master or secondary master to provide memory blocks to a slave for next slave to master (sec master) transfer of data.
+
+* **WLS_NumBlocks()** returns number of current available blocks provided by master for a new transfer of data from the slave.
+
+The **_1()** functions are only needed when using the WLS_Open_Dual().
\ No newline at end of file
