Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 21 Aug 2001 00:30:23 -0600
From:      "Justin T. Gibbs" <gibbs@scsiguy.com>
To:        mjacob@feral.com
Cc:        Bill Paul <wpaul@FreeBSD.ORG>, hackers@FreeBSD.ORG, current@FreeBSD.ORG
Subject:   Re: Where to put new bus_dmamap_load_mbuf() code 
Message-ID:  <200108210630.f7L6UNY90382@aslan.scsiguy.com>
In-Reply-To: Your message of "Mon, 20 Aug 2001 22:53:06 PDT." <20010820225225.G39850-100000@wonky.feral.com> 

next in thread | previous in thread | raw e-mail | index | archive | help
>
>Correction.
>
>This sample:
>>
>>         if (bus_dma_tag_create(pci->parent_dmat, PAGE_SIZE, lim,
>>             BUS_SPACE_MAXADDR, BUS_SPACE_MAXADDR, NULL, NULL, len, 1,
>>             BUS_SPACE_MAXSIZE_32BIT, 0, &pci->cntrol_dmat) != 0) {
>>                 isp_prt(isp, ISP_LOGERR,
>>                     "cannot create a dma tag for control spaces");
>>                 free(isp->isp_xflist, M_DEVBUF);
>>                 free(pci->dmaps, M_DEVBUF);
>>                 return (1);
>>         }
>>

You'll need to change the number of segments to match the max
supported by the card (or the max you will ever need).  This
example made me realize that the bounce code doesn't deal with
multiple segments being copied into a single page (i.e. tracking
and using remaining free space in a page already allocated for
bouncing for a single map).  I'll have to break loose some time
to fix that.

--
Justin

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200108210630.f7L6UNY90382>