Accessing memory above linux kernel load address

From: prodyuth (prodyuth@indiatimes.com)
Date: Tue Feb 12 2002 - 12:17:49 EST


Hi all,

I am running linux on a MIPS board that has 16Mb of memory. The memory map starts from 0x8000 0000 to 0x8100 0000 ( 16MB . This space is KSEG0 in MIPS terminology)

I use a bootloader to bring up the linux kernel. The boot loader sits in address 0x8020 0000 to 0x8040 0000. The bootloader loads the Linux Kernel in physical address 0x8090 0000.

I have setup the RAM space available for Linux kernel as 16MB, starting from PAGE_OFFSET (0x8000 0000). But since the kernel is loaded at 0x8090 0000 it is unable to access the region which the bootloader was using earlier. (0x8000 0000 to 0x8090 0000) after the Linux kernel is up and running. How do I access that region?

I tried to open ("/dev/kmem") after the Linux kernel came up. When I did a read on /dev/kmem after opening it, the linux kernel just hanged.

When I did an lseek to 0x200000 and then tried to read /dev/kmem, the kernel crashed.

I did an lseek to 0x200000 because I want to access the memory region starting from 0x80200000.

The memory map is drawn here for clarification.

------------------------- <--- Address 0x8000 0000
| Bootloader memory |
------------------------- <--- Address 0x8090 0000

| Linux kernel memory |

------------------------ <--- Address 0x8100 0000

I cannot change the memory map.

Any pointers to help me will be greatly appreciated.

Thanks & regards,

Prodyut.

Get Your Private, Free E-mail from Indiatimes at http://email.indiatimes.com

 Buy Music, Video, CD-ROM, Audio-Books and Music Accessories from http://www.planetm.co.in

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Fri Feb 15 2002 - 21:00:50 EST