Core Functional Blocks/Subsystem

The core thread waits for events or messages, if there are events or messages in the FIFO queue, the thread retrieves the events or messages one after another and takes appropriate action. Three kinds of messages or events can be enqueued in the Core thread queue
- South bound messages received from WebConfig Agent or Ovsdb Managervia RBUS callback.
- South bound messages received from DML thread because of TR-181 set handler invocation
- North bound asynchronous Wi-Fi events from HAL or driver isuch as
- Client associations/disassociations
- VAP or interface Up/Down
- Registered 802.11mgmt frame reception
- Band Steering events
All south bound messages are decoded, parsed and validated by core thread. In case, the messages are successfully validated, the core thread uses Wi-Fi HAL function to configure Wi-Fi driver or baseband accordingly. if successful, core thread is also resonsible for updating the persistent database so that in case of reboot or power failure, the Wi-Fi subsystem of the CPE device maintain previous operating configuration. Core thread also handles Wi-Fi or Factory reset commands that may be triggered by messages enqueued by DML thread or during initialization sequence.
All north bound events are translated to state update in ovddb state tables using WebConfig encoded messages sent by core to ovsdb manager.