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)

Ответ на: комментарий от Lwulf

>Slackware, Mops, Gentoo, CentOs, Ubuntu(проработала двое суток, снес её нафиг..надоела :) ), Mandrake(гемор заключался раньше в наложение патча, сейчас не знаю что и как, не слежу)

Рхел, убунта, федора- дистры на которых ведро по идее должен был тестить разработчик, гента и слака под вопросом. Ставил ванильное 2.6.36 на калькулейт, при загрузке не смонтировался рут, потыкался и откатился на дистровое. Причём дистровое 2.6.36 работает и рут монтируется.

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

при загрузке не смонтировался рут, потыкался и откатился на дистровое

То что рут не монитуется и прочие бяки - это ошибка конфигурации и возможно не включенная в ядро фс(не знаю ваш опыт, обидеть или развести срач изза ничего - не хочу).
На второй недели пользования линуксом, на форуме slackware.pp.ru(коий временно, а может и вечно уже не работает) спрашивал как конфигурить ядра. Надомной поржали, но всётаки ткнули носом в маны и на след день у меня уже было большое жирное рабочее ядро(куча правок поскольку то одно не включил, то другое)
Чтоже касается именно проприетарных дров, то надо помнить что есть rivafb - и её надо собирать в ядре исключительно модулем.(современных карт это тоже касается, ну не работают они вместе, не работают и всё, хотя умудряются ставиться и запускаться, что приводит не то к зависанию, не то к остановке охлаждения видяхи).

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

> Ну тащемта в половине случаев оно не работает, просто по неизвестной причине.

Думаю, это голова и руки. Ну или крутое невезение, понедельник и т.п.... Потому как у меня оно не работает только в тех случаях, когда я явно накосячил что-нибудь между сборкой ядра и установкой драйвера - ну, конфигурацию ядра там поменять ухитрился... Или ссылку /usr/src/linux на правильный каталог не перенацелил...

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

Как называется это аналогичное решение и встречается ли оно в природе?

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

По-моему, слкдовало написать «уже поддерживает основные 2D функции».

2D в nouveau поддерживается давно и на 100% =).

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

Зависит от видеокарты. На моей интеграшке оно ЖУТКО артефачило в фреймбуфере (дублирующиеся строки), а в иксах был полный ад. Было это где-то полгода назад с последним ядром/месой/иксами.

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

Зависит от видеокарты. На моей интеграшке оно ЖУТКО артефачило в фреймбуфере (дублирующиеся строки), а в иксах был полный ад. Было это где-то полгода назад с последним ядром/месой/иксами.

В таких случаях нужно сразу отправлять багрепорты, с приложенными скриншотами/фотографиями, логами и так далее.

У меня на ноуте, когда только-только nouveau появился в Fedora, тоже периодически высыпались артефакты. Я отправил багрепорт с фоткой, логи и прочее. И буквально через неделю всё тот же Бен Скеггс закоммитил багфикс =).

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

ну да, тото модуль nouveau посылает меня с моей 520 gt, даже 2д ускорения нет

Дистрибутив, версия драйвера, с каким сообщением посылает nouveau?

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

все гитовое, последнии 3.1-rc, модуль говорит что-то типа карта не поддерживается, лень сейчас карту менять ради этой строчки

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

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

Любители устанавливать по двое часов из раздела со скриншотами рабочих столов, обзавидуются

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

нет, обычный десктоп с всунутой 520gt, просто нет поддержки этой карты и все, я бы помог, но незнаю куда и что слать.

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

нет, обычный десктоп с всунутой 520gt, просто нет поддержки этой карты и все, я бы помог, но незнаю куда и что слать.

На счёт того, что и куда слать - спроси в списке рассылки. Думаю с тебя попросят как минимум дампы прошивки видеокарты и логи.

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

А с какого перепугу оно будет пахать на *BSD?

nouveau может пахать на *BSD, если его туда портируют. Но для этого как минимум нужна поддержка KMS. ЕМНИП в OpenBSD были какие-то подвижки на эту тему. Ещё вроде nouveau собирались портировать на OpenSolaris...

Deleted
()

коммент к переводу, может у кого-то не будет выворачивать мозг:

Если ничего не нашлось, попробуйте проделать следующее при помощи i2c-tools (должен быть запущен драйвер nouveau)

ваше предложение читается так, что драйвер должен быть запущен для запуска i2c-tools.

В тоже время в оригинальной новости сказано что-то вроде:

Если этого не присутствует в то время, как вы используете нувё, проделайте следующее как рут используя ...

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

ваше предложение читается так, что драйвер должен быть запущен для запуска i2c-tools.

На самом деле я понял так, что i2c-tools в данном случае имеет смысл использовать только при запущенном nouveau. Сейчас погуглил - блоб тоже предоставляет ядру доступ к i2c-шине карточки, так что видимо я ошибся.

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

> что i2c-tools в данном случае имеет смысл использовать только при запущенном nouveau

вот это уже сложнее для меня. просто такой строчки в выхлопе грепа при запущенном блобе у меня нет. и или у меня карточка старая, что такой строки нет, или в блобе просто такой информации нет (но есть в нувё, и для того, чтобы греп что-то выдал, нужно загружать этот модуль. а иксы мне валить просто не хочется).

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

С каждым днем это все труднее и труднее. Он уже почти на всех букварях с ценной от 25 тыр

sane4ek
()
Ответ на: Как там nouveau? от Eddy_Em

Оно уже CUDA
Who cares?
> и openGL4 умеет?
Я помню два приложения, использующих OpenGL 4, и оба от Unigine Corp. Назовёте третье?

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

Зачем он нужен? Я могу установить проприетарный драйвер и все будет работать.
И Xrandr, и применение ICC-профилей при загрузке?

RussianNeuroMancer ★★★★★
()
Ответ на: untitled от Bear_Grylls

Смысл писать свои дрова под нвидию?
Прочитай моё сообщение выше.

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

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

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

Эта фича видеокарт с появлением H.264-видео кодированного с профайлом Hi10P, превратилась в тыкву.

Спорно. Судя по некоторой информации, аппаратный декодер - это не просто «чёрный ящик», которому на вход подаётся кодированный поток и с выхода получается картинка. Там похоже программируемый DSP с кучей команд, которые ему задаёт драйвер при инициализации декодирования. Так что теоретически с помощью этого DSP можно реализовать всё, что угодно (в том числе Hi10P), лишь бы были нужные команды и хватило памяти с производительностью. Так что если разработчики карточек предусмотрели расширяемость на будущее, то и декодирование новых форматов будет приходить с обновлением драйверов...

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

Я всегда думал что под bsd есть проприетарник у nvidia.

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

Там похоже программируемый DSP с кучей команд, которые ему задаёт драйвер при инициализации декодирования. Так что теоретически с помощью этого DSP можно реализовать всё, что угодно (в том числе Hi10P), лишь бы были нужные команды и хватило памяти с производительностью.
Скорее всего так и есть, но проблема в менеджерах. Ни один менеджер в здравом уме не даст добро на добавление подобной фичи с обновлением драйверов. Скорее всего поддержка Hi10P будет начиная со следующих поколений карточек, и то не раньше 2013 года. Вряд ли к 2012 AMD и nVidia раскачаются добавить поддержку.

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

Собственно, у нас перед глазами уже есть живой пример: VP8. В VP8 нет ничего, чего нельзя было бы декодировать на DSP, поддерживающим H.264, но прошло полтора года, а поддержки всё ещё нет, в том числе в вышедших за это время видеокартах. И пока всё ещё не известно, когда она будет.

RussianNeuroMancer ★★★★★
()

Я б может и помог, я человек отзывчивый, но на нотике предустановленная SLED со всеми блобастыми дровами. Жалко такую красоту убивать, заглючит чего-нибудь и хрен поправишь.

P.S. Проверено: Shaman007, исправлений: 16. ЛОР торт.

hadagnahash
()

Бен! Это Данила! Ай нид хэлп!

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

Я б может и помог, я человек отзывчивый, но на нотике предустановленная SLED со всеми блобастыми дровами. Жалко такую красоту убивать, заглючит чего-нибудь и хрен поправишь.

А зачем «красоту убивать»? Можно просо запустить livecd =).

Deleted
()

Eee 1215n не подошёл, а жаль - очень хотелось помочь ребятам, правильное дело делают. :)

cruxish ★★★★
()

Отправил всю необходимую информацию разработчику. Надеюсь поможет.

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

Ага, возможно это именно то, что нужно. У меня драйвер был явно более старый.

Спасибо, надо будет как-нибудь попробовать.

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

в архивах драйверов есть скрипт ../obj/nvidia-bug-report.sh - запустить его от рута и отправить лог на соотв адрес с кратким описанием сути проблемы в теме письма... там разберутся...

fidaj
()

не получилось :( ноут ASUS

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

>Говорят же тебе, что для новых ноутбучных карт проприетарных драйверов нет.

где про это почитать?

у меня asus 1201nl (Ion)

полазил по нету, что-то нет таких тем нуво против нвидия, только таблица, в которой разберется только тот кто написал её ))

странная в общем линукс погода... собираешься брать карточку, советуют нвидию...проходит время уже радеон хороша...

может кто нить таки осилит создать полноценную статью нуво вс нвидия ))

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