I'm reading the DP8390D datasheets; I am using an RTL8029 as an initial target.
Masa Murayama wrote: > ----- Original Message ----- >> Date: Mon, 01 Sep 2008 13:54:52 -0500 >> From: Steven Stallion <[EMAIL PROTECTED]> >> To: [EMAIL PROTECTED] >> CC: Masa Murayama <[EMAIL PROTECTED]>, [email protected] >> Subject: Re: [driver-discuss] DP8390 single-bus DMA alignment >> >> >> IIRC Masa's driver supports all three; ISA, PCI, and PCMCIA. The >> implementation I am working on is for PCI only. >> >> In 32-bit PCI configurations, Remote DMA should never be needed. In >> fact, RSAR0 and RSAR1 are used to store the upper 16 bits of the phyaddr >> of the buffer in 32-bit mode. >> > > Which datasheet did you read? I'd like to read the same datasheet > you read. > > Let me know the product name of your target card, or the chipset name > which the card employs. Although dp8390 describes various bus > configurations, you can use only the bus configuration which the card > product or the clone chipset implements. > > -masa > > >> Garrett D'Amore wrote: >>> Do we need (or will we ever need) "remote DMA"? If this is used only in >>> ISA configurations that we don't have to support, then I think the >>> answer is "no". (Are you supporting only PCI cards, or also ISA >>> configurations? This part was also used in PCMCIA cards.) >>> >>> -- Garrett >>> >>> >>> Steven Stallion wrote: >>>> 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
