|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Ilya Anfimov 2:5020/400 20 Dec 2004 21:20:14 To : Zahar Kiselev Subject : Re: драйвер -------------------------------------------------------------------------------- 2004-12-20, Zahar Kiselev <Zahar.Kiselev@p1.f382.n5030.z2.fidonet.org> пишет: > Hello Alex! > > Dec 20 15:17 04, Alex Korchmar wrote to Vitaly Mayatskih: [skipped] > Кстати о непонятном: как всегда в линуксе - все становится просто, как только > понимаешь _что_ же нужно сделать. Ответы на вопрос "как" - при этом довольно > быстро находятся. Так и с этой платой - возможностей у нее всяких много. Если > пытаться делать "универсальный" драйвер, позволяющий потом использовать любую > из них - то возникает главная проблема - как множество этих возможностей на > довольно ограниченную модель "символьного устройства"? В частности например > входных каналов там может быть от задействовано от 1 до 32, это можно выбирать > и выбор я "повесил" на отдельный ioctl. А данные из символьного устройства > "вытекают" общим потоком - ну и как рекомендуется помечать в этом потоке то, > что соответствует первому каналу? В драйвере ведь еще и буфер есть, какая-то Как в звуковухе -- микшировать в последовательность по n чисел, где n -- число затребованных каналов. А вообще, ioctl must die. Всё лучше представлять в виде двунаправленного потока, с максимум одной OOB командой: reset. Hа сетевизмы переориентироваться проще будет. > порция данных может там остаться с момента предидущего чтения - ведь карта > "наполняет" буфер асинхронно по отношению к читающей программе... Сбрасывать по каждой команде. То есть следуюшее после команды чтение начинает всё с чистого листа. Если больно сбрасывать -- просто чётко проверить, что сразу после команды польются байты, выровненные по-новому. > > Если делать драйвер только под данное конкретное применение этой платы - то > можно конечно "прибить гвоздями" настройки и исходя из этого писать работающую > с драйвером программу. Правда от вышеописанного это не очень сильно помогает. > И к тому же под другое применение придется делать другой вариант драйвера. > А применений уже сейчас нашлось два и возможно найдется третье, не считая моих > личных (как же не воспользоваться нахаляву хорошей железкой:) Hихрена не понял -- что ты собрался прибивать гвоздями? --- ifmail v.2.15dev5.3 * Origin: Demos online service (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/191705e85942d.html, оценка из 5, голосов 10
|