lkml.org 
[lkml]   [2013]   [Oct]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 2/2] mrst_max3110: fix SPI UART interrupt parameters
    Hi again,

    On Wed, Oct 23, 2013 at 01:21:43PM -0500, Felipe Balbi wrote:
    > On Wed, Oct 23, 2013 at 11:10:48AM -0700, David Cohen wrote:
    > > >My idea is always use threaded irq and passing flags into request.
    > > >Like as:
    > > >unsigned long flags = res->flags & IORESOURCE_BITS;
    > > >...
    > > >request_threaded_irq(max->irq, serial_m3110_irq, IRQF_ONESHOT | flags, "max3110", max);
    > >
    > >
    > > Oh, maybe we were talking about different things afterall :)
    > > The reason this struct plat_max3110 was created is to allow platform
    > > code (located under arch/x86/platform/intel-mid/device_libs/) to define
    > > the irq edge type.
    > > When I saw your comment I though you were referring to struct resource
    > > (which has IORESOURCE_IRQ_* flags). But unlike platform_device,
    > > spi_device has no struct resource * to replace the need of struct
    > > plat_max3110.
    > >
    > > OTOH your suggestion can replace this piece of code:
    > >
    > > @@ -68,6 +69,7 @@ struct uart_max3110 {
    > > u8 clock;
    > > u8 parity, word_7bits;
    > > u16 irq;
    > > + u16 irq_edge_triggered;
    >
    > max3110 is already edge triggered:
    >
    > 495 ret = request_irq(max->irq, serial_m3110_irq,
    > 496 IRQ_TYPE_EDGE_FALLING, "max3110", max);
    >
    > it would be nice a threaded IRQ instead of using a singlethread
    > workqueue, though.

    making it clearer, you only converted to threaded IRQ when
    edge_triggered isn't set, why don't you *always* use threaded IRQs ?

    --
    balbi
    [unhandled content-type:application/pgp-signature]
    \
     
     \ /
      Last update: 2013-10-23 20:41    [W:2.506 / U:0.476 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site