diff mbox

[1/2] OMAP: gpmc-smsc911x: always set irq flags to IORESOURCE_IRQ_LOWLEVEL

Message ID 7cf1c52880f0f32922c8973cb90aadcd2e728be1.1302992702.git.mike@compulab.co.il (mailing list archive)
State Accepted
Commit f0949f73a75093fb86d6554101bd79046633a297
Delegated to: Tony Lindgren
Headers show

Commit Message

Mike Rapoport April 16, 2011, 10:29 p.m. UTC
SMSC911x devices attached to OMAP GPMC always use low level irqs.
Setting the appropriate flag in the irq resourse strucure allows using
.flags field in the omap_smsc911x_platform_data for driver specific
flags

Signed-off-by: Mike Rapoport <mike@compulab.co.il>
---
 arch/arm/mach-omap2/board-omap3logic.c |    1 -
 arch/arm/mach-omap2/gpmc-smsc911x.c    |    7 ++++---
 2 files changed, 4 insertions(+), 4 deletions(-)

Comments

Tony Lindgren May 31, 2011, 10:32 a.m. UTC | #1
* Mike Rapoport <mike@compulab.co.il> [110416 15:20]:
> SMSC911x devices attached to OMAP GPMC always use low level irqs.
> Setting the appropriate flag in the irq resourse strucure allows using
> .flags field in the omap_smsc911x_platform_data for driver specific
> flags

Looks like this one needs to be refreshed against v3.0-rc1.

Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Igor Grinberg June 1, 2011, 11:33 a.m. UTC | #2
On 05/31/11 13:32, Tony Lindgren wrote:

> * Mike Rapoport <mike@compulab.co.il> [110416 15:20]:
>> SMSC911x devices attached to OMAP GPMC always use low level irqs.
>> Setting the appropriate flag in the irq resourse strucure allows using
>> .flags field in the omap_smsc911x_platform_data for driver specific
>> flags
> Looks like this one needs to be refreshed against v3.0-rc1.

Both patches are already in v3.0-rc1... Working late? ;)
Tony Lindgren June 1, 2011, 11:45 a.m. UTC | #3
* Igor Grinberg <grinberg@compulab.co.il> [110601 04:29]:
> On 05/31/11 13:32, Tony Lindgren wrote:
> 
> > * Mike Rapoport <mike@compulab.co.il> [110416 15:20]:
> >> SMSC911x devices attached to OMAP GPMC always use low level irqs.
> >> Setting the appropriate flag in the irq resourse strucure allows using
> >> .flags field in the omap_smsc911x_platform_data for driver specific
> >> flags
> > Looks like this one needs to be refreshed against v3.0-rc1.
> 
> Both patches are already in v3.0-rc1... Working late? ;)

That explains, maybe it's time for me to go to the back room and take a nap :)

I was using both patchwork and my mailbox as patchwork was missing some
patches and did not allow login yesterday..

Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/arch/arm/mach-omap2/board-omap3logic.c b/arch/arm/mach-omap2/board-omap3logic.c
index b726943..a49e6cf 100644
--- a/arch/arm/mach-omap2/board-omap3logic.c
+++ b/arch/arm/mach-omap2/board-omap3logic.c
@@ -147,7 +147,6 @@  static struct omap_smsc911x_platform_data __initdata board_smsc911x_data = {
 	.cs             = OMAP3LOGIC_SMSC911X_CS,
 	.gpio_irq       = -EINVAL,
 	.gpio_reset     = -EINVAL,
-	.flags          = IORESOURCE_IRQ_LOWLEVEL,
 };
 
 /* TODO/FIXME (comment by Peter Barada, LogicPD):
diff --git a/arch/arm/mach-omap2/gpmc-smsc911x.c b/arch/arm/mach-omap2/gpmc-smsc911x.c
index 703f150..b331f3c 100644
--- a/arch/arm/mach-omap2/gpmc-smsc911x.c
+++ b/arch/arm/mach-omap2/gpmc-smsc911x.c
@@ -30,7 +30,7 @@  static struct resource gpmc_smsc911x_resources[] = {
 		.flags		= IORESOURCE_MEM,
 	},
 	[1] = {
-		.flags		= IORESOURCE_IRQ,
+		.flags		= IORESOURCE_IRQ | IORESOURCE_IRQ_LOWLEVEL,
 	},
 };
 
@@ -79,8 +79,6 @@  void __init gpmc_smsc911x_init(struct omap_smsc911x_platform_data *board_data)
 
 	gpio_direction_input(gpmc_cfg->gpio_irq);
 	gpmc_smsc911x_resources[1].start = gpio_to_irq(gpmc_cfg->gpio_irq);
-	gpmc_smsc911x_resources[1].flags |=
-					(gpmc_cfg->flags & IRQF_TRIGGER_MASK);
 
 	if (gpio_is_valid(gpmc_cfg->gpio_reset)) {
 		ret = gpio_request(gpmc_cfg->gpio_reset, "smsc911x reset");
@@ -96,6 +94,9 @@  void __init gpmc_smsc911x_init(struct omap_smsc911x_platform_data *board_data)
 		gpio_set_value(gpmc_cfg->gpio_reset, 1);
 	}
 
+	if (gpmc_cfg->flags)
+		gpmc_smsc911x_config.flags = gpmc_cfg->flags;
+
 	if (platform_device_register(&gpmc_smsc911x_device) < 0) {
 		printk(KERN_ERR "Unable to register smsc911x device\n");
 		gpio_free(gpmc_cfg->gpio_reset);