Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6551e182 authored by Chienyuan Huang's avatar Chienyuan Huang Committed by Automerger Merge Worker
Browse files

Merge "RAS: add PDL for On-demand Ranging Data" into main am: d228edf0 am: ca3e9904

parents d14451b9 ca3e9904
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -166,6 +166,7 @@ cc_defaults {
        "bluetooth_flags_c_lib",
        "libbluetooth_hci_pdl",
        "libbluetooth_l2cap_pdl",
        "libbluetooth_ras_pdl",
        "libbluetooth_smp_pdl",
        "libc++fs",
    ],
@@ -316,6 +317,7 @@ cc_binary {
        "libbluetooth_hci_pdl",
        "libbluetooth_l2cap_pdl",
        "libbluetooth_log",
        "libbluetooth_ras_pdl",
        "libbluetooth_rust_interop",
        "libbluetooth_smp_pdl",
        "libbt_shim_bridge",
@@ -439,6 +441,7 @@ cc_test {
        "libbluetooth_hci_pdl",
        "libbluetooth_l2cap_pdl",
        "libbluetooth_log",
        "libbluetooth_ras_pdl",
        "libbluetooth_rust_interop",
        "libbluetooth_smp_pdl",
        "libbt-platform-protos-lite",
+1 −0
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@ packetgen_headers("BluetoothGeneratedPackets_h") {
  sources = [
    "hci/hci_packets.pdl",
    "l2cap/l2cap_packets.pdl",
    "ras/ras_packets.pdl",
    "security/smp_packets.pdl",
  ]

+37 −0
Original line number Diff line number Diff line
genrule {
    name: "BluetoothGeneratedPacketsRas_h",
    defaults: ["BluetoothGeneratedPackets_default"],
    srcs: ["ras_packets.pdl"],
    out: ["ras/ras_packets.h"],
    visibility: ["//visibility:private"],
}

cc_library_headers {
    name: "libbluetooth_ras_pdl_header",
    generated_headers: [
        "BluetoothGeneratedPacketsRas_h",
    ],
    export_generated_headers: [
        "BluetoothGeneratedPacketsRas_h",
    ],
    host_supported: true,
    apex_available: [
        "com.android.btservices",
    ],
    min_sdk_version: "33",
}

cc_library_static {
    name: "libbluetooth_ras_pdl",
    header_libs: [
        "libbluetooth_ras_pdl_header",
    ],
    export_header_lib_headers: [
        "libbluetooth_ras_pdl_header",
    ],
    host_supported: true,
    apex_available: [
        "com.android.btservices",
    ],
    min_sdk_version: "33",
}
+55 −0
Original line number Diff line number Diff line
little_endian_packets

// Ranging Service

enum PctFormat : 2 {
  IQ = 0,
  PHASE = 1,
}

enum RangingDoneStatus : 8 {
  ALL_RESULTS_COMPLETE = 0x0,
  PARTIAL_RESULTS = 0x1,
  ABORTED = 0xF,
}

enum SubeventDoneStatus : 8 {
  ALL_RESULTS_COMPLETE = 0x0,
  ABORTED = 0xF,
}

struct RasSubeventHeader {
  start_acl_conn_event : 16,
  frequency_compensation : 16,
  ranging_done_status : RangingDoneStatus,
  subevent_done_status : SubeventDoneStatus,
  reference_power_level : 8,
  num_steps_reported : 8,
}

packet RasSubevent {
  subevent_header : RasSubeventHeader,
  subevent_data : 8[],
}

struct RangingHeader {
  ranging_counter : 4,
  configuration_id : 4,
  selected_tx_power : 8,
  antenna_paths_mask : 4,
  _reserved_ : 2,
  pct_format : PctFormat,
}

struct SegmentationHeader {
  first_segment : 1,
  last_segment : 1,
  rolling_segment_counter: 6,
}

packet OnDemandRangingData {
  segmentation_header : SegmentationHeader,
  ranging_counter : 16,
  ranging_header : RangingHeader,
  ras_subevents : 8[],
}
 No newline at end of file