* Interrupt ID number on mpc8347
@ 2009-04-03 7:51 yamazaki seiji
2009-04-03 10:57 ` Michael Ellerman
0 siblings, 1 reply; 3+ messages in thread
From: yamazaki seiji @ 2009-04-03 7:51 UTC (permalink / raw)
To: linuxppc-dev@ozlabs.org
Hi all,
I am running the Linux kernel 2.6.28.7 on my PPC8347 BRD.
I have another problem.
I use many external Interrupts.
one of them ,I setup
localbus@f0000000 { //WDT,SW etc.k
reg = <0xf0000000 0x20>;
pci_inta@2{
interrupt-parent = <&ipic>;
interrupts = <17 0x8>;
};
};
on dts file.
And I programmed
struct device_node *np;
struct resource irq_res;
int ret;
char *irqs[]={
"pci_inta",
NULL};
for(i=0;;i++){
if(irqs[i]==NULL){
break;
}
np = of_find_node_by_name(NULL, irqs[i]);
if (np == NULL) {
printk("No %s in DTB. Has it been eaten by wild dogs?\n",irqs[i]);
return -ENODEV;
}
if (!of_device_is_available(np)){
printk("No %s in DTB. of_device_is_availables?\n",irqs[i]);
return -ENODEV;
}
ret = of_irq_to_resource(np, 0, &irq_res);
if (ret == NO_IRQ)
irq_res.start = irq_res.end = 0;
else
irq_res.flags = 0;
printk("********************************* %s irq_res.start=%d,irq_res.end=%d\n",irqs[i],irq_res.start,irq_res.end);
}
printk result is
********************************* pci_inta irq_res.start=19,irq_res.end=19
I set the Interrupt ID number 17.
But kernel gives the Interrupt ID number 19.
I wont to know the reasen.
Please tell me.
-Seiji Yamazaki
--
yamazaki seiji <yamazaki.seiji@kk.jp.panasonic.com>
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: Interrupt ID number on mpc8347 2009-04-03 7:51 Interrupt ID number on mpc8347 yamazaki seiji @ 2009-04-03 10:57 ` Michael Ellerman 2009-04-03 15:00 ` Liu Dave-R63238 0 siblings, 1 reply; 3+ messages in thread From: Michael Ellerman @ 2009-04-03 10:57 UTC (permalink / raw) To: yamazaki seiji; +Cc: linuxppc-dev@ozlabs.org [-- Attachment #1: Type: text/plain, Size: 820 bytes --] On Fri, 2009-04-03 at 16:51 +0900, yamazaki seiji wrote: > I set the Interrupt ID number 17. > But kernel gives the Interrupt ID number 19. > > I wont to know the reasen. > Please tell me. It's because the irqs are remapped by the kernel, the number in the device tree is a hardware irq number. The number you're printing out is a virtual irq number. of_irq_to_resource() is doing the remapping for you. You can turn on CONFIG_VIRQ_DEBUG and you'll get a file in debugfs that shows the mapping between hardware numbers and virtual numbers. cheers -- Michael Ellerman OzLabs, IBM Australia Development Lab wwweb: http://michael.ellerman.id.au phone: +61 2 6212 1183 (tie line 70 21183) We do not inherit the earth from our ancestors, we borrow it from our children. - S.M.A.R.T Person [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 197 bytes --] ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Interrupt ID number on mpc8347 2009-04-03 10:57 ` Michael Ellerman @ 2009-04-03 15:00 ` Liu Dave-R63238 0 siblings, 0 replies; 3+ messages in thread From: Liu Dave-R63238 @ 2009-04-03 15:00 UTC (permalink / raw) To: michael, yamazaki seiji; +Cc: linuxppc-dev [-- Attachment #1: Type: text/plain, Size: 705 bytes --] > It's because the irqs are remapped by the kernel, the number in the > device tree is a hardware irq number. The number you're printing out is > a virtual irq number. > of_irq_to_resource() is doing the remapping for you. > You can turn on CONFIG_VIRQ_DEBUG and you'll get a file in debugfs that > shows the mapping between hardware numbers and virtual numbers. Guys, I notice many people happened same issue to use the interrupt in powerpc with DTS. Could somebody write one documentation for interrupt system on powerpc arch, - how to remap irq - what is the virq? h/w irq. - show the mapping virt->h/w.. etc.. I think if have this docs, it will be helpful. Thanks, Dave [-- Attachment #2: Type: text/html, Size: 1202 bytes --] ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2009-04-03 15:00 UTC | newest] Thread overview: 3+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2009-04-03 7:51 Interrupt ID number on mpc8347 yamazaki seiji 2009-04-03 10:57 ` Michael Ellerman 2009-04-03 15:00 ` Liu Dave-R63238
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).