0001 What: /sys/class/remoteproc/.../firmware
0002 Date: October 2016
0003 Contact: Matt Redfearn <matt.redfearn@mips.com>
0004 Description: Remote processor firmware
0005
0006 Reports the name of the firmware currently loaded to the
0007 remote processor.
0008
0009 To change the running firmware, ensure the remote processor is
0010 stopped (using /sys/class/remoteproc/.../state) and write a new filename.
0011
0012 What: /sys/class/remoteproc/.../state
0013 Date: October 2016
0014 Contact: Matt Redfearn <matt.redfearn@mips.com>
0015 Description: Remote processor state
0016
0017 Reports the state of the remote processor, which will be one of:
0018
0019 - "offline"
0020 - "suspended"
0021 - "running"
0022 - "crashed"
0023 - "invalid"
0024
0025 "offline" means the remote processor is powered off.
0026
0027 "suspended" means that the remote processor is suspended and
0028 must be woken to receive messages.
0029
0030 "running" is the normal state of an available remote processor
0031
0032 "crashed" indicates that a problem/crash has been detected on
0033 the remote processor.
0034
0035 "invalid" is returned if the remote processor is in an
0036 unknown state.
0037
0038 Writing this file controls the state of the remote processor.
0039 The following states can be written:
0040
0041 - "start"
0042 - "stop"
0043
0044 Writing "start" will attempt to start the processor running the
0045 firmware indicated by, or written to,
0046 /sys/class/remoteproc/.../firmware. The remote processor should
0047 transition to "running" state.
0048
0049 Writing "stop" will attempt to halt the remote processor and
0050 return it to the "offline" state.
0051
0052 What: /sys/class/remoteproc/.../name
0053 Date: August 2019
0054 KernelVersion: 5.4
0055 Contact: Suman Anna <s-anna@ti.com>
0056 Description: Remote processor name
0057
0058 Reports the name of the remote processor. This can be used by
0059 userspace in exactly identifying a remote processor and ease
0060 up the usage in modifying the 'firmware' or 'state' files.
0061
0062 What: /sys/class/remoteproc/.../coredump
0063 Date: July 2020
0064 Contact: Bjorn Andersson <bjorn.andersson@linaro.org>, Ohad Ben-Cohen <ohad@wizery.com>
0065 Description: Remote processor coredump configuration
0066
0067 Reports the coredump configuration of the remote processor,
0068 which will be one of:
0069
0070 "disabled"
0071 "enabled"
0072 "inline"
0073
0074 "disabled" means no dump will be collected.
0075
0076 "enabled" means when the remote processor's coredump is
0077 collected it will be copied to a separate buffer and that
0078 buffer is exposed to userspace.
0079
0080 "inline" means when the remote processor's coredump is
0081 collected userspace will directly read from the remote
0082 processor's device memory. Extra buffer will not be used to
0083 copy the dump. Also recovery process will not proceed until
0084 all data is read by usersapce.
0085
0086 What: /sys/class/remoteproc/.../recovery
0087 Date: July 2020
0088 Contact: Bjorn Andersson <bjorn.andersson@linaro.org>, Ohad Ben-Cohen <ohad@wizery.com>
0089 Description: Remote processor recovery mechanism
0090
0091 Reports the recovery mechanism of the remote processor,
0092 which will be one of:
0093
0094 "enabled"
0095 "disabled"
0096
0097 "enabled" means, the remote processor will be automatically
0098 recovered whenever it crashes. Moreover, if the remote
0099 processor crashes while recovery is disabled, it will
0100 be automatically recovered too as soon as recovery is enabled.
0101
0102 "disabled" means, a remote processor will remain in a crashed
0103 state if it crashes. This is useful for debugging purposes;
0104 without it, debugging a crash is substantially harder.