From: Fabio G. <fg...@ti...> - 2002-04-04 11:01:01
|
I found what was the problem of the interrupt (PINT initialization); Now, where can I find the guidelines to implement the support for video in framebuffer and keyboard? On Wednesday 03 April 2002 20:18, Stuart Menefy wrote: > Fabio > > If you look at the bit of code in assembler, it reads the value from > the INTEVT register, shifts right by 5 and subtracts 16. So an interrupt > code of 0xd corrisponds to INTEVT code of 0x3a0. Have a look at the > interrupt code table in the appropriate manual, and you'll see which > interrupt this corrisponds to. I don't have a 7709 manual to hand, > but IIRC this is an external interrupt on all SuperH parts. > > So something on your board is raising an interrupt, and this error > message is saying that there is no interrupt handler installed to > handle it. > > This could just be a mis-configuration issue. The interrupt controllers > on some of the SH3's have quite a few modes and config registers. When > your board was designed, they probably intended the interrupt controller > to be set up in a particular way, make sure you're doing this. > > Alternativly something on your board really is raising an interrupt. > > Hopefully your board has some external logic to control enabling and > disabling of interrupts from peripherials, so maybe this needs to be > set up before you enable interrupts at the CPU level. > > Or maybe the device which is raising the interrupt at boot time needs > to be initialised first. > > Either would be pretty grotty, most devices power up with interrupts > disabled and/or inactive until you do something to provoke them, but > it wouldn't be the first time somebody had designed hardware that didn't > work that way. > > If all else fails, you could look at using the irq_imask routines to > disable the interrupt using the IMASK in the status register, but > that should be a last resort, as it results in all interrupts of lower > priority being disabled, so could disbale something you need. > > Hope this helps > > Stuart > > > > On Wed, 3 Apr 2002 16:12:28 +0200 > > fg...@ti... wrote: > > Sorry, > > but I don't understand what means: > > "unexpected IRQ trap at vector 0d" > > > > I suppose it is an interrupt always entering but I don't understand what > > is its source. > > > > Thanks. > > > > Fabio > > > > On Tuesday 02 April 2002 14:27, Stuart Menefy wrote: > > > Hi Fabio > > > > > > You might like to have a look at the 'board porting guide' a colleague > > > here wrote. Have a look at: > > > http://www.linuxsh.st.com/getting_started/board_porting.php3 > > > > > > As far as I know, you'll be the first person to try it in anger, so any > > > comments welcome! > > > > > > You're right, it sounds like you have a pending interrupt. So the first > > > thing I'd do is stick a printk at the start of do_IRQ(), and print the > > > irq number (just after the little bit of asm code which retreives it). > > > > > > Stuart > > > > > > > > > On Fri, 29 Mar 2002 10:55:32 +0100 > > > > > > fg...@ti... wrote: > > > > Hi, Stuart, > > > > I' porting linux SH on my sh3 7709a based board. > > > > I'm able to compile and run for my board sh-boot got from CVS > > > > repository, I'm able to compile the kernel 2.4.18 and I can boot it > > > > using gdb. > > > > > > > > Making a debug using printk("...."); while(1); to understant I see > > > > that kernel stops execution at init/main.c -> start_kernel -> sti(); > > > > > > > > I compiled my kernel as my board were a SolutionEngine, but my board > > > > isn't a SolutionEngine. > > > > > > > > Having read the Documentation/sh/ document from the CVS kernel and > > > > seeing you are the father of sh_mv model, I write to you for asking: > > > > 1) Is it possible when I enable the interrupt mask with sti() an > > > > interrupt pending occurs which I have no handler for? > > > > > > > > 2) There is an optiminezed way to trace this kind of troubles? > > > > > > > > > > > > Thanks a lot. > > > > > > > > Fabio |