usb: dwc2: fix sparse warning
Sparse warns about the __le16 wValue from the USB SetAddress command being used without converting it to CPU endianness. Fix that, and also add a bit of defensive masking of the received wValue before using it. Reported-by: Fengguang Wu <fengguang.wu@intel.com> Signed-off-by: Paul Zimmerman <paulz@synopsys.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
8355d39cc2
commit
d5dbd3f7d8
|
@ -1094,7 +1094,8 @@ static void s3c_hsotg_process_control(struct s3c_hsotg *hsotg,
|
|||
s3c_hsotg_disconnect(hsotg);
|
||||
dcfg = readl(hsotg->regs + DCFG);
|
||||
dcfg &= ~DCFG_DEVADDR_MASK;
|
||||
dcfg |= ctrl->wValue << DCFG_DEVADDR_SHIFT;
|
||||
dcfg |= (le16_to_cpu(ctrl->wValue) <<
|
||||
DCFG_DEVADDR_SHIFT) & DCFG_DEVADDR_MASK;
|
||||
writel(dcfg, hsotg->regs + DCFG);
|
||||
|
||||
dev_info(hsotg->dev, "new address %d\n", ctrl->wValue);
|
||||
|
|
Loading…
Reference in New Issue