요약·해설, 영어 원문, 전체 번역을 구분해 실었습니다. API 이름, 코드 심벌, 소스 경로는 원문 표기를 유지합니다.
1. 요약·해설
원문의 핵심 내용을 정리하고 커널 프로그래밍에 필요한 설명을 덧붙였습니다. 아래의 전체 번역과는 별도로 작성한 해설입니다.
2. 영어 원문 전체
번역에 사용한 Linux v6.18.37 원문입니다. 줄 번호는 해당 버전의 소스 파일을 기준으로 합니다.
원문 전체 펼치기
.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
.. c:namespace:: DTV.fe
.. _FE_SET_FRONTEND_TUNE_MODE:
*******************************
ioctl FE_SET_FRONTEND_TUNE_MODE
*******************************
Name
====
FE_SET_FRONTEND_TUNE_MODE - Allow setting tuner mode flags to the frontend.
Synopsis
========
.. c:macro:: FE_SET_FRONTEND_TUNE_MODE
``int ioctl(int fd, FE_SET_FRONTEND_TUNE_MODE, unsigned int flags)``
Arguments
=========
``fd``
File descriptor returned by :c:func:`open()`.
``flags``
Valid flags:
- 0 - normal tune mode
- ``FE_TUNE_MODE_ONESHOT`` - When set, this flag will disable any
zigzagging or other "normal" tuning behaviour. Additionally,
there will be no automatic monitoring of the lock status, and
hence no frontend events will be generated. If a frontend device
is closed, this flag will be automatically turned off when the
device is reopened read-write.
Description
===========
Allow setting tuner mode flags to the frontend, between 0 (normal) or
``FE_TUNE_MODE_ONESHOT`` mode
Return Value
============
On success 0 is returned.
On error -1 is returned, and the ``errno`` variable is set
appropriately.
Generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미에 맞춰 전체 내용을 번역했습니다. 코드, 함수명, 코드 심벌, URL은 원문 표기를 유지합니다.
Tuner mode flag와 ONESHOT
1-39`FE_SET_FRONTEND_TUNE_MODE`는 frontend에 tuner mode flag를 설정합니다. 호출 형식은 `int ioctl(int fd, FE_SET_FRONTEND_TUNE_MODE, unsigned int flags)`입니다.
정상 mode와 one-shot mode의 차이입니다.
`FE_TUNE_MODE_ONESHOT` 상태에서 frontend 장치를 닫으면, 장치를 read/write로 다시 열 때 이 flag가 자동으로 꺼집니다.
장치 descriptor와 mode bit를 전달합니다.
.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
.. c:namespace:: DTV.fe
.. _FE_SET_FRONTEND_TUNE_MODE:
*******************************
ioctl FE_SET_FRONTEND_TUNE_MODE
*******************************
Name
====
FE_SET_FRONTEND_TUNE_MODE - Allow setting tuner mode flags to the frontend.
Synopsis
========
.. c:macro:: FE_SET_FRONTEND_TUNE_MODE
``int ioctl(int fd, FE_SET_FRONTEND_TUNE_MODE, unsigned int flags)``
Arguments
=========
``fd``
File descriptor returned by :c:func:`open()`.
``flags``
Valid flags:
- 0 - normal tune mode
- ``FE_TUNE_MODE_ONESHOT`` - When set, this flag will disable any
zigzagging or other "normal" tuning behaviour. Additionally,
there will be no automatic monitoring of the lock status, and
hence no frontend events will be generated. If a frontend device
is closed, this flag will be automatically turned off when the
device is reopened read-write.
Mode 적용과 반환값
40-55Frontend tuner mode를 0인 정상 mode 또는 `FE_TUNE_MODE_ONESHOT`으로 설정합니다.
성공하면 0을 반환합니다. 오류가 발생하면 -1을 반환하고 `errno`를 적절히 설정합니다. 일반 오류는 `Generic Error Codes <gen-errors>` 절을 따릅니다.
장치를 다시 여는 시점에 flag가 자동 초기화됩니다.
Description
===========
Allow setting tuner mode flags to the frontend, between 0 (normal) or
``FE_TUNE_MODE_ONESHOT`` mode
Return Value
============
On success 0 is returned.
On error -1 is returned, and the ``errno`` variable is set
appropriately.
Generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
요약·해설
fe-set-frontend-tune-mode.rst:1-55ONESHOT은 zigzag·자동 lock 감시·event 생성을 끄며 read/write reopen으로 장치를 다시 열면 자동 해제됩니다.