You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

WORK IN-PROGRESS

HAL Interface for Raspberry Pi 4 Reference Platform

The Hardware Abstraction Layer (HAL) in the RDK-B project provides an interface for hardware-dependent operations. This document explores the available HAL components in the halinterface directory and identifies those relevant to the Raspberry Pi 4 reference platform.

Hal Version : 3

Directory Structure

Located at: rdkb/components/opensource/ccsp/halinterface/

The directory contains various HAL implementations, categorized as follows:

1. Network and Ethernet HALs

  • vlan_eth_hal.h - VLAN Ethernet HAL

  • vlan_hal_emu.h - VLAN HAL Emulator

  • xdsl_hal.h - xDSL HAL (Not relevant to RPi4)

  • xtm_hal.h - Transmit Multiplexer HAL (Not relevant to RPi4)

2. Wireless (WiFi) HALs

  • wifi_hal.h - Core WiFi HAL (Relevant to RPi4)

  • wifi_hal_emu.h - WiFi HAL Emulator

  • wifi_hal_extender.h - WiFi Extender HAL

  • wifi_hal_client_mgt.h - WiFi Client Management

  • wifi_hal_radio.h - WiFi Radio Control

  • wifi_hal_sta.h - WiFi Station HAL

  • wifi_hal_telemetry.h - WiFi Telemetry Support

3. Broadband & Modem HALs

  • dpoe_hal.h - DOCSIS Passive Optical Ethernet (Not relevant to RPi4)

  • ccsp_hal_dhcpv4_emu_api.h - DHCPv4 Emulator API

4. Voice and Bluetooth HALs

  • voice_hal.h - Voice Processing HAL

  • bt_hal.h - Bluetooth HAL (Relevant to RPi4 if Bluetooth is needed)

5. TR-069 and Device Management HALs

  • Tr69_Tlv.h - TR-069 TLV Management

HALs Relevant to Raspberry Pi 4

For Raspberry Pi 4, the most relevant HALs include:

  1. WiFi HALs:

    • wifi_hal.h

    • wifi_hal_radio.h

    • wifi_hal_sta.h

    • wifi_hal_client_mgt.h

    • wifi_hal_telemetry.h

  2. Ethernet & VLAN HALs:

    • vlan_eth_hal.h

    • vlan_hal_emu.h

  3. Bluetooth HAL:

    • bt_hal.h

  4. Voice HAL (If applicable):

    • voice_hal.h

wifi_hal.h:
It serves as the central interface for interacting with different WiFi components like the radio, access point (AP), station (STA), client management, telemetry, and extenders. The APIs defined in wifi_hal.h are meant to be used across multiple modules of the WiFi stack. For example, the wifi_hal_generic.h file may include basic functionality needed by all other modules, while the wifi_hal_radio.h, wifi_hal_ap.h, and other headers provide specific functionality for each part of the WiFi subsystem.


  • No labels