struct rockchip_pcie_phy *rk_phy = to_pcie_phy(inst);
int err = 0;
- mutex_lock(&rk_phy->pcie_mutex);
+ guard(mutex)(&rk_phy->pcie_mutex);
regmap_write(rk_phy->reg_base,
rk_phy->phy_data->pcie_laneoff,
PHY_LANE_IDLE_A_SHIFT + inst->index));
if (--rk_phy->pwr_cnt) {
- mutex_unlock(&rk_phy->pcie_mutex);
return 0;
}
HIWORD_UPDATE(!PHY_LANE_IDLE_OFF,
PHY_LANE_IDLE_MASK,
PHY_LANE_IDLE_A_SHIFT + inst->index));
- mutex_unlock(&rk_phy->pcie_mutex);
return err;
}
- mutex_unlock(&rk_phy->pcie_mutex);
return err;
}
int err = 0;
u32 status;
- mutex_lock(&rk_phy->pcie_mutex);
+ guard(mutex)(&rk_phy->pcie_mutex);
if (rk_phy->pwr_cnt++) {
- mutex_unlock(&rk_phy->pcie_mutex);
return 0;
}
if (err) {
dev_err(&phy->dev, "deassert phy_rst err %d\n", err);
rk_phy->pwr_cnt--;
- mutex_unlock(&rk_phy->pcie_mutex);
return err;
}
goto err_pll_lock;
}
- mutex_unlock(&rk_phy->pcie_mutex);
return err;
err_pll_lock:
reset_control_assert(rk_phy->phy_rst);
rk_phy->pwr_cnt--;
- mutex_unlock(&rk_phy->pcie_mutex);
return err;
}
struct rockchip_pcie_phy *rk_phy = to_pcie_phy(inst);
int err = 0;
- mutex_lock(&rk_phy->pcie_mutex);
+ guard(mutex)(&rk_phy->pcie_mutex);
if (rk_phy->init_cnt++) {
- mutex_unlock(&rk_phy->pcie_mutex);
return 0;
}
if (err) {
dev_err(&phy->dev, "assert phy_rst err %d\n", err);
rk_phy->init_cnt--;
- mutex_unlock(&rk_phy->pcie_mutex);
return err;
}
- mutex_unlock(&rk_phy->pcie_mutex);
return err;
}
struct phy_pcie_instance *inst = phy_get_drvdata(phy);
struct rockchip_pcie_phy *rk_phy = to_pcie_phy(inst);
- mutex_lock(&rk_phy->pcie_mutex);
+ guard(mutex)(&rk_phy->pcie_mutex);
if (--rk_phy->init_cnt)
goto err_init_cnt;
err_init_cnt:
- mutex_unlock(&rk_phy->pcie_mutex);
return 0;
}