diff --git a/arch/arm64/boot/dts/broadcom/rp1.dtsi b/arch/arm64/boot/dts/broadcom/rp1.dtsi index 1f60f3f03a1004..e1c9b879d90a6c 100644 --- a/arch/arm64/boot/dts/broadcom/rp1.dtsi +++ b/arch/arm64/boot/dts/broadcom/rp1.dtsi @@ -1079,7 +1079,6 @@ snps,dis_rxdet_inp3_quirk; snps,parkmode-disable-ss-quirk; snps,parkmode-disable-hs-quirk; - snps,parkmode-disable-fsls-quirk; snps,tx-max-burst = /bits/ 8 <8>; snps,tx-thr-num-pkt = /bits/ 8 <2>; interrupts = ; @@ -1095,7 +1094,6 @@ snps,dis_rxdet_inp3_quirk; snps,parkmode-disable-ss-quirk; snps,parkmode-disable-hs-quirk; - snps,parkmode-disable-fsls-quirk; snps,tx-max-burst = /bits/ 8 <8>; snps,tx-thr-num-pkt = /bits/ 8 <2>; interrupts = ; diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c index 92bed200f283e9..830454cbdef027 100644 --- a/drivers/usb/dwc3/core.c +++ b/drivers/usb/dwc3/core.c @@ -1221,7 +1221,8 @@ static void dwc3_set_axi_pipe_limit(struct dwc3 *dwc) } cfg = dwc3_readl(dwc->regs, DWC3_GSBUSCFG1); cfg &= ~DWC3_GSBUSCFG1_PIPETRANSLIMIT(15); - cfg |= DWC3_GSBUSCFG1_PIPETRANSLIMIT(dwc->axi_pipe_limit - 1); + cfg |= DWC3_GSBUSCFG1_PIPETRANSLIMIT(dwc->axi_pipe_limit - 1) + cfg |= DWC3_GSBUSCFG1_EN1KPAGE; dwc3_writel(dwc->regs, DWC3_GSBUSCFG1, cfg); } diff --git a/drivers/usb/dwc3/core.h b/drivers/usb/dwc3/core.h index 56f46ebdd3427f..83c082a027279c 100644 --- a/drivers/usb/dwc3/core.h +++ b/drivers/usb/dwc3/core.h @@ -187,6 +187,7 @@ /* Global SoC Bus Configuration Register 1 */ #define DWC3_GSBUSCFG1_PIPETRANSLIMIT(n) (((n) & 0xf) << 8) +#define DWC3_GSBUSCFG1_EN1KPAGE (1 << 12) /* Global Debug LSP MUX Select */ #define DWC3_GDBGLSPMUX_ENDBC BIT(15) /* Host only */ diff --git a/drivers/usb/host/xhci-ring.c b/drivers/usb/host/xhci-ring.c index 46268b208e88fa..ea21fad394788f 100644 --- a/drivers/usb/host/xhci-ring.c +++ b/drivers/usb/host/xhci-ring.c @@ -505,6 +505,8 @@ void xhci_ring_ep_doorbell(struct xhci_hcd *xhci, trace_xhci_ring_ep_doorbell(slot_id, DB_VALUE(ep_index, stream_id)); + /* Incurs ~1.2us round-trip time (and wakes the link) */ + readl(db_addr); writel(DB_VALUE(ep_index, stream_id), db_addr); /* flush the write */ readl(db_addr); diff --git a/include/net/bluetooth/hci.h b/include/net/bluetooth/hci.h index 2129d071c3725f..19ea0d63f60ea0 100644 --- a/include/net/bluetooth/hci.h +++ b/include/net/bluetooth/hci.h @@ -425,8 +425,8 @@ enum { /* HCI timeouts */ #define HCI_DISCONN_TIMEOUT msecs_to_jiffies(2000) /* 2 seconds */ #define HCI_PAIRING_TIMEOUT msecs_to_jiffies(60000) /* 60 seconds */ -#define HCI_INIT_TIMEOUT msecs_to_jiffies(10000) /* 10 seconds */ -#define HCI_CMD_TIMEOUT msecs_to_jiffies(2000) /* 2 seconds */ +#define HCI_INIT_TIMEOUT msecs_to_jiffies(20000) /* 20 seconds */ +#define HCI_CMD_TIMEOUT msecs_to_jiffies(20000) /* 20 seconds */ #define HCI_NCMD_TIMEOUT msecs_to_jiffies(4000) /* 4 seconds */ #define HCI_ACL_TX_TIMEOUT msecs_to_jiffies(45000) /* 45 seconds */ #define HCI_AUTO_OFF_TIMEOUT msecs_to_jiffies(2000) /* 2 seconds */