mirror of
git://nv-tegra.nvidia.com/linux-nv-oot.git
synced 2025-12-22 17:25:35 +03:00
ufs: Remove UFSHCD_QUIRK_ENABLE_STREAM_ID
Remove the legacy downstream quirk 'UFSHCD_QUIRK_ENABLE_STREAM_ID' and
always use the supported upstream quirk from now on. The legacy quirk
will never be upstreamed and so to support 3rd Party Linux distributions
that will not have this quirk, we should only support the official
upstream quirk.
Bug 4346767
Bug 4450187
Change-Id: Iabec6beb63b99ada7e8893cfa2acc0ed5e7ee92f
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/3045039
(cherry picked from commit ce916e3f13)
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/3055492
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
This commit is contained in:
committed by
mobile promotions
parent
56c05f8e3f
commit
ac6a53078b
@@ -1393,7 +1393,7 @@ static int ufs_tegra_link_startup_notify(struct ufs_hba *hba,
|
|||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void ufs_tegra_config_soc_data(struct ufs_tegra_host *ufs_tegra)
|
static int ufs_tegra_config_soc_data(struct ufs_tegra_host *ufs_tegra)
|
||||||
{
|
{
|
||||||
struct device *dev = ufs_tegra->hba->dev;
|
struct device *dev = ufs_tegra->hba->dev;
|
||||||
struct device_node *np = dev->of_node;
|
struct device_node *np = dev->of_node;
|
||||||
@@ -1430,13 +1430,16 @@ static void ufs_tegra_config_soc_data(struct ufs_tegra_host *ufs_tegra)
|
|||||||
ufs_tegra->enable_scramble =
|
ufs_tegra->enable_scramble =
|
||||||
of_property_read_bool(np, "nvidia,enable-scramble");
|
of_property_read_bool(np, "nvidia,enable-scramble");
|
||||||
|
|
||||||
|
if (ufs_tegra->soc->chip_id >= TEGRA234) {
|
||||||
#if defined(NV_UFSHCD_QUIRKS_ENUM_HAS_UFSHCD_QUIRK_BROKEN_64BIT_ADDRESS) /* Linux 6.0 */
|
#if defined(NV_UFSHCD_QUIRKS_ENUM_HAS_UFSHCD_QUIRK_BROKEN_64BIT_ADDRESS) /* Linux 6.0 */
|
||||||
if (ufs_tegra->soc->chip_id >= TEGRA234)
|
|
||||||
ufs_tegra->hba->quirks |= UFSHCD_QUIRK_BROKEN_64BIT_ADDRESS;
|
ufs_tegra->hba->quirks |= UFSHCD_QUIRK_BROKEN_64BIT_ADDRESS;
|
||||||
#else
|
#else
|
||||||
if (ufs_tegra->soc->chip_id >= TEGRA234)
|
dev_err(dev, "UFSHCD_QUIRK_BROKEN_64BIT_ADDRESS not supported!\n");
|
||||||
ufs_tegra->hba->quirks |= UFSHCD_QUIRK_ENABLE_STREAM_ID;
|
return -ENOTSUPP;
|
||||||
#endif
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void ufs_tegra_eq_timeout(struct ufs_tegra_host *ufs_tegra)
|
static void ufs_tegra_eq_timeout(struct ufs_tegra_host *ufs_tegra)
|
||||||
@@ -1688,7 +1691,10 @@ static int ufs_tegra_init(struct ufs_hba *hba)
|
|||||||
ufs_tegra->hba = hba;
|
ufs_tegra->hba = hba;
|
||||||
hba->priv = (void *)ufs_tegra;
|
hba->priv = (void *)ufs_tegra;
|
||||||
|
|
||||||
ufs_tegra_config_soc_data(ufs_tegra);
|
err = ufs_tegra_config_soc_data(ufs_tegra);
|
||||||
|
if (err)
|
||||||
|
return err;
|
||||||
|
|
||||||
hba->spm_lvl = UFS_PM_LVL_3;
|
hba->spm_lvl = UFS_PM_LVL_3;
|
||||||
hba->rpm_lvl = UFS_PM_LVL_1;
|
hba->rpm_lvl = UFS_PM_LVL_1;
|
||||||
hba->caps |= UFSHCD_CAP_INTR_AGGR;
|
hba->caps |= UFSHCD_CAP_INTR_AGGR;
|
||||||
|
|||||||
@@ -588,11 +588,6 @@ enum ufshcd_quirks {
|
|||||||
* This quirk allows only sg entries aligned with page size.
|
* This quirk allows only sg entries aligned with page size.
|
||||||
*/
|
*/
|
||||||
UFSHCD_QUIRK_ALIGN_SG_WITH_PAGE_SIZE = 1 << 14,
|
UFSHCD_QUIRK_ALIGN_SG_WITH_PAGE_SIZE = 1 << 14,
|
||||||
|
|
||||||
/*
|
|
||||||
* Enable this quirk to support Stream-ID programming
|
|
||||||
*/
|
|
||||||
UFSHCD_QUIRK_ENABLE_STREAM_ID = 1 << 15,
|
|
||||||
};
|
};
|
||||||
|
|
||||||
enum ufshcd_caps {
|
enum ufshcd_caps {
|
||||||
|
|||||||
@@ -602,11 +602,6 @@ enum ufshcd_quirks {
|
|||||||
* support physical host configuration.
|
* support physical host configuration.
|
||||||
*/
|
*/
|
||||||
UFSHCD_QUIRK_SKIP_PH_CONFIGURATION = 1 << 16,
|
UFSHCD_QUIRK_SKIP_PH_CONFIGURATION = 1 << 16,
|
||||||
|
|
||||||
/*
|
|
||||||
* Enable this quirk to support Stream-ID programming
|
|
||||||
*/
|
|
||||||
UFSHCD_QUIRK_ENABLE_STREAM_ID = 1 << 17,
|
|
||||||
};
|
};
|
||||||
|
|
||||||
enum ufshcd_caps {
|
enum ufshcd_caps {
|
||||||
|
|||||||
Reference in New Issue
Block a user