Lines Matching refs:a
31 extern int create_adapter_proc(diva_os_xdi_adapter_t *a);
32 extern void remove_adapter_proc(diva_os_xdi_adapter_t *a);
155 diva_os_xdi_adapter_t *a = NULL; in diva_q_get_next() local
158 a = list_entry(what->next, diva_os_xdi_adapter_t, link); in diva_q_get_next()
160 return (a); in diva_q_get_next()
263 diva_os_xdi_adapter_t *a = NULL; in get_and_remove_from_queue() local
268 a = list_entry(adapter_queue.next, diva_os_xdi_adapter_t, link); in get_and_remove_from_queue()
273 return (a); in get_and_remove_from_queue()
282 diva_os_xdi_adapter_t *a[4]; in diva_driver_remove_card() local
286 pa = a[0] = (diva_os_xdi_adapter_t *) pdiva; in diva_driver_remove_card()
287 a[1] = a[2] = a[3] = NULL; in diva_driver_remove_card()
294 a[i] = pa; in diva_driver_remove_card()
300 for (i = 0; ((i < 4) && a[i]); i++) { in diva_driver_remove_card()
301 list_del(&a[i]->link); in diva_driver_remove_card()
306 (*(a[0]->interface.cleanup_adapter_proc)) (a[0]); in diva_driver_remove_card()
309 if (a[i]) { in diva_driver_remove_card()
310 if (a[i]->controller) { in diva_driver_remove_card()
312 a[i]->controller)) IoAdapters[a[i]->controller - 1] = NULL; in diva_driver_remove_card()
313 remove_adapter_proc(a[i]); in diva_driver_remove_card()
315 diva_os_free(0, a[i]); in diva_driver_remove_card()
327 diva_os_xdi_adapter_t *a; in divas_create_pci_card() local
331 if (!(a = (diva_os_xdi_adapter_t *) diva_os_malloc(0, sizeof(*a)))) { in divas_create_pci_card()
336 memset(a, 0x00, sizeof(*a)); in divas_create_pci_card()
338 a->CardIndex = handle; in divas_create_pci_card()
339 a->CardOrdinal = pI->CardOrdinal; in divas_create_pci_card()
340 a->Bus = DIVAS_XDI_ADAPTER_BUS_PCI; in divas_create_pci_card()
341 a->xdi_adapter.cardType = a->CardOrdinal; in divas_create_pci_card()
342 a->resources.pci.bus = diva_os_get_pci_bus(pci_dev_handle); in divas_create_pci_card()
343 a->resources.pci.func = diva_os_get_pci_func(pci_dev_handle); in divas_create_pci_card()
344 a->resources.pci.hdev = pci_dev_handle; in divas_create_pci_card()
351 list_add_tail(&a->link, &adapter_queue); in divas_create_pci_card()
354 if ((*(pI->init_card)) (a)) { in divas_create_pci_card()
356 list_del(&a->link); in divas_create_pci_card()
358 diva_os_free(0, a); in divas_create_pci_card()
363 return (a); in divas_create_pci_card()
371 diva_os_xdi_adapter_t *a; in divasa_xdi_driver_unload() local
373 while ((a = get_and_remove_from_queue())) { in divasa_xdi_driver_unload()
374 if (a->interface.cleanup_adapter_proc) { in divasa_xdi_driver_unload()
375 (*(a->interface.cleanup_adapter_proc)) (a); in divasa_xdi_driver_unload()
377 if (a->controller) { in divasa_xdi_driver_unload()
378 IoAdapters[a->controller - 1] = NULL; in divasa_xdi_driver_unload()
379 remove_adapter_proc(a); in divasa_xdi_driver_unload()
381 diva_os_free(0, a); in divasa_xdi_driver_unload()
394 diva_os_xdi_adapter_t *a = NULL; in diva_xdi_open_adapter() local
409 a = list_entry(tmp, diva_os_xdi_adapter_t, link); in diva_xdi_open_adapter()
410 if (a->controller == (int)msg.adapter) in diva_xdi_open_adapter()
412 a = NULL; in diva_xdi_open_adapter()
416 if (!a) { in diva_xdi_open_adapter()
420 return (a); in diva_xdi_open_adapter()
428 diva_os_xdi_adapter_t *a = (diva_os_xdi_adapter_t *) adapter; in diva_xdi_close_adapter() local
430 a->xdi_mbox.status &= ~DIVA_XDI_MBOX_BUSY; in diva_xdi_close_adapter()
431 if (a->xdi_mbox.data) { in diva_xdi_close_adapter()
432 diva_os_free(0, a->xdi_mbox.data); in diva_xdi_close_adapter()
433 a->xdi_mbox.data = NULL; in diva_xdi_close_adapter()
441 diva_os_xdi_adapter_t *a = (diva_os_xdi_adapter_t *) adapter; in diva_xdi_write() local
444 if (a->xdi_mbox.status & DIVA_XDI_MBOX_BUSY) { in diva_xdi_write()
445 DBG_ERR(("A: A(%d) write, mbox busy", a->controller)) in diva_xdi_write()
451 a->controller, length, in diva_xdi_write()
457 DBG_ERR(("A: A(%d) write, ENOMEM", a->controller)) in diva_xdi_write()
463 if ((*(a->interface.cmd_proc)) in diva_xdi_write()
464 (a, (diva_xdi_um_cfg_cmd_t *) data, length)) { in diva_xdi_write()
468 DBG_ERR(("A: A(%d) write error (%d)", a->controller, in diva_xdi_write()
484 diva_os_xdi_adapter_t *a = (diva_os_xdi_adapter_t *) adapter; in diva_xdi_read() local
487 if (!(a->xdi_mbox.status & DIVA_XDI_MBOX_BUSY)) { in diva_xdi_read()
488 DBG_ERR(("A: A(%d) rx mbox empty", a->controller)) in diva_xdi_read()
491 if (!a->xdi_mbox.data) { in diva_xdi_read()
492 a->xdi_mbox.status &= ~DIVA_XDI_MBOX_BUSY; in diva_xdi_read()
493 DBG_ERR(("A: A(%d) rx ENOMEM", a->controller)) in diva_xdi_read()
497 if (max_length < a->xdi_mbox.data_length) { in diva_xdi_read()
499 a->controller, max_length, in diva_xdi_read()
500 a->xdi_mbox.data_length)) in diva_xdi_read()
504 ret = (*cp_fn) (os_handle, dst, a->xdi_mbox.data, in diva_xdi_read()
505 a->xdi_mbox.data_length); in diva_xdi_read()
507 diva_os_free(0, a->xdi_mbox.data); in diva_xdi_read()
508 a->xdi_mbox.data = NULL; in diva_xdi_read()
509 a->xdi_mbox.status &= ~DIVA_XDI_MBOX_BUSY; in diva_xdi_read()
518 diva_os_xdi_adapter_t *a = context; in diva_os_irq_wrapper() local
521 if (!a || !a->xdi_adapter.diva_isr_handler) in diva_os_irq_wrapper()
524 if ((clear_int_proc = a->clear_interrupts_proc)) { in diva_os_irq_wrapper()
525 (*clear_int_proc) (a); in diva_os_irq_wrapper()
526 a->clear_interrupts_proc = NULL; in diva_os_irq_wrapper()
530 (*(a->xdi_adapter.diva_isr_handler)) (&a->xdi_adapter); in diva_os_irq_wrapper()
606 void diva_add_slave_adapter(diva_os_xdi_adapter_t *a) in diva_add_slave_adapter() argument
611 list_add_tail(&a->link, &adapter_queue); in diva_add_slave_adapter()
615 int diva_card_read_xlog(diva_os_xdi_adapter_t *a) in diva_card_read_xlog() argument
620 if (!a->xdi_adapter.Initialized || !a->xdi_adapter.DIRequest) { in diva_card_read_xlog()
636 (*(a->xdi_adapter.DIRequest)) (&a->xdi_adapter, (ENTITY *) req); in diva_card_read_xlog()
648 a->xdi_mbox.data_length = sizeof(struct mi_pc_maint); in diva_card_read_xlog()
649 a->xdi_mbox.data = data; in diva_card_read_xlog()
650 a->xdi_mbox.status = DIVA_XDI_MBOX_BUSY; in diva_card_read_xlog()