Hrmm. Reading the spec, it seems to indicate there are 2 primary modes
of operation with respect to DMA.

The most common is a dual bus setup using both the local bus and the
remote DMA as you mentioned (which you are completely correct, remote
dma acts as a slave channel).

The single bus option (the one I am working toward since the code will
be significantly cleaner) merges the remote DMA to form a single 32-bit
addressable channel.

Masa Murayama wrote:
> ----- Original Message -----
>> Date: Sun, 31 Aug 2008 21:25:52 -0500
>> From: Steven Stallion <[EMAIL PROTECTED]>
>> To: [email protected]
>> Cc: "Garrett D'Amore" <[EMAIL PROTECTED]>
>> Subject: [driver-discuss] DP8390 single-bus DMA alignment
>>
>>
>> All,
>>
>> I'm having some problems getting DMA to align appropriately for the
>> DP8390. The DP8390's DMA engine is programmed with the upper 16 bits in
>> single bus mode (single 32-bit DMA).
>>
>> After reading the documentation for ddi_dma_attr_t, it looks like
>> dma_attr_sgl can be used to accomplish this, however I can't seem to get
>> dma_cookie_t.dmac_address to align correctly:
>>
>>
>> static ddi_dma_attr_t ne_dma_attr = {
>>      DMA_ATTR_V0,    /* dma_attr_version */
>>      0,              /* dma_attr_addr_lo */
>>      0xffffffff,     /* dma_attr_addr_hi */
>>      0xffffffff,     /* dma_attr_count_max */
>>      1,              /* dma_attr_align */
>>      0x1f,           /* dma_attr_burstsizes */
>>      1,              /* dma_attr_minxfer */
>>      0xffffffff,     /* dma_attr_maxxfer */
>>      0xffff,         /* dma_attr_sgl */
>>      1,              /* dma_attr_sgllen */
>>      1,              /* dma_attr_granular */
>>      0               /* dma_attr_flags */
>> };
>>
>> dmac.dma_address is: 0xc0190040.
>>
>> Any ideas?
>>
>> Steve
> 
> I don't think you need dma attribute for dp8390.
> DP8390 doesn't have dma capability. The remote dma
> capability in the datasheet, means to access the
> internal ram in DP8390 internal bus from outside,
> i.e, sparc or i86 cpu.
> Typical NE2000 compatible cards implements the remote dma
> with IO instructions from ISA or PCI bus, that is exactly same
> with PIO we call now.
> 
> -masa
> 
> _______________________________________________
>> driver-discuss mailing list
>> [email protected]
>> http://mail.opensolaris.org/mailman/listinfo/driver-discuss
> 
_______________________________________________
driver-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/driver-discuss

Reply via email to