Skip to content

Commit a271885

Browse files
cometzeromartinkpetersen
authored andcommitted
scsi: ufs: ufs-exynos: Add EXYNOS_UFS_OPT_SKIP_CONFIG_PHY_ATTR option
To skip exynos_ufs_config_phy_*_attr settings for exynos-ufs variant, provide EXYNOS_UFS_OPT_SKIP_CONFIG_PHY_ATTR as an opts flag. For the ExynosAuto v9 SoC's controller, M-Phy timing setting is not required and most of vendor-specific configuration will be performed in the pre_link callback function. Link: https://lore.kernel.org/r/20211018124216.153072-9-chanho61.park@samsung.com Cc: Alim Akhtar <alim.akhtar@samsung.com> Cc: Kiwoong Kim <kwmad.kim@samsung.com> Cc: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com> Signed-off-by: Chanho Park <chanho61.park@samsung.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
1 parent 533b81d commit a271885

File tree

2 files changed

+5
-2
lines changed

2 files changed

+5
-2
lines changed

drivers/scsi/ufs/ufs-exynos.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -830,8 +830,10 @@ static int exynos_ufs_pre_link(struct ufs_hba *hba)
830830

831831
/* m-phy */
832832
exynos_ufs_phy_init(ufs);
833-
exynos_ufs_config_phy_time_attr(ufs);
834-
exynos_ufs_config_phy_cap_attr(ufs);
833+
if (!(ufs->opts & EXYNOS_UFS_OPT_SKIP_CONFIG_PHY_ATTR)) {
834+
exynos_ufs_config_phy_time_attr(ufs);
835+
exynos_ufs_config_phy_cap_attr(ufs);
836+
}
835837

836838
exynos_ufs_setup_clocks(hba, true, PRE_CHANGE);
837839

drivers/scsi/ufs/ufs-exynos.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -199,6 +199,7 @@ struct exynos_ufs {
199199
#define EXYNOS_UFS_OPT_BROKEN_AUTO_CLK_CTRL BIT(2)
200200
#define EXYNOS_UFS_OPT_BROKEN_RX_SEL_IDX BIT(3)
201201
#define EXYNOS_UFS_OPT_USE_SW_HIBERN8_TIMER BIT(4)
202+
#define EXYNOS_UFS_OPT_SKIP_CONFIG_PHY_ATTR BIT(5)
202203
};
203204

204205
#define for_each_ufs_rx_lane(ufs, i) \

0 commit comments

Comments
 (0)