[U-Boot] PrimeCell Peripherals
    Gururaja Hebbar K R 
    gururajakr at sanyo.co.in
       
    Wed Sep 24 10:31:49 CEST 2008
    
    
  
Hi, 
> From: Roman Mashak [mailto:romez777 at gmail.com] 
> Subject: Re: [U-Boot] PrimeCell Peripherals
> 
> I'm a bit confused: 'do_irq' is defined in several files, 
> including CPU-specific (arm920t, 720t etc.) and ARM 
> architecture library ($(U_BOOT)/lib_arm). So if we build for 
> arm920t-based platform (provided that CONFIG_USE_IRQ is 
> defined), then which one will be actually compiled in resulting image?
Looking at uboot\cpu\arm920t\interrupts.c
a. If ARM920_IRQ_CALLBACK is defined (which is only used in s3c2410), function is called which points to s3c2410_irq()
b. if the platform is CONFIG_ARCH_INTEGRATOR, then it is assumed that it is 
for timer interrupt (which is not necessary be since timer interrupt is not enabled in integrator)
Looking at uboot\cpu\arm720t\interrupts.c
a. if CONFIG_S3C4510B is defined then platform specific interrupt handler is called ( IRQ_HANDLER[pending>>2].m_func() )
b. Noting for integrator
c here is the interesting part
Since LPC2292 uses the interrupt controller similar to VIC, It uses the VICVectAddr to get the respective function address & jumps to it.
So, a similar function i.e., do_irq is needed for arm926ej-s. Again inside it, a similar steps as in lpc2292 can be done to jump to respective function.
But i am not seeing anyone using this function yet. 
Regards
Gururaja
    
    
More information about the U-Boot
mailing list