LINUX.ORG.RU

Разработчикам nouveau требуется помощь владельцев ноутбуков!

 , , , , , , ,


0

2

nouveau — это проект по разработке полноценного полностью открытого драйвера для видеокарт NVidia. Проект активно развивается и драйвер уже поддерживает основные функции на всех современных видеокартах производства NVidia.

Несколько дней назад Бен Скеггс (Ben Skeggs), сотрудник Red Hat и один из основных разработчиков nouveau, опубликовал призыв к владельцам ноутбуков с видеокартами NVidia помочь в улучшении поддержки MXM (Mobile PCI Express Module).

Если у вас есть ноутбук с установленным Linux и видеокартой NVidia (в том числе с поддержкой технологии NVidia Optimus), а также немного свободного времени, вы можете помочь проекту, выполнив несколько относительно несложных действий по инструкции (оригинал на английском в письме, вольный перевод на русский — далее).

Чтобы узнать, можете ли вы помочь, сначала проверьте наличие строки «MXMS» в файлах /sys/firmware/acpi/tables:

# Эту и последующие команды нужно выполнять от имени root'а
grep MXMS /sys/firmware/acpi/tables/*
Если файлы с данной строкой нашлись (grep выдал «Binary file XYZ matches»/«Двоичный файл XYZ совпадает»), скопируйте их куда-нибудь. Если ничего не нашлось, попробуйте проделать следующее при помощи i2c-tools (должен быть запущен драйвер nouveau):

  • Запустите:
    modprobe i2c-dev
    i2cdetect -l
    
    Вывод должен выглядеть примерно так:
    i2c-0	smbus     	SMBus I801 adapter at 1860 SMBus adapter
    i2c-1	i2c       	nouveau-0000:01:00.0-2     I2C adapter
    i2c-2	i2c       	nouveau-0000:01:00.0-0     I2C adapter
    i2c-3	i2c       	nouveau-0000:01:00.0-10    I2C adapter
    i2c-4	i2c       	nouveau-0000:01:00.0-6     I2C adapter
    i2c-5	i2c       	nouveau-0000:01:00.0-11    I2C adapter
    i2c-6	i2c       	nouveau-0000:01:00.0-12    I2C adapter
    i2c-7	i2c       	nouveau-0000:01:00.0-8     I2C adapter
    
  • Для каждой полученной строки «nouveau» запустите
    i2cdetect BUS
    
    Где BUS — число из i2c-BUS (например для i2c-3 нужно запустить «i2cdetect 3»).
  • Если вы увидели в выводе числа 0x54 и/или 0x56, то сохраните дампы в файл:
    # Если в выводе было число 0x54
    i2cdump BUS 0x54 >i2c-BUS-0x54.dump
    
    # Если в выводе было число 0x56
    i2cdump BUS 0x56 >i2c-BUS-0x56.dump
    

Далее для получения дампов VBIOS загрузите и соберите envytools (потребуются заголовочные файлы libpciaccess):

git clone git://nouveau.git.sourceforge.net/gitroot/nouveau/envytools
cd envytools
cmake .
make
Снимите дампы:
./nva/nvagetbios -s PRAMIN >vbios_pramin.rom
./nva/nvagetbios -s PROM >vbios_prom.rom
Если nvagetbios выдал ошибку, например:
[root at nisroch tables]# nvagetbios -s PROM >vbios.rom
Attempt to extract the vbios from card 0 (nva8) using PROM
Invalid signature(0x55aa). You may want to try another retrieval method.
то можете попробовать снять дампы с ACPI. Простейший метод — перезагрузить систему с добавлением «nouveau.vbios=ACPI» к опциям ядра, а затем:
mount -t debugfs debugfs /sys/kernel/debug
cp /sys/kernel/debug/dri/0/vbios.rom ~/

Полученные файлы (со строкой «MXMS», вывод i2cdump, дампы VBIOS) отправьте на mmio.dumps@gmail.com.

Если возникнут какие-то вопросы — можете ответить на письмо в списке рассылки или связаться с Беном Скеггсом в IRC-канале #nouveau на irc.freenode.net (ник Бена — darktama).

>>> Подробности

Deleted

Проверено: Shaman007 ()
Последнее исправление: adriano32 (всего исправлений: 16)
Ответ на: комментарий от minakov

Это справедливо только для лаптопов?

Да.

Deleted
()
Ответ на: комментарий от Quasar

>В них отсутствует поддержка ноутбучных карточек от нвидии.
Извиняюсь. Пожалуйста, поподробнее.

anonymous
()
Ответ на: комментарий от deterok

Не смог поюзать из-за бага, который там уже довольно давно не могут поправить, поэтому многого не расскажу, а так, glxgears крутило, всё ок.

Binary ★★★★★
()

попробовал на своём асусе н53св с гт540, чёто не срослось

root@rain87-laptop:~# ironhide-enablecard
DON Enabling nVidia card succeeded.
root@rain87-laptop:~# rmmod nvidia
root@rain87-laptop:~# modprobe nouveau
root@rain87-laptop:~# i2cdetect -l
i2c-0 i2c i915 gmbus disabled I2C adapter
i2c-1 i2c i915 gmbus ssc I2C adapter
i2c-2 i2c i915 GPIOB I2C adapter
i2c-3 i2c i915 gmbus vga I2C adapter
i2c-4 i2c i915 GPIOA I2C adapter
i2c-5 i2c i915 gmbus panel I2C adapter
i2c-6 i2c i915 GPIOC I2C adapter
i2c-7 i2c i915 gmbus dpc I2C adapter
i2c-8 i2c i915 GPIOD I2C adapter
i2c-9 i2c i915 gmbus dpb I2C adapter
i2c-10 i2c i915 GPIOE I2C adapter
i2c-11 i2c i915 gmbus reserved I2C adapter
i2c-12 i2c i915 gmbus dpd I2C adapter
i2c-13 i2c i915 GPIOF I2C adapter
i2c-14 i2c DPDDC-C I2C adapter
i2c-15 i2c nouveau-0000:01:00.0-2 I2C adapter
i2c-16 i2c nouveau-0000:01:00.0-0 I2C adapter
root@rain87-laptop:~# i2cdetect 15
WARNING! This program can confuse your I2C bus, cause data loss and worse!
I will probe file /dev/i2c-15.
I will probe address range 0x03-0x77.
Continue? [Y/n] y
0 1 2 3 4 5 6 7 8 9 a b c d e f
00:  — -- — -- — -- — -- — -- — -- —
10: — -- — -- — -- — -- — -- — -- — -- — --
20: — -- — -- — -- — -- — -- — -- — -- — --
30: — -- — -- — -- — -- — -- — -- — -- — --
40: — -- — -- — -- — -- — -- — -- — -- — --
50: — -- — -- — -- — -- — -- — -- — -- — --
60: — -- — -- — -- — -- — -- — -- — -- — --
70: — -- — -- — -- — --
root@rain87-laptop:~# i2cdetect 16
WARNING! This program can confuse your I2C bus, cause data loss and worse!
I will probe file /dev/i2c-16.
I will probe address range 0x03-0x77.
Continue? [Y/n] y
0 1 2 3 4 5 6 7 8 9 a b c d e f
00:  — -- — -- — -- — -- — -- — -- —
10: — -- — -- — -- — -- — -- — -- — -- — --
20: — -- — -- — -- — -- — -- — -- — -- — --
30: — -- — -- — -- — -- — -- — -- — -- — --
40: — -- — -- — -- — -- — -- — -- — -- — --
50: — -- — -- — -- — -- — -- — -- — -- — --
60: — -- — -- — -- — -- — -- — -- — -- — --
70: — -- — -- — -- — --


у кого нибудь с bumblebee/ironhide выдало что нибудь нормальное?

rain87
()
Ответ на: комментарий от vurdalak

Это нужно делать с установленным нуво или блобом?

Если я правильно понял, nouveau нужен для i2c и снятия дампов с ACPI. grep в /sys/firmware/acpi/tables и nvagetbios по идее должны работать и под блобом...

Deleted
()
Ответ на: комментарий от anonymous

Почему не сказано, надо ли указывать модель ноутбука, карты и пр.?

Это подразумевается. Хотя как минимум модель карты они смогут определить и по дампу её биоса =).

Deleted
()
Ответ на: комментарий от kelyar

лол) Это не тот баг. И к нуво никакого отношения не имеет.

devl547 ★★★★★
()
Ответ на: комментарий от nickionn

жаль что у меня нет поддержки Nvidia Optimus.

Но есть ноутбук с MXM? Попробуй пройтись по инструкции...

Deleted
()

Что-то ни в одном из пунктов мне не удалось достигнуть успеха... Хотя на ноуте гордая наклейка nvida optimus.

shaplov ★★★
()
Ответ на: комментарий от shaplov

Что-то ни в одном из пунктов мне не удалось достигнуть успеха... Хотя на ноуте гордая наклейка nvida optimus.

Попробуй задать вопрос Бену Скеггсу по электронной почте...

Deleted
()
Ответ на: комментарий от om-nom-nimouse

Я год назад с радеоном мучался. Сейчас интел — работает отлично.

kermzyxer
()
Ответ на: комментарий от om-nom-nimouse

для начала стань врачом и четко сформулирую смысл терминов «скорбный разум» и «кривые руки». После можешь становиться производителем ;)

chg ★★★★★
()

А на десктопе как-нибудь можно помочь?

Jayrome ★★★★★
()
Ответ на: комментарий от Binary

> Тем, что надо пересобирать после обновления ядра, тем, что тормозит GTK+ на новых иксах бла бла

Нет, и всё-таки 4.2.

Jayrome ★★★★★
()
Ответ на: комментарий от Jayrome

что именно 4.2? тормоза GTK? в толксах есть тема от мегабакса, повторяется у всех. пересобирать не надо? ну значит я криворукий, у меня после обновления ядра без emerge nvidia-drivers иксы не взлетают.

Binary ★★★★★
()
Ответ на: комментарий от Binary

>Тем, что надо пересобирать после обновления ядра
На говноподелках типа Gentoo надо, а так вообще внезапно идёт в составе дистрибутивных репозиториев, и ядро обновляется синхронно с драйвером.

тем, что тормозит GTK+ на новых иксах

Пруф? У меня X-ы старые или GTK не +, ЧЯДНТ?

тем, что не умеют xrandr и KVM


Что это такое и зачем оно нужно? Если KVM -полная виртуализация, то не врубаюсь, при чём здесь NVIDIA и что она там должна уметь

в конце то концов, тем, что проприетарщина.


Не, ну конечно же лучше с опозданием на год заниматься заднепроходным инжирингом устаревших технологий и реализовывать их от силы процентов на 50, чем пользоваться нативным драйвером от производителя оборудования.

DRVTiny ★★★★★
()
Ответ на: комментарий от Binary

Ссылку на тему желательно, тем более на такие спорные источники информации, как мегабакс; а модули ядра, как правило, вместе с обновлениями приходят, если дистрибутив сам по себе не конструктор, предполагающий самосбор.

Jayrome ★★★★★
()
Ответ на: комментарий от DRVTiny

>На говноподелках типа Gentoo надо, а так вообще внезапно идёт в составе дистрибутивных репозиториев, и ядро обновляется синхронно с драйвером.

Ну назовите название своего дистрибутива и тут же услышите, почему именно он говно. Глупо.

Пруф? У меня X-ы старые или GTK не +, ЧЯДНТ?

[HATE!][X] QtCurve

Повторилось у меня и у товарища на арче.

Что это такое и зачем оно нужно? Если KVM -полная виртуализация, то не врубаюсь, при чём здесь NVIDIA и что она там должна уметь

Уже поправили меня, что KMS.

Не, ну конечно же лучше с опозданием на год заниматься заднепроходным инжирингом устаревших технологий и реализовывать их от силы процентов на 50, чем пользоваться нативным драйвером от производителя оборудования.

Почему обязательно нужны крайности? У блоба есть проблемы, подоспела альтернатива, я переехал (бы, если бы не один баг).

Binary ★★★★★
()
Ответ на: комментарий от splinter

> у меня при установке nouveau почему то три курсора на экране.

У меня один, но двигается как сумасшедший, периодически пропадая вообще :), пропадают кнопки и пункты меню если таки умудриться подвести к ним курсор. Не, я пас...

Buy ★★★★★
()
Ответ на: комментарий от sched

Можно с этого места поподробнее?

anonymous
()
Ответ на: комментарий от Binary

Шустро-то шустро, вот как только у нуво ещё и производительность с блобом станет сравнима, его можно будет ставить на производительные карты. Если карта интегрированная, то, понятно, практически по барабану.

Всё же, идея держать нуво из-за того, что он позволяет быстрее переключиться в консоль, звучит несколько странно. Особенно если текстовой консолью пользоваться раз в месяц.

om-nom-nimouse ★★
()
Ответ на: комментарий от om-nom-nimouse

Почему? Я на компьютере работаю, 2D там работает просто прекрасно, субъективно лучше, чем в проприетарном, минимальное 3D есть, большего не нужно. Зато плюшки от свободного драйвера вполне ощутимы. Вот блин, если бы не этот баг, я был бы весел и счастлив =))

Binary ★★★★★
()
Ответ на: комментарий от powerpc

> Это точно. Но насчёт «зачем покупать»: у многих просто нет выбора или сталкиваются, когда уже поздно.

Так у nvidia же такой крутой проприетарник, зачем кому-то нужен кокой-то реверснутый полухакерский драйвер?

trueshell ★★★★★
()
Ответ на: комментарий от trueshell

> зачем кому-то нужен кокой-то реверснутый полухакерский драйвер?

Не всех устраивает отсутствие выбора. Более того, особых эстетов также не устраивает отсутствие обновлений драйверов для старых карт.

om-nom-nimouse ★★
()

> основные функции на всех современных видеокартах производства NVidia.

путь для тегру еще драйвер сделают

anonymous
()
Ответ на: комментарий от anonymous

путь для тегру еще драйвер сделают

Tegra очень сильно отличается от «обычных» видеокарт NVidia. Так что поддерживать его в рамках nouveau бессмысленно. Тут нужно писать отдельный драйвер с нуля...

Deleted
()
Ответ на: комментарий от Quasar

Не испытываю проблем со своей 9300M GS. Не заметил никаких тормозов GTK+ на новых иксах (1.10). А с xrandr - что именно не умеет?

Danmer ★★
()

> сотрудник Red Hat

уже было полгода назад, только от Fedora и для всех видеокарт. Видимо, недотестированной осталась только nvidia

ZenitharChampion ★★★★★
()
Ответ на: комментарий от Danmer

> А чем не устраивают проприетарные драйверы от NVIDIA?

В случае с ноутбуком - там не появилась технология nvidia optimus. Но сообщество эту проблему победило

ZenitharChampion ★★★★★
()
Ответ на: комментарий от Deleted

Я о том, что в прошлый раз было всё то же самое, но для всех видеокарт, сгодня - только для nvidia. В этом что-то есть. Значит, остальное уже работает хорошо.

ZenitharChampion ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.