onsemi QCS-AX Wi-Fi 6E Chipsets User Guide
- June 3, 2024
- onsemi
Table of Contents
- Introduction
- mkdir tmp
- cp call_qcsapi_client_src.zip tmp
- cd tmp
- unzip call_qcsapi_client_src.zip
- make
- ./call_qcsapi_sockrpc −−host 10.10.103.123 get_mode wifi0_0
- ./call_qcsapi_sockrpc −−host 10.10.103.123 get_channel wifi0_0 100
- ./call_qcsapi_raw enx48f8b32427cb 00:26:86:F1:0C:30 get_mode wifi0_0
- qcsapi_pcie get_mode wifi0_0 Access point
- PUBLICATION ORDERING INFORMATION
- Read User Manual Online (PDF format)
- Download This Manual (PDF format)
QCS-AX/QCS-AX2:
RPC User Guide UM70051/D
Introduction
QCSAPIs are accessible remotely through three types of Remote Process Control
(RPC) methods: (a) Socket RPC,
(b) Raw MAC, (c) PCIe Link.
(a) Is a standard TCP/IP based socket.
(b) Is a link mechanism in which the transport interface is specified as well
as the destination MAC. A Raw MAC bypasses the TCP/IP processing and sends raw
data to a specific destination MAC.
(c) Can be used when PCIe Link is available.
This guide provides instructions on how to use (a), (b), and (c).
ABBREVIATIONS AND ACRONYMS
Abbreviations and Acronyms | Description |
---|---|
APDUT | Access Point Device Under Test |
CDK | Customer Development Kit |
EP/RC | End Point/Root Complex |
QCS | Quantenna Connectivity Solutions Division |
QCSAPI | QCS Configuration and Status API |
QCS−AX | All variants of the QCS−AX family of chipsets |
QCS−AX2 | All variants of the QCS−AX2 family of chipsets |
RPC | Remote Process Control |
SDK | Software Development Kit |
VB | Video Bridge |
Requirements on Build Environment
The following are the requirements and prerequisites to use the RPC options
available:
- Build environment as indicated in the SDK Build Guides of the corresponding releases
- Able to successfully build a SDK image as indicated in the SDK Build Guides
- SDK tarball as an example will use R6.4.1 − v50.0.90.31 (quantenna−sdk−c−v50.0.90.31.tar.gz)
- Add in Host CPU build tools/environment
The host build environment needs to enable the configuration features needed to support RPC client. They are listed for reference below. In the recent versions, R6.4.1 and beyond, they are enabled by default :
- Enable port map (BR2_PACKAGE_PORTMAP=y) in configs/pearl_10gax_config
- Enable CONFIG_FEATURE_HAVE_RPC=y in busybox configuration file in buildroot/package/busybox/busybox_config
ON Semiconductor®
www.onsemi.com
- Make sure that the Host CPU has the protocols file in the /etc directory. If this file does not exist, an “unknown protocol” error might be displayed when issuing an RPC call.
Building RPC Host Utilities
The source code for RPC is included in the SDK tarball.
It is provided in a zip file format, call_qcsapi_client_src.zip. Please follow
these steps, to build the RPC Linux application utilities:
mkdir tmp
cp call_qcsapi_client_src.zip tmp
cd tmp
unzip call_qcsapi_client_src.zip
make
At the end of the build, three application utilities will be obtained, corresponding to each of the remote control methods:
- call_qcsapi_sockrpc
- call_qcsapi_raw
- call_qcsapi_pcie
One of these three utilities must be placed into Host CPU depending on requirements.
Requirements on Target APDUT
The daemons acting as servers waiting for remote connections are enabled by
default for Socket RPC, Raw MAC, and PCIe Link. The daemons can be identified
by looking at the processes running and are listed below for reference:
- /sbin/call_qcsapi_rpcd −−tcp −−raw −−bind br0
- /sbin/qcsapi_rpcd −−tcp −−raw −−bind br0
- /sbin/call_qcsapi_rpcd −−tcp −−raw −−bind br0 −−pcie
- /sbin/qcsapi_rpcd −−tcp −−raw −−bind br0 −−pcie
Socket RPC
Remote control of the target APDUT can be achieved with a simple remote qcsapi
call over tcp from a Host CPU with the following command:
call_qcsapi_sockrpc −−host
Examples:
./call_qcsapi_sockrpc −−host 10.10.103.123 get_mode wifi0_0
Access point
./call_qcsapi_sockrpc −−host 10.10.103.123 get_channel wifi0_0 100
Raw MAC
Another way to use QCSAPI communication can be over Raw MAC. With Raw MAC,
communication still uses ethernet at PHY/MAC layer between the QCS VB
reference board and a Linux PC. From the remote QCSAPI perspective, Linux PC
is working as a client and QCS VB reference board is working as a server. The
command to use Raw MAC is as follow: qcsapi_sockraw
Example:
Below is the Host CPU interface that is used. The name of the ethernet
interface (src_ifname) is enx48f8b32427cb
enx48f8b32427cb Link encap:Ethemet HWaddr 48:f8:b3:24:27:cb
Inet addr:10.10.103.61 Bcast:10.10.103.255 Mask:255.255.255.0
Inet6 addr: fe80::6fee:f630:fe40:e64c /64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:132728 errors:0 dropped:0 overruns:0 frame:0
TX packets:226049 errors:0 dropped:0 overruns:0 carrler:0
colllstons:0 tcqueuelen:1000
RX bytes:27948873 (27.9 MB) TX bytes:221256929 (221.2 MB)
Below is the APDUT br0 interface with a MAC Address 00:26:86:F1:0C:30
quantenna = Ifconfig brO brO = Link encap:Ethernet HWaddr 00:26:86:F1:0C:30
Inet addr:10.10.103.56 Bcast:10.10.103.255 Mask:255.255.255.0
Inet6 addr: fe80::3246:9aff-fe25:bee4 /64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:6692 errors:0 dropped:0 overruns:0 frame:0
TX packets:170 errors:0 dropped:0 overruns:0 carrier:0 collistons:0
txqueuelen:0
RX bytes:607076 (592.8 KIB) TX bytes:17344 (16.9 KIB)
The command issued to get the mode shall be:
./call_qcsapi_raw enx48f8b32427cb 00:26:86:F1:0C:30 get_mode wifi0_0
Access point
PCIe Link
In this setup, the QCS PCIe reference board is connected to a Host CPU through
the PCIe bus. The PCIe Link control is established to the PCIe module. By
default, it uses netlink type (31) to communicate between PCIe EP/RC. The Host
CPU RC works as a client and the QCS PCIe EP reference board works as a
server. The command to use PCIe Link is as follow: qcsapi_pcie <qcsapi
command>
Example:
qcsapi_pcie get_mode wifi0_0 Access point
QUANTENNA is a registered trademark of Semiconductor Components Industries, LLC (SCILLC) or its subsidiaries in the United States and/or other countries. All other brand names and product names appearing in this document are registered trademarks or trademarks of their respective holders.
ON Semiconductor and are trademarks of Semiconductor Components Industries, LLC dba ON Semiconductor or its subsidiaries in the United States and/or other countries. ON Semiconductor owns the rights to a number of patents, trademarks, copyrights, trade secrets, and other intellectual property. A listing of ON Semiconductor’s product/patent coverage may be accessed at www.onsemi.com/site/pdf/Patent−Marking.pdf. ON Semiconductor reserves the right to make changes without further notice to any products herein. ON Semiconductor makes no warranty, representation or guarantee regarding the suitability of its products for any particular purpose, nor does ON Semiconductor assume any liability arising out of the application or use of any product or circuit, and specifically disclaims any and all liability, including without limitation special, consequential or incidental damages. Buyer is responsible for its products and applications using ON Semiconductor products, including compliance with all laws, regulations and safety requirements or standards, regardless of any support or applications information provided by ON Semiconductor. “Typical” parameters which may be provided in ON Semiconductor data sheets and/or specifications can and do vary in different applications and actual performance may vary over time. All operating parameters, including “Typicals” must be validated for each customer application by customer’s technical experts. ON Semiconductor does not convey any license under its patent rights nor the rights of others. ON Semiconductor products are not designed, intended, or authorized for use as a critical component in life support systems or any FDA Class 3 medical devices or medical devices with a same or similar classification in a foreign jurisdiction or any devices intended for implantation in the human body. Should Buyer purchase or use ON Semiconductor products for any such unintended or unauthorized application, Buyer shall indemnify and hold ON Semiconductor and its officers, employees, subsidiaries, affiliates, and distributors harmless against all claims, costs, damages, and expenses, and reasonable attorney fees arising out of, directly or indirectly, any claim of personal injury or death associated with such unintended or unauthorized use, even if such claim alleges that ON Semiconductor was negligent regarding the design or manufacture of the part. ON Semiconductor is an Equal Opportunity/Affirmative Action Employer. This literature is subject to all applicable copyright laws and is not for resale in any manner.
PUBLICATION ORDERING INFORMATION
LITERATURE FULFILLMENT:
Email Requests to: orderlit@onsemi.com
ON Semiconductor Website: www.onsemi.com
TECHNICAL SUPPORT
North American Technical Support:
Voice Mail: 1 800−282−9855 Toll Free USA/Canada
Phone: 011 421 33 790 2910
Europe, Middle East and Africa Technical Support:
Phone: 00421 33 790 2910
For additional information, please contact your local Sales Representative
Read User Manual Online (PDF format)
Read User Manual Online (PDF format) >>