From: Jon M. T. <ta...@ec...> - 2000-11-17 03:30:15
|
On Wed, 15 Nov 2000, Lee Brown wrote: > > blade3D_io->mem.base_io = blade3D->pci.BaseAddr0 & ~(BLADE3D_Base0_Size - 1); > > Why isn't this just the pci.BaseAddr0? I know there is a reason. > Sorry if this is a stupid question. No, it is a very good question. This is confusing if you haven't dealt with it before. The PCI BARs (Base Address Registers) do not containt only the 24-bit base address of a PCI memory window. The lower two bits (for I/O devices) or four bits (for memory devices) contain device type info which must be masked out to give a valid address. I assume that this is what is being done here. Jon --- 'Cloning and the reprogramming of DNA is the first serious step in becoming one with God.' - Scientist G. Richard Seed |