mx31: external abort on non-linefetch (debugging suspend to RAM)
Xinyu Chen
muddogxp at gmail.com
Thu Oct 14 00:58:51 EDT 2010
On Tue, Oct 12, 2010 at 5:59 PM, Thomas Nemeth
<thomas.nemeth at betatech.fr> wrote:
>
> Hi!
>
> I've already posted a message some time ago about handling suspend
> to RAM for iMX31 processors. I added a pm.c file I extracted from
> the old 2.6.22 freescale-provided kernel to make it up-to-date and
> also used the one Andy Green showed me.
>
> However, whatever I try, the CPU still does not want to wake up
> after beeing put into State Retention mode. Apart from the muxing,
> our CPU board is very much like the mx31ads board with several
> resources added.
>
> There is a new symptom today. A long time ago I made a little
> program usefull to quickly dump some registers. It only does a
> simple mmap on /dev/mem with adjusted pages sizes and offsets and I
> used to use it everywhere, on several processors. Using it on the
> 2.6.22 and the ADS works fine to dump the CCMR register. But using
> it on our new board gives this :
>
> # insight -D ./iMX31-regs.defs -R CCMR
> Unhandled fault: external abort on non-linefetch (0x008) at 0x40000000
> Bus error
>
> For those wanting to have a look at my program, I can send the
> tarball by mail.
>
> On the MX31ADS the result is the following one :
> mx31# ./insight -D iMX31-regs.defs -R CCMR
> CCMR: 0x074B097D
> FIELD HEX BIN DEC.
> FPME : 1 1 (1)
> PRCS : 2 10 (2)
> MPE : 1 1 (1)
> SBYCS : 1 1 (1)
> ROMW : 3 11 (3)
> MDS : 0 0 (0)
> SPE : 1 1 (1)
> UPE : 0 0 (0)
> WAMO : 0 0 (0)
> FIRS : 1 1 (1)
> reserved : 0 0 (0)
> LPM : 0 0 (0)
> RAMW : 3 11 (3)
> SSI1S : 2 10 (2)
> reserved : 0 0 (0)
> SSI2S : 2 10 (2)
> reserved : 0 0 (0)
> PERCS : 1 1 (1)
> CSCS : 1 1 (1)
> FPMF : 1 1 (1)
> WBEN : 0 0 (0)
> VSTBY : 0 0 (0)
> L2PG : 0 0 (0)
> reserved : 0 0 (0)
>
>
> --
> Thomas Nemeth - Ingénieur d'Études en Informatique Industrielle
> Industrial Computing Software Designer
> BETAtech - 15, rue Apollo, Z.A. de Montredon, 31240, L'Union.
> 05 34 30 40 00 (standard) / 05 34 30 40 09 (ligne directe)
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
>
>
Hi Thomas
The exception is caused by you accessing the 0x40000000 which has been
remapped as peripheral port memory in bootloader. As it's mapped, you
can not access it by non privileged user.
Please check the c15, c2, 4 coprocessor register settings in bootloader.
Thanks!
--
Best Regards
Xinyu Chen
Freescale Semiconductor
MAD Linux BSP Team
More information about the linux-arm-kernel
mailing list