Lines Matching refs:phm
61 static inline void hw_entry_point(struct hpi_message *phm, in hw_entry_point() argument
64 if ((phm->adapter_index < HPI_MAX_ADAPTERS) in hw_entry_point()
65 && hpi_entry_points[phm->adapter_index]) in hw_entry_point()
66 hpi_entry_points[phm->adapter_index] (phm, phr); in hw_entry_point()
68 hpi_init_response(phr, phm->object, phm->function, in hw_entry_point()
72 static void adapter_open(struct hpi_message *phm, struct hpi_response *phr);
73 static void adapter_close(struct hpi_message *phm, struct hpi_response *phr);
75 static void mixer_open(struct hpi_message *phm, struct hpi_response *phr);
76 static void mixer_close(struct hpi_message *phm, struct hpi_response *phr);
78 static void outstream_open(struct hpi_message *phm, struct hpi_response *phr,
80 static void outstream_close(struct hpi_message *phm, struct hpi_response *phr,
82 static void instream_open(struct hpi_message *phm, struct hpi_response *phr,
84 static void instream_close(struct hpi_message *phm, struct hpi_response *phr,
89 static u16 HPIMSGX__init(struct hpi_message *phm, struct hpi_response *phr);
151 static void subsys_message(struct hpi_message *phm, struct hpi_response *phr, in subsys_message() argument
154 if (phm->adapter_index != HPI_ADAPTER_INDEX_INVALID) in subsys_message()
157 phm->adapter_index, phm->function); in subsys_message()
159 switch (phm->function) { in subsys_message()
185 HPI_COMMON(phm, phr); in subsys_message()
188 HPI_COMMON(phm, phr); in subsys_message()
196 HPI_COMMON(phm, phr); in subsys_message()
200 HPIMSGX__init(phm, phr); in subsys_message()
205 hpi_init_response(phr, HPI_OBJ_SUBSYSTEM, phm->function, in subsys_message()
211 static void adapter_message(struct hpi_message *phm, struct hpi_response *phr, in adapter_message() argument
214 switch (phm->function) { in adapter_message()
216 adapter_open(phm, phr); in adapter_message()
219 adapter_close(phm, phr); in adapter_message()
222 HPIMSGX__cleanup(phm->adapter_index, h_owner); in adapter_message()
228 hm.adapter_index = phm->adapter_index; in adapter_message()
231 hw_entry_point(phm, phr); in adapter_message()
235 hw_entry_point(phm, phr); in adapter_message()
240 static void mixer_message(struct hpi_message *phm, struct hpi_response *phr) in mixer_message() argument
242 switch (phm->function) { in mixer_message()
244 mixer_open(phm, phr); in mixer_message()
247 mixer_close(phm, phr); in mixer_message()
250 hw_entry_point(phm, phr); in mixer_message()
255 static void outstream_message(struct hpi_message *phm, in outstream_message() argument
258 if (phm->obj_index >= aDAPTER_INFO[phm->adapter_index].num_outstreams) { in outstream_message()
259 hpi_init_response(phr, HPI_OBJ_OSTREAM, phm->function, in outstream_message()
264 switch (phm->function) { in outstream_message()
266 outstream_open(phm, phr, h_owner); in outstream_message()
269 outstream_close(phm, phr, h_owner); in outstream_message()
272 hw_entry_point(phm, phr); in outstream_message()
277 static void instream_message(struct hpi_message *phm, in instream_message() argument
280 if (phm->obj_index >= aDAPTER_INFO[phm->adapter_index].num_instreams) { in instream_message()
281 hpi_init_response(phr, HPI_OBJ_ISTREAM, phm->function, in instream_message()
286 switch (phm->function) { in instream_message()
288 instream_open(phm, phr, h_owner); in instream_message()
291 instream_close(phm, phr, h_owner); in instream_message()
294 hw_entry_point(phm, phr); in instream_message()
302 void hpi_send_recv_ex(struct hpi_message *phm, struct hpi_response *phr, in hpi_send_recv_ex() argument
307 HPI_DEBUG_MESSAGE(DEBUG, phm); in hpi_send_recv_ex()
309 if (phm->type != HPI_TYPE_REQUEST) { in hpi_send_recv_ex()
310 hpi_init_response(phr, phm->object, phm->function, in hpi_send_recv_ex()
315 if (phm->adapter_index >= HPI_MAX_ADAPTERS in hpi_send_recv_ex()
316 && phm->adapter_index != HPIMSGX_ALLADAPTERS) { in hpi_send_recv_ex()
317 hpi_init_response(phr, phm->object, phm->function, in hpi_send_recv_ex()
322 switch (phm->object) { in hpi_send_recv_ex()
324 subsys_message(phm, phr, h_owner); in hpi_send_recv_ex()
328 adapter_message(phm, phr, h_owner); in hpi_send_recv_ex()
332 mixer_message(phm, phr); in hpi_send_recv_ex()
336 outstream_message(phm, phr, h_owner); in hpi_send_recv_ex()
340 instream_message(phm, phr, h_owner); in hpi_send_recv_ex()
344 hw_entry_point(phm, phr); in hpi_send_recv_ex()
357 static void adapter_open(struct hpi_message *phm, struct hpi_response *phr) in adapter_open() argument
360 memcpy(phr, &rESP_HPI_ADAPTER_OPEN[phm->adapter_index], in adapter_open()
364 static void adapter_close(struct hpi_message *phm, struct hpi_response *phr) in adapter_close() argument
370 static void mixer_open(struct hpi_message *phm, struct hpi_response *phr) in mixer_open() argument
372 memcpy(phr, &rESP_HPI_MIXER_OPEN[phm->adapter_index], in mixer_open()
376 static void mixer_close(struct hpi_message *phm, struct hpi_response *phr) in mixer_close() argument
381 static void instream_open(struct hpi_message *phm, struct hpi_response *phr, in instream_open() argument
392 if (instream_user_open[phm->adapter_index][phm->obj_index].open_flag) in instream_open()
394 else if (rESP_HPI_ISTREAM_OPEN[phm->adapter_index] in instream_open()
395 [phm->obj_index].h.error) in instream_open()
397 &rESP_HPI_ISTREAM_OPEN[phm->adapter_index][phm-> in instream_open()
401 instream_user_open[phm->adapter_index][phm-> in instream_open()
408 hm.adapter_index = phm->adapter_index; in instream_open()
409 hm.obj_index = phm->obj_index; in instream_open()
414 instream_user_open[phm->adapter_index][phm-> in instream_open()
418 instream_user_open[phm->adapter_index][phm-> in instream_open()
420 instream_user_open[phm->adapter_index][phm-> in instream_open()
423 &rESP_HPI_ISTREAM_OPEN[phm->adapter_index] in instream_open()
424 [phm->obj_index], in instream_open()
431 static void instream_close(struct hpi_message *phm, struct hpi_response *phr, in instream_close() argument
442 instream_user_open[phm->adapter_index][phm-> in instream_close()
447 instream_user_open[phm->adapter_index][phm-> in instream_close()
453 hm.adapter_index = phm->adapter_index; in instream_close()
454 hm.obj_index = phm->obj_index; in instream_close()
458 instream_user_open[phm->adapter_index][phm-> in instream_close()
462 instream_user_open[phm->adapter_index][phm-> in instream_close()
464 instream_user_open[phm->adapter_index][phm-> in instream_close()
470 h_owner, phm->adapter_index, phm->obj_index, in instream_close()
471 instream_user_open[phm->adapter_index][phm-> in instream_close()
478 static void outstream_open(struct hpi_message *phm, struct hpi_response *phr, in outstream_open() argument
489 if (outstream_user_open[phm->adapter_index][phm->obj_index].open_flag) in outstream_open()
491 else if (rESP_HPI_OSTREAM_OPEN[phm->adapter_index] in outstream_open()
492 [phm->obj_index].h.error) in outstream_open()
494 &rESP_HPI_OSTREAM_OPEN[phm->adapter_index][phm-> in outstream_open()
498 outstream_user_open[phm->adapter_index][phm-> in outstream_open()
505 hm.adapter_index = phm->adapter_index; in outstream_open()
506 hm.obj_index = phm->obj_index; in outstream_open()
511 outstream_user_open[phm->adapter_index][phm-> in outstream_open()
515 outstream_user_open[phm->adapter_index][phm-> in outstream_open()
517 outstream_user_open[phm->adapter_index][phm-> in outstream_open()
520 &rESP_HPI_OSTREAM_OPEN[phm->adapter_index] in outstream_open()
521 [phm->obj_index], in outstream_open()
528 static void outstream_close(struct hpi_message *phm, struct hpi_response *phr, in outstream_close() argument
540 outstream_user_open[phm->adapter_index][phm-> in outstream_close()
545 outstream_user_open[phm->adapter_index][phm-> in outstream_close()
551 hm.adapter_index = phm->adapter_index; in outstream_close()
552 hm.obj_index = phm->obj_index; in outstream_close()
556 outstream_user_open[phm->adapter_index][phm-> in outstream_close()
560 outstream_user_open[phm->adapter_index][phm-> in outstream_close()
562 outstream_user_open[phm->adapter_index][phm-> in outstream_close()
568 h_owner, phm->adapter_index, phm->obj_index, in outstream_close()
569 outstream_user_open[phm->adapter_index][phm-> in outstream_close()
692 static u16 HPIMSGX__init(struct hpi_message *phm, in HPIMSGX__init() argument
703 hpi_init_response(&hr, phm->object, phm->function, in HPIMSGX__init()
707 hpi_lookup_entry_point_function(phm->u.s.resource.r.pci); in HPIMSGX__init()
710 HPI_DEBUG_MESSAGE(DEBUG, phm); in HPIMSGX__init()
711 entry_point_func(phm, &hr); in HPIMSGX__init()