[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <1f6467f1-98f2-c47e-700f-f3af1bb3adb0@infradead.org>
Date: Sat, 7 Mar 2020 10:20:39 -0800
From: Randy Dunlap <rdunlap@...radead.org>
To: Peter Willis <pwillis@...env.com>, linux-kernel@...r.kernel.org
Subject: Re: What kernel version does 'irq_set_irq_type' become available?
On 3/6/20 9:29 AM, Peter Willis wrote:
> Hello,
>
> Is there a history diagram somewhere that shows where specific features appear in the codebase?
I don't know.
> Various online documentation for kernel driver development have references to functions that, in some cases, are either deprecated or do not yet exist in older versions of kernel source.
>
> For example, I have written an interrupt service driver for an embedded application running on kernel version 2.6.21. The original driver is level triggered and requires the driver to:
2.6.21 was released in April of 2007.
It's a shame that someone (anyone) is still using it.
> a.) Temporarily disable the interrupt
> b.) Service the interrupt
> c.) Re-enable the interrupt
>
> There was some desire for that driver to move to a more standard rising edge trigger.
Does the hardware work as (optionally; programmable) level triggered or edge triggered?
Usually not in my experience.
Usually one or the other.
> In that line of thought , the documentation suggests ' irq_set_irq_type' with flag 'IRQF_TRIGGER_RISING'.
>
> That function was experimental at one point, and doesn't appear to be available in the 2.6.21 source.
No, in 2.6.21 it is named 'set_irq_type'.
I can't see that it was experimental.
> I did a 'find' -> 'while read' -> 'fgrep' search to find the function declaration in headers but had no luck under 2.6.21 .
>
> -- My specific questions --
>
> Question 1.) Is 'irq_set_irq_type' still experimental ?
No.
> Question 2.) At what version of the kernel source does the function appear?
It is named irq_set_irq_type in 2.6.39. That's the earliest AFAICT.
> Question 3.) If the function exists for 2.6.21 What headers are required to allow effective compilation?
>
<linux/irq.h>
>
> -- Notes and suggestions regarding kernel function documentation --
>
> Note 1.) Perhaps functions should be documented with indications of what kernel versions they apply to.
> Note 2.) In function documentation, an indication of what headers to include supporting each specific function would be nice.
'grep' is really easy to use.
> Thank you for your time and comments,
Good luck.
--
~Randy
Powered by blists - more mailing lists