|
framebuffer драйвер |
|
|
|
Jun 11 2009, 21:46
|
Местный
  
Группа: Участник
Сообщений: 421
Регистрация: 2-01-08
Пользователь №: 33 778

|
Пишу драйвер PCF8833 (дисплей от nokia), оказалось взаимодействовать с ядром гораздо сложнее, чем с контроллером LCD. Дисплей подключен по SPI, в связи с чем такая проблема, mmap из userspace, похоже нет ни какого хорошего способа узнать, что память была отмэплена и перезаписана, и что новые данные пора отправить контроллеру. есть два варианта, - регулярно проверять буфер на изменения, не подходит т.к. это постоянный расход времени процессора - обновлять по запросу из userspace, есть там какой то sync но как я понял он совсем не для этого, и ни кто его так не использует может кто нибудь знает вариант получше? Спасибо, пока работает только fbcon,
pcf8833.c.txt ( 10.02 килобайт )
Кол-во скачиваний: 426
|
|
|
|
|
 |
Ответов
|
Jun 16 2009, 14:00
|
Местный
  
Группа: Участник
Сообщений: 421
Регистрация: 2-01-08
Пользователь №: 33 778

|
Да в чем разница то? ну растеризатор там вместо mpeg декодера, как это на работу драйвера влияет?
Переписать софт было бы правильнее, не плохо бы ещё сделать нормальную синхронизацию (ну то есть flush должен блокировать процесс или сообщать, что тот слишком часто шлет новые данные) а не пропуск кадров. Только это все не оправдано для такого дисплея, там 20 кадров в секунду похоже предел самого LCD.
Но скорее сделаю как проще, добавлю свой ioctl, для включения/отключения постоянной отправки кадров в контроллер LCD, а из userspace, когда надо запустить "не правленный" софт, можно включать это. Думаю это окончательный и лучший вариант.
И ещё раз про atmel_spi, spi_write это синхронная функция, то есть явно не для больших объемов данных. Да можно было бы усложнить драйвер и избавится от этого недостатка, это ворос равновесия между сложностью интерфейса и реализации. Вы похоже сторонник хорошего внешнего интерфейса, и пусть будет кривая (но работающая) его реализация, так?
Это не баг по тому что автор драйвера видимо писал его зная об этой особенности, это именно особенность.
Сообщение отредактировал amaora - Jun 16 2009, 14:08
|
|
|
|
|
May 24 2010, 16:13
|
Знающий
   
Группа: Участник
Сообщений: 783
Регистрация: 22-11-08
Пользователь №: 41 858

|
Цитата(VDV @ May 24 2010, 14:19)  подскажите пожалуйста, можно где-то прочитать о том, что такое фрейм буфер? Это буфер окна  Цитата в чем его отличие от символьного устройства? В терминах системы это и есть символьное устройство. Цитата (sceleton.c видел) как с ним работать со стороны пользовательского пространства? Как с символьным устройством - read/write или mmap (последний чаще всего, вернее первый я кроме консоли нигде не встречал) Цитата нашел только документы от 2000 и 2002 года. технология с тех пор не менялась? Да какие там технлогии - это просто кусок памяти который имеет структуру в соответствии с текущим режимом: разрешение и цветность. Для fbcon кроме того есть специальные ф-ции с помощью которых можно ускорить работу с кусором или скролингом экрана - если это не поддерживается устройством аппаратно то их нет смысла эмулировать програмно, они не нужны для нормальной работы. Для примера простой вариант: экран 320х200@16 будет соответствовать сишному массиву uin16t fbscreen[200][320]; и для 16 бит пиксель состоит из rgb 565.
|
|
|
|
Сообщений в этой теме
amaora framebuffer драйвер Jun 11 2009, 21:46 Harbour Смысл использовать mmap при последовательном обмен... Jun 12 2009, 06:55 amaora Если правильно использовать, то mmap быстрее write... Jun 12 2009, 09:53 Harbour mmap-то быстрее, но ведь все равно SPI в конце, д... Jun 12 2009, 20:08 sasamy Цитата(amaora @ Jun 12 2009, 00:46) Диспл... Jun 14 2009, 15:50 sasamy Кстати насчет подобных конструкций:
Кодstatic int... Jun 14 2009, 17:02 amaora Этот вариант я уже видел, мне он не понравился по ... Jun 14 2009, 22:40 sasamy По поводу переключения bits_per_word - не совпадае... Jun 15 2009, 05:45 amaora Я понял, только написал не очень ясно. Прямая отпр... Jun 15 2009, 15:48 sasamy Цитата(amaora @ Jun 15 2009, 19:48) Я пон... Jun 15 2009, 18:56 sasamy Цитата(amaora @ Jun 15 2009, 19:48) Пряма... Jun 16 2009, 04:08 amaora Ну вот давайте ещё померяемся
Попробовал сегодня... Jun 16 2009, 10:05 sasamy Цитата(amaora @ Jun 16 2009, 14:05) Ну во... Jun 16 2009, 11:37    VDV тогда напрашиваются 2 вопроса.
1. если это просто ... May 25 2010, 08:18     sasamy Цитата(VDV @ May 25 2010, 12:18) тогда на... May 25 2010, 10:00      VDV Цитата(sasamy @ May 25 2010, 14:00) 2 Я д... May 25 2010, 10:03       sasamy Цитата(VDV @ May 25 2010, 13:03) я потому... May 25 2010, 11:15        VDV видимо я опять задал не тот вопрос...
даже не знаю... May 26 2010, 08:39         VDV нашел наконец-то что-то
http://books.google.ru/boo... May 26 2010, 14:52          VDV вопрос появился
написал драйвер для своего дисплея... Jun 10 2010, 15:16
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|