Lines Matching refs:sdev
84 static struct spmi_device *qcom_pmic_get_base_usid(struct spmi_device *sdev, struct qcom_spmi_dev *… in qcom_pmic_get_base_usid() argument
94 if (sdev->usid % ctx->num_usids == 0) { in qcom_pmic_get_base_usid()
95 get_device(&sdev->dev); in qcom_pmic_get_base_usid()
96 return sdev; in qcom_pmic_get_base_usid()
99 function_parent_usid = sdev->usid; in qcom_pmic_get_base_usid()
108 spmi_bus = of_get_parent(sdev->dev.of_node); in qcom_pmic_get_base_usid()
109 sdev = ERR_PTR(-ENODATA); in qcom_pmic_get_base_usid()
113 sdev = ERR_PTR(ret); in qcom_pmic_get_base_usid()
118 sdev = spmi_find_device_by_of_node(child); in qcom_pmic_get_base_usid()
119 if (!sdev) { in qcom_pmic_get_base_usid()
124 sdev = ERR_PTR(-EPROBE_DEFER); in qcom_pmic_get_base_usid()
132 return sdev; in qcom_pmic_get_base_usid()
135 static int pmic_spmi_get_base_revid(struct spmi_device *sdev, struct qcom_spmi_dev *ctx) in pmic_spmi_get_base_revid() argument
141 base = qcom_pmic_get_base_usid(sdev, ctx); in pmic_spmi_get_base_revid()
230 struct spmi_device *sdev; in qcom_pmic_get() local
239 sdev = to_spmi_device(dev->parent); in qcom_pmic_get()
240 spmi = dev_get_drvdata(&sdev->dev); in qcom_pmic_get()
253 static int pmic_spmi_probe(struct spmi_device *sdev) in pmic_spmi_probe() argument
259 regmap = devm_regmap_init_spmi_ext(sdev, &spmi_regmap_config); in pmic_spmi_probe()
263 ctx = devm_kzalloc(&sdev->dev, sizeof(*ctx), GFP_KERNEL); in pmic_spmi_probe()
267 ctx->num_usids = (uintptr_t)device_get_match_data(&sdev->dev); in pmic_spmi_probe()
270 if (sdev->usid % ctx->num_usids == 0) { in pmic_spmi_probe()
271 ret = pmic_spmi_load_revid(regmap, &sdev->dev, &ctx->pmic); in pmic_spmi_probe()
275 ret = pmic_spmi_get_base_revid(sdev, ctx); in pmic_spmi_probe()
281 spmi_device_set_drvdata(sdev, ctx); in pmic_spmi_probe()
284 return devm_of_platform_populate(&sdev->dev); in pmic_spmi_probe()
287 static void pmic_spmi_remove(struct spmi_device *sdev) in pmic_spmi_remove() argument
290 spmi_device_set_drvdata(sdev, NULL); in pmic_spmi_remove()