Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 14902e5c authored by qctecmdr Service's avatar qctecmdr Service Committed by Gerrit - the friendly Code Review server
Browse files

Merge "scsi: ufs: tune host unipro attribute PA_PEERRXHSADAPTINITIAL"

parents 4589aff0 63f03c10
Loading
Loading
Loading
Loading
+13 −1
Original line number Diff line number Diff line
@@ -5446,6 +5446,7 @@ int ufshcd_change_power_mode(struct ufs_hba *hba,
			     struct ufs_pa_layer_attr *pwr_mode)
{
	int ret = 0;
	u32 peer_rx_hs_adapt_initial_cap;

	/* if already configured to the requested pwr_mode */
	if (!hba->restore_needed &&
@@ -5496,8 +5497,19 @@ int ufshcd_change_power_mode(struct ufs_hba *hba,
						pwr_mode->hs_rate);

	if (pwr_mode->gear_tx == UFS_HS_G4) {
		ret = ufshcd_dme_peer_get(hba,
				 UIC_ARG_MIB_SEL(RX_HS_ADAPT_INITIAL_CAPABILITY,
					UIC_ARG_MPHY_RX_GEN_SEL_INDEX(0)),
				    &peer_rx_hs_adapt_initial_cap);
		if (ret) {
			dev_err(hba->dev,
				"%s: RX_HS_ADAPT_INITIAL_CAP get failed %d\n",
				__func__, ret);
			peer_rx_hs_adapt_initial_cap =
						PA_PEERRXHSADAPTINITIAL_Default;
		}
		ret = ufshcd_dme_set(hba, UIC_ARG_MIB(PA_PEERRXHSADAPTINITIAL),
				     PA_PEERRXHSADAPTINITIAL_Default);
				     peer_rx_hs_adapt_initial_cap);
		/* INITIAL ADAPT */
		ufshcd_dme_set(hba, UIC_ARG_MIB(PA_TXHSADAPTTYPE),
			       PA_INITIAL_ADAPT);