linux-mips
[Top] [All Lists]

HIGHMEM not working.

To: "linux-mips@linux-mips.org" <linux-mips@linux-mips.org>
Subject: HIGHMEM not working.
From: "Ramgopal Kota" <rkota@broadcom.com>
Date: Tue, 16 Mar 2010 23:04:49 -0700
Accept-language: en-US
Acceptlanguage: en-US
In-reply-to: <6C370B347C3FE8438C9692873287D2E1109DDF0057@SJEXCHCCR01.corp.ad.broadcom.com>
Original-recipient: rfc822;linux-mips@linux-mips.org
References: <4BEA3FF3CAA35E408EA55C7BE2E61D0546AC862322@xmail3.se.axis.com> <6C370B347C3FE8438C9692873287D2E1109DDF0057@SJEXCHCCR01.corp.ad.broadcom.com>
Sender: linux-mips-bounce@linux-mips.org
Thread-index: AcrBK3wkk2FBNl+9TaOxNHDqJxz80AEZusdwAAEpc2A=
Thread-topic: HIGHMEM not working.
 Hi,

I need help in running CPU with HIGH_MEM.
Below is the processor memory map .. It is base on MIPS64K Core.

0x0000_0000  -- 0x07FF_FFFF   -> RAM (Region 1)
0x0800_0000  -- 0x0FFF_FFFF   -> PCI BUS 1
0x2000_0000  -- 0x2FFF_FFFF   -> Flash Region
0x4000_0000  -- 0x47FF_FFFF   -> PCI BUS 2
0x8000_0000  -- 0xCFFF_FFFF   -> RAM (Region 2) the first 128MB is remapped 
into 0x8000_0000 .. 

The system has 256MB of PHYSICAL RAM .. 

I configured TLB's and added memory regions. The system boots up correctly ..
If I show cat /proc/meminfo it shows 256MB , it could allocate memory ( I 
verified with a simple program allocating the memory and writing some data)

There is a PCI MAC device on PCI BUS 2. The CPU is not able to perform DMA 
to/from device.
The MAC driver is allocating DMA buffers using the following code ..
{
    phy = virt_to_bus(high_memory);  << Resulting in 0xa000_0000; 
    virt = ioremap(pbase);    
}
The Linux configuration has no ZONE_DMA configuration ..

Few questions ..
  A) HIGH_MEMORY START Address is configured to 0x2000_0000 , is it correct 
value.
  B) Are there any data which can be dumped to know more information ?
  C) Do I need to enable MEMORY Discontinuous Config also ?  ( As I did not see 
a reason to enable this as memory in Region 2 is contiguous)
  D) I read in some articles on internet that if HIGH_MEM is used,PCI bounce 
buffers needs to be used ? Can some body point me how to set this up ?

Thanks & Regards,
Ramgopal Kota


<Prev in Thread] Current Thread [Next in Thread>