[ Should linux-usb be listed in MAINTAINERS? - dan] Hello Mika Westerberg, The patch b04079837b20: "thunderbolt: Add initial support for USB4" from Dec 17, 2019, leads to the following static checker warning: drivers/thunderbolt/usb4.c:242 usb4_switch_setup() warn: bool mask it always valse 'xhci & ((((1))) << (18))' drivers/thunderbolt/usb4.c 206 bool tbt3, xhci; ^^^^ ^^^^ 207 u32 val = 0; 208 int ret; 209 210 if (!tb_route(sw)) 211 return 0; 212 213 ret = tb_sw_read(sw, &val, TB_CFG_SWITCH, ROUTER_CS_6, 1); 214 if (ret) 215 return ret; 216 217 xhci = val & ROUTER_CS_6_HCI; 218 tbt3 = !(val & ROUTER_CS_6_TNS); 219 220 tb_sw_dbg(sw, "TBT3 support: %s, xHCI: %s\n", 221 tbt3 ? "yes" : "no", xhci ? "yes" : "no"); 222 223 ret = tb_sw_read(sw, &val, TB_CFG_SWITCH, ROUTER_CS_5, 1); 224 if (ret) 225 return ret; 226 227 parent = tb_switch_parent(sw); 228 229 if (tb_switch_find_port(parent, TB_TYPE_USB3_DOWN)) { 230 val |= ROUTER_CS_5_UTO; 231 xhci = false; 232 } 233 234 /* Only enable PCIe tunneling if the parent router supports it */ 235 if (tb_switch_find_port(parent, TB_TYPE_PCIE_DOWN)) { 236 val |= ROUTER_CS_5_PTO; 237 /* 238 * xHCI can be enabled if PCIe tunneling is supported 239 * and the parent does not have any USB3 dowstream 240 * adapters (so we cannot do USB 3.x tunneling). 241 */ 242 if (xhci & ROUTER_CS_6_HCI) ^^^^^^^^^^^^^^^^^^^^^^ "xhci" is bool so BIT(18) is not set. 243 val |= ROUTER_CS_5_HCO; 244 } 245 246 /* TBT3 supported by the CM */ 247 val |= ROUTER_CS_5_C3S; regards, dan carpenter