I need to have access to the VGA port and register. The register I need access in the range of 0x300 to 0x400 so I try getting a 1KB page from 300 onward, but it do not work. I suspect it do not work because it is I/O FPage and they have to align to (in this case 1kB) address. Could anyone help me access these port?
On Wed Feb 02, 2011 at 22:43:20 +0000, Jason Philip wrote:
can not anyone help me?
Does it work if you request only one port at a time?
Adam
On Thu Feb 03, 2011 at 20:03:46 +0000, Jason Philip wrote:
Does it work if you request only one port at a time?
I think it does what happen I request a I/O Fpage start at 0x300 (which don't work) then later in the code I request a I/O Fpage start at 0x000A0000 and it works. So I assume it will work for one Fpage at a time.
Ah, when seeing the 0x300 I was thinking of I/O ports, not of I/O memory, which are different things. For memory (whether I/O or not) you have to use page-size granularity, i.e. multiples of 0x1000. However for ports, 1-port granularity should work. Getting 0x100 ports from 0x300-0x400 meets the alignment constraints so it should work.
Adam
l4-hackers@os.inf.tu-dresden.de