Hi, On Thu, May 07, 2020 at 01:16:17PM +0800, ChenTao wrote: > Fix the following warning: > > 'mode' and 'library' are u32, they are never be negative, > DRV260X_LRA_MODE and DRV260X_LIB_EMPTY are 0x00, the comparison > is always false.
The fact that the symbolic names resolve to 0 is just a happenstance. We should not be writing code based on concrete values in this case. I wish we could tell the compiler to ignore this kind of cases, where we want to test a range of values, and do not care about concrete numeric bounds of said range. > > drivers/input/misc/drv260x.c:478:20: warning: > comparison of unsigned expression < 0 is always false [-Wtype-limits] > if (haptics->mode < DRV260X_LRA_MODE || > drivers/input/misc/drv260x.c:490:23: warning: > comparison of unsigned expression < 0 is always false [-Wtype-limits] > if (haptics->library < DRV260X_LIB_EMPTY || Are we planning on enabling this warning in kernel by default? Thanks. -- Dmitry