lkml.org 
[lkml]   [2017]   [Jul]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Date
    SubjectRe: [GIT pull] irq updates for 4.13
    On Tue, Jul 11, 2017 at 9:19 AM, Thomas Gleixner <tglx@linutronix.de> wrote:
    >
    > What I do not understand here is that we have already power management
    > around all of that.
    >
    > irq_chip_pm_get(&desc->irq_data);
    > ...
    > chip_bus_lock(desc);
    > ...
    > chip_bus_unlock_sync(desc);
    > ...
    > irq_chip_pm_put(&desc->irq_data);
    >
    > So why is that not sufficient and needs extra magic in that GPIO driver?

    Well, irq_chip_pm_get/put() isn't called just over the operation, it's
    called over the *whole* sequence of the irq being enabled at all.

    So the different (right now) is that

    - chip_bus_lock/unlock_sync() is purely done around the actual
    operations to set up and tear down the irq data.

    So this just covers the very short setup/teardown.

    - irq_chip_pm_get/put() is called around the *whole* "irqs can be active" block

    This covers the whole lifetime of the irq, from setup to free.

    Very different.

    I'd really prefer my simple patch for now, leaving everything working
    the way it used to work. I *think* it's ok for RT too. Yes?

    .. and then maybe longer term people can look more at this and clean
    up the oddities.

    Linus

    \
     
     \ /
      Last update: 2017-07-11 18:32    [W:6.556 / U:0.032 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site