Date: Fri, 17 Oct 2008 00:00:00 +0530 From: Srinivas <mboxindia@gmail.com> To: "Eduardo Morras" <emorras@xroff.net>, "Pegasus Mc Cleaft" <ken@mthelicon.com>, freebsd-hackers@freebsd.org Subject: Re: [Doubt] Can a PCI device communicate with another PCI or other device? Message-ID: <e6a0706a0810161130i6a3820fexf3afdbf28f81bd31@mail.gmail.com> In-Reply-To: <20081015160522.04A824FEE1E@xroff.net> References: <e6a0706a0810141132n1a1d1a9cn4a50ffc727640e13@mail.gmail.com> <20081015160522.04A824FEE1E@xroff.net>
next in thread | previous in thread | raw e-mail | index | archive | help
I think a PCI device can communicate with another PCI device directly without the intervention of the CPU. Excerpt from "PCI Express System Architecture" ... PCI Transaction Model - Peer-to-Peer A Peer-to-peer transaction shown as Transaction 3 in Figure 1-5 on page 20 is the direct transfer of data between two PCI devices. A master that wishes to initiate a transaction, arbitrates, wins ownership of the bus and starts a transaction. A target PCI device that recognizes the address claims the bus cycle. For a write bus cycle, data is moved from master to target. For a read bus cycle, data is moved from target to master. .... --S On Wed, Oct 15, 2008 at 9:35 PM, Eduardo Morras <emorras@xroff.net> wrote: > At 20:32 14/10/2008, you wrote: >> >> Hello, >> >> I have a small doubt. >> >> Suppose I have a PCI card with a general purpose CPU on it. Could it be >> able >> to communicate with another PCI device or ISA device(lets say IDE hard >> disk)? > > You can't do it directly. You must pass through the OS driver that controls > your card. You pass to your driver the data and it send data to other > driver, hard disk, etc.. Note that in some OSs your driver can't pass that > info from one driver to another and need an app that binds your driver with > the other driver. > > >> Thanks, >> Srinivas >> _______________________________________________ >> freebsd-hackers@freebsd.org mailing list >> http://lists.freebsd.org/mailman/listinfo/freebsd-hackers >> To unsubscribe, send any mail to "freebsd-hackers-unsubscribe@freebsd.org" > >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?e6a0706a0810161130i6a3820fexf3afdbf28f81bd31>