muram in device tree for mpc8250 in arch/powerpc

Scott Wood scottwood at freescale.com
Sat Mar 22 03:18:33 EST 2008


On Thu, Mar 20, 2008 at 05:02:35PM -0600, James Black wrote:
> On Thu, Mar 20, 2008 at 12:20 PM, Scott Wood <scottwood at freescale.com> wrote:
> > James Black wrote:
> >  > Zone PFN ranges:
> >  >   DMA             0 ->    16384
> >  >   Normal      16384 ->    16384
> >  > Movable zone start PFN for each node
> >  > early_node_map[1] active PFN ranges
> >  >     0:        0 ->    16384
> >  > Unable to handle kernel paging request for data at address 0xe001a000
> >  > Faulting instruction address: 0xc00e1a6c
> >
> >  What function is 0xc00e1a6c in?
> Drilled down into the source and find that mm/bootmem.c:line 232
> 
>            : find_next_zero_bit()
> may be the culprit. When I put printks in, the line moves around a bit.

Is it node_bootmem_map, eidx, or i that is bad?  What is end_pfn?  What is
calling alloc_bootmem?

> >  You can't use all of 0x8000-0x8fff; there is device parameter RAM in
> >  there.  If you can figure out the portions that aren't in use, you can
> >  use those, but I wouldn't bother unless you really need the extra muram.
> 
> So, are you are saying that the muram node is giving the ram to the
> kernel and is no longer available for devices to use as buffer
> descriptors?

No.

> I imagined the opposite. I thought I was telling the
> kernel where the parameter ram and buffer descriptors live.

It's telling the kernel where available muram is, to be allocated by CPM
drivers for buffer descriptors.

> I am going to turn on the MCC2 device eventually and will need all of the
> dpram for buffer descriptors.
> 
> The memory map in my mind right now is
> 0x0000 - 0x3FFF --> buffer descriptors for SCCx and MCC2.
> 0x8000 - 0x8FFF --> paramter ram for SCCx and MCC2, et al. (reserved)
> 0xB000 - 0xB8FF --> FCCx specific (reserved)
> 
> In my case, I shouldn't define any of the dual port ram for the kernel?

You shouldn't define any of the reserved areas as general purpose muram.

-Scott


More information about the Linuxppc-embedded mailing list