This is the mail archive of the crossgcc@sources.redhat.com mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

PowerPC 860 NMI Interrupt



The setup that I am using:

MDPBasicPPC860 - PPC 860 basic board from EST/WindRiver

Objective -  modify memory address with a value.

The C code is :  *(UINT32 *)(0x800000) = (UINT32)0x12345678h;

The generated Assembly : lwz R9,0x10(R31)   /* this yields R9 = 0x800000 */

                                       lwz R0,0xc(R31)    /* this yields
R0=0x12345678 */

                                       stw R0,0x0(R9)     /* this causes an
NMI Interrupt */


Q: The last instruction fails when I actually trying to do the write at
location 0x800000

with the value 0x12345678.

I configured the CS3 in the PPC860 from 0x800000 till 0xA00000, 32bit, GPCM.

What is weird in here, that I can modify this address from the debugger
(modify 0x800000 0x12345678)

But when I run the code from RAM, I get "Non Recoverable NMI".

ronen.




------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sourceware.cygnus.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]