요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
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. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 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 시 자동 해제됩니다.