← Documents Documentation/ABI/testing/sysfs-class-remoteproc GitHub 원문 ↗

Linux 6.18.37 · ABI / testing

Remote processor class sysfs ABI

Remote processor firmware 선택, start/stop state lifecycle, identity, coredump 방식과 crash recovery 정책을 설명합니다.

Source pathDocumentation/ABI/testing/sysfs-class-remoteproc
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.

1. 요약·해설

원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.

Firmware and processor lifecycle

sysfs-class-remoteproc:1-50

Processor를 offline으로 정지한 뒤 firmware name을 바꾸고 state에 start 또는 stop을 써 lifecycle을 제어합니다.

Remote processor identity

sysfs-class-remoteproc:52-60

Userspace가 정확한 remote processor를 식별해 firmware와 state attribute를 안전하게 조작하도록 name을 제공합니다.

Coredump collection modes

sysfs-class-remoteproc:62-84

Dump를 끄거나 별도 buffer에 복사하거나 device memory에서 inline으로 직접 읽는 세 가지 방식을 제공합니다.

Crash recovery policy

sysfs-class-remoteproc:86-104

Crash 뒤 자동 복구를 enable하거나 debugging을 위해 crashed state에 그대로 남겨 둘 수 있습니다.

2. 영어 원문 전체

번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.

원문 전체 펼치기
1 What: /sys/class/remoteproc/.../firmware
2 Date: October 2016
3 Contact: Matt Redfearn <[email protected]>
4 Description: Remote processor firmware
5
6 Reports the name of the firmware currently loaded to the
7 remote processor.
8
9 To change the running firmware, ensure the remote processor is
10 stopped (using /sys/class/remoteproc/.../state) and write a new filename.
11
12 What: /sys/class/remoteproc/.../state
13 Date: October 2016
14 Contact: Matt Redfearn <[email protected]>
15 Description: Remote processor state
16
17 Reports the state of the remote processor, which will be one of:
18
19 - "offline"
20 - "suspended"
21 - "running"
22 - "crashed"
23 - "invalid"
24
25 "offline" means the remote processor is powered off.
26
27 "suspended" means that the remote processor is suspended and
28 must be woken to receive messages.
29
30 "running" is the normal state of an available remote processor
31
32 "crashed" indicates that a problem/crash has been detected on
33 the remote processor.
34
35 "invalid" is returned if the remote processor is in an
36 unknown state.
37
38 Writing this file controls the state of the remote processor.
39 The following states can be written:
40
41 - "start"
42 - "stop"
43
44 Writing "start" will attempt to start the processor running the
45 firmware indicated by, or written to,
46 /sys/class/remoteproc/.../firmware. The remote processor should
47 transition to "running" state.
48
49 Writing "stop" will attempt to halt the remote processor and
50 return it to the "offline" state.
51
52 What: /sys/class/remoteproc/.../name
53 Date: August 2019
54 KernelVersion: 5.4
55 Contact: Suman Anna <[email protected]>
56 Description: Remote processor name
57
58 Reports the name of the remote processor. This can be used by
59 userspace in exactly identifying a remote processor and ease
60 up the usage in modifying the 'firmware' or 'state' files.
61
62 What: /sys/class/remoteproc/.../coredump
63 Date: July 2020
64 Contact: Bjorn Andersson <[email protected]>, Ohad Ben-Cohen <[email protected]>
65 Description: Remote processor coredump configuration
66
67 Reports the coredump configuration of the remote processor,
68 which will be one of:
69
70 "disabled"
71 "enabled"
72 "inline"
73
74 "disabled" means no dump will be collected.
75
76 "enabled" means when the remote processor's coredump is
77 collected it will be copied to a separate buffer and that
78 buffer is exposed to userspace.
79
80 "inline" means when the remote processor's coredump is
81 collected userspace will directly read from the remote
82 processor's device memory. Extra buffer will not be used to
83 copy the dump. Also recovery process will not proceed until
84 all data is read by userspace.
85
86 What: /sys/class/remoteproc/.../recovery
87 Date: July 2020
88 Contact: Bjorn Andersson <[email protected]>, Ohad Ben-Cohen <[email protected]>
89 Description: Remote processor recovery mechanism
90
91 Reports the recovery mechanism of the remote processor,
92 which will be one of:
93
94 "enabled"
95 "disabled"
96
97 "enabled" means, the remote processor will be automatically
98 recovered whenever it crashes. Moreover, if the remote
99 processor crashes while recovery is disabled, it will
100 be automatically recovered too as soon as recovery is enabled.
101
102 "disabled" means, a remote processor will remain in a crashed
103 state if it crashes. This is useful for debugging purposes;
104 without it, debugging a crash is substantially harder.
105

3. 한국어 전문 번역

영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.

Remote processor firmware

1-10
항목한국어 전문 번역
What/sys/class/remoteproc/.../firmware
Date2016년 10월
ContactMatt Redfearn <[email protected]>
DescriptionRemote processor에 현재 load된 firmware의 이름을 보고합니다. 실행 중인 firmware를 바꾸려면 /sys/class/remoteproc/.../state를 사용해 remote processor가 stopped 상태인지 확인한 뒤 새 filename을 쓰십시오.

Remote processor state and control

12-50
항목한국어 전문 번역
What/sys/class/remoteproc/.../state
Date2016년 10월
ContactMatt Redfearn <[email protected]>
Description읽으면 remote processor state를 offline, suspended, running, crashed, invalid 중 하나로 보고합니다. offline은 powered off, suspended는 message를 받으려면 깨워야 하는 suspend 상태, running은 available processor의 normal state, crashed는 문제나 crash가 감지된 상태, invalid는 unknown state입니다. 이 file에 start 또는 stop을 써 processor state를 제어합니다. start는 firmware attribute가 가리키는 firmware로 processor 실행을 시도해 running으로 전환하고, stop은 processor를 halt해 offline으로 되돌립니다.
Remote processor states
Read state의미
offlinePower off
suspendedMessage 수신 전 wake 필요
runningAvailable processor의 normal state
crashedProblem 또는 crash 감지
invalidUnknown processor state

state read 값과 processor 의미입니다.

Remote processor firmware lifecycle
state에 stop 기록offlinefirmware에 새 filename 기록state에 start 기록running

Firmware 변경은 processor를 정지한 상태에서 수행합니다.

Remote processor name

52-60
항목한국어 전문 번역
What/sys/class/remoteproc/.../name
Date2019년 8월
KernelVersion5.4
ContactSuman Anna <[email protected]>
DescriptionRemote processor의 이름을 보고합니다. Userspace는 이 값을 사용해 remote processor를 정확히 식별하고 firmware 또는 state file을 더 쉽게 변경할 수 있습니다.

Remote processor coredump configuration

62-84
항목한국어 전문 번역
What/sys/class/remoteproc/.../coredump
Date2020년 7월
ContactBjorn Andersson <[email protected]>, Ohad Ben-Cohen <[email protected]>
DescriptionRemote processor의 coredump configuration을 disabled, enabled, inline 중 하나로 보고합니다. disabled는 dump를 수집하지 않습니다. enabled는 수집한 dump를 별도 buffer에 복사하고 그 buffer를 userspace에 노출합니다. inline은 별도 buffer에 복사하지 않고 userspace가 remote processor device memory에서 직접 읽게 합니다. 이 경우 userspace가 모든 data를 읽을 때까지 recovery process가 진행되지 않습니다.
Remoteproc coredump modes
ModeDump sourceRecovery
disabled수집하지 않음Dump 대기 없음
enabled별도 buffer에 복사Buffer를 userspace에 노출
inlineDevice memory에서 직접 읽음모든 data를 읽을 때까지 대기

Dump storage와 recovery blocking 여부의 차이입니다.

Remote processor recovery mechanism

86-104
항목한국어 전문 번역
What/sys/class/remoteproc/.../recovery
Date2020년 7월
ContactBjorn Andersson <[email protected]>, Ohad Ben-Cohen <[email protected]>
DescriptionRemote processor recovery mechanism을 enabled 또는 disabled로 보고합니다. enabled이면 crash할 때마다 processor를 자동 recover합니다. Recovery가 disabled인 동안 crash했더라도 recovery를 다시 enable하는 즉시 자동 recover합니다. disabled이면 crash한 processor가 crashed state에 남으며, 자동 복구가 crash debugging을 어렵게 하는 경우에 유용합니다.
Remoteproc recovery policy
PolicyCrash 후 동작
enabled자동 recovery
disabledcrashed state 유지
disabled 상태에서 crash 후 enableEnable 즉시 자동 recovery

Crash 시점과 recovery enable 상태에 따른 동작입니다.