Intel 80310 I/O Processor Chipset AAU Coding Techniques
Intel 80310 I/O Processor Chipset AAU Coding Techniques
Intel 80310 I/O Processor Chipset AAU Coding Techniques
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
<strong>Intel</strong> ® <strong>80310</strong> I/O <strong>Processor</strong> <strong>Chipset</strong> <strong>AAU</strong> <strong>Coding</strong> <strong>Techniques</strong><strong>AAU</strong> Source Code426 /* Description: This function creates an <strong>AAU</strong> buffer chain from the */427 /* user supplied SGL chain. It also puts the <strong>AAU</strong> chain */428 /* onto the processing queue. This then starts the <strong>AAU</strong> */429 /* */430 /* Parameters: aau: <strong>AAU</strong> device context */431 /* listhead: User SGL */432 /* */433 /* Returns: int: success -- OK */434 /* failed: -ENOMEM */435 /* */436 /* Notes/Assumptions: User SGL must point to kernel memory, not user */437 /* */438 /* History: Dave Jiang 07/18/01 Initial Creation */439 /* Dave Jiang 07/20/01 Removed some junk code not suppose */440 /* to be there that causes infinite loop */441 /*=======================================================================*/442 int aau_queue_buffer(u32 aau_context, aau_head_t * listhead)443 {444 sw_aau_t *sw_desc = (sw_aau_t *) listhead->list;445 sw_aau_t *prev_desc = NULL;446 sw_aau_t *head = NULL;447 aau_head_t *sgl_head = listhead;448 int err = 0;449 int i;450 iop310_aau_t *aau = (iop310_aau_t *) aau_context;451 DECLARE_WAIT_QUEUE_HEAD(wait_q);452453 DPRINTK("Entering aau_queue_buffer()\n");454455 /* scan through entire user SGL */456 while(sw_desc)457 {458 sw_desc->sgl_head = (u32) listhead;45946 White Paper