[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87ftfe3g4u.fsf@nanos.tec.linutronix.de>
Date:   Thu, 13 Feb 2020 12:01:37 +0100
From:   Thomas Gleixner <tglx@...utronix.de>
To:     Atish Patra <atish.patra@....com>, linux-kernel@...r.kernel.org
Cc:     Atish Patra <atish.patra@....com>,
        Albert Ou <aou@...s.berkeley.edu>,
        Allison Randal <allison@...utok.net>,
        Anup Patel <anup@...infault.org>, Borislav Petkov <bp@...e.de>,
        Daniel Lezcano <daniel.lezcano@...aro.org>,
        "Eric W. Biederman" <ebiederm@...ssion.com>,
        Geert Uytterhoeven <geert@...ux-m68k.org>,
        Heiko Carstens <heiko.carstens@...ibm.com>,
        Jason Cooper <jason@...edaemon.net>,
        Kees Cook <keescook@...omium.org>,
        linux-riscv@...ts.infradead.org, Mao Han <han_mao@...ky.com>,
        Marc Zyngier <maz@...nel.org>,
        Marek Szyprowski <m.szyprowski@...sung.com>,
        Michael Ellerman <mpe@...erman.id.au>,
        Mike Rapoport <rppt@...ux.ibm.com>,
        Palmer Dabbelt <palmer@...belt.com>,
        Paul Walmsley <paul.walmsley@...ive.com>,
        Vincent Chen <vincent.chen@...ive.com>
Subject: Re: [PATCH v8 10/11] irqchip/sifive-plic: Initialize the plic handler when cpu comes online
Atish Patra <atish.patra@....com> writes:
  
> +static void plic_handler_init(struct plic_handler *handler, u32 threshold)
> +{
> +	irq_hw_number_t hwirq;
> +
> +	/* priority must be > threshold to trigger an interrupt */
> +	writel(threshold, handler->hart_base + CONTEXT_THRESHOLD);
> +	for (hwirq = 1; hwirq < plic_irqdomain->hwirq_max; hwirq++)
> +		plic_toggle(handler, hwirq, 0);
> +}
> +
> +static int plic_starting_cpu(unsigned int cpu)
> +{
> +	u32 threshold = 0;
Pointless variable. Also you use PLIC_DISABLE_THRESHOLD down below, so
please add a proper define for enable as well.
> +	struct plic_handler *handler = per_cpu_ptr(&plic_handlers, cpu);
        this_cpu_ptr*&...)
The callback is guaranteed to run on the plugged in CPU.
> -			threshold = 0xffffffff;
> +			plic_handler_init(handler, PLIC_DISABLE_THRESHOLD);
Thanks,
        tglx
Powered by blists - more mailing lists
 
