|
@@ -804,19 +804,27 @@ static int k3_r5f_probe(struct udevice *dev)
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
|
- ret = core->tsp.sci->ops.dev_ops.is_on(core->tsp.sci, core->tsp.dev_id,
|
|
|
- &r_state, &core->in_use);
|
|
|
- if (ret)
|
|
|
- return ret;
|
|
|
+ /*
|
|
|
+ * The PM functionality is not supported by the firmware during
|
|
|
+ * SPL execution with the separated DM firmware image. The following
|
|
|
+ * piece of code is not compiled in that case.
|
|
|
+ */
|
|
|
+ if (!IS_ENABLED(CONFIG_K3_DM_FW)) {
|
|
|
+ ret = core->tsp.sci->ops.dev_ops.is_on(core->tsp.sci,
|
|
|
+ core->tsp.dev_id,
|
|
|
+ &r_state, &core->in_use);
|
|
|
+ if (ret)
|
|
|
+ return ret;
|
|
|
|
|
|
- if (core->in_use) {
|
|
|
- dev_info(dev, "Core %d is already in use. No rproc commands work\n",
|
|
|
- core->tsp.proc_id);
|
|
|
- return 0;
|
|
|
- }
|
|
|
+ if (core->in_use) {
|
|
|
+ dev_info(dev, "Core %d is already in use. No rproc commands work\n",
|
|
|
+ core->tsp.proc_id);
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
|
|
|
- /* Make sure Local reset is asserted. Redundant? */
|
|
|
- reset_assert(&core->reset);
|
|
|
+ /* Make sure Local reset is asserted. Redundant? */
|
|
|
+ reset_assert(&core->reset);
|
|
|
+ }
|
|
|
|
|
|
ret = k3_r5f_rproc_configure(core);
|
|
|
if (ret) {
|