[ELDK] ELDK Linux 2.6.29, MPC885ADS and early console

Detlev Zundel dzu at denx.de
Fri Apr 17 17:53:13 CEST 2009


Hi Sylvain,

> finally I succeeded with your recipe, here is the result of the memory
> dump : (concatenated ASCII only)
>
> <6>Using Freescale MPC885 ADS machine description.
> <6>Using Freescale MPC885 ADS machine description.
> <5>Linux version 2.6.29-rc7 (root at localhost.localdomain) (gcc version
> 4.2.2) #3 Fri Apr 17 09:30:49 CEST 2009.
> <1>Unable................................................ess 0xff000ad8.
> <................................................................s of
> bad area, sig: 11 [#1].
> <4>Freescale MPC885................inked in:.<4>NIP
>
>
> 0xFF000AD8 is the physical address of PEDAT I/O register. I use it to
> drive LEDs. Perhaps it's the reason since the beginning ...

Yes indeed.  Did you really to simply write to those addresses?  This is
bound to fail with (recent) Linux.  Remember that Linux uses the MMU and
you cannot use physical addresses easily.  Usually you will want to do
an "ioremap" for a physical address to install a translation and use the
returned pointer.  But even this is not so easy very early in the Linux
boot process as the memory management implementing "ioremap" also needs
to initialize itself.

So I'd propose to remove all your code from the Linux kernel and try
again now that you know how to get to the contents of the Linux
logbuffer.

Cheers
  Detlev

-- 
If you currently have a 32-bit UNIX system, you are advised to
trade it in for a 64-bit one sometime before the year 2106.
 -- Andrew S. Tanenbaum: Modern Operating Systems, 2nd Edition
--
DENX Software Engineering GmbH,      MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich,  Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-40 Fax: (+49)-8142-66989-80 Email: dzu at denx.de


More information about the eldk mailing list