162306a36Sopenharmony_ciWhat: /sys/class/remoteproc/.../firmware 262306a36Sopenharmony_ciDate: October 2016 362306a36Sopenharmony_ciContact: Matt Redfearn <matt.redfearn@mips.com> 462306a36Sopenharmony_ciDescription: Remote processor firmware 562306a36Sopenharmony_ci 662306a36Sopenharmony_ci Reports the name of the firmware currently loaded to the 762306a36Sopenharmony_ci remote processor. 862306a36Sopenharmony_ci 962306a36Sopenharmony_ci To change the running firmware, ensure the remote processor is 1062306a36Sopenharmony_ci stopped (using /sys/class/remoteproc/.../state) and write a new filename. 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_ciWhat: /sys/class/remoteproc/.../state 1362306a36Sopenharmony_ciDate: October 2016 1462306a36Sopenharmony_ciContact: Matt Redfearn <matt.redfearn@mips.com> 1562306a36Sopenharmony_ciDescription: Remote processor state 1662306a36Sopenharmony_ci 1762306a36Sopenharmony_ci Reports the state of the remote processor, which will be one of: 1862306a36Sopenharmony_ci 1962306a36Sopenharmony_ci - "offline" 2062306a36Sopenharmony_ci - "suspended" 2162306a36Sopenharmony_ci - "running" 2262306a36Sopenharmony_ci - "crashed" 2362306a36Sopenharmony_ci - "invalid" 2462306a36Sopenharmony_ci 2562306a36Sopenharmony_ci "offline" means the remote processor is powered off. 2662306a36Sopenharmony_ci 2762306a36Sopenharmony_ci "suspended" means that the remote processor is suspended and 2862306a36Sopenharmony_ci must be woken to receive messages. 2962306a36Sopenharmony_ci 3062306a36Sopenharmony_ci "running" is the normal state of an available remote processor 3162306a36Sopenharmony_ci 3262306a36Sopenharmony_ci "crashed" indicates that a problem/crash has been detected on 3362306a36Sopenharmony_ci the remote processor. 3462306a36Sopenharmony_ci 3562306a36Sopenharmony_ci "invalid" is returned if the remote processor is in an 3662306a36Sopenharmony_ci unknown state. 3762306a36Sopenharmony_ci 3862306a36Sopenharmony_ci Writing this file controls the state of the remote processor. 3962306a36Sopenharmony_ci The following states can be written: 4062306a36Sopenharmony_ci 4162306a36Sopenharmony_ci - "start" 4262306a36Sopenharmony_ci - "stop" 4362306a36Sopenharmony_ci 4462306a36Sopenharmony_ci Writing "start" will attempt to start the processor running the 4562306a36Sopenharmony_ci firmware indicated by, or written to, 4662306a36Sopenharmony_ci /sys/class/remoteproc/.../firmware. The remote processor should 4762306a36Sopenharmony_ci transition to "running" state. 4862306a36Sopenharmony_ci 4962306a36Sopenharmony_ci Writing "stop" will attempt to halt the remote processor and 5062306a36Sopenharmony_ci return it to the "offline" state. 5162306a36Sopenharmony_ci 5262306a36Sopenharmony_ciWhat: /sys/class/remoteproc/.../name 5362306a36Sopenharmony_ciDate: August 2019 5462306a36Sopenharmony_ciKernelVersion: 5.4 5562306a36Sopenharmony_ciContact: Suman Anna <s-anna@ti.com> 5662306a36Sopenharmony_ciDescription: Remote processor name 5762306a36Sopenharmony_ci 5862306a36Sopenharmony_ci Reports the name of the remote processor. This can be used by 5962306a36Sopenharmony_ci userspace in exactly identifying a remote processor and ease 6062306a36Sopenharmony_ci up the usage in modifying the 'firmware' or 'state' files. 6162306a36Sopenharmony_ci 6262306a36Sopenharmony_ciWhat: /sys/class/remoteproc/.../coredump 6362306a36Sopenharmony_ciDate: July 2020 6462306a36Sopenharmony_ciContact: Bjorn Andersson <bjorn.andersson@linaro.org>, Ohad Ben-Cohen <ohad@wizery.com> 6562306a36Sopenharmony_ciDescription: Remote processor coredump configuration 6662306a36Sopenharmony_ci 6762306a36Sopenharmony_ci Reports the coredump configuration of the remote processor, 6862306a36Sopenharmony_ci which will be one of: 6962306a36Sopenharmony_ci 7062306a36Sopenharmony_ci "disabled" 7162306a36Sopenharmony_ci "enabled" 7262306a36Sopenharmony_ci "inline" 7362306a36Sopenharmony_ci 7462306a36Sopenharmony_ci "disabled" means no dump will be collected. 7562306a36Sopenharmony_ci 7662306a36Sopenharmony_ci "enabled" means when the remote processor's coredump is 7762306a36Sopenharmony_ci collected it will be copied to a separate buffer and that 7862306a36Sopenharmony_ci buffer is exposed to userspace. 7962306a36Sopenharmony_ci 8062306a36Sopenharmony_ci "inline" means when the remote processor's coredump is 8162306a36Sopenharmony_ci collected userspace will directly read from the remote 8262306a36Sopenharmony_ci processor's device memory. Extra buffer will not be used to 8362306a36Sopenharmony_ci copy the dump. Also recovery process will not proceed until 8462306a36Sopenharmony_ci all data is read by userspace. 8562306a36Sopenharmony_ci 8662306a36Sopenharmony_ciWhat: /sys/class/remoteproc/.../recovery 8762306a36Sopenharmony_ciDate: July 2020 8862306a36Sopenharmony_ciContact: Bjorn Andersson <bjorn.andersson@linaro.org>, Ohad Ben-Cohen <ohad@wizery.com> 8962306a36Sopenharmony_ciDescription: Remote processor recovery mechanism 9062306a36Sopenharmony_ci 9162306a36Sopenharmony_ci Reports the recovery mechanism of the remote processor, 9262306a36Sopenharmony_ci which will be one of: 9362306a36Sopenharmony_ci 9462306a36Sopenharmony_ci "enabled" 9562306a36Sopenharmony_ci "disabled" 9662306a36Sopenharmony_ci 9762306a36Sopenharmony_ci "enabled" means, the remote processor will be automatically 9862306a36Sopenharmony_ci recovered whenever it crashes. Moreover, if the remote 9962306a36Sopenharmony_ci processor crashes while recovery is disabled, it will 10062306a36Sopenharmony_ci be automatically recovered too as soon as recovery is enabled. 10162306a36Sopenharmony_ci 10262306a36Sopenharmony_ci "disabled" means, a remote processor will remain in a crashed 10362306a36Sopenharmony_ci state if it crashes. This is useful for debugging purposes; 10462306a36Sopenharmony_ci without it, debugging a crash is substantially harder. 105