Commit Graph

3 Commits

Author SHA1 Message Date
Benjamin Tissoires d9b1f1a671 Input: touchscreen - avoid bitwise vs logical OR warning
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2070873
Upstream Status: since v5.15
Tested: with the hid-tools test suite and some hardware

commit a02dcde595f7cbd240ccd64de96034ad91cffc40
Author: Nathan Chancellor <nathan@kernel.org>
Date:   Fri Oct 15 13:13:06 2021 -0700

    Input: touchscreen - avoid bitwise vs logical OR warning

    A new warning in clang points out a few places in this driver where a
    bitwise OR is being used with boolean types:

    drivers/input/touchscreen.c:81:17: warning: use of bitwise '|' with boolean operands [-Wbitwise-instead-of-logical]
            data_present = touchscreen_get_prop_u32(dev, "touchscreen-min-x",
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    This use of a bitwise OR is intentional, as bitwise operations do not
    short circuit, which allows all the calls to touchscreen_get_prop_u32()
    to happen so that the last parameter is initialized while coalescing the
    results of the calls to make a decision after they are all evaluated.

    To make this clearer to the compiler, use the '|=' operator to assign
    the result of each touchscreen_get_prop_u32() call to data_present,
    which keeps the meaning of the code the same but makes it obvious that
    every one of these calls is expected to happen.

    Signed-off-by: Nathan Chancellor <nathan@kernel.org>
    Reported-by: Nick Desaulniers <ndesaulniers@google.com>
    Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
    Link: https://lore.kernel.org/r/20211014205757.3474635-1-nathan@kernel.org
    Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>

Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
2022-06-22 18:11:33 +02:00
Jeff LaBundy 51e01fc04f Input: touchscreen - broaden use-cases described in comments
Now that the helper functions have been moved to drivers/input/ so
that all input devices may use them, the introductory comments can
be updated to remove any implication that the helper functions are
solely limited to touchscreens.

This patch also scrubs any remaining use of 'DT' since there isn't
any actual dependency on OF. A minor spelling error is resolved as
well ('setups' -> 'sets up').

Signed-off-by: Jeff LaBundy <jeff@labundy.com>
Link: https://lore.kernel.org/r/20210301234928.4298-3-jeff@labundy.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2021-03-25 11:14:09 -07:00
Jeff LaBundy e28b5c8d0a Input: touchscreen - move helper functions to core
Some devices outside of drivers/input/touchscreen/ can still make
use of the touchscreen helper functions. Therefore, it was agreed
in [1] to move them outside of drivers/input/touchscreen/ so that
other devices can call them without INPUT_TOUCHSCREEN being set.

As part of this change, 'of' is dropped from the filename because
the helpers no longer actually use OF. No changes are made to the
file contents whatsoever.

Based on the feedback in [2], the corresponding binding documents
(touchscreen.yaml and touchscreen.txt) are left in their original
locations.

[1] https://patchwork.kernel.org/patch/11924029/
[2] https://patchwork.kernel.org/patch/12042037/

Signed-off-by: Jeff LaBundy <jeff@labundy.com>
Link: https://lore.kernel.org/r/20210301234928.4298-2-jeff@labundy.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2021-03-25 11:14:09 -07:00