I have initialised to stack pointer(r1) properly...actually...i went thru the object dump...bt when i juz use
bla <function_name_handler> the link register is not getting pushed on to the stack in the prolog of that function...so the stack is basically not coming into the picture... @IRQ originator, that doesn't seem to be a problem... The only thing that i am able to think of is that when i do a "bla", the return address is not getting stored in link register...and i m not able to figure out why... Regards, Sumedh On Mon, Feb 23, 2009 at 11:03 PM, sjoy...@wanadoo.fr <sjoy...@wanadoo.fr> wrote: > Hi Sumedh, > > You may check the context in which your CPU in running the C code from > interrupt context (ie stack pointer (r1), kernel locks disabling > rescheduling etc..) and double check the IRQ originator (the decrementer) is > acknowlegded somewhere your handler before enabling back interrupts, else > your handler gets fired. > > -- > sj > > 2009/2/23 sumedh tirodkar <sumedhtirod...@gmail.com> >> >> Alright...I am trying to develop a system of my own.. >> Consider that i am not using any linux kernel...I m writing some >> program right from scratch......... >> The major steps that i have taken are... >> >> 1. Started with a assembly file... >> 2. Have relocated the interrupt handlers to there respective >> positions...The interrupt handlers are written in assembly language... >> 3. Initialised Decrementer register to get an interrupt after some >> interval... >> 4. Jump to some function using >> >> bl <function_name_main> >> >> function_name_main which will have a infinite while loop.. >> This works fine i.e. the interrupts(decrementer interrupt to be more >> specific) work fine...I have initialised serial port to get the >> output... >> >> Now, the problem that i am facing.... >> >> If in interrupt handler of the decrementer, i make a call to some C >> function in some other C file...using the follwing statement... >> >> Dec_handler: /* I have relocated this to interrupt vector address of >> decrementer interrupt*/ >> /*code to print using serial port*/ >> bla <function_name_handler> /*code to call some function in C file*/ >> /*code to print using serial port---but i m never able to see this >> output*/ >> RFI >> >> This starts creating a problem...somehow we dont return to this code >> after the end of the function_name_handler... >> Consider the following code for the function_name_handler: >> void function_name_handler(void) >> { >> /*Some action*/ >> } >> >> So, if its possible for anyone to help me with this...please reply... >> >> Regards, >> Sumedh >> >> >> On Mon, Feb 23, 2009 at 8:18 PM, Matt Gessner <mgess...@gmail.com> wrote: >> > >> > >> > On Mon, Feb 23, 2009 at 8:03 AM, sumedh tirodkar >> > <sumedhtirod...@gmail.com> >> > wrote: >> >> >> >> I am using PowerPC 7447A...I am trying to port SA-RTL on PowerPC... >> > >> > What I said earlier was: You need to tell people what cpu you're using, >> > what >> > linux kernel, etc etc etc. >> > >> > Fine, we know the CPU. What kernel are you using? Is it ancient? >> > >> > I doubt the information below is going to be useful... >> > >> >> >> >> I am using >> >> >> >> bla <function_name> >> >> >> >> from the assembly code to call the function in C file...This i am >> >> doing from interrupt handler of the decrementer... >> >> If any more details are required, please let me know... >> > >> > >> _______________________________________________ >> Linuxppc-dev mailing list >> Linuxppc-dev@ozlabs.org >> https://ozlabs.org/mailman/listinfo/linuxppc-dev > > > > -- > ------------------ > Sylvain JOYEAU > Freelance Engineer > Software RT-OS R&D > sylvain.joy...@gmail.com > Tél: +33-(0)667 477 052 > "A good idea is one side of the coin. The other side is the practical > usefulness". J. Liedke. > _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev