Messages in this thread | | | From | "Nathalie Barat" <> | Subject | Accessing high PCI memory | Date | Mon, 13 Sep 1999 17:55:23 +0200 |
| |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD W3 HTML//EN"> <HTML> <HEAD>
<META content=text/html;charset=iso-8859-1 http-equiv=Content-Type> <META content='"MSHTML 4.71.1712.3"' name=GENERATOR> </HEAD> <BODY bgColor=#ffffff> <DIV><FONT face=Arial size=2>I am trying to read from and write to the I/O memory, in which a PCI board is mapped. As I could read in this mailing list, I used the function vremap (I am using Linux 2.0.36) to get the virtual address associated with the high PCI memory address, and then, I used the functions readb and writeb. Unfortunately, it seems not to work :</FONT></DIV> <DIV><FONT face=Arial size=2></FONT> </DIV> <DIV><FONT face=Arial size=2>When I try to get the data page back from pte (using pgd_offset, pmd_offset, pte_offset and pte_page), I obtain something like 0xF000F000, while the address I wanted to vremap was 0xFEA00000.</FONT></DIV> <DIV><FONT face=Arial size=2>Furthermore, I noticed that the result of pgd_val was always 0.</FONT></DIV> <DIV><FONT color=#000000 face=Arial size=2>(I control the fact that the read-access or the write-access doesn't work by observing some signals on the board).</FONT></DIV> <DIV><FONT color=#000000 face=Arial size=2></FONT> </DIV> <DIV><FONT face=Arial size=2>Where is the mistake?</FONT></DIV> <DIV><FONT face=Arial size=2>Thank you for your help</FONT></DIV> <DIV><FONT face=Arial size=2></FONT> </DIV> <DIV><FONT face=Arial size=2>Nathalie Barat</FONT></DIV> <DIV><FONT face=Arial size=2></FONT> </DIV> <DIV><FONT face=Arial size=2>PS : please CC to me (nbarat@kaptech.com)</FONT></DIV></BODY></HTML>
| |