Message ID | 20210105201548.50920-1-natechancellor@gmail.com (mailing list archive) |
---|---|
State | Accepted |
Commit | c6f2a9e17b9bef7677caddb1626c2402f3e9d2bd |
Headers | show |
Series | MIPS: lantiq: Explicitly compare LTQ_EBU_PCC_ISTAT against 0 | expand |
On Tue, Jan 05, 2021 at 01:15:48PM -0700, Nathan Chancellor wrote: > When building xway_defconfig with clang: > > arch/mips/lantiq/irq.c:305:48: error: use of logical '&&' with constant > operand [-Werror,-Wconstant-logical-operand] > if ((irq == LTQ_ICU_EBU_IRQ) && (module == 0) && LTQ_EBU_PCC_ISTAT) > ^ ~~~~~~~~~~~~~~~~~ > arch/mips/lantiq/irq.c:305:48: note: use '&' for a bitwise operation > if ((irq == LTQ_ICU_EBU_IRQ) && (module == 0) && LTQ_EBU_PCC_ISTAT) > ^~ > & > arch/mips/lantiq/irq.c:305:48: note: remove constant to silence this > warning > if ((irq == LTQ_ICU_EBU_IRQ) && (module == 0) && LTQ_EBU_PCC_ISTAT) > ~^~~~~~~~~~~~~~~~~~~~ > 1 error generated. > > Explicitly compare the constant LTQ_EBU_PCC_ISTAT against 0 to fix the > warning. Additionally, remove the unnecessary parentheses as this is a > simple conditional statement and shorthand '== 0' to '!'. > > Fixes: 3645da0276ae ("OF: MIPS: lantiq: implement irq_domain support") > Link: https://github.com/ClangBuiltLinux/linux/issues/807 > Reported-by: Dmitry Golovin <dima@golovin.in> > Signed-off-by: Nathan Chancellor <natechancellor@gmail.com> > --- > arch/mips/lantiq/irq.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) applied to mips-next. Thomas.
diff --git a/arch/mips/lantiq/irq.c b/arch/mips/lantiq/irq.c index df8eed3875f6..43c2f271e6ab 100644 --- a/arch/mips/lantiq/irq.c +++ b/arch/mips/lantiq/irq.c @@ -302,7 +302,7 @@ static void ltq_hw_irq_handler(struct irq_desc *desc) generic_handle_irq(irq_linear_revmap(ltq_domain, hwirq)); /* if this is a EBU irq, we need to ack it or get a deadlock */ - if ((irq == LTQ_ICU_EBU_IRQ) && (module == 0) && LTQ_EBU_PCC_ISTAT) + if (irq == LTQ_ICU_EBU_IRQ && !module && LTQ_EBU_PCC_ISTAT != 0) ltq_ebu_w32(ltq_ebu_r32(LTQ_EBU_PCC_ISTAT) | 0x10, LTQ_EBU_PCC_ISTAT); }
When building xway_defconfig with clang: arch/mips/lantiq/irq.c:305:48: error: use of logical '&&' with constant operand [-Werror,-Wconstant-logical-operand] if ((irq == LTQ_ICU_EBU_IRQ) && (module == 0) && LTQ_EBU_PCC_ISTAT) ^ ~~~~~~~~~~~~~~~~~ arch/mips/lantiq/irq.c:305:48: note: use '&' for a bitwise operation if ((irq == LTQ_ICU_EBU_IRQ) && (module == 0) && LTQ_EBU_PCC_ISTAT) ^~ & arch/mips/lantiq/irq.c:305:48: note: remove constant to silence this warning if ((irq == LTQ_ICU_EBU_IRQ) && (module == 0) && LTQ_EBU_PCC_ISTAT) ~^~~~~~~~~~~~~~~~~~~~ 1 error generated. Explicitly compare the constant LTQ_EBU_PCC_ISTAT against 0 to fix the warning. Additionally, remove the unnecessary parentheses as this is a simple conditional statement and shorthand '== 0' to '!'. Fixes: 3645da0276ae ("OF: MIPS: lantiq: implement irq_domain support") Link: https://github.com/ClangBuiltLinux/linux/issues/807 Reported-by: Dmitry Golovin <dima@golovin.in> Signed-off-by: Nathan Chancellor <natechancellor@gmail.com> --- arch/mips/lantiq/irq.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) base-commit: 36bbbd0e234d817938bdc52121a0f5473b3e58f5