[ELDK] R: Kernel access of bad area

Stefano Babic sbabic at denx.de
Fri Sep 10 11:17:43 CEST 2010

Luigi Rizzi wrote:
> Hello Stefano,
> actually I didn't know that this address is already in use for PCI, since
> TQM885D doesn't have PCI or PCMCIA at all.
> Can you tell me in which files you find the address already mapped? (in
> particular 0x80000000 mapped for PCI) 

grep can be your friend..;-)

In arch/ppc/platforms/tqm8xx.h:
#define _IO_BASE 0x80000000
#define _IO_BASE_SIZE  (64<<10)

And arch/ppc/kernel/m8xx_setup.c:

#if !defined(CONFIG_PCI) && ( \
        defined(CONFIG_TQM8xxL)         || \
        defined(CONFIG_RPXLITE)         || \
        defined(CONFIG_RPXCLASSIC)      || \
        defined(CONFIG_RMU)             || \
        defined(CONFIG_QUANTUM)         )
        io_block_mapping(_IO_BASE,_IO_BASE,_IO_BASE_SIZE, _PAGE_IO);

So you have not CONFIG_PCI, but of course CONFIG_TQM8xxL. I think this
is your case, this code should be called in your kernel.

You should check, but as sure io_block_mapping() should call ioremap()
or something equivalent.

Best regards,
Stefano Babic

DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-0 Fax: +49-8142-66989-80  Email: office at denx.de

More information about the eldk mailing list