Re: [PATCH 1/1] of/irq: store IRQ trigger/level in struct resource flags

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 04/09/2013 12:16 AM, Stephen Warren wrote:
> On 04/08/2013 04:05 PM, Rob Herring wrote:
>> On 04/05/2013 02:48 AM, Javier Martinez Canillas wrote:
>>> According to Documentation/devicetree/bindings/interrupt-controller/interrupts.txt
>>> the "#interrupt-cells" property of an "interrupt-controller" is used
>>> to define the number of cells needed to specify a single interrupt.
> ...
>>> But the type is never returned so it can't be saved on the IRQ struct
>>> resource flags member.
>>>
>>> This means that drivers that need the IRQ type/level flags defined in
>>> the DT won't be able to get it.
>> 
>> But the interrupt controllers that need the information should be able
>> to get to it via irqd_get_trigger_type. What problem exactly are you
>> trying to fix? What driver would use this?
> 
> FYI, that is indeed what I did in sound/soc/codecs/wm8903.c. Thinking
> back, I'm not sure if that was the right thing or whether I should have
> sent this same patch:-)
> 

Hi Stephen,

I'm glad you agree :-)

I could change drivers/net/ethernet/smsc/smsc911x.c to get the type flags for
the IRQ with irqd_get_trigger_type() but I prefer $subject because:

a) This works in the non-DT case with board files and filling the resources from
platform data in arch/arm/mach-omap2/gpmc-smsc911x.c. So this is definitely a
bug on the DT core.

b) I don't see why of_irq_to_resource() should discard the type/level flags when
filling the IORESOURCE_IRQ if it was specified on the DT.

c) We will have to change all drivers that expect to get the IRQ type flags from
a IORESOURCE_IRQ struct resource.

Thanks a lot and best regards,
Javier
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux