usb: xhci-mtk: remove or operator for setting schedule parameters
commit5fa5827566upstream. Side effect may happen if use or operator to set schedule parameters when the parameters are already set before. Set them directly due to other bits are reserved. Fixes:54f6a8af37("usb: xhci-mtk: skip dropping bandwidth of unchecked endpoints") Cc: stable <stable@vger.kernel.org> Signed-off-by: Chunfeng Yun <chunfeng.yun@mediatek.com> Link: https://lore.kernel.org/r/d287899e6beb2fc1bfb8900c75a872f628ecde55.1615170625.git.chunfeng.yun@mediatek.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
048a99032d
commit
eb58724f44
1 changed files with 3 additions and 3 deletions
|
|
@ -643,7 +643,7 @@ int xhci_mtk_add_ep_quirk(struct usb_hcd *hcd, struct usb_device *udev,
|
|||
*/
|
||||
if (usb_endpoint_xfer_int(&ep->desc)
|
||||
|| usb_endpoint_xfer_isoc(&ep->desc))
|
||||
ep_ctx->reserved[0] |= cpu_to_le32(EP_BPKTS(1));
|
||||
ep_ctx->reserved[0] = cpu_to_le32(EP_BPKTS(1));
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -730,10 +730,10 @@ int xhci_mtk_check_bandwidth(struct usb_hcd *hcd, struct usb_device *udev)
|
|||
list_move_tail(&sch_ep->endpoint, &sch_bw->bw_ep_list);
|
||||
|
||||
ep_ctx = xhci_get_ep_ctx(xhci, virt_dev->in_ctx, ep_index);
|
||||
ep_ctx->reserved[0] |= cpu_to_le32(EP_BPKTS(sch_ep->pkts)
|
||||
ep_ctx->reserved[0] = cpu_to_le32(EP_BPKTS(sch_ep->pkts)
|
||||
| EP_BCSCOUNT(sch_ep->cs_count)
|
||||
| EP_BBM(sch_ep->burst_mode));
|
||||
ep_ctx->reserved[1] |= cpu_to_le32(EP_BOFFSET(sch_ep->offset)
|
||||
ep_ctx->reserved[1] = cpu_to_le32(EP_BOFFSET(sch_ep->offset)
|
||||
| EP_BREPEAT(sch_ep->repeat));
|
||||
|
||||
xhci_dbg(xhci, " PKTS:%x, CSCOUNT:%x, BM:%x, OFFSET:%x, REPEAT:%x\n",
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue