[d-kernel] viafb & vt1211 kernel modules

Sergey Vlasov vsu на altlinux.ru
Пт Июл 8 15:50:10 MSD 2005


On Fri, Jul 08, 2005 at 02:40:20PM +0400, Grigory Batalov wrote:
> Я добавил в CVS поддержку фреймбуффера для VIA: feat/drivers-viafb.
> Патч взял отсюда: http://patcher2k.012webpages.com/, лишь подогнал
> Makefile для 2.6.12. На моей VIA EPIA-MII12000 теперь видно консоль
> в телевизоре =).

При беглом просмотре обнаружены как минимум следующие ошибки:

1) static char * mode __initdata = "720x576" и все последующие аналогичные
переменные не должны быть помечены как __initdata - эти переменные должны
оставаться доступными для чтения текущих значений параметров модуля через
sysfs.  Аналогичная ошибка была в драйвере intelfb в 2.6.11 (в
kernel-fix-drivers-video по этому поводу был 2.6_01_intelfb-oops.patch;
сейчас там его нет, поскольку в 2.6.12 эту ошибку исправили).

2) static struct fb_fix_screeninfo viafb_fix __initdata - тут должно быть
__devinitdata.

3) Нет проверки успешного выполнения framebuffer_alloc() и
fb_alloc_cmap().

4) В случае неудачного завершения setmode() или register_framebuffer() не
освобождаются ресурсы.

> Правда, для этого пришлось вынести vesafb в модуль и не загружать
> его, поскольку вместо него используется viafb.

Должно быть достаточно убрать параметр vga=...

> Модуль vt1211 для std26-up устанавливается в странное место,
> что-то вроде
> /lib/modules/2.6.12-std26-up-alt1/lib/modules/2.6.12-std26-up-alt1/extra
> Предлагаю для него более подходящее:
> /lib/modules/2.6.12-std26-up-alt1/drivers/i2c/chips

Вообще-то основная масса kernel-modules-* складывается как раз в отдельные
каталоги (в частности, чтобы возникало меньше вопросов по поводу того,
какие каталоги каким пакетам принадлежат).  А для modprobe не имеет
значения, в какой подкаталог засунут модуль.

> Прилагаю патч для std26-up, добавляющий модуль viafb и выносящий
> vesafb из ядра в модуль,

vesafb выносу в модуль не поддаётся в принципе.  Скорее всего, в
результате такого редактирования файла конфигурации он просто отключился
(нормальным способом CONFIG_FB_VESA=m поставить нельзя).
----------- следущая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : отсутствует
Тип     : application/pgp-signature
Размер  : 189 байтов
Описание: отсутствует
Url     : http://lists.altlinux.ru/pipermail/devel-kernel/attachments/20050708/968cd1b7/attachment.bin


Подробная информация о списке рассылки devel-kernel