• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/drivers/scsi/cxgb3i/

Lines Matching defs:gl

74 		       struct cxgb3i_gather_list *gl)
92 ppod->addr[j] = pidx < gl->nelem ?
93 cpu_to_be64(gl->phys_addr[pidx]) : 0UL;
126 struct cxgb3i_gather_list *gl)
143 ddp->gl_map[k] = gl;
236 struct cxgb3i_gather_list *gl)
240 for (i = 0; i < gl->nelem; i++)
241 pci_unmap_page(pdev, gl->phys_addr[i], PAGE_SIZE,
246 struct cxgb3i_gather_list *gl)
250 for (i = 0; i < gl->nelem; i++) {
251 gl->phys_addr[i] = pci_map_page(pdev, gl->pages[i], 0,
254 if (unlikely(pci_dma_mapping_error(pdev, gl->phys_addr[i])))
262 unsigned int nelem = gl->nelem;
264 gl->nelem = i;
265 ddp_gl_unmap(pdev, gl);
266 gl->nelem = nelem;
292 struct cxgb3i_gather_list *gl;
307 gl = kzalloc(sizeof(struct cxgb3i_gather_list) +
310 if (!gl)
313 gl->pages = (struct page **)&gl->phys_addr[npages];
314 gl->length = xferlen;
315 gl->offset = sgoffset;
316 gl->pages[0] = sgpage;
335 if (j == gl->nelem || sg->offset)
337 gl->pages[j] = page;
345 gl->nelem = ++j;
347 if (ddp_gl_map(pdev, gl) < 0)
350 return gl;
353 kfree(gl);
359 * @gl: a ddp page buffer list
363 void cxgb3i_ddp_release_gl(struct cxgb3i_gather_list *gl,
366 ddp_gl_unmap(pdev, gl);
367 kfree(gl);
376 * @gl: the page momory list
384 struct cxgb3i_gather_list *gl, gfp_t gfp)
394 if (page_idx >= DDP_PGIDX_MAX || !ddp || !gl || !gl->nelem ||
395 gl->length < DDP_THRESHOLD) {
397 page_idx, gl->length, DDP_THRESHOLD);
401 npods = (gl->nelem + PPOD_PAGES_MAX - 1) >> PPOD_PAGES_SHIFT;
404 idx = ddp_find_unused_entries(ddp, 0, ddp->nppods, npods, gl);
407 ddp->nppods, npods, gl);
411 npods, gl);
415 ddp_log_debug("xferlen %u, gl %u, npods %u NO DDP.\n",
416 gl->length, gl->nelem, npods);
430 hdr.maxoffset = htonl(gl->length);
431 hdr.pgoffset = htonl(gl->offset);
433 err = set_ddp_map(ddp, &hdr, idx, npods, gl);
438 ddp_log_debug("xfer %u, gl %u,%u, tid 0x%x, 0x%x -> 0x%x(%u,%u).\n",
439 gl->length, gl->nelem, gl->offset, tid, sw_tag, tag,
469 struct cxgb3i_gather_list *gl = ddp->gl_map[idx];
472 if (!gl || !gl->nelem) {
473 ddp_log_error("release 0x%x, idx 0x%x, gl 0x%p, %u.\n",
474 tag, idx, gl, gl ? gl->nelem : 0);
477 npods = (gl->nelem + PPOD_PAGES_MAX - 1) >> PPOD_PAGES_SHIFT;
482 cxgb3i_ddp_release_gl(gl, ddp->pdev);
641 struct cxgb3i_gather_list *gl = ddp->gl_map[i];
642 if (gl) {
643 int npods = (gl->nelem + PPOD_PAGES_MAX - 1)
647 kfree(gl);