On 7/14/2023 2:30 PM, Johan Hovold wrote:
On Mon, Jul 03, 2023 at 12:35:48AM +0530, Krishna Kurapati PSSNV wrote:
On 6/27/2023 9:13 PM, Johan Hovold wrote:
On Wed, Jun 07, 2023 at 02:16:37PM +0200, Johan Hovold wrote:
On Sun, May 14, 2023 at 11:19:14AM +0530, Krishna Kurapati wrote:
- val = readl(qcom->qscratch_base + PWR_EVNT_IRQ_STAT_REG);
- if (!(val & PWR_EVNT_LPM_IN_L2_MASK))
- dev_err(qcom->dev, "HS-PHY not in L2\n");
+ for (i = 0; i < dwc->num_usb2_ports; i++) {
+ val = readl(qcom->qscratch_base + pwr_evnt_irq_stat_reg_offset[i]);
+ if (!(val & PWR_EVNT_LPM_IN_L2_MASK))
+ dev_err(qcom->dev, "HS-PHY%d not in L2\n", i);
+ }
When testing this on the X13s I get:
dwc3-qcom a4f8800.usb: HS-PHY2 not in L2
for the third port, whose status registers always seems to return zero
(e.g. as if we're checking the wrong register?):
dwc3-qcom a4f8800.usb: dwc3_qcom_suspend - phy 0, pwr_event_stat = 38103c
dwc3-qcom a4f8800.usb: dwc3_qcom_suspend - phy 1, pwr_event_stat = 38103c
dwc3-qcom a4f8800.usb: dwc3_qcom_suspend - phy 2, pwr_event_stat = 00
dwc3-qcom a4f8800.usb: dwc3_qcom_suspend - phy 3, pwr_event_stat = 140030
I verified that everything appears to work as expected on sa8295p-adp.
Do you have any idea of what may be causing this?
You never replied to this; do you have any idea why the status register
for the second port seemingly always read back as 0 on the X13s?
Missed this mail. This never popped up on my system. So no idea what
is different in Lenovo X13s. Might need to check with team internally.
Did you hear anything back regarding the above?
Could it even be that the register offset it not correct for sc8280xp?
Hi Johan,
No. I rechecked the register offsets and they are proper. (same as what
we are using in downstream).
Adding Jack and Wesley to help with any suggestions here.
Regards,
Krishna,