From: Sergey Vlasov <vsu@altlinux.ru> To: community@altlinux.ru Cc: hardware@lists.altlinux.org Subject: Re: [Hardware] [Comm] Compact 3 + IEEE1394 Date: Sun, 30 Jul 2006 00:00:53 +0400 Message-ID: <20060729200053.GA15101@procyon.home> (raw) In-Reply-To: <20060707101501.GC25942@osdn.org.ua> [-- Attachment #1: Type: text/plain, Size: 4741 bytes --] On Fri, Jul 07, 2006 at 01:15:01PM +0300, Michael Shigorin wrote: > On Wed, Jul 05, 2006 at 04:32:00PM +0700, Gleb Kulikov wrote: > > Вот те раз... > > ...подумал Штирлиц. > > > имеем Compact (3.0.4 + updates), ставим нвидиевскую карточку > > 1394 (драйвера подгрузились), при подключении видиокамеры, > > ни raw1394/dv1394/video1394 *не грузятся автоматически*, > > Нечто такое было. Появилась возможность проверить работу с Sony DCR-HC17E и контроллером, встроенным в плату ASUS A8V Deluxe: 0000:00:07.0 FireWire (IEEE 1394): VIA Technologies, Inc. IEEE 1394 Host Controller (rev 80) Проверка в среде Compact 3.0 без примесей Сизифа (специально даже использовалось ядро 2.6.12-std26-up-alt6, а не более свежие сборки из updates) показала, что при подключении камеры модули raw1394 и dv1394 загружаются автоматически без каких-либо дополнительных действий, а в /dev появляются файлы устройств: /dev/dv1394-0 /dev/raw1394 (ссылка на /dev/raw/raw1394) Модуль video1394 автоматически не загружался, но вроде бы он предназначен не совсем для этого железа: оказывается, "Digital Camera" и "DV camera" - это разные вещи: http://www.linux1394.org/faq.php Во всяком случае, Sony DCR-HC17E имеет specifier_id 0x00a02d и version 0x010001, что соответствует таблице в dv1394, но не соответствует таблице в video1394. Таким образом, с этой точки зрения в Compact 3.0 всё нормально. Однако проблема возникает с правами на эти файлы устройств - при настройках по умолчанию они создаются с правами 0660, причём для /dev/dv1394-0 устанавливаются владелец и группа root:root, а для /dev/raw/raw1394 - root:disk. Естественно, в результате эти устройства оказываются недоступными обычному пользователю. Для исправления ситуации можно создать файл правил udev /etc/udev/rules.d/90-local.rules, где написать, например, следующее: KERNEL=="dv1394-*", GROUP="camera" KERNEL=="raw1394", GROUP="camera" После этого устройства станут доступными для пользователей, входящих в группу camera (при установке Compact 3.0 в эту группу автоматически заносится как минимум первый созданный пользователь). На самом деле для простого ввода видео с IEEE1394 достаточно доступа только к /dev/dv1394-*, однако в этом случае отсутствует возможность управления видеокамерой с компьютера; для управления нужен доступ через raw1394. Впрочем, предоставление доступа к /dev/raw1394 обычным пользователям может быть нежелательным с точки зрения безопасности - дело в том, что через это устройство можно осуществлять полный доступ ко всем другим устройствам на шине IEEE1394, а это могут быть далеко не только видеокамеры. Например, существуют дисковые накопители с таким интерфейсом; доступ к /dev/raw1394 в этом случае может быть эквивалентен полному доступу к содержимому диска (а с учётом особенностей протоколов IEEE1394 и SBP-2, вероятно, ещё и доступу к произвольным адресам физической памяти компьютера). В настоящее время отсутствует возможность как-то ограничить доступ через /dev/raw1394, например, только определёнными классами устройств (из-за того, что обращения ко всем устройствам осуществляются через один общий файл устройства, в отличие от USB, где для каждого устройства есть отдельный файл /proc/bus/usb/... или /dev/bus/usb/..., для которого можно назначить нужные права доступа средствами hotplug или udev). Кстати, сейчас подключение любого устройства по IEEE1394 даёт этому устройству полный доступ к физической памяти компьютера (точнее, к первым 4 Гб адресного пространства - большинство контроллеров поддерживают только 32-разрядную адресацию со стороны PCI). Были разговоры о том, чтобы как-то ограничивать этот доступ (например, предоставлять его по умолчанию только устройствам, для которых это необходимо - в частности, SBP-2), но пока это не реализовано. [...] > PS: граблю dvgrab, kino сейчас не пробовал (я тогда немного > сломал библиотеки, пока до кина добрался -- оно уже взрывалось > на старте; сейчас reinstall их из родного репозитория, > запускается, но вот именно захватывать не пробовал -- сидел > на буке с сизифом). У меня работали и kino, и dvgrab. Правда, в них по умолчанию забиты какие-то странные имена для устройств dv1394 - необходимо заменить их в настройках (или командной строке dvgrab) на /dev/dv1394-0. Через raw1394 заработало сразу. Хотя, похоже, поддержка dv1394 в этом случае получается неполная - там должно создаваться 4 устройства: dv1394_init(ohci, DV1394_NTSC, MODE_RECEIVE); dv1394_init(ohci, DV1394_NTSC, MODE_TRANSMIT); dv1394_init(ohci, DV1394_PAL, MODE_RECEIVE); dv1394_init(ohci, DV1394_PAL, MODE_TRANSMIT); Однако в драйвере это реализовано так, что работает только с devfs. [-- Attachment #2: Type: application/pgp-signature, Size: 191 bytes --]
next parent reply other threads:[~2006-07-29 20:00 UTC|newest] Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top 2006-07-29 20:00 ` Sergey Vlasov [this message] 2006-07-30 21:18 ` [Hardware] " Michael Shigorin
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20060729200053.GA15101@procyon.home \ --to=vsu@altlinux.ru \ --cc=community@altlinux.ru \ --cc=hardware@altlinux.ru \ --cc=hardware@lists.altlinux.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
ALT Linux hardware support This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/hardware/0 hardware/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 hardware hardware/ http://lore.altlinux.org/hardware \ hardware@altlinux.ru hardware@lists.altlinux.org hardware@lists.altlinux.ru hardware@lists.altlinux.com hardware@altlinux.org public-inbox-index hardware Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.hardware AGPL code for this site: git clone https://public-inbox.org/public-inbox.git