Lines Matching refs:dev
78 #define DEFINE_AUDIO_DESCRIPTOR(dev, i, id, link, it_type, ot_type, cb, addr) \ argument
80 struct dev##_descriptor_##i dev##_desc_##i = { \
83 .cs_ac_interface = INIT_CS_AC_IF(dev, i, 1), \
84 .input_terminal = INIT_IN_TERMINAL(dev, i, id, it_type), \
85 .feature_unit = INIT_FEATURE_UNIT(dev, i, id + 1, id), \
90 .format = INIT_AS_FORMAT_I(CH_CNT(dev, i), GET_RES(dev, i), GET_RATE(dev, i)), \
91 .std_ep = INIT_STD_AS_AD_EP(dev, i, addr), \
94 static struct usb_ep_cfg_data dev##_usb_audio_ep_data_##i[] = { \
114 #define DEFINE_AUDIO_DESCRIPTOR_BIDIR(dev, i, id) \ argument
116 struct dev##_descriptor_##i dev##_desc_##i = { \
119 .cs_ac_interface = INIT_CS_AC_IF_BIDIR(dev, i, 2), \
120 .input_terminal_0 = INIT_IN_TERMINAL(dev##_MIC, i, id, \
122 .feature_unit_0 = INIT_FEATURE_UNIT(dev##_MIC, i, id+1, id), \
125 .input_terminal_1 = INIT_IN_TERMINAL(dev##_HP, i, id+3, \
127 .feature_unit_1 = INIT_FEATURE_UNIT(dev##_HP, i, id+4, id+3), \
135 .format_0 = INIT_AS_FORMAT_I(CH_CNT(dev##_MIC, i), \
136 GET_RES(dev##_MIC, i), \
137 GET_RATE(dev##_MIC, i)), \
138 .std_ep_0 = INIT_STD_AS_AD_EP(dev##_MIC, i, \
146 .format_1 = INIT_AS_FORMAT_I(CH_CNT(dev##_HP, i), \
147 GET_RES(dev##_HP, i), \
148 GET_RATE(dev##_HP, i)), \
149 .std_ep_1 = INIT_STD_AS_AD_EP(dev##_HP, i, \
153 static struct usb_ep_cfg_data dev##_usb_audio_ep_data_##i[] = { \
158 #define DEFINE_AUDIO_DEV_DATA(dev, i, __out_pool, __in_pool_size) \ argument
159 static uint8_t dev##_controls_##i[FEATURES_SIZE(dev, i)] = {0};\
160 static struct usb_audio_dev_data dev##_audio_dev_data_##i = \
163 .controls = {dev##_controls_##i, NULL}, \
164 .ch_cnt = {(CH_CNT(dev, i) + 1), 0}, \
165 .volumes.volume_max = GET_VOLUME(dev, i, volume_max), \
166 .volumes.volume_min = GET_VOLUME(dev, i, volume_min), \
167 .volumes.volume_res = GET_VOLUME(dev, i, volume_res), \
170 #define DEFINE_AUDIO_DEV_DATA_BIDIR(dev, i, __out_pool, __in_pool_size) \ argument
171 static uint8_t dev##_controls0_##i[FEATURES_SIZE(dev##_MIC, i)] = {0};\
172 static uint8_t dev##_controls1_##i[FEATURES_SIZE(dev##_HP, i)] = {0}; \
173 static struct usb_audio_dev_data dev##_audio_dev_data_##i = \
176 .controls = {dev##_controls0_##i, dev##_controls1_##i}, \
177 .ch_cnt = {(CH_CNT(dev##_MIC, i) + 1), \
178 (CH_CNT(dev##_HP, i) + 1)}, \
179 .volumes.volume_max = GET_VOLUME(dev, i, volume_max), \
180 .volumes.volume_min = GET_VOLUME(dev, i, volume_min), \
181 .volumes.volume_res = GET_VOLUME(dev, i, volume_res), \
301 dev_data->common.dev); in audio_dc_sof()
692 audio_dev_data->common.dev, &evt); in handle_feature_unit_req()
854 static int usb_audio_device_init(const struct device *dev) in usb_audio_device_init() argument
856 LOG_DBG("Init Audio Device: dev %p (%s)", dev, dev->name); in usb_audio_device_init()
868 audio_dev_data = dev_data->dev->data; in audio_write_cb()
878 audio_dev_data->ops->data_written_cb(dev_data->dev, in audio_write_cb()
886 int usb_audio_send(const struct device *dev, struct net_buf *buffer, in usb_audio_send() argument
889 struct usb_audio_dev_data *audio_dev_data = dev->data; in usb_audio_send()
890 struct usb_cfg_data *cfg = (void *)dev->config; in usb_audio_send()
916 size_t usb_audio_get_in_frame_size(const struct device *dev) in usb_audio_get_in_frame_size() argument
918 struct usb_audio_dev_data *audio_dev_data = dev->data; in usb_audio_get_in_frame_size()
971 audio_dev_data->ops->data_received_cb(common->dev, in audio_receive_cb()
977 void usb_audio_register(const struct device *dev, in usb_audio_register() argument
980 struct usb_audio_dev_data *audio_dev_data = dev->data; in usb_audio_register()
981 const struct usb_cfg_data *cfg = dev->config; in usb_audio_register()
989 audio_dev_data->common.dev = dev; in usb_audio_register()
997 dev, audio_dev_data, dev->config, in usb_audio_register()
1001 #define DEFINE_AUDIO_DEVICE(dev, i) \ argument
1002 USBD_DEFINE_CFG_DATA(dev##_audio_config_##i) = { \
1005 .interface_descriptor = &dev##_desc_##i.std_ac_interface, \
1012 .num_endpoints = ARRAY_SIZE(dev##_usb_audio_ep_data_##i), \
1013 .endpoint = dev##_usb_audio_ep_data_##i, \
1015 DEVICE_DT_DEFINE(DT_INST(i, COMPAT_##dev), \
1018 &dev##_audio_dev_data_##i, \
1019 &dev##_audio_config_##i, POST_KERNEL, \
1026 #define UNIDIR_DEVICE(dev, i, out_pool, in_size, it_type, ot_type, cb, addr) \ argument
1028 DEFINE_AUDIO_DEV_DATA(dev, i, out_pool, in_size); \
1029 DECLARE_DESCRIPTOR(dev, i, 1); \
1030 DEFINE_AUDIO_DESCRIPTOR(dev, i, dev##_ID(i), dev##_LINK(i), \
1032 DEFINE_AUDIO_DEVICE(dev, i))
1034 #define HEADPHONES_DEVICE(i, dev) UTIL_EXPAND( \ argument
1035 DEFINE_BUF_POOL(audio_data_pool_hp_##i, EP_SIZE(dev, i)); \
1036 UNIDIR_DEVICE(dev, i, &audio_data_pool_hp_##i, 0, \
1040 #define MICROPHONE_DEVICE(i, dev) UTIL_EXPAND( \ argument
1041 UNIDIR_DEVICE(dev, i, NULL, EP_SIZE(dev, i), \
1045 #define HEADSET_DEVICE(i, dev) UTIL_EXPAND( \ argument
1046 DEFINE_BUF_POOL(audio_data_pool_hs_##i, EP_SIZE(dev##_HP, i)); \
1047 DEFINE_AUDIO_DEV_DATA_BIDIR(dev, i, &audio_data_pool_hs_##i, \
1048 EP_SIZE(dev##_MIC, i)); \
1049 DECLARE_DESCRIPTOR_BIDIR(dev, i, 2); \
1050 DEFINE_AUDIO_DESCRIPTOR_BIDIR(dev, i, dev##_ID(i)); \
1051 DEFINE_AUDIO_DEVICE(dev, i);)