RDK Hardware Porting Kit (HPK)
The RDK Hardware Porting Kit (HPK) provides a centralized resource for vendors integrating their hardware layer with the RDK stack. It simplifies this process by providing a unified set of tools, documentation, and test suites.
Specifically, the HPK includes:
- Hardware Abstraction Layer (HAL) API header files: These define the interfaces vendors must implement to ensure compatibility.
- Comprehensive software tests: These validate the vendor's HAL implementation against RDK middleware requirements.
- Standards & Best Practices: Guidelines on coding standards, documentation, branching strategies, and interface development.
- Testing Methodologies: Outlines various testing levels and frameworks, including TDD and system interface testing.
- Code Examples & Advanced Topics: Practical examples for dynamic library loading, plugin development, virtual device development, and control plane overviews.
- FAQ & Troubleshooting: Addresses common challenges related to Git, Vagrant, C macros, testing, and RDK tools.
- Technology Overviews: Explains key technologies and frameworks like UT-Core and the RDK Docker toolchain.
- vDevice Support: Provides the ability to develop and test vendor layers using virtualized hardware within a VM. This "vDevice" approach simulates hardware components and drivers, enabling early testing, cost-effectiveness, reproducibility, and flexibility. It allows developers to test against various hardware profiles without needing physical hardware.
The HPK serves as a single point of reference, streamlining vendor integration, reducing redundant effort, and promoting consistency across RDK platforms. It accelerates hardware enablement and improves the quality of the RDK ecosystem.