요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
.. include:: <isonum.txt>
------------------------
BCM5974 Driver (bcm5974)
------------------------
:Copyright: |copy| 2008-2009 Henrik Rydberg <rydberg@euromail.se>
The USB initialization and package decoding was made by Scott Shawcroft as
part of the touchd user-space driver project:
:Copyright: |copy| 2008 Scott Shawcroft (scott.shawcroft@gmail.com)
The BCM5974 driver is based on the appletouch driver:
:Copyright: |copy| 2001-2004 Greg Kroah-Hartman (greg@kroah.com)
:Copyright: |copy| 2005 Johannes Berg (johannes@sipsolutions.net)
:Copyright: |copy| 2005 Stelian Pop (stelian@popies.net)
:Copyright: |copy| 2005 Frank Arnold (frank@scirocco-5v-turbo.de)
:Copyright: |copy| 2005 Peter Osterlund (petero2@telia.com)
:Copyright: |copy| 2005 Michael Hanselmann (linux-kernel@hansmi.ch)
:Copyright: |copy| 2006 Nicolas Boichat (nicolas@boichat.ch)
This driver adds support for the multi-touch trackpad on the new Apple
Macbook Air and Macbook Pro laptops. It replaces the appletouch driver on
those computers, and integrates well with the synaptics driver of the Xorg
system.
Known to work on Macbook Air, Macbook Pro Penryn and the new unibody
Macbook 5 and Macbook Pro 5.
Usage
-----
The driver loads automatically for the supported usb device ids, and
becomes available both as an event device (/dev/input/event*) and as a
mouse via the mousedev driver (/dev/input/mice).
USB Race
--------
The Apple multi-touch trackpads report both mouse and keyboard events via
different interfaces of the same usb device. This creates a race condition
with the HID driver, which, if not told otherwise, will find the standard
HID mouse and keyboard, and claim the whole device. To remedy, the usb
product id must be listed in the mouse_ignore list of the hid driver.
Debug output
------------
To ease the development for new hardware version, verbose packet output can
be switched on with the debug kernel module parameter. The range [1-9]
yields different levels of verbosity. Example (as root)::
echo -n 9 > /sys/module/bcm5974/parameters/debug
tail -f /var/log/debug
echo -n 0 > /sys/module/bcm5974/parameters/debug
Trivia
------
The driver was developed at the ubuntu forums in June 2008 [#f1]_, and now has
a more permanent home at bitmath.org [#f2]_.
.. Links
.. [#f1] http://ubuntuforums.org/showthread.php?t=840040
.. [#f2] http://bitmath.org/code/
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
드라이버 계보와 지원 Apple 노트북
1-31BCM5974 드라이버 문서의 저작권은 2008~2009년 Henrik Rydberg에게 있습니다. USB 초기화와 패킷 해독은 Scott Shawcroft가 `touchd` 사용자 공간 드라이버 프로젝트의 일부로 작성했습니다.
드라이버는 Greg Kroah-Hartman, Johannes Berg, Stelian Pop, Frank Arnold, Peter Osterlund, Michael Hanselmann, Nicolas Boichat가 기여한 `appletouch` 드라이버를 기반으로 합니다. 각 저작권 연도와 연락처는 아래 접을 수 있는 영어 원문에 그대로 보존됩니다.
BCM5974는 새 Apple MacBook Air와 MacBook Pro의 멀티터치 트랙패드를 지원합니다. 해당 컴퓨터에서 `appletouch`를 대체하며 Xorg의 Synaptics 드라이버와 잘 통합됩니다. 동작이 확인된 장치는 MacBook Air, MacBook Pro Penryn, 신형 unibody MacBook 5와 MacBook Pro 5입니다.
드라이버의 기반, 사용자 공간 선행 작업과 확인된 시스템을 정리합니다.
기존 드라이버와 패킷 분석이 BCM5974 지원으로 이어진 관계입니다.
.. include:: <isonum.txt>
------------------------
BCM5974 Driver (bcm5974)
------------------------
:Copyright: |copy| 2008-2009 Henrik Rydberg <rydberg@euromail.se>
The USB initialization and package decoding was made by Scott Shawcroft as
part of the touchd user-space driver project:
:Copyright: |copy| 2008 Scott Shawcroft (scott.shawcroft@gmail.com)
The BCM5974 driver is based on the appletouch driver:
:Copyright: |copy| 2001-2004 Greg Kroah-Hartman (greg@kroah.com)
:Copyright: |copy| 2005 Johannes Berg (johannes@sipsolutions.net)
:Copyright: |copy| 2005 Stelian Pop (stelian@popies.net)
:Copyright: |copy| 2005 Frank Arnold (frank@scirocco-5v-turbo.de)
:Copyright: |copy| 2005 Peter Osterlund (petero2@telia.com)
:Copyright: |copy| 2005 Michael Hanselmann (linux-kernel@hansmi.ch)
:Copyright: |copy| 2006 Nicolas Boichat (nicolas@boichat.ch)
This driver adds support for the multi-touch trackpad on the new Apple
Macbook Air and Macbook Pro laptops. It replaces the appletouch driver on
those computers, and integrates well with the synaptics driver of the Xorg
system.
Known to work on Macbook Air, Macbook Pro Penryn and the new unibody
Macbook 5 and Macbook Pro 5.
자동 적재와 USB HID 점유 경쟁
32-47지원되는 USB device ID가 감지되면 드라이버는 자동으로 적재됩니다. 입력은 event 장치 `/dev/input/event*`와 `mousedev`를 통한 마우스 장치 `/dev/input/mice` 양쪽으로 제공됩니다.
같은 트랙패드가 노출되는 두 인터페이스입니다.
Apple 멀티터치 트랙패드는 하나의 USB 장치에 있는 서로 다른 인터페이스로 마우스와 키보드 이벤트를 보고합니다. 별도 지시가 없으면 HID 드라이버가 표준 HID 마우스와 키보드를 먼저 발견하고 장치 전체를 점유할 수 있어 `bcm5974`와 경쟁 조건이 생깁니다.
이 문제를 피하려면 해당 USB product ID를 HID 드라이버의 `mouse_ignore` 목록에 넣어야 합니다. 그러면 HID가 전체 장치를 선점하지 않고 BCM5974가 트랙패드 인터페이스를 처리할 수 있습니다.
HID 선점과 BCM5974 바인딩 사이의 순서를 보여 줍니다.
Usage
-----
The driver loads automatically for the supported usb device ids, and
becomes available both as an event device (/dev/input/event*) and as a
mouse via the mousedev driver (/dev/input/mice).
USB Race
--------
The Apple multi-touch trackpads report both mouse and keyboard events via
different interfaces of the same usb device. This creates a race condition
with the HID driver, which, if not told otherwise, will find the standard
HID mouse and keyboard, and claim the whole device. To remedy, the usb
product id must be listed in the mouse_ignore list of the hid driver.
패킷 디버깅과 개발 이력
48-70새 하드웨어 버전 개발을 돕기 위해 `debug` 커널 모듈 매개변수로 상세 패킷 출력을 켤 수 있습니다. 값 1~9는 서로 다른 상세 수준이며 9가 예제의 최대 상세 출력입니다. 루트 권한으로 값을 설정한 뒤 `/var/log/debug`를 추적하고, 작업 후 0으로 되돌립니다.
echo -n 9 > /sys/module/bcm5974/parameters/debug
tail -f /var/log/debug
echo -n 0 > /sys/module/bcm5974/parameters/debug
모듈 매개변수 범위와 예제 동작입니다.
일시적으로 상세 로그를 활성화하고 종료하는 절차입니다.
드라이버는 2008년 6월 Ubuntu 포럼에서 개발되었고 이후 `bitmath.org`에 더 영구적인 거처를 마련했습니다.
원문 각주 두 개의 주소를 보존합니다.
Debug output
------------
To ease the development for new hardware version, verbose packet output can
be switched on with the debug kernel module parameter. The range [1-9]
yields different levels of verbosity. Example (as root)::
echo -n 9 > /sys/module/bcm5974/parameters/debug
tail -f /var/log/debug
echo -n 0 > /sys/module/bcm5974/parameters/debug
Trivia
------
The driver was developed at the ubuntu forums in June 2008 [#f1]_, and now has
a more permanent home at bitmath.org [#f2]_.
.. Links
.. [#f1] http://ubuntuforums.org/showthread.php?t=840040
.. [#f2] http://bitmath.org/code/
요약·해설
bcm5974.rst:1-70`bcm5974`는 신형 MacBook Air와 MacBook Pro의 멀티터치 트랙패드를 지원하며 기존 `appletouch`를 대체합니다. 하나의 USB 장치에서 HID와 트랙패드 드라이버가 경쟁할 수 있으므로 product ID의 `mouse_ignore` 등록이 핵심입니다.
지원 장치, 입력 경로와 진단 수단을 요약합니다.