Lines Matching +full:ufs +full:- +full:phy
1 /* SPDX-License-Identifier: GPL-2.0-only */
3 * UFS Host Controller driver for Exynos specific extensions
5 * Copyright (C) 2014-2015 Samsung Electronics Co., Ltd.
41 * results in non-functioning UFS.
116 #define UNIPRO_PCLK_PERIOD(ufs) (NSEC_PER_SEC / ufs->pclk_rate) argument
120 /* vendor specific pre-defined parameters */
185 int (*drv_init)(struct device *dev, struct exynos_ufs *ufs);
186 int (*pre_link)(struct exynos_ufs *ufs);
187 int (*post_link)(struct exynos_ufs *ufs);
188 int (*pre_pwr_change)(struct exynos_ufs *ufs,
190 int (*post_pwr_change)(struct exynos_ufs *ufs,
192 int (*pre_hce_enable)(struct exynos_ufs *ufs);
193 int (*post_hce_enable)(struct exynos_ufs *ufs);
213 struct phy *phy; member
246 #define for_each_ufs_rx_lane(ufs, i) \ argument
247 for (i = (ufs)->rx_sel_idx; \
248 i < (ufs)->rx_sel_idx + (ufs)->avail_ln_rx; i++)
249 #define for_each_ufs_tx_lane(ufs, i) \ argument
250 for (i = 0; i < (ufs)->avail_ln_tx; i++)
253 static inline void name##_writel(struct exynos_ufs *ufs, u32 val, u32 reg)\
255 writel(val, ufs->reg_##name + reg); \
258 static inline u32 name##_readl(struct exynos_ufs *ufs, u32 reg) \
260 return readl(ufs->reg_##name + reg); \