usb: typec: tcpm: Fix undefined behavior due to shift overflowing the constant

Fix:

  drivers/usb/typec/tcpm/tcpm.c: In function ‘run_state_machine’:
  drivers/usb/typec/tcpm/tcpm.c:4724:3: error: case label does not reduce to an integer constant
     case BDO_MODE_TESTDATA:
     ^~~~

See https://lore.kernel.org/r/YkwQ6%2BtIH8GQpuct@zn.tnic for the gory
details as to why it triggers with older gccs only.

Signed-off-by: Borislav Petkov <bp@suse.de>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: linux-usb@vger.kernel.org
Link: https://lore.kernel.org/r/20220405151517.29753-8-bp@alien8.de
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Borislav Petkov 2022-04-05 17:15:13 +02:00 committed by Greg Kroah-Hartman
parent 9e3d68f872
commit 8d084b2eae

View File

@ -15,7 +15,7 @@
#define BDO_MODE_CARRIER2 (5 << 28) #define BDO_MODE_CARRIER2 (5 << 28)
#define BDO_MODE_CARRIER3 (6 << 28) #define BDO_MODE_CARRIER3 (6 << 28)
#define BDO_MODE_EYE (7 << 28) #define BDO_MODE_EYE (7 << 28)
#define BDO_MODE_TESTDATA (8 << 28) #define BDO_MODE_TESTDATA (8U << 28)
#define BDO_MODE_MASK(mode) ((mode) & 0xf0000000) #define BDO_MODE_MASK(mode) ((mode) & 0xf0000000)