lkml.org 
[lkml]   [2020]   [Feb]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[PATCH 03/18] c6x: replace setup_irq() by request_irq()
    request_irq() is preferred over setup_irq(). Existing callers of
    setup_irq() reached mostly via 'init_IRQ()' & 'time_init()', while
    memory allocators are ready by 'mm_init()'.

    Per tglx[1], setup_irq() existed in olden days when allocators were not
    ready by the time early interrupts were initialized.

    Hence replace setup_irq() by request_irq().

    Seldom remove_irq() usage has been observed coupled with setup_irq(),
    wherever that has been found, it too has been replaced by free_irq().

    [1] https://lkml.kernel.org/r/alpine.DEB.2.20.1710191609480.1971@nanos

    Signed-off-by: afzal mohammed <afzal.mohd.ma@gmail.com>
    ---

    Since cc'ing cover letter to all maintainers/reviewers would be too
    many, refer for cover letter,
    https://lkml.kernel.org/r/cover.1581478323.git.afzal.mohd.ma@gmail.com

    arch/c6x/platforms/timer64.c | 11 +++--------
    1 file changed, 3 insertions(+), 8 deletions(-)

    diff --git a/arch/c6x/platforms/timer64.c b/arch/c6x/platforms/timer64.c
    index d98d94303498..ceee34c51d4b 100644
    --- a/arch/c6x/platforms/timer64.c
    +++ b/arch/c6x/platforms/timer64.c
    @@ -165,13 +165,6 @@ static irqreturn_t timer_interrupt(int irq, void *dev_id)
    return IRQ_HANDLED;
    }

    -static struct irqaction timer_iact = {
    - .name = "timer",
    - .flags = IRQF_TIMER,
    - .handler = timer_interrupt,
    - .dev_id = &t64_clockevent_device,
    -};
    -
    void __init timer64_init(void)
    {
    struct clock_event_device *cd = &t64_clockevent_device;
    @@ -238,7 +231,9 @@ void __init timer64_init(void)
    cd->cpumask = cpumask_of(smp_processor_id());

    clockevents_register_device(cd);
    - setup_irq(cd->irq, &timer_iact);
    + if (request_irq(cd->irq, timer_interrupt, IRQF_TIMER, "timer",
    + &t64_clockevent_device))
    + pr_err("request_irq() on %s failed\n", "timer");

    out:
    of_node_put(np);
    --
    2.24.1
    \
     
     \ /
      Last update: 2020-02-12 09:03    [W:3.328 / U:1.656 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site