Thanks Gilles, The flags are zero (from example code).... should I have used RTDM_IRQTYPE_EDGE ?
err = rtdm_irq_request(&info->gpio_irq, gpio_irq_n, imu_irq_handler, 0, THIS_MODULE->name, NULL); Terje -----Original Message----- From: Gilles Chanteperdrix [mailto:[email protected]] Sent: 2. desember 2014 10:57 To: Terje Frøysa Cc: [email protected] Subject: Re: [Xenomai] IRQ155 not handled. Disabling IRQ line On Tue, Dec 02, 2014 at 09:51:01AM +0000, Terje Frøysa wrote: > Well, the code: > DEBUG_PRINT(KERN_DEBUG "RTDM IMU %d - enable IRQ\n", info->gpio_pin_n); > err = rtdm_irq_enable(&info->gpio_irq); only exists one place in the > driver and is only executed in the kernel-context of rt_dev_open() from > user-space. > The irq-device is opened only once before entering the read-loop. > > The repeated read calls from the user space (rt_dev_read()) only blocs on the > irq semaphore and copies the irq-time back to the user. > I don't see how the irq-line can be re-enabled by this code. > If the device have been repeatedly opened, the dmesg would have been flooded > with log-messages. What flags do you pass to rtdm_irq_request? -- Gilles. _______________________________________________ Xenomai mailing list [email protected] http://www.xenomai.org/mailman/listinfo/xenomai
