|
@@ -402,10 +402,10 @@ static void qusb2_phy_set_tune2_param(struct qusb2_phy *qphy)
|
|
|
|
|
|
/*
|
|
|
* Read efuse register having TUNE2/1 parameter's high nibble.
|
|
|
- * If efuse register shows value as 0x0, or if we fail to find
|
|
|
- * a valid efuse register settings, then use default value
|
|
|
- * as 0xB for high nibble that we have already set while
|
|
|
- * configuring phy.
|
|
|
+ * If efuse register shows value as 0x0 (indicating value is not
|
|
|
+ * fused), or if we fail to find a valid efuse register setting,
|
|
|
+ * then use default value for high nibble that we have already
|
|
|
+ * set while configuring the phy.
|
|
|
*/
|
|
|
val = nvmem_cell_read(qphy->cell, NULL);
|
|
|
if (IS_ERR(val) || !val[0]) {
|
|
@@ -415,12 +415,13 @@ static void qusb2_phy_set_tune2_param(struct qusb2_phy *qphy)
|
|
|
|
|
|
/* Fused TUNE1/2 value is the higher nibble only */
|
|
|
if (cfg->update_tune1_with_efuse)
|
|
|
- qusb2_setbits(qphy->base, cfg->regs[QUSB2PHY_PORT_TUNE1],
|
|
|
- val[0] << 0x4);
|
|
|
+ qusb2_write_mask(qphy->base, cfg->regs[QUSB2PHY_PORT_TUNE1],
|
|
|
+ val[0] << HSTX_TRIM_SHIFT,
|
|
|
+ HSTX_TRIM_MASK);
|
|
|
else
|
|
|
- qusb2_setbits(qphy->base, cfg->regs[QUSB2PHY_PORT_TUNE2],
|
|
|
- val[0] << 0x4);
|
|
|
-
|
|
|
+ qusb2_write_mask(qphy->base, cfg->regs[QUSB2PHY_PORT_TUNE2],
|
|
|
+ val[0] << HSTX_TRIM_SHIFT,
|
|
|
+ HSTX_TRIM_MASK);
|
|
|
}
|
|
|
|
|
|
static int qusb2_phy_set_mode(struct phy *phy, enum phy_mode mode)
|