Eine aufbereitete Darstellung der Quelle

 
     
 
 
Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 

Benutzer

Quelle  usb_audio_qmi_v01.c

  Sprache: C
 

// SPDX-License-Identifier: GPL-2.0
/*
 * Copyright (c) 2022-2025 Qualcomm Innovation Center, Inc. All rights reserved.
 */


#include <linux/soc/qcom/qmi.h>

#include "usb_audio_qmi_v01.h"

static const struct qmi_elem_info mem_info_v01_ei[] = {
 {
  .data_type = QMI_UNSIGNED_8_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u64),
  .array_type = NO_ARRAY,
  .tlv_type = 0,
  .offset  = offsetof(struct mem_info_v01, iova),
 },
 {
  .data_type = QMI_UNSIGNED_8_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u64),
  .array_type = NO_ARRAY,
  .tlv_type = 0,
  .offset  = offsetof(struct mem_info_v01, dma),
 },
 {
  .data_type = QMI_UNSIGNED_4_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u32),
  .array_type = NO_ARRAY,
  .tlv_type = 0,
  .offset  = offsetof(struct mem_info_v01, size),
 },
 {
  .data_type = QMI_EOTI,
  .array_type = NO_ARRAY,
  .tlv_type = QMI_COMMON_TLV_TYPE,
 },
};

static const struct qmi_elem_info apps_mem_info_v01_ei[] = {
 {
  .data_type = QMI_STRUCT,
  .elem_len = 1,
  .elem_size = sizeof(struct mem_info_v01),
  .array_type = NO_ARRAY,
  .tlv_type = 0,
  .offset  = offsetof(struct apps_mem_info_v01, evt_ring),
  .ei_array = mem_info_v01_ei,
 },
 {
  .data_type = QMI_STRUCT,
  .elem_len = 1,
  .elem_size = sizeof(struct mem_info_v01),
  .array_type = NO_ARRAY,
  .tlv_type = 0,
  .offset  = offsetof(struct apps_mem_info_v01, tr_data),
  .ei_array = mem_info_v01_ei,
 },
 {
  .data_type = QMI_STRUCT,
  .elem_len = 1,
  .elem_size = sizeof(struct mem_info_v01),
  .array_type = NO_ARRAY,
  .tlv_type = 0,
  .offset  = offsetof(struct apps_mem_info_v01, tr_sync),
  .ei_array = mem_info_v01_ei,
 },
 {
  .data_type = QMI_STRUCT,
  .elem_len = 1,
  .elem_size = sizeof(struct mem_info_v01),
  .array_type = NO_ARRAY,
  .tlv_type = 0,
  .offset  = offsetof(struct apps_mem_info_v01, xfer_buff),
  .ei_array = mem_info_v01_ei,
 },
 {
  .data_type = QMI_STRUCT,
  .elem_len = 1,
  .elem_size = sizeof(struct mem_info_v01),
  .array_type = NO_ARRAY,
  .tlv_type = 0,
  .offset  = offsetof(struct apps_mem_info_v01, dcba),
  .ei_array = mem_info_v01_ei,
 },
 {
  .data_type = QMI_EOTI,
  .array_type = NO_ARRAY,
  .tlv_type = QMI_COMMON_TLV_TYPE,
 },
};

static const struct qmi_elem_info usb_endpoint_descriptor_v01_ei[] = {
 {
  .data_type = QMI_UNSIGNED_1_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0,
  .offset  = offsetof(struct usb_endpoint_descriptor_v01,
      bLength),
 },
 {
  .data_type = QMI_UNSIGNED_1_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0,
  .offset  = offsetof(struct usb_endpoint_descriptor_v01,
      bDescriptorType),
 },
 {
  .data_type = QMI_UNSIGNED_1_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0,
  .offset  = offsetof(struct usb_endpoint_descriptor_v01,
      bEndpointAddress),
 },
 {
  .data_type = QMI_UNSIGNED_1_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0,
  .offset  = offsetof(struct usb_endpoint_descriptor_v01,
      bmAttributes),
 },
 {
  .data_type = QMI_UNSIGNED_2_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u16),
  .array_type = NO_ARRAY,
  .tlv_type = 0,
  .offset  = offsetof(struct usb_endpoint_descriptor_v01,
      wMaxPacketSize),
 },
 {
  .data_type = QMI_UNSIGNED_1_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0,
  .offset  = offsetof(struct usb_endpoint_descriptor_v01,
      bInterval),
 },
 {
  .data_type = QMI_UNSIGNED_1_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0,
  .offset  = offsetof(struct usb_endpoint_descriptor_v01,
      bRefresh),
 },
 {
  .data_type = QMI_UNSIGNED_1_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0,
  .offset  = offsetof(struct usb_endpoint_descriptor_v01,
      bSynchAddress),
 },
 {
  .data_type = QMI_EOTI,
  .array_type = NO_ARRAY,
  .tlv_type = QMI_COMMON_TLV_TYPE,
 },
};

static const struct qmi_elem_info usb_interface_descriptor_v01_ei[] = {
 {
  .data_type = QMI_UNSIGNED_1_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0,
  .offset  = offsetof(struct usb_interface_descriptor_v01,
      bLength),
 },
 {
  .data_type = QMI_UNSIGNED_1_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0,
  .offset  = offsetof(struct usb_interface_descriptor_v01,
      bDescriptorType),
 },
 {
  .data_type = QMI_UNSIGNED_1_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0,
  .offset  = offsetof(struct usb_interface_descriptor_v01,
      bInterfaceNumber),
 },
 {
  .data_type = QMI_UNSIGNED_1_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0,
  .offset  = offsetof(struct usb_interface_descriptor_v01,
      bAlternateSetting),
 },
 {
  .data_type = QMI_UNSIGNED_1_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0,
  .offset  = offsetof(struct usb_interface_descriptor_v01,
      bNumEndpoints),
 },
 {
  .data_type = QMI_UNSIGNED_1_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0,
  .offset  = offsetof(struct usb_interface_descriptor_v01,
      bInterfaceClass),
 },
 {
  .data_type = QMI_UNSIGNED_1_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0,
  .offset  = offsetof(struct usb_interface_descriptor_v01,
      bInterfaceSubClass),
 },
 {
  .data_type = QMI_UNSIGNED_1_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0,
  .offset  = offsetof(struct usb_interface_descriptor_v01,
      bInterfaceProtocol),
 },
 {
  .data_type = QMI_UNSIGNED_1_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0,
  .offset  = offsetof(struct usb_interface_descriptor_v01,
      iInterface),
 },
 {
  .data_type = QMI_EOTI,
  .array_type = NO_ARRAY,
  .tlv_type = QMI_COMMON_TLV_TYPE,
 },
};

const struct qmi_elem_info qmi_uaudio_stream_req_msg_v01_ei[] = {
 {
  .data_type = QMI_UNSIGNED_1_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x01,
  .offset  = offsetof(struct qmi_uaudio_stream_req_msg_v01,
      enable),
 },
 {
  .data_type = QMI_UNSIGNED_4_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u32),
  .array_type = NO_ARRAY,
  .tlv_type = 0x02,
  .offset  = offsetof(struct qmi_uaudio_stream_req_msg_v01,
      usb_token),
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x10,
  .offset  = offsetof(struct qmi_uaudio_stream_req_msg_v01,
      audio_format_valid),
 },
 {
  .data_type = QMI_UNSIGNED_4_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u32),
  .array_type = NO_ARRAY,
  .tlv_type = 0x10,
  .offset  = offsetof(struct qmi_uaudio_stream_req_msg_v01,
      audio_format),
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x11,
  .offset  = offsetof(struct qmi_uaudio_stream_req_msg_v01,
      number_of_ch_valid),
 },
 {
  .data_type = QMI_UNSIGNED_4_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u32),
  .array_type = NO_ARRAY,
  .tlv_type = 0x11,
  .offset  = offsetof(struct qmi_uaudio_stream_req_msg_v01,
      number_of_ch),
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x12,
  .offset  = offsetof(struct qmi_uaudio_stream_req_msg_v01,
      bit_rate_valid),
 },
 {
  .data_type = QMI_UNSIGNED_4_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u32),
  .array_type = NO_ARRAY,
  .tlv_type = 0x12,
  .offset  = offsetof(struct qmi_uaudio_stream_req_msg_v01,
      bit_rate),
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x13,
  .offset  = offsetof(struct qmi_uaudio_stream_req_msg_v01,
      xfer_buff_size_valid),
 },
 {
  .data_type = QMI_UNSIGNED_4_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u32),
  .array_type = NO_ARRAY,
  .tlv_type = 0x13,
  .offset  = offsetof(struct qmi_uaudio_stream_req_msg_v01,
      xfer_buff_size),
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x14,
  .offset  = offsetof(struct qmi_uaudio_stream_req_msg_v01,
      service_interval_valid),
 },
 {
  .data_type = QMI_UNSIGNED_4_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u32),
  .array_type = NO_ARRAY,
  .tlv_type = 0x14,
  .offset  = offsetof(struct qmi_uaudio_stream_req_msg_v01,
      service_interval),
 },
 {
  .data_type = QMI_EOTI,
  .array_type = NO_ARRAY,
  .tlv_type = QMI_COMMON_TLV_TYPE,
 },
};

const struct qmi_elem_info qmi_uaudio_stream_resp_msg_v01_ei[] = {
 {
  .data_type = QMI_STRUCT,
  .elem_len = 1,
  .elem_size = sizeof(struct qmi_response_type_v01),
  .array_type = NO_ARRAY,
  .tlv_type = 0x02,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     resp),
  .ei_array = qmi_response_type_v01_ei,
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x10,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     status_valid),
 },
 {
  .data_type = QMI_SIGNED_4_BYTE_ENUM,
  .elem_len = 1,
  .elem_size = sizeof(enum usb_qmi_audio_stream_status_enum_v01),
  .array_type = NO_ARRAY,
  .tlv_type = 0x10,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     status),
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x11,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     internal_status_valid),
 },
 {
  .data_type = QMI_UNSIGNED_4_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u32),
  .array_type = NO_ARRAY,
  .tlv_type = 0x11,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     internal_status),
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x12,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     slot_id_valid),
 },
 {
  .data_type = QMI_UNSIGNED_4_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u32),
  .array_type = NO_ARRAY,
  .tlv_type = 0x12,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     slot_id),
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x13,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     usb_token_valid),
 },
 {
  .data_type = QMI_UNSIGNED_4_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u32),
  .array_type = NO_ARRAY,
  .tlv_type = 0x13,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     usb_token),
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x14,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     std_as_opr_intf_desc_valid),
 },
 {
  .data_type = QMI_STRUCT,
  .elem_len = 1,
  .elem_size = sizeof(struct usb_interface_descriptor_v01),
  .array_type = NO_ARRAY,
  .tlv_type = 0x14,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     std_as_opr_intf_desc),
  .ei_array = usb_interface_descriptor_v01_ei,
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x15,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     std_as_data_ep_desc_valid),
 },
 {
  .data_type = QMI_STRUCT,
  .elem_len = 1,
  .elem_size = sizeof(struct usb_endpoint_descriptor_v01),
  .array_type = NO_ARRAY,
  .tlv_type = 0x15,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     std_as_data_ep_desc),
  .ei_array = usb_endpoint_descriptor_v01_ei,
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x16,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     std_as_sync_ep_desc_valid),
 },
 {
  .data_type = QMI_STRUCT,
  .elem_len = 1,
  .elem_size = sizeof(struct usb_endpoint_descriptor_v01),
  .array_type = NO_ARRAY,
  .tlv_type = 0x16,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     std_as_sync_ep_desc),
  .ei_array = usb_endpoint_descriptor_v01_ei,
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x17,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     usb_audio_spec_revision_valid),
 },
 {
  .data_type = QMI_UNSIGNED_2_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u16),
  .array_type = NO_ARRAY,
  .tlv_type = 0x17,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     usb_audio_spec_revision),
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x18,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     data_path_delay_valid),
 },
 {
  .data_type = QMI_UNSIGNED_1_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x18,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     data_path_delay),
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x19,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     usb_audio_subslot_size_valid),
 },
 {
  .data_type = QMI_UNSIGNED_1_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x19,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     usb_audio_subslot_size),
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x1A,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     xhci_mem_info_valid),
 },
 {
  .data_type = QMI_STRUCT,
  .elem_len = 1,
  .elem_size = sizeof(struct apps_mem_info_v01),
  .array_type = NO_ARRAY,
  .tlv_type = 0x1A,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     xhci_mem_info),
  .ei_array = apps_mem_info_v01_ei,
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x1B,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     interrupter_num_valid),
 },
 {
  .data_type = QMI_UNSIGNED_1_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x1B,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     interrupter_num),
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x1C,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     speed_info_valid),
 },
 {
  .data_type = QMI_SIGNED_4_BYTE_ENUM,
  .elem_len = 1,
  .elem_size = sizeof(enum usb_qmi_audio_device_speed_enum_v01),
  .array_type = NO_ARRAY,
  .tlv_type = 0x1C,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     speed_info),
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x1D,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     controller_num_valid),
 },
 {
  .data_type = QMI_UNSIGNED_1_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x1D,
  .offset  = offsetof(struct qmi_uaudio_stream_resp_msg_v01,
     controller_num),
 },
 {
  .data_type = QMI_EOTI,
  .array_type = NO_ARRAY,
  .tlv_type = QMI_COMMON_TLV_TYPE,
 },
};

const struct qmi_elem_info qmi_uaudio_stream_ind_msg_v01_ei[] = {
 {
  .data_type = QMI_SIGNED_4_BYTE_ENUM,
  .elem_len = 1,
  .elem_size = sizeof(
    enum usb_qmi_audio_device_indication_enum_v01),
  .array_type = NO_ARRAY,
  .tlv_type = 0x01,
  .offset  = offsetof(struct qmi_uaudio_stream_ind_msg_v01,
      dev_event),
 },
 {
  .data_type = QMI_UNSIGNED_4_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u32),
  .array_type = NO_ARRAY,
  .tlv_type = 0x02,
  .offset  = offsetof(struct qmi_uaudio_stream_ind_msg_v01,
      slot_id),
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x10,
  .offset  = offsetof(struct qmi_uaudio_stream_ind_msg_v01,
      usb_token_valid),
 },
 {
  .data_type = QMI_UNSIGNED_4_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u32),
  .array_type = NO_ARRAY,
  .tlv_type = 0x10,
  .offset  = offsetof(struct qmi_uaudio_stream_ind_msg_v01,
      usb_token),
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x11,
  .offset  = offsetof(struct qmi_uaudio_stream_ind_msg_v01,
      std_as_opr_intf_desc_valid),
 },
 {
  .data_type = QMI_STRUCT,
  .elem_len = 1,
  .elem_size = sizeof(struct usb_interface_descriptor_v01),
  .array_type = NO_ARRAY,
  .tlv_type = 0x11,
  .offset  = offsetof(struct qmi_uaudio_stream_ind_msg_v01,
      std_as_opr_intf_desc),
  .ei_array = usb_interface_descriptor_v01_ei,
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x12,
  .offset  = offsetof(struct qmi_uaudio_stream_ind_msg_v01,
      std_as_data_ep_desc_valid),
 },
 {
  .data_type = QMI_STRUCT,
  .elem_len = 1,
  .elem_size = sizeof(struct usb_endpoint_descriptor_v01),
  .array_type = NO_ARRAY,
  .tlv_type = 0x12,
  .offset  = offsetof(struct qmi_uaudio_stream_ind_msg_v01,
      std_as_data_ep_desc),
  .ei_array = usb_endpoint_descriptor_v01_ei,
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x13,
  .offset  = offsetof(struct qmi_uaudio_stream_ind_msg_v01,
      std_as_sync_ep_desc_valid),
 },
 {
  .data_type = QMI_STRUCT,
  .elem_len = 1,
  .elem_size = sizeof(struct usb_endpoint_descriptor_v01),
  .array_type = NO_ARRAY,
  .tlv_type = 0x13,
  .offset  = offsetof(struct qmi_uaudio_stream_ind_msg_v01,
      std_as_sync_ep_desc),
  .ei_array = usb_endpoint_descriptor_v01_ei,
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x14,
  .offset  = offsetof(struct qmi_uaudio_stream_ind_msg_v01,
      usb_audio_spec_revision_valid),
 },
 {
  .data_type = QMI_UNSIGNED_2_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u16),
  .array_type = NO_ARRAY,
  .tlv_type = 0x14,
  .offset  = offsetof(struct qmi_uaudio_stream_ind_msg_v01,
      usb_audio_spec_revision),
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x15,
  .offset  = offsetof(struct qmi_uaudio_stream_ind_msg_v01,
      data_path_delay_valid),
 },
 {
  .data_type = QMI_UNSIGNED_1_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x15,
  .offset  = offsetof(struct qmi_uaudio_stream_ind_msg_v01,
      data_path_delay),
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x16,
  .offset  = offsetof(struct qmi_uaudio_stream_ind_msg_v01,
      usb_audio_subslot_size_valid),
 },
 {
  .data_type = QMI_UNSIGNED_1_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x16,
  .offset  = offsetof(struct qmi_uaudio_stream_ind_msg_v01,
      usb_audio_subslot_size),
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x17,
  .offset  = offsetof(struct qmi_uaudio_stream_ind_msg_v01,
      xhci_mem_info_valid),
 },
 {
  .data_type = QMI_STRUCT,
  .elem_len = 1,
  .elem_size = sizeof(struct apps_mem_info_v01),
  .array_type = NO_ARRAY,
  .tlv_type = 0x17,
  .offset  = offsetof(struct qmi_uaudio_stream_ind_msg_v01,
      xhci_mem_info),
  .ei_array = apps_mem_info_v01_ei,
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x18,
  .offset  = offsetof(struct qmi_uaudio_stream_ind_msg_v01,
      interrupter_num_valid),
 },
 {
  .data_type = QMI_UNSIGNED_1_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x18,
  .offset  = offsetof(struct qmi_uaudio_stream_ind_msg_v01,
      interrupter_num),
 },
 {
  .data_type = QMI_OPT_FLAG,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x19,
  .offset  = offsetof(struct qmi_uaudio_stream_ind_msg_v01,
      controller_num_valid),
 },
 {
  .data_type = QMI_UNSIGNED_1_BYTE,
  .elem_len = 1,
  .elem_size = sizeof(u8),
  .array_type = NO_ARRAY,
  .tlv_type = 0x19,
  .offset  = offsetof(struct qmi_uaudio_stream_ind_msg_v01,
      controller_num),
 },
 {
  .data_type = QMI_EOTI,
  .array_type = NO_ARRAY,
  .tlv_type = QMI_COMMON_TLV_TYPE,
 },
};

Messung V0.5 in Prozent
C=94 H=94 G=93

¤ Dauer der Verarbeitung: 0.16 Sekunden  (vorverarbeitet am  2026-06-07) ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

PVS Prover

Isabelle Prover

NIST Cobol Testsuite

Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Open Source Software

     Quellcodebibliothek
     Eigene Quellcodes
     Fremde Quellcodes
     Suchen

Jenseits des Üblichen ....

Besucherstatistik

Besucherstatistik

Statistik
#Sources=277311
#Domains=655579