mirror of
https://github.com/torvalds/linux.git
synced 2026-05-27 08:33:17 +02:00
remoteproc: st: Simplify with dev_err_probe
Use dev_err_probe() to make error code handling simpler and handle deferred probe. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com> Link: https://lore.kernel.org/r/20250111-b4-syscon-phandle-args-remoteproc-v1-3-73ed6fafa1e3@linaro.org Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
This commit is contained in:
parent
cf1d4fdb47
commit
266ce6e408
|
|
@ -290,26 +290,23 @@ static int st_rproc_parse_dt(struct platform_device *pdev)
|
|||
if (ddata->config->sw_reset) {
|
||||
ddata->sw_reset = devm_reset_control_get_exclusive(dev,
|
||||
"sw_reset");
|
||||
if (IS_ERR(ddata->sw_reset)) {
|
||||
dev_err(dev, "Failed to get S/W Reset\n");
|
||||
return PTR_ERR(ddata->sw_reset);
|
||||
}
|
||||
if (IS_ERR(ddata->sw_reset))
|
||||
return dev_err_probe(dev, PTR_ERR(ddata->sw_reset),
|
||||
"Failed to get S/W Reset\n");
|
||||
}
|
||||
|
||||
if (ddata->config->pwr_reset) {
|
||||
ddata->pwr_reset = devm_reset_control_get_exclusive(dev,
|
||||
"pwr_reset");
|
||||
if (IS_ERR(ddata->pwr_reset)) {
|
||||
dev_err(dev, "Failed to get Power Reset\n");
|
||||
return PTR_ERR(ddata->pwr_reset);
|
||||
}
|
||||
if (IS_ERR(ddata->pwr_reset))
|
||||
return dev_err_probe(dev, PTR_ERR(ddata->pwr_reset),
|
||||
"Failed to get Power Reset\n");
|
||||
}
|
||||
|
||||
ddata->clk = devm_clk_get(dev, NULL);
|
||||
if (IS_ERR(ddata->clk)) {
|
||||
dev_err(dev, "Failed to get clock\n");
|
||||
return PTR_ERR(ddata->clk);
|
||||
}
|
||||
if (IS_ERR(ddata->clk))
|
||||
return dev_err_probe(dev, PTR_ERR(ddata->clk),
|
||||
"Failed to get clock\n");
|
||||
|
||||
err = of_property_read_u32(np, "clock-frequency", &ddata->clk_rate);
|
||||
if (err) {
|
||||
|
|
@ -318,10 +315,9 @@ static int st_rproc_parse_dt(struct platform_device *pdev)
|
|||
}
|
||||
|
||||
ddata->boot_base = syscon_regmap_lookup_by_phandle(np, "st,syscfg");
|
||||
if (IS_ERR(ddata->boot_base)) {
|
||||
dev_err(dev, "Boot base not found\n");
|
||||
return PTR_ERR(ddata->boot_base);
|
||||
}
|
||||
if (IS_ERR(ddata->boot_base))
|
||||
return dev_err_probe(dev, PTR_ERR(ddata->boot_base),
|
||||
"Boot base not found\n");
|
||||
|
||||
err = of_property_read_u32_index(np, "st,syscfg", 1,
|
||||
&ddata->boot_offset);
|
||||
|
|
@ -395,32 +391,32 @@ static int st_rproc_probe(struct platform_device *pdev)
|
|||
*/
|
||||
chan = mbox_request_channel_byname(&ddata->mbox_client_vq0, "vq0_rx");
|
||||
if (IS_ERR(chan)) {
|
||||
dev_err(&rproc->dev, "failed to request mbox chan 0\n");
|
||||
ret = PTR_ERR(chan);
|
||||
ret = dev_err_probe(&rproc->dev, PTR_ERR(chan),
|
||||
"failed to request mbox chan 0\n");
|
||||
goto free_clk;
|
||||
}
|
||||
ddata->mbox_chan[ST_RPROC_VQ0 * MBOX_MAX + MBOX_RX] = chan;
|
||||
|
||||
chan = mbox_request_channel_byname(&ddata->mbox_client_vq0, "vq0_tx");
|
||||
if (IS_ERR(chan)) {
|
||||
dev_err(&rproc->dev, "failed to request mbox chan 0\n");
|
||||
ret = PTR_ERR(chan);
|
||||
ret = dev_err_probe(&rproc->dev, PTR_ERR(chan),
|
||||
"failed to request mbox chan 0\n");
|
||||
goto free_mbox;
|
||||
}
|
||||
ddata->mbox_chan[ST_RPROC_VQ0 * MBOX_MAX + MBOX_TX] = chan;
|
||||
|
||||
chan = mbox_request_channel_byname(&ddata->mbox_client_vq1, "vq1_rx");
|
||||
if (IS_ERR(chan)) {
|
||||
dev_err(&rproc->dev, "failed to request mbox chan 1\n");
|
||||
ret = PTR_ERR(chan);
|
||||
ret = dev_err_probe(&rproc->dev, PTR_ERR(chan),
|
||||
"failed to request mbox chan 1\n");
|
||||
goto free_mbox;
|
||||
}
|
||||
ddata->mbox_chan[ST_RPROC_VQ1 * MBOX_MAX + MBOX_RX] = chan;
|
||||
|
||||
chan = mbox_request_channel_byname(&ddata->mbox_client_vq1, "vq1_tx");
|
||||
if (IS_ERR(chan)) {
|
||||
dev_err(&rproc->dev, "failed to request mbox chan 1\n");
|
||||
ret = PTR_ERR(chan);
|
||||
ret = dev_err_probe(&rproc->dev, PTR_ERR(chan),
|
||||
"failed to request mbox chan 1\n");
|
||||
goto free_mbox;
|
||||
}
|
||||
ddata->mbox_chan[ST_RPROC_VQ1 * MBOX_MAX + MBOX_TX] = chan;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user