10.07.2015 Views

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

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!