Date: Sun, 22 Oct 2000 21:26:11 -0700 From: "Chris Ptacek" <ptacek@technologist.com> To: <freebsd-hackers@FreeBSD.ORG> Subject: DMA in drivers? Message-ID: <NEBBKLFHMJGHPAEKCHJJEEHNCCAA.ptacek@technologist.com>
next in thread | raw e-mail | index | archive | help
I am in the process of writing a PCI driver for an encryption card. The specifications state that the DMA Destination Address, DMA Dest. Length, DMA Source Addr, and DMA Source Length should be loaded into registers in the card. Part of the info states: "This register is used to establish the PCI address for data moving from the the Host Computer Memory to the card. It consists of a 30 bit counter with the low-order 2 bits hardwired as zeros. The address stored may be any nonzero byte length that is a multiple of 8, since 8 bytes are required to make up a DES encryption block. The Source Address Register is continually updated during the transfer process and will always be pointing to the next unwritten location." What do I need to do to get a memory address for the source and destination data for the DMA transfers? It sounds as if these memory addresses must have the last three bits zeros, will this happen automatically? Right now I am stuck on how this DMA stuff is working and any help would be appreciated. Oh yeah, I am targeting this driver for a FreeBSD 3.x system. Thanks, Chris 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?NEBBKLFHMJGHPAEKCHJJEEHNCCAA.ptacek>