mirror of
https://github.com/torvalds/linux.git
synced 2026-05-28 17:13:52 +02:00
phy: exynos5-usbdrd: fix USB 2.0 HS PHY tuning values for Exynos7870
The existing PHYPARAM0 tuning values for Exynos7870 are incorrect,
causing the USB 2.0 PHY to fail high-speed negotiation and fall back
to full-speed (12Mbps) operation.
Fix TXVREFTUNE (transmitter voltage reference) from 14 to 3,
TXRESTUNE (transmitter impedance) from 3 to 2, and SQRXTUNE
(squelch threshold) from 6 to 5. Also explicitly set
TXPREEMPPULSETUNE to 0, which was previously missing from the
tuning table despite being included in the register mask.
All values are derived from the vendor kernel for the Samsung
Galaxy A6 (SM-A600FN), as no public hardware documentation is
available for the Exynos7870 USB DRD PHY. With these corrections,
the PHY successfully negotiates high-speed (480Mbps) operation.
Fixes: 588d5d20ca ("phy: exynos5-usbdrd: add exynos7870 USBDRD support")
Cc: stable@vger.kernel.org
Tested-by: Kaustabh Chakraborty <kauschluss@disroot.org>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Signed-off-by: Łukasz Lebiedziński <kernel@lvkasz.us>
Link: https://patch.msgid.link/20260406135627.234835-1-kernel@lvkasz.us
Signed-off-by: Vinod Koul <vkoul@kernel.org>
This commit is contained in:
parent
da110228b5
commit
5a759b120e
|
|
@ -1958,13 +1958,14 @@ const struct exynos5_usbdrd_phy_tuning exynos7870_tunes_utmi_postinit[] = {
|
|||
PHYPARAM0_TXPREEMPAMPTUNE | PHYPARAM0_TXHSXVTUNE |
|
||||
PHYPARAM0_TXFSLSTUNE | PHYPARAM0_SQRXTUNE |
|
||||
PHYPARAM0_OTGTUNE | PHYPARAM0_COMPDISTUNE),
|
||||
(FIELD_PREP_CONST(PHYPARAM0_TXVREFTUNE, 14) |
|
||||
(FIELD_PREP_CONST(PHYPARAM0_TXVREFTUNE, 3) |
|
||||
FIELD_PREP_CONST(PHYPARAM0_TXRISETUNE, 1) |
|
||||
FIELD_PREP_CONST(PHYPARAM0_TXRESTUNE, 3) |
|
||||
FIELD_PREP_CONST(PHYPARAM0_TXRESTUNE, 2) |
|
||||
FIELD_PREP_CONST(PHYPARAM0_TXPREEMPPULSETUNE, 0) |
|
||||
FIELD_PREP_CONST(PHYPARAM0_TXPREEMPAMPTUNE, 0) |
|
||||
FIELD_PREP_CONST(PHYPARAM0_TXHSXVTUNE, 0) |
|
||||
FIELD_PREP_CONST(PHYPARAM0_TXFSLSTUNE, 3) |
|
||||
FIELD_PREP_CONST(PHYPARAM0_SQRXTUNE, 6) |
|
||||
FIELD_PREP_CONST(PHYPARAM0_SQRXTUNE, 5) |
|
||||
FIELD_PREP_CONST(PHYPARAM0_OTGTUNE, 2) |
|
||||
FIELD_PREP_CONST(PHYPARAM0_COMPDISTUNE, 3))),
|
||||
PHY_TUNING_ENTRY_LAST
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user