Skip to content

Bluetooth: Controller: Add support for HCI_LE_CIS_Established event V2#6

Draft
cvinayak with Copilot wants to merge 3 commits into
mainfrom
copilot/add-support-for-hci-le-cis-event-v2
Draft

Bluetooth: Controller: Add support for HCI_LE_CIS_Established event V2#6
cvinayak with Copilot wants to merge 3 commits into
mainfrom
copilot/add-support-for-hci-le-cis-event-v2

Conversation

Copilot AI commented Jan 21, 2026

Copy link
Copy Markdown

Bluetooth Core 6.0 introduced HCI_LE_CIS_Established [v2] event (0x2a) with six additional parameters for CIS peripherals: Sub_Interval, Max_SDU_C_To_P, Max_SDU_P_To_C, SDU_Interval_C_To_P, SDU_Interval_P_To_C, and Framing.

Changes

  • Event version selection: Controller checks BT_EVT_MASK_LE_CIS_ESTABLISHED_V2 to determine which event version to generate
  • V2 event generation: Populates additional fields from existing controller state (lll_cis->sub_interval, cis->c_max_sdu, cis->p_max_sdu, cig->c_sdu_interval, cig->p_sdu_interval, cis->framed)
  • Backward compatibility: Falls back to V1 event when V2 is not masked by host

Implementation

Modified le_cis_established() in subsys/bluetooth/controller/hci/hci.c:

/* Check if host supports v2 event */
use_v2 = (le_event_mask & BT_EVT_MASK_LE_CIS_ESTABLISHED_V2) != 0;

if (use_v2) {
    sep_v2 = meta_evt(buf, BT_HCI_EVT_LE_CIS_ESTABLISHED_V2, sizeof(*sep_v2));
    // ... populate V1 fields ...
    
    /* V2-specific fields */
    sys_put_le24(lll_cis->sub_interval, sep_v2->sub_interval);
    sep_v2->c_max_sdu = sys_cpu_to_le16(cis->c_max_sdu);
    sep_v2->p_max_sdu = sys_cpu_to_le16(cis->p_max_sdu);
    sys_put_le24(cig->c_sdu_interval, sep_v2->c_sdu_interval);
    sys_put_le24(cig->p_sdu_interval, sep_v2->p_sdu_interval);
    sep_v2->framing = cis->framed;
} else {
    // Generate V1 event
}

All V2 fields sourced from existing internal structures; no changes to data collection paths required.

Original prompt

This section details on the original issue you should resolve

<issue_title>Bluetooth: Controller: ISO: Add support for CIS established event V2</issue_title>
<issue_description>Is your enhancement proposal related to a problem? Please describe.
Bluetooth Core 6.0 added a new version of the HCI_LE_CIS_Established event which adds additional information to the CIS peripheral when a CIS is connected, such as the Sub_Interval, Max_SDU_C_To_P, Max_SDU_P_To_C, SDU_Interval_C_To_P, SDU_Interval_P_To_C, and Framing.

Describe the solution you'd like
Add support for generate and sending the event to the host.

Describe alternatives you've consideredN/A

Additional context
Since not all hosts may support this new event, it needs to be ensured that the right event is sent. See also zephyrproject-rtos#79554
</issue_description>

<agent_instructions>Refer to BLUETOOTH CORE SPECIFICATION Version 6.2 | Vol 4, Part E, Section 7.7.65.25
LE CIS Established event, and implement the generation of HCI_LE_CIS_Established [v2] event in the Zephyr Project open source Bluetooth Low Energy Controller implementation. Take inspiration of how existing HCI_LE_CIS_Established [v1] is implemented and correctly fill accordingly the event parameters required for the HCI_LE_CIS_Established [v2] event.</agent_instructions>

Comments on the Issue (you are @copilot in this section)


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

Copilot AI and others added 2 commits January 21, 2026 05:19
Co-authored-by: cvinayak <6350656+cvinayak@users.noreply.github.com>
Co-authored-by: cvinayak <6350656+cvinayak@users.noreply.github.com>
Copilot AI changed the title [WIP] Add support for HCI_LE_CIS_Established event V2 in Bluetooth Bluetooth: Controller: Add support for HCI_LE_CIS_Established event V2 Jan 21, 2026
Copilot AI requested a review from cvinayak January 21, 2026 05:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Bluetooth: Controller: ISO: Add support for CIS established event V2

2 participants