Hi,
I'm writing a driver for a PCIx to VMEbus bridge chip (Tundra Tsi148 -
Tempe).  This bridge chip can perform DMA.

I need to program the source / destination address registers in the
bridge's DMA controller so the DMAC can access my kernel buffer.

I do the following:
- ddi_dma_alloc_handle()
- ddi_dma_mem_alloc() to allocate my kernel buffer
- ddi_dma_addr_bind_handle() to bind my buffer to my dma handle and get
a dma_cookie 

I understand the ddi_dma_cookie_t contains an address, accessible via
the macros dmac_laddress() (for 64 bit DMACs) and dmac_address() (for 32
bit DMACs)
According to the man pages for ddi_dma_cookie_t(9S):
"dmac_laddress specifies a 64-bit I/O address appropriate for
programming the device's DMA engine"

My Question is:
If my DMAC is on the PCIx bus, do I need to perform any sort of mapping
upon the cookie's address to make my kernel memory accessible to this
PCI device?

Or, can I just stuff the value returned by dmac_laddress() into my
DMAC's src/dest address registers, as-is?

Thanks!



Dave Steinke
Senior Software Engineer
Curtiss Wright Controls Embedded Computing
10201 Wateridge Circle, Suite 300
San Diego, CA 92121
(858) 452-0020 x4323
[EMAIL PROTECTED]


_______________________________________________________________________
This e-mail and any files transmitted with it are proprietary and intended 
solely for the use of the individual or entity to whom they are addressed. If 
you have reason to believe that you have received this e-mail in error, please 
notify the sender and destroy this email and any attached files. Please note 
that any views or opinions presented in this e-mail are solely those of the 
author and do not necessarily represent those of the Curtiss-Wright Corporation 
or any of its subsidiaries.  Documents attached hereto may contain technology 
subject to government export regulations. Recipient is solely responsible for 
ensuring that any re-export, transfer or disclosure of this information is in 
accordance with applicable government export regulations.  The recipient should 
check this e-mail and any attachments for the presence of viruses. 
Curtiss-Wright Corporation and its subsidiaries accept no liability for any 
damage caused by any virus transmitted by this e-mail.
_______________________________________________
driver-discuss mailing list
driver-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/driver-discuss

Reply via email to