Re: request_irq return errno 38
From: Vijay Nikam <hidden>
Date: 2009-02-11 10:13:28
Ok ... so that means if I am writing driver for any device I need to take care of this mapping ? ? ? I mean I should use virq ? ? ? I read in LDD book, they give directly irq no. they have given parallel port example, here they have set or said irq no. defaults to 7 and they have not done any irq_mapping so what is the difference ? ? ? I mean how I should know when to use irq_mapping and when not ? ? ? Also is it some difference between writng drivers on embedded Linux level and Linux PC (i386) ? ? ? Sorry for perhaps these basic questions as kind of new to Linux kernel programming ... :-) Kindly please acknowledge ... thank you ... Kind Regards, Vijay Nikam On 2/11/09, Michael Ellerman [off-list ref] wrote:
On Wed, 2009-02-11 at 15:11 +0530, Vijay Nikam wrote:quoted
Thanks for your prompt reply ... I am using kernel version 2.6.20 ...OK, that kernel has the irq remapping stuff.quoted
May I know what raw IRQ means ? ? ? and what is the reason I cant map raw_irq_number ???Sorry, that's not the best terminology. I guess the right name is hardware irq number. You can't map it because the kernel keeps a mapping between hardware irq numbers and virtual irq numbers. request_irq() expects a virtual irq number. 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