Skip to content

Commit 13785b1

Browse files
committed
Merge branch 'feature/338-task-add-versioning-sop' into develop
2 parents 97d28f9 + baf6374 commit 13785b1

File tree

42 files changed

+4142
-1
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+4142
-1
lines changed
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
name: Update RAG Status Report
2+
3+
on:
4+
push:
5+
branches: [develop]
6+
paths:
7+
- "**/metadata.yaml"
8+
- "scripts/generate_rag_report.sh"
9+
10+
permissions:
11+
contents: write
12+
13+
jobs:
14+
update-report:
15+
runs-on: ubuntu-latest
16+
steps:
17+
- name: Checkout
18+
uses: actions/checkout@v4
19+
20+
- name: Generate RAG report
21+
run: bash scripts/generate_rag_report.sh
22+
23+
- name: Commit updated report
24+
run: |
25+
git config user.name "github-actions[bot]"
26+
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
27+
git add RAG_STATUS_REPORT.md
28+
git diff --cached --quiet && echo "No changes to commit" && exit 0
29+
git commit -m "chore: update RAG status report [skip ci]"
30+
git push

RAG_STATUS_REPORT.md

Lines changed: 214 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,214 @@
1+
# HAL Interface RAG Status Report
2+
3+
| | |
4+
|---|---|
5+
| **Generated** | 2026-03-11 |
6+
| **Components** | 32 |
7+
| 🟢 **GREEN** | 13 |
8+
| 🟡 **AMBER** | 16 |
9+
| 🔴 **RED** | 3 |
10+
11+
---
12+
13+
## Summary
14+
15+
| Status | Count | Meaning |
16+
|--------|-------|---------|
17+
| 🟢 GREEN | **13** | Reviewed & Approved — Interface stable on develop |
18+
| 🟡 AMBER | **16** | Under Active Ingestion — Will enter sprint review when ready |
19+
| 🔴 RED | **3** | Not Started / Blocked — Strategy or definition required |
20+
21+
---
22+
23+
## 🟢 GREEN — Reviewed & Approved
24+
25+
### SOC Components
26+
27+
| | Component | Current Version | Description | Reviews | Owners |
28+
|---|-----------|---------|-------------|---------|--------|
29+
| 🟢 | audiodecoder | 0.1.0.0 | Audio decoder resource management and codec format support | 5/5 | Architecture + AV_Architecture |
30+
| 🟢 | audiosink | 0.1.0.0 | Audio output rendering and sink device management | 5/5 | Architecture + AV_Architecture |
31+
| 🟢 | avbuffer | 0.1.0.0 | AV buffer allocation and secure video path management | 5/5 | Architecture + AV_Architecture |
32+
| 🟢 | avclock | 0.1.0.0 | Audio/video clock synchronization and timing control | 5/5 | Architecture + AV_Architecture |
33+
| 🟢 | hdmicec | 0.1.0.0 | HDMI CEC protocol messaging and device control | 4/5 | Architecture + AV_Architecture |
34+
| 🟢 | hdmiinput | 0.1.0.0 | HDMI input port management and signal detection | 3/5 | Architecture + AV_Architecture |
35+
| 🟢 | hdmioutput | 0.1.0.0 | HDMI output port configuration and display control | 3/5 | Architecture + AV_Architecture |
36+
| 🟢 | videodecoder | 0.1.0.0 | Video decoder resource management and codec support | 5/5 | Architecture + AV_Architecture |
37+
| 🟢 | videosink | 0.1.0.0 | Video output rendering and display sink management | 5/5 | Architecture + AV_Architecture |
38+
39+
40+
### OEM Components
41+
42+
| | Component | Current Version | Description | Reviews | Owners |
43+
|---|-----------|---------|-------------|---------|--------|
44+
| 🟢 | compositeinput | 0.1.0.0 | Composite video input capture and control | 2/5 | Architecture + AV_Architecture |
45+
| 🟢 | deviceinfo | 0.1.0.0 | Device information and platform capability reporting | 4/5 | Architecture + Kernel_Architecture |
46+
| 🟢 | indicator | 0.1.0.0 | LED and visual indicator state management | 4/5 | Architecture + Graphics_Architecture |
47+
| 🟢 | sensor | 0.1.0.0 | Hardware sensor data acquisition and monitoring | 4/5 | Architecture + Kernel_Architecture |
48+
49+
50+
---
51+
52+
## 🟡 AMBER — Under Active Ingestion
53+
54+
### SOC Components
55+
56+
| | Component | Current Version | Priority | Detail | Action Required | Review Deadline | Target GREEN | Owners |
57+
|---|-----------|---------|----------|--------|-----------------|-----------------|--------------|--------|
58+
| 🟡 | avbuffer *(SVP risk)* | 0.1.0.0 | 1 | Encrypted buffer (DRM/SVP) - Pending on DRM strategy | May change due to SVP changes from DRM which is being worked on ||| Architecture + AV_Architecture |
59+
| 🟡 | vsi/kernel | 0.0.0.1 | 1 | Strategy required | Not blocking progress - Architecture Strategy ||| Architecture |
60+
| 🟡 | audiomixer | 0.0.0.1 | 2 | PR under review | In Progress PR Review ||| VTS_Team + AV_Architecture |
61+
| 🟡 | planecontrol | 0.1.0.0 | 3 | Re-review required | Discussions with MW team - Simplify design. Architecture requires simplified design and restructured review. ||| Architecture + Graphics_Architecture |
62+
| 🟡 | vsi/graphics | 0.0.0.1 | 6 | Docs required | Not blocking progress - Define Versions & write up vision and direction, Planning Out Evolution of the platform, RDK-M ||| Architecture + Graphics_Architecture |
63+
64+
65+
### OEM Components
66+
67+
| | Component | Current Version | Priority | Detail | Action Required | Review Deadline | Target GREEN | Owners |
68+
|---|-----------|---------|----------|--------|-----------------|-----------------|--------------|--------|
69+
| 🟡 | panel | 0.0.0.1 | 3 | Re-review required | Review PQ settings for multiple video and PQ panel mixing ||| Architecture + Graphics_Architecture |
70+
| 🟡 | deepsleep | 0.0.0.1 | 4 | Feedback-loop review | Review design based on learnings from current platforms. Examine findings and investigation on Shutdown issue ||| Architecture |
71+
| 🟡 | boot | 0.0.0.1 | 5 | Migrate -> Reboot Reason | Rename Module ||| Architecture + MW_Team |
72+
| 🟡 | broadcast | 0.0.0.1 | 5 | PR under review | Review Required - Start the PR Review | 2026-03-18 | 2026-03-25 | VTS_Team + Broadcast_Team |
73+
| 🟡 | flash | 0.1.0.0 | 5 | Migrate -> Image | Rename Module ||| Architecture + Kernel_Architecture |
74+
| 🟡 | r4ce | 0.0.0.1 | 5 | API Definition in progress | Control Manager Team - API Definition started ||| Architecture + Control_Manager_Architecture |
75+
| 🟡 | vsi/bluetooth | 0.0.0.1 | 6 | Docs required | Not blocking progress - Have discussions write up methodology, Discussions with Bluetooth Team | 2026-03-24 | 2026-03-31 | Architecture + Connectivity_Architecture |
76+
| 🟡 | vsi/linuxinput | 0.0.0.1 | 6 | Docs required | Not blocking progress - Write up methodology ||| Architecture + Kernel_Architecture |
77+
| 🟡 | vsi/wifi | 0.0.0.1 | 6 | Docs required | Not blocking progress - Have discussions write up methodology, Discussions with WIFI Team ||| Architecture + Connectivity_Architecture |
78+
| 🟡 | vsi/abstractfilesystem | 0.0.0.1 | 7 | Requirements TBD | Not blocking progress - Discussion with MW Team, Review Requirements ||| Architecture |
79+
| 🟡 | vsi/filesystem | 0.0.0.1 | 7 | Standards & layout | Not blocking progress - Review Documentation ||| Architecture |
80+
| 🟡 | ffv | 0.0.0.1 | 8 | PR under review | Finalise PR Review, still platform specific proposal from control manager ||| Architecture + AV_Architecture |
81+
82+
83+
---
84+
85+
## 🔴 RED — Not Started / Blocked
86+
87+
### SOC Components
88+
89+
| | Component | Current Version | Priority | Detail | Action Required | Review Deadline | Target GREEN | Owners |
90+
|---|-----------|---------|----------|--------|-----------------|-----------------|--------------|--------|
91+
| 🔴 | vsi/crypto | 0.0.0.1 | 1 | Security API definition required | HAL lower-layer requirement - define Security API contracts and integration boundaries ||| Architecture + Kernel_Architecture |
92+
| 🔴 | vsi/keyvault | 0.0.0.1 | 1 | Encrypted storage architecture required | HAL lower-layer requirement - define Key Vault interface for encrypted storage ||| Architecture + Kernel_Architecture |
93+
94+
95+
### OEM Components
96+
97+
| | Component | Current Version | Priority | Detail | Action Required | Review Deadline | Target GREEN | Owners |
98+
|---|-----------|---------|----------|--------|-----------------|-----------------|--------------|--------|
99+
| 🔴 | cdm | 0.0.0.1 | 1 | Architecture strategy in progress | Architecture Strategy ||| Architecture + AV_Architecture |
100+
101+
102+
---
103+
104+
## Review Status by Component
105+
106+
> ✅ Reviewed | 🔍 In Review | 🔁 Changes Requested | 🔄 Recheck | ☐ Pending | ➖ Abstained | N/A Not assigned
107+
108+
### SOC — 🟢 GREEN
109+
110+
| | Component | Progress | RTAB | Arch | Prod | VTS | AV | Broadcast | Ctrl Mgr | Graphics | Connectivity | Kernel |
111+
|---|-----------|----------|------|------|------|-----|-----|-----------|----------|----------|--------------|--------|
112+
| 🟢 | audiodecoder | 5/5 |||||| N/A | N/A | N/A | N/A | N/A |
113+
| 🟢 | audiosink | 5/5 |||||| N/A | N/A | N/A | N/A | N/A |
114+
| 🟢 | avbuffer | 5/5 |||||| N/A | N/A | N/A | N/A | N/A |
115+
| 🟢 | avclock | 5/5 |||||| N/A | N/A | N/A | N/A | N/A |
116+
| 🟢 | hdmicec | 4/5 |||||| N/A | N/A | N/A | N/A | N/A |
117+
| 🟢 | hdmiinput | 3/5 |||| 🔄 || N/A | N/A | N/A | N/A | N/A |
118+
| 🟢 | hdmioutput | 3/5 |||| 🔄 || N/A | N/A | N/A | N/A | N/A |
119+
| 🟢 | videodecoder | 5/5 |||||| N/A | N/A | N/A | N/A | N/A |
120+
| 🟢 | videosink | 5/5 |||||| N/A | N/A | N/A | N/A | N/A |
121+
122+
### SOC — 🟡 AMBER
123+
124+
| | Component | Progress | RTAB | Arch | Prod | VTS | AV | Broadcast | Ctrl Mgr | Graphics | Connectivity | Kernel |
125+
|---|-----------|----------|------|------|------|-----|-----|-----------|----------|----------|--------------|--------|
126+
| 🟡 | vsi/kernel | 0/5 ||||| N/A | N/A | N/A | N/A | N/A ||
127+
| 🟡 | audiomixer | 0/5 || 🔍 | 🔍 | 🔍 | 🔍 | N/A | N/A | N/A | N/A | N/A |
128+
| 🟡 | planecontrol | 0/6 |||||| N/A | N/A || N/A | N/A |
129+
| 🟡 | vsi/graphics | 0/5 ||||| N/A | N/A | N/A || N/A | N/A |
130+
131+
### SOC — 🔴 RED
132+
133+
| | Component | Progress | RTAB | Arch | Prod | VTS | AV | Broadcast | Ctrl Mgr | Graphics | Connectivity | Kernel |
134+
|---|-----------|----------|------|------|------|-----|-----|-----------|----------|----------|--------------|--------|
135+
| 🔴 | vsi/crypto | 0/5 ||||| N/A | N/A | N/A | N/A | N/A ||
136+
| 🔴 | vsi/keyvault | 0/5 ||||| N/A | N/A | N/A | N/A | N/A ||
137+
138+
### OEM — 🟢 GREEN
139+
140+
| | Component | Progress | RTAB | Arch | Prod | VTS | AV | Broadcast | Ctrl Mgr | Graphics | Connectivity | Kernel |
141+
|---|-----------|----------|------|------|------|-----|-----|-----------|----------|----------|--------------|--------|
142+
| 🟢 | compositeinput | 2/5 |||||| N/A | N/A | N/A | N/A | N/A |
143+
| 🟢 | deviceinfo | 4/5 ||||| N/A | N/A | N/A | N/A | N/A ||
144+
| 🟢 | indicator | 4/5 ||||| N/A | N/A | N/A || N/A | N/A |
145+
| 🟢 | sensor | 4/5 ||||| N/A | N/A | N/A | N/A | N/A ||
146+
147+
### OEM — 🟡 AMBER
148+
149+
| | Component | Progress | RTAB | Arch | Prod | VTS | AV | Broadcast | Ctrl Mgr | Graphics | Connectivity | Kernel |
150+
|---|-----------|----------|------|------|------|-----|-----|-----------|----------|----------|--------------|--------|
151+
| 🟡 | panel | 2/5 ||||| N/A | N/A | N/A || N/A | N/A |
152+
| 🟡 | deepsleep | 3/5 ||||| N/A | N/A | N/A | N/A | N/A ||
153+
| 🟡 | boot | 3/5 ||||| N/A | N/A | N/A | N/A | N/A ||
154+
| 🟡 | broadcast | 0/5 ||||| N/A || N/A | N/A | N/A | N/A |
155+
| 🟡 | flash | 3/5 ||||| N/A | N/A | N/A | N/A | N/A ||
156+
| 🟡 | r4ce | 0/5 ||||| N/A | N/A || N/A | N/A | N/A |
157+
| 🟡 | vsi/bluetooth | 0/5 ||||| N/A | N/A | N/A | N/A || N/A |
158+
| 🟡 | vsi/linuxinput | 0/5 ||||| N/A | N/A | N/A | N/A | N/A ||
159+
| 🟡 | vsi/wifi | 0/5 ||||| N/A | N/A | N/A | N/A || N/A |
160+
| 🟡 | vsi/abstractfilesystem | 0/5 ||||| N/A | N/A | N/A | N/A | N/A ||
161+
| 🟡 | vsi/filesystem | 0/5 ||||| N/A | N/A | N/A | N/A | N/A ||
162+
| 🟡 | ffv | 0/5 |||||| N/A | N/A | N/A | N/A | N/A |
163+
164+
### OEM — 🔴 RED
165+
166+
| | Component | Progress | RTAB | Arch | Prod | VTS | AV | Broadcast | Ctrl Mgr | Graphics | Connectivity | Kernel |
167+
|---|-----------|----------|------|------|------|-----|-----|-----------|----------|----------|--------------|--------|
168+
| 🔴 | cdm | 0/5 |||||| N/A | N/A | N/A | N/A | N/A |
169+
170+
---
171+
172+
## Reviewer Team Coverage
173+
174+
> **Note:** Architecture and Product_Architecture are the same organisational group reviewing as separate stakeholders, with members drawn from various teams.
175+
176+
| Team | Role |
177+
|------|------|
178+
| RTAB_Group | All components |
179+
| Architecture | All components |
180+
| Product_Architecture | All components |
181+
| VTS_Team | All components |
182+
| AV_Architecture | Audio/Video pipeline components |
183+
| Broadcast_Team | Broadcast/tuner components |
184+
| Control_Manager_Architecture | Remote control & input management |
185+
| Graphics_Architecture | Graphics, display & composition |
186+
| Connectivity_Architecture | Bluetooth, Wi-Fi & connectivity |
187+
| Kernel_Architecture | System, kernel, boot & platform |
188+
189+
---
190+
191+
### Version Key
192+
193+
Pre-baseline versions use the format `0.<generation>.<minor>.<patch>`:
194+
195+
| Field | Meaning | Bumped when |
196+
|-------|---------|-------------|
197+
| `0` | Pre-baseline prefix | Changes to AIDL integer at freeze |
198+
| `generation` | Architectural era (0 = initial, 1+ = full design cycle) | Breaking interface change |
199+
| `minor` | ABI-compatible enhancement counter | Non-breaking feature added |
200+
| `patch` | Documentation or trivial fix counter | No interface change |
201+
202+
Post-baseline (frozen) versions use AIDL stable versioning: `1`, `2`, `3`... (100% backwards compatible, additive only).
203+
204+
---
205+
206+
### RAG Key
207+
208+
- 🟢 **GREEN** — Interface reviewed, approved and stable. Ready for implementation.
209+
- 🟡 **AMBER** — Interface under active ingestion. Will enter sprint review when ready.
210+
- 🔴 **RED** — Interface not yet started or blocked. Requires architecture strategy, AIDL definition, or team alignment.
211+
212+
---
213+
214+
*Report generated by `scripts/generate_rag_report.sh`*

README.md

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,17 @@
11
# RDK HAL Aidl Interface
22

3-
**RDK-HALIF-AIDL** is an open-source framework that standardizes hardware abstraction layers using Android AIDL. It provides a structured, IPC-driven interface for seamless communication between system components and hardware devices.
3+
**RDK-HALIF-AIDL** is an open-source framework that standardizes hardware abstraction layers using Android AIDL. It provides a structured, IPC-driven interface for seamless communication between system components and hardware devices.
44

55
Designed for embedded platforms, **RDK-HALIF-AIDL** ensures efficient hardware interaction, modular development, and interoperability with Android-based ecosystems.
66

7+
## Governance
8+
9+
Each HAL interface follows a structured review and versioning lifecycle to ensure stability, traceability, and alignment across teams before release.
10+
11+
- **[RAG Status Report](RAG_STATUS_REPORT.md)** — Tracks the review readiness of every HAL and VSI component on the develop branch. Each component carries a 🟢 GREEN / 🟡 AMBER / 🔴 RED status reflecting whether its interface definition has been reviewed, is under active design iteration, or is blocked awaiting strategy. This report is generated from the `metadata.yaml` files embedded in each component directory.
12+
13+
- **[Versioning SOP](docs/governance/versioning-sop.md)** — Defines how interface versions are assigned, incremented, and promoted. Covers the generation numbering scheme (`0.x.y`), the 14+5 day review cycle, and the criteria for a component to move from RED → AMBER → GREEN. All teams contributing to or consuming HAL interfaces should follow this process.
14+
715
## Documentation
816

917
All documentation and build instructions for **RDK Hardware Porting Kit** can be found here: [Documentation](https://rdkcentral.github.io/rdk-halif-aidl/)

audiodecoder/metadata.yaml

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
# If not stated otherwise in this file or this component's LICENSE file the
2+
# following copyright and licenses apply:
3+
#
4+
# Copyright 2024 RDK Management
5+
#
6+
# Licensed under the Apache License, Version 2.0 (the "License");
7+
# you may not use this file except in compliance with the License.
8+
# You may obtain a copy of the License at
9+
#
10+
# http://www.apache.org/licenses/LICENSE-2.0
11+
#
12+
# Unless required by applicable law or agreed to in writing, software
13+
# distributed under the License is distributed on an "AS IS" BASIS,
14+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15+
# See the License for the specific language governing permissions and
16+
# limitations under the License.
17+
18+
# component - Machine-readable component identifier [manual]
19+
# version - Pre-baseline: 0.<generation>.<minor>.<patch> [release.sh]
20+
# generation - Architectural era (0 = initial, 1+ = full design cycle) [release.sh]
21+
# status - RAG status: GREEN / AMBER / RED [manual]
22+
# description - One-line human-readable summary [manual]
23+
# type - Responsibility: SOC or OEM [manual]
24+
component: audiodecoder
25+
version: 0.1.0.0
26+
generation: 1
27+
status: GREEN
28+
description: "Audio decoder resource management and codec format support"
29+
type: SOC
30+
31+
# lifecycle - 14+5 review cycle dates [pr_cycle.sh]
32+
# review_started - Date the review window opened
33+
# review_deadline - review_started + 14 calendar days
34+
# target_green_date - review_deadline + 5 business days
35+
lifecycle:
36+
review_started: ~
37+
review_deadline: ~
38+
target_green_date: ~
39+
40+
# scope - High-level architectural responsibilities [manual]
41+
scope:
42+
- Audio decoder resource management for multiple codec formats (AAC, MP3, Dolby, etc.)
43+
- Open/close lifecycle management with state transitions (CLOSED -> OPENING -> READY -> CLOSING)
44+
- Secure audio playback path for DRM-protected content
45+
- Codec-specific capabilities and decoder configuration properties
46+
- State and error notification delivery through event listeners
47+
48+
# notes - Tracking metadata [manual]
49+
# priority - Numeric priority (lower = higher)
50+
# status_detail - Short current state description
51+
# action - Required action to progress
52+
# risk - Risk notes (appears as watch item on dashboard)
53+
# owners - Responsible architecture teams
54+
notes:
55+
owners: "Architecture + AV_Architecture"
56+
57+
# reviewers - Sign-off status per stakeholder team [manual]
58+
# Values: pending | in_review | changes_requested | recheck | reviewed | abstained
59+
reviewers:
60+
RTAB_Group: reviewed
61+
Architecture: reviewed
62+
Product_Architecture: reviewed
63+
AV_Architecture: reviewed
64+
VTS_Team: reviewed
65+

0 commit comments

Comments
 (0)