0% found this document useful (0 votes)
36 views

XG(S)PON Driver Programming Guide EN

The XG(S)PON Module Reference Manual provides comprehensive guidelines for using the XGPON code framework and APIs, aimed at assisting users in troubleshooting and feedback. It includes detailed descriptions of functionalities, state management during ONU activation, and the processing of PLOAM messages. The document is proprietary to Airoha Technology Corp and is subject to change without notice.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
36 views

XG(S)PON Driver Programming Guide EN

The XG(S)PON Module Reference Manual provides comprehensive guidelines for using the XGPON code framework and APIs, aimed at assisting users in troubleshooting and feedback. It includes detailed descriptions of functionalities, state management during ONU activation, and the processing of PLOAM messages. The document is proprietary to Airoha Technology Corp and is subject to change without notice.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 46

Confidential C

XG(S)PON Module Reference Manual

Version: 1.0
Release date: 31 OCT 2023

The use of this document and any information contained therein is subject to the terms and conditions set forth
in Exhibit 1. This document is subject to change without notice.

Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

Document Revision History

Revision Date Description


1.0 31 Oct 2023 Initial Release

Page 2 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

Table of Contents

Contents
Document Revision History .............................................................................................................................. 2
Table of Contents............................................................................................................................................. 3
List of Figures ................................................................................................................................................... 3
1 Document General Conventions ............................................................................................................ 4
1.1 Overview ........................................................................................................................................... 4
1.2 Abbreviations of Registers ................................................................................................................ 4
1.3 Abbreviations of Modules (Optional) ................................................................................................ 4
2 Module (or function) name ................................................................................................................... 7
2.1 Overview ........................................................................................................................................... 7
2.2 Abbreviations .................................................................................................................................... 7
2.3 Functional features ........................................................................................................................... 7
2.4 Framework diagram .......................................................................................................................... 7
2.5 Function ............................................................................................................................................ 8
2. Processing of PLOAM messages ........................................................................................................... 14
2.6 Programming Guide ........................................................................................................................ 18
2.6.1 Get APIs ............................................................................................................................... 19
2.6.2 Set APIs ............................................................................................................................... 32
2.6.3 Other APIs ........................................................................................................................... 42
2.7 Register map ................................................................................................................................... 45
Exhibit 1 Terms and Conditions...................................................................................................................... 46

List of Figures

Page 3 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

1 Document General Conventions

1.1 Overview
This manual's main purpose is to provide instructions on using the XGPON code framework and APIs. Its aim is
to assist users in analyzing and clarifying their thoughts when they encounter problems. For common issues,
users can easily find direct solutions or accurately provide feedback to the development team, including
necessary information such as messages and logs, which will help in further analysis.

1.2 Abbreviations of Registers


List of common abbreviations in the entire reference manual:

Abbreviation Full Name


RW Read-Write
RO Read-Only
WO Write-Only
RC Read to Clear
WC Write to Clear
RWC Read or Write to Clear

1.3 Abbreviations of Modules (Optional)


List common terms or abbreviations used in the reference manual. For example:

Abbreviation Full Name

PLOAM Physical layer operations, administration and maintenance


ONU-ID ONU identifier

Alloc-ID Allocation identifier


T-CONT Transmission Container
10-Gigabit-capable passive optical network Encapsulation
XGEM
Method
XGPON 10-Gigabit-capable Passive Optical Network

1. PLOAM: The Physical Layer Operations, Administration, and Maintenance protocol is a protocol used for
physical layer operations, management, and maintenance of optical fiber access networks. It monitors
and controls optical fiber transmission equipment to diagnose network faults, configure settings, perform
monitoring tasks, and carry out other functions. Messages are sent and received through optical ports to

Page 4 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

facilitate interaction and management between communication devices.

1 PLOAM message format

2. ONU-ID: The ONU-ID in 10G GPON is a 10-bit identifier, and each ONU ID is guaranteed to be unique. In
the activation phase, the OLT assigns the ONU-ID to the ONU using a PLOAM message. The validity of the
ONU-ID persists continuously, with the exception of situations where power is disconnected, the OLT
deactivates it, or the ONU voluntarily transitions into the Inactive state.ONU IDs have a valid range of 0 to
1023. Within this range, the numbers from 0 to 1022 represent ordinary ONU IDs that can be assigned by
the OLT to individual ONUs. The ID number 1023 is reserved for downstream broadcast and unallocated
ONU IDs in the upstream direction.

2 ONU-ID PLOAM message format

3. Alloc-ID: The Alloc-ID, which is a 14-bit number, defines a traffic entity and is used for allocating upstream
bandwidth. Multiple Alloc-IDs can be assigned to an ONU in XG-PON. The Assign Alloc-ID PLOAM message
is used to assign Alloc-IDs to the ONU. According to the analysis of the PLOAM message format, the valid
range for Alloc-IDs is from 0 to 16383. Alloc-IDs cannot be used within the range of 0 to 1022 because these
values are already allocated for ONU-IDs. The value 1023 has a special meaning and should not be used as

Page 5 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

an Alloc-ID. The OLT can assign Alloc-IDs to ONUs within the range of 1024 to 16383.

3 Assign_Alloc-ID PLOAM message format

4. T-CONT: T-CONT and Alloc-ID have a one-to-one mapping relationship, which is established using the OMCI
protocol. One Alloc-ID can be assigned to one T-CONT, and if a second mapping attempt is made, it will be
rejected by the ONU. The PLOAM protocol is responsible for creating and managing Alloc-ID, while T-CONT
is created and managed by the ONU using the OMCI protocol. The creation and deletion of Alloc-IDs are
handled by the PON MAC driver. Additionally, for the AIROHA chip, the concept of a channel is introduced.
This channel facilitates internal hardware data transfer. There is a one-to-one mapping relationship
between the channel, T-CONT, and Alloc-ID.

Page 6 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

2 Module (or function) name

2.1 Overview
The latest generation of broadband passive optical access standard is the 10-Gigabit Passive Optical Network
(XGPON), also referred to as 10-Gigabit-Capable PON. It is based on ITU-T G.987.x specifications. XGPON, which
is built upon GPON, provides higher bandwidth, improved efficiency, broader coverage, enhanced data security,
and more advanced user interfaces. Most operators widely consider it as an ideal technology for achieving
broadband and comprehensive transformation of access network services. The module primarily implements
the underlying functions of XGPON, including ONU onboarding management, service configuration management,
interrupt handling, data encryption, and other aspects.

2.2 Abbreviations
List all abbreviations used in descriptions such as block diagrams, flowcharts, tables, registers, etc.

2.3 Functional features


Describe detailed functionality.
Corresponds to the previous template 2.7 (Feature/IOT List) chapter.

2.4 Framework diagram


The frame design of XG(S)PON is essentially identical to that of GPON.

4 ONU PON Driver structure diagram

Page 7 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

2.5 Function
The activation process of X(S)GPON should be implemented according to the specifications G.987.X
(G.987.3/G.9807.1). During the activation process, there are six states defined for the ONU:
O1 - Initial state
O2-3 - Serial_Number state
O4 - Ranging state
O5 - Operation state
O6 - Intermittent LODS state
O7 - Emergency Stop state
The states O6, which represents a transient state that occurs when there is a brief interruption or loss of optical
link signal. Additionally, there is O7, which is a state where the laser of the Optical Network Unit (ONU) is shut
off. This state is typically set by the Optical Line Terminal (OLT) when the ONU is found to be interfering with
other users, following rogue ONU detection.

Page 8 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

5 G.987.3 ONU activation state diagram

 Initial State(O1)

Actions Call Functions ONU State Change

GPON driver gpon_dsiable () OX→ o1


Initiation/Reset

Page 9 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

Actions Call Functions ONU State Change

Loss of downstream gpon_phy_los_handler() O2_3/O4->O1


synchronization

Deactivate ONU-ID request ploam_recv_deactivate_onu() O4/O5->O1

TO2 Timer Expires gpon_act_to2_timer_expires(); O6→O1

Receive Disable PLOAM – ploam_receive_disable_serial_number O7 → O1


Enable specific SN option
(SN match)

 Serial Number State (O2-O3)

Actions Call Functions ONU State Change

ONU Received gpon_phy_ready_handler() O1 →O2_3


Downstream
Frame Clear
LOS/LOF

TO1 Timer gpon_act_to1_timer_expires(); O4 →O2_3


Expires

 Ranging State (O4)

Actions Call Functions ONU State Change

ONU Received ploam_recv_assign_onu_id() O2_3→ O4


ONU_ID

 Operation State (O5)

Actions Call Functions ONU State Change

ONU Received an ploam_recv_ranging_time() O4→ O5


Equalization Delay

Downstream gpon_phy_ready_handler() O6 → O5
synchronization restored

 Intermittent LODS state (O6)

Page 10 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

Actions Call Functions ONU State Change

Loss of downstream gpon_phy_los_handler() O5 → O6


synchronization

 Emergency Stop State (O7)

Actions Call Functions ONU State Change

Receive Disable PLOAM ploam_receive_disable_serial_number() OX → O7


– Disable specific SN
option (SN match)

ONU Operation as xmcs_set_emergency_state(); O1 → O7


Emergency State:

The state switching associated with the registration process of ONU is implemented in the driver for
XG(S)PON, as depicted in Figure 3.

phy_isr gpon_isr

Phy ready interrupt


gpGPonPriv->ploamRcvHandler,
ploam message callback function
phy_ready_handler

Receive upStreamOverhead

Set uplink related parameters, open


gpon_phy_ready_handler transceiver, and switch to O2_3
, switch to O2_3

Receive Assign_OnuID

Set ONU_Id and switch status to O4


gpon_enable

Ranging_time received

Set Eqd and switch state to O5

6 State switching in XG(S)PON Driver

Page 11 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

PHY los or initialization process after receiving Deactivate_ONU-ID.

MBI/MPI Reset Turn off data


gpon_disable() forwarding of PON
MAC and other
XGPON MAC reset hold on
modules

Rest ONU_ID and OMCC


Channel_retire

Remove all T-CONT and GEM PORT

XPON GET PHY Status

PHY ready switches O2


and executes
gpon_enable function
gponDevResetCtrl(XPON_RESET_HOLD_ON)

gpon_act_change_gpon_state, PHY
state switches to O1

7 PHY lost or received Deactivate_ONU-ID XG(S)PON MAC initialization process

Page 12 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

ploam_recv_assign_alloc_id

gponDevAssignNewAllocId

type ==0x01 type ==0xFF


(Allocate) (Deallocate)

gwan_create_new_tcont(al gwan_remove_tcont(allocId)
locId)

gponDevEnableTcont(allocId) Find the array subscript equal to the allocId to be


deleted in gpWanPriv->gpon.allocId[1..
CONFIG_GPON_10G _MAX_TCONT). This
subscript is this time

Search the T-CONT[1, CONFIG_GPON_10G


_MAX_TCONT) information stored in the
PON MAC hardware register, return the QDMA_API_SET_CHANNEL_CLOSE_STATUS()
smallest unused T-CONT index, and set it
to the used state.
The search starts at 1 because T-CONT 0 is FE_API_SET_CHANNEL_RETIRE_ONE(channel)
used interactively by OMCC.

The PON software gponDevDisableTCont(allocId):


obtains the Channel Search the T-CONT[1,
channel = T-CONT index;
through T-CONT CONFIG_GPON_10G _MAX_TCONT)
mapping; in the wxya
information stored in the PON MAC
forwarding module, nPriv->gpon.allocId[channel] = allocId;
hardware register and return the T-CONT
the Channel The PON software uses channel as the
information is sent to index corresponding to AllocId.
index to save the allocId information
the QDMA module for Correspond the T-CONt index to the PON
issued by the OLT to save the mapping
the next step of MAC hardware register
processing. relationship of Alloc-ID/T-CONT/Channel

FE_API_SET_CHANNEL_ENABLE
(channel)

8 Processing of assign_Alloc-ID

Page 13 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

2. Processing of PLOAM messages

gpon_isr

gpon_recv_ploam_message

depth
>= 11

ploam_parser_down_message

ploam_recv_handler

9 PLOAM message processing

PLOAM Message Call Functions

PLOAM_DOWN_MSG_PROFILE ploam_recv_profile

PLOAM_DOWN_MSG_ASSIGN_OUNID ploam_recv_assign_onu_id

PLOAM_DOWN_MSG_RANGING_TIME ploam_recv_ranging_time

PLOAM_DOWN_MSG_DEACTIVATE_ONUID ploam_recv_deactivate_onu

PLOAM_DOWN_MSG_DISABLE_SERIAL_NUM ploam_recv_disable_serial_number

PLOAM_DOWN_MSG_REQUEST_REGISTRATION ploam_recv_requset_registration

PLOAM_DOWN_MSG_ASSIGN_ALLOCID ploam_recv_assign_alloc_id

PLOAM_DOWN_MSG_KEY_CONTROL ploam_recv_key_control

PLOAM_DOWN_MSG_SLEEP_ALLOW ploam_recv_sleep_allow

Page 14 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

3. Introduction to TypeB switching process

10 TYPE B topology diagram

Type B refers to Type B protect, which is a protection mechanism used in Passive Optical Networks (PON).
When there is a need to switch the link of the Optical Line Terminal (OLT) PON port, it can be switched from
one PON port to another.

Scenario example:

⚫ The main fiber of the working pon is damaged.

⚫ The olt slot of working pon needs to be upgraded.

Operation state (O5)

Downstream Loss of downstream synchronization


Synchronization restored synchronization
Intermittent LODS state(O6)

TO2 timer expires

Initial state (O1)

11 TYPE B state transition diagram

Page 15 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

12 Online process log after normal fiber insertion and removal

5. Rogue ONU diagnostic procedure

Page 16 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

13 Disable_Serial_Number PLOAM message format

Page 17 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

OLT ONU1 ONU2 ONUn

Input rogue ONU


commamd

rogue

Deactivate

Start anti-rogue
Disable_Serial_Number(0xFF) ONU1

Disable_Serial_Number(0xFF) ONU2

Disable_Serial_Number(0xFF) ONUn

Disable_Serial_Number(0x00) ONU1

rogue

Disable_Serial_Number(0xFF) ONU1

Disable_Serial_Number(0x00) ONU2

Disable_Serial_Number(0xFF) ONU2

Disable_Serial_Number(0x00) ONUn

Disable_Serial_Number(0xFF) ONUn

Disable_Serial_Number(0x00) ONU2

Disable_Serial_Number(0x00) ONUn

14 Rogue ONU detection process

2.6 Programming Guide

Compile command
osbnq64 fakeroot make -f app_bsp/MakeFile_Main_BSP PROFILE=XXX CUSTOM=XX xpon_modules

The command to load modules


insmod /lib/modules/xpon.ko

Page 18 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

code pathBSP/xpon_bsp/app_bsp/
BSP/xpon_bsp/modules/xpon/

2.6.1 Get APIs

2.6.1.1 gponmgr_lib_get_omci_dbg_level
Function Prototype int gponmgr_lib_get_omci_debug_level(unsigned char *DebugLevel)
Description Get the current debug level of OMCI.
Support Chip EN7521
Parameter 1 DebugLevel debug level of OMCI
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.2 gponmgr_lib_get_lan_debug
Function Prototype int gponmgr_lib_get_lan_debug(unsigned char *LanDebug)
Description Get the information of LAN debug whether enabled or not.
Support Chip EN7521
Parameter 1 LanDebug LAN debug whether enabled
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.3 gponmgr_lib_get_onu_version
Function Prototype int gponmgr_lib_get_onu_version( char *onu_ver)
Description Get the version of the ONU as defined by the vendor.
Support Chip EN7521
Parameter 1 onu_ver The version of ONU
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.4 gponmgr_lib_get_vendor_id
Function Prototype int gponmgr_lib_get_vendor_id( char *VendorId)
Description Get to know the vendor of the ONU.
Support Chip EN7521
Parameter 1 VendorId The vendor ID of ONU
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.5 gponmgr_lib_get_equipment_id
Function Prototype int gponmgr_lib_get_equipment_id( char *equipmentId)
Description Get the equipment ID of the ONU. It is used to identify the specific type of ONU.
Support Chip EN7521
Parameter 1 equipmentId The equipment ID of ONU

Page 19 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

Function Prototype int gponmgr_lib_get_equipment_id( char *equipmentId)


Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.6 gponmgr_lib_get_operator_id_cap
Function Prototype int gponmgr_lib_get_operator_id_cap( char *operatorID_cap)
Description Get the operator ID of ONU capability ME.
Support Chip EN7521
Parameter 1 operatorID_cap The operator ID
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.7 gponmgr_lib_get_operator_id_auth
Function Prototype int gponmgr_lib_get_operator_id_auth( char * operatorID_auth)
Description Get the operator ID of LOID authentication ME.
Support Chip EN7521
Parameter 1 operatorID_auth The operator ID for LOID authentication
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.8 gponmgr_lib_get_loid
Function Prototype int gponmgr_lib_get_loid( char * Loid)
Description Get the logical ONU ID.
Support Chip EN7521
Parameter 1 Loid logical ONU ID
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.9 gponmgr_lib_get_loid_password
Function Prototype int gponmgr_lib_get_loid_password( char * LOID_Password)
Get logical password. It is used to provide a way for the ONU to submit
Description
authentication credentials.
Support Chip EN7521
Parameter 1 LOID_Password logical password
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.10 gponmgr_lib_get_enhanced_psk
Function Prototype int gponmgr_lib_get_enhanced_psk( unsigned char * enhanced_psk)
Description Get an ONU enhanced PSK.
Support Chip EN7521
Parameter 1 enhanced_psk The enhanced PSK
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

Page 20 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

2.6.1.11 gponmgr_lib_get_link_mode
Function Prototype int gponmgr_lib_get_link_mode( char * linkMode)
Description Get the link mode of GPON.
Support Chip EN7521
Parameter 1 linkMode The link mode of GPON
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.12 gponmgr_lib_get_vendor_pro_code
Function Prototype int gponmgr_lib_get_vendor_pro_code( unsigned short * vendorProCode)
Description Get the vendor specific product code for the ONU.
Support Chip EN7521
Parameter 1 vendorProCode The vendor specific product code for the ONU
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.13 gponmgr_lib_get_omcc_version
Function Prototype int gponmgr_lib_get_omcc_version( unsigned char * omccVersion)
Description To get the version of the OMCC protocol being used by the ONU.
Support Chip EN7521
Parameter 1 omccVersion The version of OMCC
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.14 gponmgr_lib_get_tm_option
Function Prototype int gponmgr_lib_get_tm_option( unsigned char * tmOption)
Description To get the upstream traffic management function implemented in the ONU.
Support Chip EN7521
Parameter 1 tmOption The traffic management option of ONU
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.15 gponmgr_lib_get_survival_time
Function Prototype int gponmgr_lib_get_survival_time( unsigned char * onuSurvivalTime)
To get the minimum guaranteed time in milliseconds between the loss of external
Description
power and the silence of the ONU.
Support Chip EN7521
Parameter 1 onuSurvivalTime The survival time of ONU
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

Page 21 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

2.6.1.16 gponmgr_lib_get_extended_tclayer
Function Prototype int gponmgr_lib_get_extended_tclayer( unsigned char * extendedTcLayer)
Get the information that whether the ONU supports or does not support various
Description
optional TC-layer capabilities of [ITU-T G.984.3].
Support Chip EN7521
Bit 1(LSB): ITU-T G.984.3 Annex C, PON-ID maintenance
Bit 2: ITU-T G.984.3 Annex D, PLOAM channel
Parameter 1 extendedTcLayer enhancements:
swift_POPUP and ranging_adjustment messages.
Bit 3..16: Reserved
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.17 gponmgr_lib_get_security_cap
Function Prototype int gponmgr_lib_get_security_cap( unsigned char * securityCap)
Description Get the security capabilities of the ONU.
Support Chip EN7521
Parameter 1 securityCap the security capabilities of the ONU
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.18 gponmgr_lib_get_total_ts_num
Function Prototype int gponmgr_lib_get_total_ts_num( unsigned char * totalTSNum)
Get the total number of traffic schedulers that are not associated with a circuit
Description
pack, but with the ONU in its entirety.
Support Chip EN7521
Parameter 1 totalTSNum The total number of traffic schedulers
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.19 gponmgr_lib_get_total_pq_num
Function Prototype int gponmgr_lib_get_total_ts_num( unsigned char * totalPQNum)
Get the total number of upstream priority queues that are not associated with a
Description
circuit pack, but with the ONU in its entirety.
Support Chip EN7521
Parameter 1 totalPQNum The total number of priority queues
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.20 gponmgr_lib_get_total_gemport_num
Function Prototype int gponmgr_lib_get_total_gemport_num( unsigned char * totalGEMPortNum)
Description Get the total number of GEM port-IDs supported by the ONU.

Page 22 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

Function Prototype int gponmgr_lib_get_total_gemport_num( unsigned char * totalGEMPortNum)


Support Chip EN7521
Parameter 1 totalGEMPortNum total number of GEM ports
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.21 gponmgr_lib_get_connectivity_cap
Function Prototype int gponmgr_lib_get_connectivity_cap( unsigned short * connectivityCap)
Description Get the Ethernet connectivity models that the ONU can support.
Support Chip EN7521
Parameter 1 connectivityCap the Ethernet connectivity models that the ONU can support.
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.22 gponmgr_lib_get_qos_conf_flex
Function Prototype int gponmgr_lib_get_qos_conf_flex( unsigned short * qosConfFlex)
Get the information that whether various MEs in the ONU are fixed by ONU’s
Description
architecture or whether they are configurable.
Support Chip EN7521
Parameter 1 qosConfFlex QoS configuration flexibility
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.23 gponmgr_lib_get_voip_by_tr069
Function Prototype int gponmgr_lib_get_voip_by_tr069( char * VoIPbyTR069)
Description Get the VoIP configuration method whether it is TR069.
Support Chip EN7521
Parameter 1 VoIPbyTR069 Whether is TR069
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.24 gponmgr_lib_get_spec_version
Function Prototype int gponmgr_lib_get_spec_version( unsigned char * SpecVersion)
Description Get the spec version of ONU capability ME.
Support Chip EN7521
Parameter 1 VoIPbyTR069 CTC spec version
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.25 gponmgr_lib_get_onu_power_ctrl
Function Prototype int gponmgr_lib_get_onu_power_ctrl( unsigned char * ONU_PowerCtr)
Description Whether the Tx power of the ONU can be controlled independently.
Support Chip EN7521

Page 23 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

Function Prototype int gponmgr_lib_get_onu_power_ctrl( unsigned char * ONU_PowerCtr)


0x00:do not support ONU power control
Parameter 1 ONU_PowerCtr 0x01:Only ONU Tx power control is supported
0x02:ONU Tx and Rx power can be independently controlled
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.26 gponmgr_lib_get_auth_status
Function Prototype int gponmgr_lib_get_auth_status( unsigned char * AuthStatus)
Description Get the credentials status of LOID authentication
Support Chip EN7521
Parameter 1 AuthStatus The credentials status of LOID authentication
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.27 gponmgr_lib_get_max_ports
Function Prototype int gponmgr_lib_get_max_ports( char * max_ports)
Description Get the largest port number contained in the port list attributes.
Support Chip EN7521
Parameter 1 max_ports The maximum number of ports
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.28 gponmgr_lib_get_port_list
Function Prototype int gponmgr_lib_get_port_list( int * port_id)
Description Get the port list of ONU .
Support Chip EN7521
Parameter 1 port_id The port list of ONU
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.29 gponmgr_lib_get_sr_indication
Function Prototype int gponmgr_lib_get_sr_indication( unsigned char * srIndication)
Description Get the queue status for the DBA.
Support Chip EN7521
The value true means that status reporting is available for all
Parameter 1 srIndication
T-CONTs that are associated with the ANI.
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.30 gponmgr_lib_get_total_tcont_num
Function Prototype int gponmgr_lib_get_total_tcont_num( unsigned short * totalTcontNum)
Description Get the total number of T-CONTs that can be supported on this ANI.

Page 24 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

Function Prototype int gponmgr_lib_get_total_tcont_num( unsigned short * totalTcontNum)


Support Chip EN7521
Parameter 1 totalTcontNum The total number of T-CONTs
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.31 gponmgr_lib_get_gem_block_length
Function Prototype int gponmgr_lib_get_gem_block_length( unsigned short *gemBlockLength)
Description Get the queue occupancy reporting granularity for DBA, in units of bytes.
Support Chip EN7521
Parameter 1 gemBlockLength GEM block length
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.32 gponmgr_lib_get_onu_response_time
Function Prototype int gponmgr_lib_get_onu_response_time( unsigned short *onuResponseTime)
Description Get the ONU's actual response time.
Support Chip EN7521
Parameter 1 onuResponseTime The response time of the ONU
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.33 gponmgr_lib_get_con_req_port
Function Prototype int gponmgr_lib_get_con_req_port( unsigned short *conReqPort)
Get the TCP or UDP port value as assigned by IANA for the management
Description
protocol associated with this virtual Ethernet interface.
Support Chip EN7521
Parameter 1 conReqPort IANA assigned port
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.34 gponmgr_lib_get_dev_mac
Function Prototype int gponmgr_lib_get_dev_mac( unsigned char *devMac)
Description Get the MAC address of the ONU .
Support Chip EN7521
Parameter 1 devMac The MAC address of the ONU
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.35 gponmgr_lib_get_gpon_state
Function Prototype int gponmgr_lib_get_gpon_state( unsigned char *state)
Description Get the state of the ONU.
Support Chip EN7521

Page 25 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

Function Prototype int gponmgr_lib_get_gpon_state( unsigned char *state)


Parameter 1 state The state of ONU
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.36 gponmgr_lib_get_onu_sn
Function Prototype int gponmgr_lib_get_onu_sn( unsigned char *onu_sn)
Description To get the serial number of the ONU.
Support Chip EN7521
Parameter 1 onu_sn The serial number of ONU
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.37 gponmgr_lib_get_onu_type
Function Prototype int gponmgr_lib_get_onu_type( int *OnuType)
Description Get the type of ONU.
Support Chip EN7521
Parameter 1 OnuType The type of ONU
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.38 gponmgr_lib_get_qos_scheduler
int gponmgr_lib_get_qos_scheduler( unsigned char channel,struct
Function Prototype
XMCS_ChannelQoS_S *pwanChannelQos)
Description Get the information about the QoS scheduler.
Support Chip EN7521
Parameter 1 channel Channel
Parameter 2 pwanChannelQos The type of QoS scheduler
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.39 gponmgr_lib_get_qos_weight_cfg
int gponmgr_lib_get_qos_weight_cfg( struct XMCS_QosWeightConfig_S
Function Prototype
*pwanQosWeightCfg)
Description Get the type of QoS weight.
Support Chip EN7521
Parameter 1 pwanQosWeightCfg The type of QoS weight
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

Page 26 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

2.6.1.40 gponmgr_lib_get_congest_config
int gponmgr_lib_get_congest_config( struct XMCS_TxQueueCongestion_S
Function Prototype
*pwanCongest)
Description Get the information about the congestion.
Support Chip EN7521
Parameter 1 pwanCongest the information of congestion
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.41 gponmgr_lib_get_trtcm_scale
int gponmgr_lib_get_trtcm_scale( struct XMCS_TxTrtcmScale_S
Function Prototype
*pwanTrtcmScale)
Description Get the scale of trTCM.
Support Chip EN7521
Parameter 1 pwanTrtcmScale The scale of trTCM
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.42 gponmgr_lib_get_trtcm_para
int gponmgr_lib_get_trtcm_para( unsigned char tsidx, struct
Function Prototype
XMCS_TxQueueTrtcm_S *pwanTrtcmparameters)
Description Get the related parameters of trTCM,such as CIR, PIR and so on.
Support Chip EN7521
Parameter 1 tsidx index
Parameter 2 pwanTrtcmparameters The related parameters of trTCM
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.43 gponmgr_lib_get_softimage
Function Prototype int gponmgr_lib_get_softimage(gpon_softimage_t * softimage,int instance)
Description Get the related parameters of the software image ME.
Support Chip EN7521
Parameter 1 softimage the related parameters
Parameter 2 instance 0 or 1
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.44 gponmgr_lib_get_current_tod
Function Prototype int gponmgr_lib_get_current_tod( struct XMCS_GponTodCfg_S *pgponTodCfg)
Description Get current ToD.
Support Chip EN7521
Parameter 1 pgponTodCfg current ToD

Page 27 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

Function Prototype int gponmgr_lib_get_current_tod( struct XMCS_GponTodCfg_S *pgponTodCfg)


Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.45 gponmgr_lib_get_gemport_statistic
Function Prototype int gponmgr_lib_get_gemport_statistic( GEM_STATISTIC_t *statistic)
Description Get the statistical information about GEM port.
Support Chip EN7521
Parameter 1 statistic The statistical information of GEM port
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.46 gponmgr_lib_get_wan_statistic
Function Prototype int gponmgr_lib_get_wan_statistic( WAN_STATISTIC_t *pWanCntStats)
Description Get the statistical information of WAN.
Support Chip EN7521
Parameter 1 pWanCntStats the statistical information of WAN
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.47 gponmgr_lib_get_ploam_gtc_info
Function Prototype int gponmgr_lib_get_ploam_gtc_info( PLOAM_GTC_INFO_t *gtc_info)
Description Get the information about PLOAM.
Support Chip EN7521
Parameter 1 gtc_info the information about PLOAM
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.48 gponmgr_lib_get_drv_power_level
Function Prototype int gponmgr_lib_get_drv_power_level( PLOAM_POWER_LEVEL_t *level)
Description Get the ONU TX power level mode used by the ONU.
Support Chip EN7521
Parameter 1 level ONU TX power level mode
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.49 gponmgr_lib_get_all_tcont_packet_info
int gponmgr_lib_get_all_tcont_packet_info( ALL_TCONT_COUNTERS_T
Function Prototype
*aTcontCounters)
Description Get the information of all TCONTs.
Support Chip EN7521
Parameter 1 aTcontCounters The information of all TCONTs
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

Page 28 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

2.6.1.50 gponmgr_lib_get_tcont_packet_info
int gponmgr_lib_get_all_tcont_packet_info( TCONT_COUNTERS_T
Function Prototype
*pTcontCounters)
Description Get the information about the specified TCONT.
Support Chip EN7521
Parameter 1 aTcontCounters The information of the specified TCONT
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.51 gponmgr_lib_get_driver_event_block
Function Prototype int gponmgr_lib_get_driver_event_block( XPON_EVENT_T *event)
Description Get the block of driver events.
Support Chip EN7521
Parameter 1 event The block of driver event
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.52 gponmgr_lib_get_info
Function Prototype int gponmgr_lib_get_info( GPON_ONU_INFO_t * gponOnuInfo)
Description Get the related information on the GPON ONU.
Support Chip EN7521
Parameter 1 gponOnuInfo the related information GPON ONU
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.53 gponmgr_lib_get_phy_trans_params
Function Prototype int gponmgr_lib_get_phy_trans_params(PHY_PARAMS_t * pPhyTransParams)
Description Get the parameters of the phy transceiver
Support Chip EN7521
Parameter 1 pPhyTransParams The parameters of the phy transceiver
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.54 gponmgr_lib_get_phy_fec_status
Function Prototype int gponmgr_lib_get_phy_fec_status( PHY_FECSTATUS_t *fecStatus)
Description Get the status of phy FEC.
Support Chip EN7521
Parameter 1 fecStatus the status of phy FEC
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

Page 29 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

2.6.1.55 gponmgr_lib_get_gemcounter
int gponmgr_lib_get_gemcounter( struct XMCS_GponGemCounter_S
Function Prototype
*pgponGemCounter)
Description Get the information of the GEM counter.
Support Chip EN7521
Parameter 1 pgponGemCounter The information of GEM counter
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.56 xgponmgr_lib_get_dbg_level
Function Prototype int xgponmgr_lib_get_gemcounter(ushort *pgponDbgLevel)
Description Get the XGPON MAC debug level.
Support Chip EN7521
Parameter 1 pgponDbgLevel used to storethe XGPON MAC debug level
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.57 xgponmgr_lib_get_o23_o4_ploam_ctrl
Function Prototype int xgponmgr_lib_get_o23_o4_ploam_ctrl (XGPON_SW_HW_SELECT *sel)
Description Get the o3 and o4 ploam control status.
Support Chip EN7521
Parameter 1 sel used to store the o3 and o4 ploam control status
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.58 xgponmgr_lib_get_eqd_offset
int xgponmgr_lib_get_eqd_offset (struct XGMS_EqdOffset_S
Function Prototype
*pxgponEqdOffset)
Description Get the Eqd detail information.
Support Chip EN7521
Parameter 1 pxgponEqdOffset used to store EqD detail information
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.59 xgponmgr_lib_get_info
Function Prototype int xgponmgr_lib_get_info(struct XGMS_XgponOnuInfo_S *pxgponOnuInfo)
Description Get the xgpon detail information.
Support Chip EN7521
Parameter 1 pxgponOnuInfo used to store XGPON MAC info
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

Page 30 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

2.6.1.60 xgponmgr_lib_XGPON_state
Function Prototype int xgponmgr_lib_XGPON_state (unsigned char *state)
Description Get the xgpon state.
Support Chip EN7521
Parameter 1 state used to store the XGPON state
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.61 xgponmgr_lib_get_onuRespTime
Function Prototype int xgponmgr_lib_get_onuRespTime (unsigned short *onuRespTime)
Description Get the xgpon onu response time.
Support Chip EN7521
Parameter 1 onuRespTime used to store the onu response time
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.62 xgponmgr_lib_get_sniffer_gtc
Function Prototype int xgponmgr_lib_get_sniffer_gtc (GPON_10G_DEV_SNIFFER_MODE_T *sniffer)
Description Get the xgpon onu sniffer mode.
Support Chip EN7521
Parameter 1 sniffer used to store the onu sniffer mode.
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.63 xgponmgr_lib_get_ploamd_filter
int xgponmgr_lib_get_ploamd_filter
Function Prototype
(GPON_10G_DEV_PLOAMD_FILTER_MODE_T *filter)
Description Get the ploamd msg(exclude profile) filter and profile ploam filter.
Support Chip EN7521
Parameter 1 filter used to store ploamd msg filter and profile ploam filter info
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.1.64 xgponmgr_lib_get_ploam_micerr_drop_mode
Function Prototype int xgponmgr_lib_get_ploam_micerr_drop_mode (XPON_Mode_t *mode)
Description Get the ploam mic error drop mode.
Support Chip EN7521
Parameter 1 mode used to store ploam mic error drop mode
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

Page 31 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

2.6.1.65 xgponmgr_lib_get_dying_gasp _mode


int xgponmgr_lib_get_dying_gasp _mode (GPON_10G_DYING_GASP_MODE_T
Function Prototype
*dyingGasp)
Description Get the dying gasp mode.
Support Chip EN7521
Parameter 1 dyingGasp used to store dying gasp mode
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2 Set APIs

2.6.2.1 gponmgr_lib_set_omci_dbg_level
Function Prototype int gponmgr_lib_set_omci_debug_level(unsigned char DebugLevel)
Description set the debug level of OMCI.
Support Chip EN7521
Parameter 1 DebugLevel debug level of OMCI, range 0~4
Return Value return EPONMGR_SUCCESS/EPONMGR_FAIL

2.6.2.2 gponmgr_lib_set_lan_debug
Function Prototype int gponmgr_lib_set_lan_debug(unsigned char LanDebug)
Description Enable or disable the function of LAN debug .
Support Chip EN7521
Parameter 1 LanDebug LAN debug, whether enabled
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.3 gponmgr_lib_set_onu_version
Function Prototype int gponmgr_lib_set_onu_version(char *onu_ver)
Description Set the version of the ONU as defined by the vendor.
Support Chip EN7521
Parameter 1 Onu_ver The version of ONU, the max length is 14 bytes
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

Page 32 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

2.6.2.4 gponmgr_lib_set_vendor_id
Function Prototype int gponmgr_lib_set_vendor_id( char *VendorId)
Description Set the vendor of the ONU.
Support Chip EN7521
Parameter 1 VendorId The vendor ID of ONU, 4 bytes
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.5 gponmgr_lib_set_equipment_id
Function Prototype int gponmgr_lib_set_equipment_id( char *equipmentId)
Description Set the equipment ID of the ONU. It is used to identify the specific type of ONU.
Support Chip EN7521
Parameter 1 equipmentId The equipment ID of ONU, max length is 20 bytes
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.6 gponmgr_lib_set_operator_id_cap
Function Prototype int gponmgr_lib_set_operator_id_cap( char *operatorID_cap)
Description Set the operator ID of the ONU capability ME.
Support Chip EN7521
Parameter 1 operatorID_cap the operator ID,max length is 4 bytes
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.7 gponmgr_lib_set_operator_id_auth
Function Prototype int gponmgr_lib_set_operator_id_auth( char * operatorID_auth)
Description Set the operator ID of LOID authentication ME.
Support Chip EN7521
the operator ID of GPON LOID authentication, max length is
Parameter 1 operatorID_auth
4
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.8 gponmgr_lib_set_loid
Function Prototype int gponmgr_lib_get_loid( char * Loid)
Description Set the logical ONU ID. It is used to provide a way for the ONU to identify itself.
Support Chip EN7521
Parameter 1 Loid The LOID has a maximum, length of 24 bytes
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

Page 33 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

2.6.2.9 gponmgr_lib_set_loid_password
Function Prototype int gponmgr_lib_set_loid_password( char * LOID_Password)
Set a logical password. It is used to provide a way for the ONU to submit
Description
authentication credentials.
Support Chip EN7521
Parameter 1 LOID_Password The password of LOID, max length is 12 bytes
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.10 gponmgr_lib_set_enhanced_psk
Function Prototype int gponmgr_lib_set_enhanced_psk( unsigned char * enhanced_psk)
Description Set the ONU enhanced PSK.
Support Chip EN7521
Parameter 1 enhanced_psk The enhanced PSK of ONU, 16 bytes
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.11 gponmgr_lib_set_link_mode
Function Prototype int gponmgr_lib_set_link_mode( char linkMode)
Description Set the link mode of GPON.
Support Chip EN7521
Parameter 1 linkMode The link mode of GPON, 0:auto, 1:GPON, other:error
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.12 gponmgr_lib_set_vendor_pro_code
Function Prototype int gponmgr_lib_set_vendor_pro_code( unsigned short vendorProCode)
Description Set the vendor specific product code for the ONU.
Support Chip EN7521
Parameter 1 vendorProCode vendor product code of ONU
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.13 gponmgr_lib_set_omcc_version
Function Prototype int gponmgr_lib_set_omcc_version( unsigned char omccVersion)
Description Set the version of the OMCC protocol being used by the ONU.
Support Chip EN7521
Parameter 1 omccVersion The version of OMCC
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

Page 34 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

2.6.2.14 gponmgr_lib_set_tm_option
Function Prototype int gponmgr_lib_set_tm_option( unsigned char tmOption)
Description Set up the upstream traffic management function implemented in the ONU.
Support Chip EN7521
Parameter 1 tmOption The traffic management option of ONU
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.15 gponmgr_lib_set_survival_time
Function Prototype int gponmgr_lib_set_survival_time( unsigned char onuSurvivalTime)
Set the minimum guaranteed time in milliseconds between the loss of external
Description
power and the silence of the ONU.
Support Chip EN7521
Parameter 1 onuSurvivalTime The survival time of ONU
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.16 gponmgr_lib_set_extended_tclayer
Function Prototype int gponmgr_lib_set_extended_tclayer( unsigned char extendedTcLayer)
Set whether the ONU supports or does not support various optional TC-layer
Description
capabilities of [ITU-T G.984.3].
Support Chip EN7521
Bit 1(LSB): ITU-T G.984.3 Annex C, PON-ID maintenance
Bit 2: ITU-T G.984.3 Annex D, PLOAM channel
Parameter 1 extendedTcLayer enhancements:
swift_POPUP and Ranging_adjustment messages.
Bit 3..16: Reserved
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.17 gponmgr_lib_set_security_cap
Function Prototype int gponmgr_lib_set_security_cap( unsigned char securityCap)
Description Set the security capability of the ONU.
Support Chip EN7521
The security capability of the ONU
0 Reserved
Parameter 1 securityCap
1 AES-128 payload encryption is supported
2..255 Reserved
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

Page 35 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

2.6.2.18 gponmgr_lib_set_total_ts_num
Function Prototype int gponmgr_lib_set_total_ts_num( unsigned char totalTSNum)
Set the total number of traffic schedulers that are not associated with a circuit
Description
pack, but with the ONU in its entirety.
Support Chip EN7521
Parameter 1 totalTSNum The total traffic scheduler number of ONU
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.19 gponmgr_lib_set_total_pq_num
Function Prototype int gponmgr_lib_set_total_ts_num( unsigned char totalPQNum)
Set the total number of upstream priority queues that are not associated with a
Description
circuit pack, but with the ONU in its entirety.
Support Chip EN7521
Parameter 1 totalPQNum total priority queue number for ONU
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.20 gponmgr_lib_set_total_gemport_num
Function Prototype int gponmgr_lib_set_total_gemport_num( unsigned char totalGEMPortNum)
Description Set the total number of GEM port-IDs supported by the ONU.
Support Chip EN7521
Parameter 1 totalGEMPortNum The total gemport number of ONU
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.21 gponmgr_lib_set_connectivity_cap
Function Prototype int gponmgr_lib_set_connectivity_cap( unsigned short connectivityCap)
Description Set the Ethernet connectivity models that the ONU can support.
Support Chip EN7521
Parameter 1 connectivityCap the Ethernet connectivity models that the ONU can support
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.22 gponmgr_lib_set_qos_conf_flex
Function Prototype int gponmgr_lib_set_qos_conf_flex( unsigned short qosConfFlex)
Set whether various MEs in the ONU are fixed by ONU’s architecture or whether
Description
they are configurable.
Support Chip EN7521
Parameter 1 qosConfFlex QoS configuration flexibility
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

Page 36 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

2.6.2.23 gponmgr_lib_set_voip_by_tr069
Function Prototype int gponmgr_lib_set_voip_by_tr069( char VoIPbyTR069)
Description Setthe VoIP configuration method, whether is TR069.
Support Chip EN7521
Parameter 1 VoIPbyTR069 Whether is TR069
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.24 gponmgr_lib_set_spec_version
Function Prototype int gponmgr_lib_set_spec_version( unsigned char SpecVersion)
Description Set spec version of ONU capability ME.
Support Chip EN7521
Parameter 1 SpecVersion spec version of ONU capability ME
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.25 gponmgr_lib_set_onu_power_ctrl
Function Prototype int gponmgr_lib_set_onu_power_ctrl( unsigned char ONU_PowerCtr)
Description Set whether the Tx power of the ONU can be controlled independently.
Support Chip EN7521
0x00:do not support ONU power control
0x01:only supports ONU Tx power control
Parameter 1 ONU_PowerCtr
0x02: The ONU Tx and Rx power can be independently
controlled
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.26 gponmgr_lib_set_auth_status
Function Prototype int gponmgr_lib_set_auth_status( unsigned char AuthStatus)
Description Set the status of LOID authentication.
Support Chip EN7521
The status of LOID authentication
0 Initial state, status indeterminate (requires further study)
1 Successful authentication
Parameter 1 AuthStatus
2 LOID error
3 Password error
4 Duplicate LOID
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

Page 37 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

2.6.2.27 gponmgr_lib_set_max_ports_list
Function Prototype int gponmgr_lib_set_max_ports_list( char max_ports,int *port_id)
Description Set the largest port number contained in the port list attributes.
Support Chip EN7521
Parameter 1 max_ports The max port number
Parameter 2 Port_id Port number
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.28 gponmgr_lib_set_sr_indication
Function Prototype int gponmgr_lib_set_sr_indication ( unsigned char srIndication)
Description Set the queue status for the DBA.
Support Chip EN7521
The value true means that status reporting is available for all
Parameter 1 srIndication
T-CONTs that are associated with the ANI.
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.29 gponmgr_lib_set_total_tcont_num
Function Prototype int gponmgr_lib_set_total_tcont_num( unsigned short totalTcontNum)
Description Set the total number of T-CONTs that can be supported on this ANI.
Support Chip EN7521
Parameter 1 totalTcontNum The total number of T-CONTs
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.30 gponmgr_lib_set_gem_block_length
Function Prototype int gponmgr_lib_set_gem_block_length( unsigned short gemBlockLength)
Description Set the queue occupancy reporting granularity for the DBA, in units of bytes.
Support Chip EN7521
Parameter 1 gemBlockLength GEM block length
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.31 gponmgr_lib_set_onu_response_time
Function Prototype int gponmgr_lib_set_onu_response_time( unsigned short onuResponseTime)
Description Set the ONU's actual response time.
Support Chip EN7521
Parameter 1 onuResponseTime The response time of the ONU
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

Page 38 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

2.6.2.32 gponmgr_lib_set_con_req_port
Function Prototype int gponmgr_lib_set_con_req_port( unsigned short conReqPort)
Set the TCP or UDP port value as assigned by IANA for the management
Description
protocol associated with this virtual Ethernet interface.
Support Chip EN7521
Parameter 1 conReqPort IANA assigned port
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.33 gponmgr_lib_set_emergency
Function Prototype int gponmgr_lib_set_emergency (unsigned char EmergencyState)
Description Set the emergency state of ONU.
Support Chip EN7521
Parameter 1 EmergencyState The emergency state of ONU
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.34 gponmgr_lib_set_qos_scheduler
int gponmgr_lib_set_qos_scheduler(struct XMCS_ChannelQoS_S
Function Prototype
*pwanChannelQos)
Description Set the type of QoS scheduler.
Support Chip EN7521
Parameter 2 pwanChannelQos The type of QoS scheduler
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.35 gponmgr_lib_set_qos_weight_cfg
int gponmgr_lib_set_qos_weight_cfg (struct XMCS_QoSWeightConfig_S
Function Prototype
*pwanQosWeightCfg)
Description Set the type of QoS weight.
Support Chip EN7521
The type of QoS weight
Parameter 1 pwanQosWeightCfg 0:packet
1:byte
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.36 gponmgr_lib_set_congest_config
int gponmgr_lib_set_congest_config(unsigned int cmd, struct
Function Prototype
XMCS_TxQueueCongestion_S *pwanCongest)
Description Set the information of congestion.
Support Chip EN7521

Page 39 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

int gponmgr_lib_set_congest_config(unsigned int cmd, struct


Function Prototype
XMCS_TxQueueCongestion_S *pwanCongest)
Parameter 1 cmd Ioctl command
Parameter 2 pwanCongest the information of congestion
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.37 gponmgr_lib_set_trtcm_scale
int gponmgr_lib_set_trtcm_scale (struct XMCS_TxTrtcmScale_S
Function Prototype
*pwanTrtcmScale, struct XMCS_TxQueueTrtcm_S *pwanTrtcmParameters)
Description Set the scale of trTCM.
Support Chip EN7521
Parameter 1 pwanTrtcmScale The scale of trTCM
Parameter 2 pwanTrtcmParameters The related parameters of trTCM
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.38 gponmgr_lib_set_trtcm_para
int gponmgr_lib_set_trtcm_para (struct XMCS_TxQueueTrtcm_S
Function Prototype
*pwanTrtcmParameters)
Description Set the related parameters of trTCM.
Support Chip EN7521
Parameter 1 pwanTrtcmParameters The related parameters of trTCM
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.39 gponmgr_lib_set_tod_time
Function Prototype int gponmgr_lib_set_tod_time(struct XMCS_GponTodCfg_S *pgponTodCfg)
Description Set ToD.
Support Chip EN7521
Parameter 1 pgponTodCfg ToD
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.40 gponmgr_lib_set_sn
Function Prototype int gponmgr_lib_set_sn(unsigned char *psn)
Description Set the serial number of ONU.
Support Chip EN7521
Parameter 1 psn The serial number of ONU
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

Page 40 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

2.6.2.41 gponmgr_lib_set_passwd
Function Prototype int gponmgr_lib_set_passwd(char *ppasswd)
Description Set the password of the GPON serial number.
Support Chip EN7521
Parameter 1 ppasswd The password of the GPON serial number
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.42 gponmgr_lib_set_clear_gem_cnt
Function Prototype int gponmgr_lib_set_clear_gem_cnt(unsigned short gemportID)
Description Set which GEM port counter to clear.
Support Chip EN7521
Parameter 1 gemportID which GEM port counter to clear
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.43 gponmgr_lib_set_clear_wan_cnt
Function Prototype int gponmgr_lib_set_clear_wan_cnt(WAN_TX_RX_SELECT_t mask)
Description Clear the PPE Tx or Rx counter.
Support Chip EN7521
Parameter 1 mask Counter mask
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.44 gponmgr_lib_set_InitRepO1_Flag
Function Prototype int gponmgr_lib_set_InitRepO1_Flag(int value)
Description Set the flag that specifies whether to report the O1 event in the initial process.
Support Chip EN7521
Parameter 1 value Flag value
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.45 gponmgr_lib_set_drv_rogueonu_mode
Function Prototype int gponmgr_lib_set_drv_rogueonu_mode(unsigned mode)
Description Set whether to enable the rogue ONU.
Support Chip EN7521
Parameter 1 mode Mode
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

Page 41 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

2.6.2.46 gponmgr_lib_set_dba_slight_modify
Function Prototype int gponmgr_lib_set_dba_slight_modify(XPON_Mode_t enable)
Description Enable or disable DBA slight modify.
Support Chip EN7521
Parameter 1 enable
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.47 gponmgr_lib_set_dba_slight_modify_total
Function Prototype int gponmgr_lib_set_dba_slight_modify_total(ushort total_size)
Description Set the total size of DBA backdoor.
Support Chip EN7521
Parameter 1 size Total size
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.2.48 gponmgr_lib_set_pon_link_state
Function Prototype int gponmgr_lib_set_pon_link_state(XPON_Mode_t state)
Description Set the detection mode of the GPON WAN driver.
Support Chip EN7521
The detection mode of the GPON WAN driver, 0:Auto,
Parameter 1 state
1:GPON and other:error
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.3 Other APIs

2.6.3.1 gponmgr_lib_gemport_assign
Function Prototype int gponmgr_lib_gemport_assign(int cmd, void *arg)
Description Assign the GEM port .
Support Chip EN7521
Parameter 1 cmd Ioctl command
Parameter 2 arg Pointer of struct XMCS_GemPortAssign_S variable
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.3.2 gponmgr_lib_init
Function Prototype int gponmgr_lib_init(void)
Description GPONMGR initialization.
Support Chip EN7521
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

Page 42 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

2.6.3.3 gponmgr_lib_deinit
Function Prototype int gponmgr_lib_deinit(void)
Description Free GPONMGR memory space .
Support Chip EN7521
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.3.4 gponmgr_lib_init_omci_socket
Function Prototype int gponmgr_lib_init_omci_socket(int * socket_f)
Description Initialize socket for receiving or sending an OMCI message.
Support Chip EN7521
Parameter 1 socket_f socket descriptor
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.3.5 gponmgr_lib_omci_receive_msg_block
int gponmgr_lib_omci_receive_msg_block(int socket,unsigned char * msg,
Function Prototype
unsigned int *msg_len)
Description Receiving OMCI message.
Support Chip EN7521
Parameter 1 socket socket descriptor
Parameter 2 msg OMCI message
Parameter 3 msg_len The length of the OMCI message
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.3.6 gponmgr_lib_omci_receive_block
int gponmgr_lib_omci_receive_block(unsigned char *msg, unsigned int
Function Prototype
*msg_len)
First call the gponmgr_lib_init_omci_socket function,then call
Description
gponmgr_lib_omci_receive_msg_block function.
Support Chip EN7521
Parameter 1 msg OMCI message
Parameter 2 msg_len The length of the OMCI message
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.3.7 gponmgr_lib_omci_send_msg_block
int gponmgr_lib_omci_send_msg_block(int socket_f, unsigned char *msg,
Function Prototype
unsigned int msg_len)
Description Sending OMCI message.
Support Chip EN7521

Page 43 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

int gponmgr_lib_omci_send_msg_block(int socket_f, unsigned char *msg,


Function Prototype
unsigned int msg_len)
Parameter 1 socket_f socket descriptor
Parameter 2 msg OMCI message
Parameter 3 msg_len The length of the OMCI message
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.3.8 gponmgr_lib_omci_send_block
int gponmgr_lib_omci_send _block(int socket_f, unsigned char *msg, unsigned
Function Prototype
int msg_len)
Description Call gponmgr_lib_omci_send_msg_block function.
Support Chip EN7521
Parameter 1 msg OMCI message
Parameter 2 msg_len The length of the OMCI message
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.3.9 gponmgr_lib_bind_tcont_to_allocid
int gponmgr_lib_bind_tcont_to_allocid(unsigned short tcont, unsigned short
Function Prototype
allocid)
Description Binding TCONT to alloc ID.
Support Chip EN7521
Parameter 1 tcont TCONT number
Parameter 2 allocID Alloc ID
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.3.10 gponmgr_lib_unbind_tcont_to_allocid
Function Prototype int gponmgr_lib_unbind_tcont_to_allocid(unsigned short tcont)
Description Unbinding TCONT and alloc ID.
Support Chip EN7521
Parameter 1 tcont TCONT number
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.3.11 gponmgr_lib_delete_tcont
Function Prototype int gponmgr_lib_delete_tcont(unsigned short tcont)
Description Delete TCONT.
Support Chip EN7521
Parameter 1 tcont TCONT number
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

Page 44 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

2.6.3.12 gponmgr_lib_config_gemport
int gponmgr_lib_config_gemport(unsigned short portid, GPON_GemType_t
Function Prototype
type, unsigned short tcont)
Description Create GEM port.
Support Chip EN7521
Parameter 1 portid GEM port ID
Parameter 2 type 0: unicast 1: multicast
Parameter 3 tcont TCONT number
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.3.13 gponmgr_lib_delete_gemport
Function Prototype int gponmgr_lib_delete_gemport(unsigned short portid)
Description Delete GEM port.
Support Chip EN7521
Parameter 1 portid GEM port ID
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.6.3.14 gponmgr_lib_reset_driver_data_service
Function Prototype int gponmgr_lib_reset_driver_data_service()
Description Delete all data services in the driver, leave only ONU ID and OMCC, stay on O5.
Support Chip EN7521
Return Value return ECONET_E_SUCCESS/ECONET_E_FAIL

2.7 Register map


List all registers (usually generated by CODA).

Page 45 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.
Confidential C

Exhibit 1 Terms and Conditions

Your access to and use of this document and the information contained herein (collectively this “Document”) is subject to your (including
the corporation or other legal entity you represent, collectively “You”) acceptance of the terms and conditions set forth below (“T&C”). By
using, accessing or downloading this Document, You are accepting the T&C and agree to be bound by the T&C. If You don’t agree to the
T&C, You may not use this Document and shall immediately destroy any copy thereof.

This Document contains information that is confidential and proprietary to Airoha Technology Corp. and/or its affiliates (collectively
“Airoha”) or its licensors and is provided solely for Your internal use with Airoha’s chipset(s) described in this Document and shall not be
used for any other purposes (including but not limited to identifying or providing evidence to support any potential patent infringement
claim against Airoha or any of Airoha’s suppliers and/or direct or indirect customers). Unauthorized use or disclosure of the information
contained herein is prohibited. You agree to indemnify Airoha for any loss or damages suffered by Airoha for Your unauthorized use or
disclosure of this Document, in whole or in part.

Airoha and its licensors retain titles and all ownership rights in and to this Document and no license (express or implied, by estoppels or
otherwise) to any intellectual propriety rights is granted hereunder. This Document is subject to change without further
notification. Airoha does not assume any responsibility arising out of or in connection with any use of, or reliance on, this Document, and
specifically disclaims any and all liability, including, without limitation, consequential or incidental damages.

THIS DOCUMENT AND ANY OTHER MATERIALS OR TECHNICAL SUPPORT PROVIDED BY AIROHA IN CONNECTION WITH THIS DOCUMENT, IF
ANY, ARE PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS, IMPLIED, STATUTORY, OR OTHERWISE. AIROHA
SPECIFICALLY DISCLAIMS ALL WARRANTIES OF MERCHANTABILITY, NON-INFRINGEMENT, FITNESS FOR A PARTICULAR PURPOSE,
COMPLETENESS OR ACCURACY AND ALL WARRANTIES ARISING OUT OF TRADE USAGE OR OUT OF A COURSE OF DEALING OR COURSE OF
PERFORMANCE. AIROHA SHALL NOT BE RESPONSIBLE FOR ANY AIROHA DELIVERABLES MADE TO MEET YOUR SPECIFICATIONS OR TO
CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.

Without limiting the generality of the foregoing, Airoha makes no warranty, representation or guarantee regarding the suitability of its
products for any particular purpose, nor does Airoha assume any liability arising out of the application or use of any product, circuit or
software. You agree that You are solely responsible for the designing, validating and testing Your product incorporating Airoha’s product
and ensure such product meets applicable standards and any safety, security or other requirements.

The above T&C and all acts in connection with the T&C or this Document shall be governed, construed and interpreted in accordance with
the laws of Taiwan, without giving effect to the principles of conflicts of law.

Page 46 of 46
Airoha Proprietary and Confidential. © 2023 Airoha Technology Corp. All rights reserved.
Unauthorized reproduction or disclosure of this document, in whole or in part, is strictly prohibited.

You might also like