Information for Tseng Chipset Users : linear memory base address (MemBase) issues : Choosing a MemBase
Previous: What you should know BEFORE trying another MemBase
Next: An alternative approach

## 9.2. Choosing a MemBase

Choosing a suitable MemBase can be quite tricky. If you have no way of determining the MemBase your card uses, trying to put it a few Mb above the system memory is a good first guess. E.g. if you have 16 Mb of RAM, defining MemBase 0x01000000 (=16M) or 0x01400000 (=20M) may work.

However, this may only work on non-PCI systems, as PCI systems mostly map all hardware above the 2GB mark. But then again, on PCI systems the server is almost always able to detect the correct linear memory base address. The only exception are those systems with more than one PCI VGA card.

On most VESA local bus (VLB) boards, there is an additional problem with address decoding. Most motherboards only decode the first 32, 64 or 128 MB of address space (a good pointer is to check the amount of DRAM that can be installed on the board: it will at least decode as much address space as it supports DRAM).

On such boards, you MUST specify a MemBase inside that range, or the actual address may wrap back onto system memory: if your system only decodes 128MB of addresses, and you set the MemBase to 128 MB, it will actually be decoded as being on address 0, which is probably exactly where your kernel memory is located. That is why the general guideline of putting the MemBase just above the system memory is a sound one: it stands most chance of actually being inside the decoded address range of the board. Unless your motherboard's entire memory space is filled with RAM.

Information for Tseng Chipset Users : linear memory base address (MemBase) issues : Choosing a MemBase
Previous: What you should know BEFORE trying another MemBase
Next: An alternative approach