요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
Kernel driver amc6821
=====================
Supported chips:
Texas Instruments AMC6821
Prefix: 'amc6821'
Addresses scanned: 0x18, 0x19, 0x1a, 0x2c, 0x2d, 0x2e, 0x4c, 0x4d, 0x4e
Datasheet: http://focus.ti.com/docs/prod/folders/print/amc6821.html
Authors:
Tomaz Mertelj <[email protected]>
Description
-----------
This driver implements support for the Texas Instruments amc6821 chip.
The chip has one on-chip and one remote temperature sensor and one pwm fan
regulator.
The pwm can be controlled either from software or automatically.
The driver provides the following sensor accesses in sysfs:
======================= == ===============================================
temp1_input ro on-chip temperature
temp1_min rw "
temp1_max rw "
temp1_crit rw "
temp1_min_alarm ro "
temp1_max_alarm ro "
temp1_crit_alarm ro "
temp2_input ro remote temperature
temp2_min rw "
temp2_max rw "
temp2_crit rw "
temp2_min_alarm ro "
temp2_max_alarm ro "
temp2_crit_alarm ro "
temp2_fault ro "
fan1_input ro tachometer speed
fan1_min rw "
fan1_max rw "
fan1_fault ro "
fan1_pulses rw Pulses per revolution can be either 2 or 4.
fan1_target rw Target fan speed, to be used with pwm1_enable
mode 4.
pwm1 rw pwm1
pwm1_enable rw regulator mode, 1=open loop, 2=fan controlled
by remote temperature, 3=fan controlled by
combination of the on-chip temperature and
remote-sensor temperature,
4=fan controlled by target rpm set with
fan1_target attribute.
pwm1_mode rw Fan duty control mode (0=DC, 1=PWM)
pwm1_auto_channels_temp ro 1 if pwm_enable==2, 3 if pwm_enable==3
pwm1_auto_point1_pwm ro Hardwired to 0, shared for both
temperature channels.
pwm1_auto_point2_pwm rw This value is shared for both temperature
channels.
pwm1_auto_point3_pwm rw Hardwired to 255, shared for both
temperature channels.
temp1_auto_point1_temp ro Hardwired to temp2_auto_point1_temp
which is rw. Below this temperature fan stops.
temp1_auto_point2_temp rw The low-temperature limit of the proportional
range. Below this temperature
pwm1 = pwm1_auto_point2_pwm. It can go from
0 degree C to 124 degree C in steps of
4 degree C. Read it out after writing to get
the actual value.
temp1_auto_point3_temp rw Above this temperature fan runs at maximum
speed. It can go from temp1_auto_point2_temp.
It can only have certain discrete values
which depend on temp1_auto_point2_temp and
pwm1_auto_point2_pwm. Read it out after
writing to get the actual value.
temp2_auto_point1_temp rw Must be between 0 degree C and 63 degree C and
it defines the passive cooling temperature.
Below this temperature the fan stops in
the closed loop mode.
temp2_auto_point2_temp rw The low-temperature limit of the proportional
range. Below this temperature
pwm1 = pwm1_auto_point2_pwm. It can go from
0 degree C to 124 degree C in steps
of 4 degree C.
temp2_auto_point3_temp rw Above this temperature fan runs at maximum
speed. It can only have certain discrete
values which depend on temp2_auto_point2_temp
and pwm1_auto_point2_pwm. Read it out after
writing to get actual value.
======================= == ===============================================
Module parameters
-----------------
If your board has a BIOS that initializes the amc6821 correctly, you should
load the module with: init=0.
If your board BIOS doesn't initialize the chip, or you want
different settings, you can set the following parameters:
- init=1,
- pwminv: 0 default pwm output, 1 inverts pwm output.
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
AMC6821 지원과 센서 구성
1-26이 드라이버는 Texas Instruments `AMC6821`을 지원합니다. prefix는 `amc6821`이고 주소 `0x18`, `0x19`, `0x1a`, `0x2c`, `0x2d`, `0x2e`, `0x4c`, `0x4d`, `0x4e`를 검색합니다. 데이터시트 URL은 TI 사이트에 있고 저자는 Tomaz Mertelj입니다.
칩에는 on-chip temperature sensor 하나, remote temperature sensor 하나, PWM fan regulator 하나가 있습니다. PWM은 software에서 직접 제어하거나 temperature에 따라 자동 제어할 수 있습니다.
두 온도 채널과 하나의 fan controller로 구성됩니다.
Local·remote 온도나 target RPM을 기준으로 fan을 제어합니다.
Kernel driver amc6821
=====================
Supported chips:
Texas Instruments AMC6821
Prefix: 'amc6821'
Addresses scanned: 0x18, 0x19, 0x1a, 0x2c, 0x2d, 0x2e, 0x4c, 0x4d, 0x4e
Datasheet: http://focus.ti.com/docs/prod/folders/print/amc6821.html
Authors:
Tomaz Mertelj <[email protected]>
Description
-----------
This driver implements support for the Texas Instruments amc6821 chip.
The chip has one on-chip and one remote temperature sensor and one pwm fan
regulator.
The pwm can be controlled either from software or automatically.
The driver provides the following sensor accesses in sysfs:
Temperature, fan, PWM sysfs
27-68`temp1_input`은 read-only on-chip temperature입니다. `temp1_min`, `temp1_max`, `temp1_crit`은 read/write 한계이고, `temp1_min_alarm`, `temp1_max_alarm`, `temp1_crit_alarm`은 read-only alarm입니다.
`temp2_input`은 read-only remote temperature입니다. `temp2_min`, `temp2_max`, `temp2_crit`은 read/write 한계이며, `temp2_min_alarm`, `temp2_max_alarm`, `temp2_crit_alarm`, `temp2_fault`는 read-only 상태입니다.
`fan1_input`은 read-only tachometer speed, `fan1_min`과 `fan1_max`는 read/write 한계, `fan1_fault`는 read-only fault입니다. `fan1_pulses`는 회전당 pulse 수를 2 또는 4로 설정하는 read/write attribute입니다. `fan1_target`은 `pwm1_enable` mode 4에서 사용할 target fan speed입니다.
`pwm1`은 read/write PWM 값입니다. `pwm1_enable`은 regulator mode를 선택합니다. 1은 open loop, 2는 remote temperature 제어, 3은 on-chip temperature와 remote-sensor temperature의 결합 제어, 4는 `fan1_target`에 설정한 target RPM 제어입니다.
`pwm1_mode`는 fan duty control mode로 0은 DC, 1은 PWM입니다. `pwm1_auto_channels_temp`는 `pwm_enable==2`이면 1, `pwm_enable==3`이면 3을 read-only로 표시합니다. `pwm1_auto_point1_pwm`은 두 temperature channel이 공유하는 고정값 0, `pwm1_auto_point2_pwm`은 두 채널이 공유하는 read/write 값, `pwm1_auto_point3_pwm`은 공유하는 고정값 255입니다.
권한과 mode 의미를 함께 정리합니다.
선택한 제어 모드에 맞는 입력을 fan regulator에 연결합니다.
======================= == ===============================================
temp1_input ro on-chip temperature
temp1_min rw "
temp1_max rw "
temp1_crit rw "
temp1_min_alarm ro "
temp1_max_alarm ro "
temp1_crit_alarm ro "
temp2_input ro remote temperature
temp2_min rw "
temp2_max rw "
temp2_crit rw "
temp2_min_alarm ro "
temp2_max_alarm ro "
temp2_crit_alarm ro "
temp2_fault ro "
fan1_input ro tachometer speed
fan1_min rw "
fan1_max rw "
fan1_fault ro "
fan1_pulses rw Pulses per revolution can be either 2 or 4.
fan1_target rw Target fan speed, to be used with pwm1_enable
mode 4.
pwm1 rw pwm1
pwm1_enable rw regulator mode, 1=open loop, 2=fan controlled
by remote temperature, 3=fan controlled by
combination of the on-chip temperature and
remote-sensor temperature,
4=fan controlled by target rpm set with
fan1_target attribute.
pwm1_mode rw Fan duty control mode (0=DC, 1=PWM)
pwm1_auto_channels_temp ro 1 if pwm_enable==2, 3 if pwm_enable==3
pwm1_auto_point1_pwm ro Hardwired to 0, shared for both
temperature channels.
pwm1_auto_point2_pwm rw This value is shared for both temperature
channels.
pwm1_auto_point3_pwm rw Hardwired to 255, shared for both
temperature channels.
두 온도 채널의 자동 제어점
69-100`temp1_auto_point1_temp`는 read-only이며 read/write인 `temp2_auto_point1_temp`와 동일하게 고정됩니다. 이 온도 아래에서는 fan이 멈춥니다.
`temp1_auto_point2_temp`는 proportional range의 low-temperature limit입니다. 이 온도 아래에서는 `pwm1 = pwm1_auto_point2_pwm`입니다. 0 degree C부터 124 degree C까지 4 degree C 간격으로 설정할 수 있으므로, 기록한 뒤 실제 적용값을 다시 읽어야 합니다.
`temp1_auto_point3_temp`보다 높으면 fan이 maximum speed로 동작합니다. 이 값은 `temp1_auto_point2_temp`부터 시작할 수 있고, `temp1_auto_point2_temp`와 `pwm1_auto_point2_pwm`에 따라 정해지는 특정 discrete value만 허용합니다. 기록 후 실제 값을 다시 읽어야 합니다.
`temp2_auto_point1_temp`는 0 degree C와 63 degree C 사이여야 하며 passive cooling temperature를 정의합니다. Closed loop mode에서는 이 온도 아래에서 fan이 멈춥니다.
`temp2_auto_point2_temp`도 proportional range의 low-temperature limit입니다. 이 온도 아래에서는 `pwm1 = pwm1_auto_point2_pwm`이며 0 degree C부터 124 degree C까지 4 degree C 간격으로 설정합니다.
`temp2_auto_point3_temp`보다 높으면 fan이 maximum speed로 동작합니다. 허용값은 `temp2_auto_point2_temp`와 `pwm1_auto_point2_pwm`에 따라 정해지는 discrete value뿐이므로 기록한 뒤 actual value를 다시 읽어야 합니다.
Local과 remote channel의 제약과 결과입니다.
Point 1의 정지 구간, point 2의 저속 구간, point 3의 최대 속도를 연결합니다.
temp1_auto_point1_temp ro Hardwired to temp2_auto_point1_temp
which is rw. Below this temperature fan stops.
temp1_auto_point2_temp rw The low-temperature limit of the proportional
range. Below this temperature
pwm1 = pwm1_auto_point2_pwm. It can go from
0 degree C to 124 degree C in steps of
4 degree C. Read it out after writing to get
the actual value.
temp1_auto_point3_temp rw Above this temperature fan runs at maximum
speed. It can go from temp1_auto_point2_temp.
It can only have certain discrete values
which depend on temp1_auto_point2_temp and
pwm1_auto_point2_pwm. Read it out after
writing to get the actual value.
temp2_auto_point1_temp rw Must be between 0 degree C and 63 degree C and
it defines the passive cooling temperature.
Below this temperature the fan stops in
the closed loop mode.
temp2_auto_point2_temp rw The low-temperature limit of the proportional
range. Below this temperature
pwm1 = pwm1_auto_point2_pwm. It can go from
0 degree C to 124 degree C in steps
of 4 degree C.
temp2_auto_point3_temp rw Above this temperature fan runs at maximum
speed. It can only have certain discrete
values which depend on temp2_auto_point2_temp
and pwm1_auto_point2_pwm. Read it out after
writing to get actual value.
======================= == ===============================================
AMC6821 module parameter
101-113Board BIOS가 AMC6821을 올바르게 초기화한다면 module을 `init=0`으로 load해야 합니다.
Board BIOS가 칩을 초기화하지 않거나 다른 설정을 원한다면 `init=1`을 사용할 수 있습니다. `pwminv`는 PWM output polarity를 선택하며 0은 default PWM output, 1은 PWM output inversion입니다.
BIOS 초기화 여부와 PWM polarity에 맞춰 선택합니다.
Board firmware 상태를 먼저 확인해 불필요한 재초기화를 피합니다.
Module parameters
-----------------
If your board has a BIOS that initializes the amc6821 correctly, you should
load the module with: init=0.
If your board BIOS doesn't initialize the chip, or you want
different settings, you can set the following parameters:
- init=1,
- pwminv: 0 default pwm output, 1 inverts pwm output.
요약·해설
amc6821.rst:1-113두 온도 센서와 fan tachometer를 사용해 open loop, 온도, 결합 온도, target RPM 방식으로 fan을 제어합니다.
원문 분량과 핵심 지원 범위입니다.
장치를 구성하고 측정·제어하는 기본 순서입니다.