mirror of
https://github.com/torvalds/linux.git
synced 2024-11-25 21:51:40 +00:00
phy: qcom-qmp-usb: drop unused in-layout configuration
The QMP USB PHY driver does not use the "in-layout" configuration macro to configure registers that are typically accessed using "regs_layout" arrays (e.g. QPHY_START_CTRL) so drop this unused feature. Signed-off-by: Johan Hovold <johan+linaro@kernel.org> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Link: https://lore.kernel.org/r/20221012081241.18273-8-johan+linaro@kernel.org Signed-off-by: Vinod Koul <vkoul@kernel.org>
This commit is contained in:
parent
91496846a9
commit
9d452c3ac2
@ -69,11 +69,6 @@
|
||||
struct qmp_phy_init_tbl {
|
||||
unsigned int offset;
|
||||
unsigned int val;
|
||||
/*
|
||||
* register part of layout ?
|
||||
* if yes, then offset gives index in the reg-layout
|
||||
*/
|
||||
bool in_layout;
|
||||
/*
|
||||
* mask of lanes for which this register is written
|
||||
* for cases when second lane needs different values
|
||||
@ -88,14 +83,6 @@ struct qmp_phy_init_tbl {
|
||||
.lane_mask = 0xff, \
|
||||
}
|
||||
|
||||
#define QMP_PHY_INIT_CFG_L(o, v) \
|
||||
{ \
|
||||
.offset = o, \
|
||||
.val = v, \
|
||||
.in_layout = true, \
|
||||
.lane_mask = 0xff, \
|
||||
}
|
||||
|
||||
#define QMP_PHY_INIT_CFG_LANE(o, v, l) \
|
||||
{ \
|
||||
.offset = o, \
|
||||
@ -2069,7 +2056,6 @@ static const struct qmp_phy_cfg qcm2290_usb3phy_cfg = {
|
||||
};
|
||||
|
||||
static void qmp_usb_configure_lane(void __iomem *base,
|
||||
const unsigned int *regs,
|
||||
const struct qmp_phy_init_tbl tbl[],
|
||||
int num,
|
||||
u8 lane_mask)
|
||||
@ -2084,19 +2070,15 @@ static void qmp_usb_configure_lane(void __iomem *base,
|
||||
if (!(t->lane_mask & lane_mask))
|
||||
continue;
|
||||
|
||||
if (t->in_layout)
|
||||
writel(t->val, base + regs[t->offset]);
|
||||
else
|
||||
writel(t->val, base + t->offset);
|
||||
writel(t->val, base + t->offset);
|
||||
}
|
||||
}
|
||||
|
||||
static void qmp_usb_configure(void __iomem *base,
|
||||
const unsigned int *regs,
|
||||
const struct qmp_phy_init_tbl tbl[],
|
||||
int num)
|
||||
{
|
||||
qmp_usb_configure_lane(base, regs, tbl, num, 0xff);
|
||||
qmp_usb_configure_lane(base, tbl, num, 0xff);
|
||||
}
|
||||
|
||||
static int qmp_usb_serdes_init(struct qmp_phy *qphy)
|
||||
@ -2106,7 +2088,7 @@ static int qmp_usb_serdes_init(struct qmp_phy *qphy)
|
||||
const struct qmp_phy_init_tbl *serdes_tbl = cfg->serdes_tbl;
|
||||
int serdes_tbl_num = cfg->serdes_tbl_num;
|
||||
|
||||
qmp_usb_configure(serdes, cfg->regs, serdes_tbl, serdes_tbl_num);
|
||||
qmp_usb_configure(serdes, serdes_tbl, serdes_tbl_num);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@ -2214,21 +2196,17 @@ static int qmp_usb_power_on(struct phy *phy)
|
||||
}
|
||||
|
||||
/* Tx, Rx, and PCS configurations */
|
||||
qmp_usb_configure_lane(tx, cfg->regs, cfg->tx_tbl, cfg->tx_tbl_num, 1);
|
||||
qmp_usb_configure_lane(tx, cfg->tx_tbl, cfg->tx_tbl_num, 1);
|
||||
|
||||
if (cfg->lanes >= 2) {
|
||||
qmp_usb_configure_lane(qphy->tx2, cfg->regs,
|
||||
cfg->tx_tbl, cfg->tx_tbl_num, 2);
|
||||
}
|
||||
if (cfg->lanes >= 2)
|
||||
qmp_usb_configure_lane(qphy->tx2, cfg->tx_tbl, cfg->tx_tbl_num, 2);
|
||||
|
||||
qmp_usb_configure_lane(rx, cfg->regs, cfg->rx_tbl, cfg->rx_tbl_num, 1);
|
||||
qmp_usb_configure_lane(rx, cfg->rx_tbl, cfg->rx_tbl_num, 1);
|
||||
|
||||
if (cfg->lanes >= 2) {
|
||||
qmp_usb_configure_lane(qphy->rx2, cfg->regs,
|
||||
cfg->rx_tbl, cfg->rx_tbl_num, 2);
|
||||
}
|
||||
if (cfg->lanes >= 2)
|
||||
qmp_usb_configure_lane(qphy->rx2, cfg->rx_tbl, cfg->rx_tbl_num, 2);
|
||||
|
||||
qmp_usb_configure(pcs, cfg->regs, cfg->pcs_tbl, cfg->pcs_tbl_num);
|
||||
qmp_usb_configure(pcs, cfg->pcs_tbl, cfg->pcs_tbl_num);
|
||||
|
||||
if (cfg->has_pwrdn_delay)
|
||||
usleep_range(cfg->pwrdn_delay_min, cfg->pwrdn_delay_max);
|
||||
|
Loading…
Reference in New Issue
Block a user