Различия
Здесь показаны различия между двумя версиями данной страницы.
| Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
|
playground:playground4 [2013/03/07 15:58] |
playground:playground4 [2013/03/07 16:35] (текущий) |
||
|---|---|---|---|
| Строка 5: | Строка 5: | ||
| ===== Тестирование управления энергопотреблением Mmiotrace ===== | ===== Тестирование управления энергопотреблением Mmiotrace ===== | ||
| + | FIXME Пожалуй, стоит переименовать этот раздел. В нем явно не про тестирование. | ||
| + | |||
| Mmiotrace (отображение трассировки в памяти ввода/вывода) позволяет проследить, что проприетарный драйвер посылает и читает из/в видеокарту. | Mmiotrace (отображение трассировки в памяти ввода/вывода) позволяет проследить, что проприетарный драйвер посылает и читает из/в видеокарту. | ||
| Строка 17: | Строка 19: | ||
| ==== Процесс тестирования ==== | ==== Процесс тестирования ==== | ||
| + | === Создание дампа mmiotrace === | ||
| -- Установите необходимые пакеты | -- Установите необходимые пакеты | ||
| -- Проверьте, что у вас установлен проприетарный драйвер версии 190.42 или выше, а так же его dev-пакет | -- Проверьте, что у вас установлен проприетарный драйвер версии 190.42 или выше, а так же его dev-пакет | ||
| Строка 47: | Строка 50: | ||
| Если вы случайно прервали выполнение сценария //trace.sh//, вы можете заметить, что текущей рабочей директории появились две новые папки -- //nouveau-pm.XXXXXXXXXX// и //nvXX-0xYYYYYYYY-ZZZZ//. Вы можете удалить эти папки (вам понадобятся права администратора) и повторить процедуру, начиная с шага ''**sudo** ./init-trace.sh''. Перед этим рекомендуется перезагрузить систему. | Если вы случайно прервали выполнение сценария //trace.sh//, вы можете заметить, что текущей рабочей директории появились две новые папки -- //nouveau-pm.XXXXXXXXXX// и //nvXX-0xYYYYYYYY-ZZZZ//. Вы можете удалить эти папки (вам понадобятся права администратора) и повторить процедуру, начиная с шага ''**sudo** ./init-trace.sh''. Перед этим рекомендуется перезагрузить систему. | ||
| - | В конце концов, должен создатся файл в текущем каталоге с именем //nvXX-0xYYYYYYYY-ZZZZ.tar.gz//, где //nvXX// это поколение видеокарты и YYYYYYYY это BOOT_0 и ZZZZ от PCI_ID/DEVICE_ID FIXME я не понял о чем тут в конце :( | + | В конце концов, должен создастся файл в текущем каталоге с именем //nvXX-0xYYYYYYYY-ZZZZ.tar.gz//, где //nvXX// это поколение видеокарты и YYYYYYYY это BOOT_0 и ZZZZ от PCI_ID/DEVICE_ID FIXME я не понял о чем тут в конце :( |
| - | Скрипт создаст дамп, который будет выглядить примерно так: nva0-0xa0300b1-05e6-downclock.tar.gz. | + | Пример названия файла созданного скриптом: //nva0-0xa0300b1-05e6-downclock.tar.gz// |
| - | Параметр nva0 запомним. | + | |
| - | Переходим в домашнюю папку пользователя | + | Запомните параметр //nva0//. |
| - | <code=bash>cd</code> | + | |
| - | ==== Скачиваем компоненты vbtracetool ==== | + | |
| - | <code=bash>git clone git://people.freedesktop.org/~stuart/vbtracetool</code> | + | |
| - | Переходим в проект vbtracetool | + | |
| - | <code=bash>cd vbtracetool</code> | + | |
| - | Компилируем | + | |
| - | <code=bash>make</code> | + | |
| - | ==== Получаем bios видеокарты, в имени файла пишем тот параметр, который запомнили ранее ==== | + | |
| - | <code=bash>./vbtracetool -w 2>nva0_vbios.rom</code> | + | |
| - | Пожалуйста, присылайте этот файл (дамп), ваш vbios, а также некоторые дополнительные сведения, которые вы считаете, | + | === Получение BIOS видеокарты === |
| - | иметь отношение на эту почту mmio[точка]dumps[собака]gmail[точка]com. | + | -- Перейдите в домашнюю папку <code=bash>cd</code> |
| + | -- Скачайте ''vbtracetool'' | ||
| + | .. <code=bash>git clone git://people.freedesktop.org/~stuart/vbtracetool</code> | ||
| + | -- Перейдите в папку с исходными кодами vbtracetool | ||
| + | .. <code=bash>cd vbtracetool</code> | ||
| + | -- Скомпилируйте vbtracetool <code=bash>make</code> | ||
| + | -- Получите BIOS видеокарты. В имени файла укажите параметр, который запомнили ранее | ||
| + | .. <code=bash>./vbtracetool -w 2>nva0_vbios.rom</code> | ||
| - | ПРИМЕЧАНИЕ: При отправке дампа он будет загружен на XXX так, что другие люди и разработчики смогут смотреть и помогать. | + | ==== Отправка информации ==== |
| - | Ваш ЭЛЕКТРОННЫЙ адрес БУДЕТ ПУБЛИЧНО доступен. If you wish it may excluded just state in your email. | + | Полученную информацию (дамп и BIOS), а также все сведения, которые вы посчитаете полезными необходимо отправить на адрес [[mmio.dumps@gmail.com]]. |
| - | ==== Ссылки ==== | + | |
| - | * [[https://github.com/pathscale/pscnv/wiki/Pm-mmiotrace|PowerManagement mmiotrace]] | + | |
| - | * [[http://nouveau.git.sourceforge.net/git/gitweb.cgi?p=nouveau/nouveau;a=blob_plain;f=nouveau-pm/README;hb=HEAD|nouveau-pm/README]] | + | |
| + | <note important>Отправленная вами информация будет загружена XXX для того, чтобы разработчики и другие люди могли просмотреть даные, и адрес вашей электронной почты будет публично доступен.</note> | ||
| - | ====== Разработчикам Nouveau нужна ваша помощь. Призыв к владельцам ноутбуков с видеокартами NVidia помочь в улучшении поддержки MXM (Mobile PCI Express Module) в Nouveau ====== | + | ==== Ссылки ==== |
| + | * [[https://github.com/pathscale/pscnv/wiki/Pm-mmiotrace|PowerManagement mmiotrace]] (англ.) | ||
| + | * [[http://nouveau.git.sourceforge.net/git/gitweb.cgi?p=nouveau/nouveau;a=blob_plain;f=nouveau-pm/README;hb=HEAD|nouveau-pm/README]] (англ.) | ||
| - | ==== Источник ==== | + | ===== Помощь в улучшении поддержки MXM (Mobile PCI Express Module) в Nouveau ===== |
| - | Wiki-статья основана на LOR-новости [[http://www.linux.org.ru/news/hardware/6846125/page2|Разработчикам nouveau требуется помощь владельцев ноутбуков!]] | + | Если у вас есть ноутбук с установленным Linux и видеокартой NVidia (в том числе с поддержкой технологии [[wiki:Nvidia Optimus]]), а также немного свободного времени, вы можете помочь проекту, выполнив несколько относительно несложных действий по инструкции |
| - | + | ||
| - | ==== Введение от Миронова Ивана: ==== | + | |
| - | + | ||
| - | Если у вас есть ноутбук с установленным Linux и видеокартой NVidia (в том числе с поддержкой технологии NVidia Optimus), а также немного свободного времени, вы можете помочь проекту, выполнив несколько относительно несложных действий по инструкции (оригинал на английском в письме, вольный перевод на русский — далее). | + | |
| ==== Меры предосторожности ==== | ==== Меры предосторожности ==== | ||
| - | |||
| У меня нет ноутбука с видеокартой NVidia, поэтому не могу проверить, подправить текст wiki-статьи. Поэтому прошу действовать осторожно. | У меня нет ноутбука с видеокартой NVidia, поэтому не могу проверить, подправить текст wiki-статьи. Поэтому прошу действовать осторожно. | ||
| - | Чтобы узнать, можете ли вы помочь, сначала проверьте наличие строки «MXMS» в файлах /sys/firmware/acpi/tables: | + | ==== Создание дампов ==== |
| + | Чтобы узнать, можете ли вы помочь, сначала проверьте наличие строки ''MXMS'' в файлах ///sys/firmware/acpi/tables//: | ||
| <code=bash>sudo grep MXMS /sys/firmware/acpi/tables/*</code> | <code=bash>sudo grep MXMS /sys/firmware/acpi/tables/*</code> | ||
| - | Если файлы с данной строкой нашлись (grep выдал «Binary file XYZ matches»/«Двоичный файл XYZ совпадает»), скопируйте их куда-нибудь. Если ничего не нашлось, попробуйте проделать следующее при помощи i2c-tools (должен быть запущен драйвер nouveau): | + | Если файлы с данной строкой нашлись (grep выдал «Binary file XYZ matches»/«Двоичный файл XYZ совпадает»), скопируйте их куда-нибудь. Если ничего не нашлось, попробуйте проделать следующее при помощи ''i2c-tools'' (должен быть запущен драйвер nouveau): |
| - | + | ** Запустите: | |
| - | * Запустите: | + | .. <code=bash>modprobe i2c-dev |
| - | <code=bash> | + | i2cdetect -l</code> |
| - | modprobe i2c-dev | + | ..Вывод должен выглядеть примерно так: |
| - | i2cdetect -l | + | .. <file>i2c-0 smbus SMBus I801 adapter at 1860 SMBus adapter |
| - | </code> | + | |
| - | + | ||
| - | Вывод должен выглядеть примерно так: | + | |
| - | <code=bash> | + | |
| - | i2c-0 smbus SMBus I801 adapter at 1860 SMBus adapter | + | |
| i2c-1 i2c nouveau-0000:01:00.0-2 I2C adapter | i2c-1 i2c nouveau-0000:01:00.0-2 I2C adapter | ||
| i2c-2 i2c nouveau-0000:01:00.0-0 I2C adapter | i2c-2 i2c nouveau-0000:01:00.0-0 I2C adapter | ||
| Строка 107: | Строка 97: | ||
| i2c-5 i2c nouveau-0000:01:00.0-11 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-6 i2c nouveau-0000:01:00.0-12 I2C adapter | ||
| - | i2c-7 i2c nouveau-0000:01:00.0-8 I2C adapter | + | i2c-7 i2c nouveau-0000:01:00.0-8 I2C adapter</file> |
| - | </code> | + | ** Для каждой полученной строки «nouveau» запустите |
| - | + | .. <code=bash>i2cdetect BUS</code> | |
| - | * Для каждой полученной строки «nouveau» запустите | + | .. Где BUS — число из i2c-BUS (например для i2c-3 нужно запустить ''i2cdetect 3''). |
| - | <code=bash>i2cdetect BUS</code> | + | ** Если вы увидели в выводе числа 0x54 и/или 0x56, то сохраните дампы в файл: |
| - | Где BUS — число из i2c-BUS (например для i2c-3 нужно запустить «i2cdetect 3»). | + | .. <code=bash># Если в выводе было число 0x54 |
| - | * Если вы увидели в выводе числа 0x54 и/или 0x56, то сохраните дампы в файл: | + | |
| - | <code=bash> | + | |
| - | # Если в выводе было число 0x54 | + | |
| i2cdump BUS 0x54 >i2c-BUS-0x54.dump | i2cdump BUS 0x54 >i2c-BUS-0x54.dump | ||
| # Если в выводе было число 0x56 | # Если в выводе было число 0x56 | ||
| - | i2cdump BUS 0x56 >i2c-BUS-0x56.dump | + | i2cdump BUS 0x56 >i2c-BUS-0x56.dump</code> |
| - | </code> | + | |
| - | ==== Далее для получения дампов VBIOS загрузите и соберите envytools ==== | + | ==== Получение дампов VBIOS ==== |
| - | Для сборки потребуются установить дополнительные пакеты: | + | Загрузите и соберите envytools. Для сборки потребуются установить дополнительные пакеты: |
| <code=bash>sudo apt-get install git libpci-dev libpciaccess-dev libxml2-dev \ | <code=bash>sudo apt-get install git libpci-dev libpciaccess-dev libxml2-dev \ | ||
| cmake flex bison libx11-dev libvdpau-dev libxext-dev</code> | cmake flex bison libx11-dev libvdpau-dev libxext-dev</code> | ||
| + | Скопируйте из Git-репозитория исходный код envytools и скомпилируйте программу | ||
| <code=bash>git clone git://github.com/pathscale/envytools.git | <code=bash>git clone git://github.com/pathscale/envytools.git | ||
| cd envytools | cd envytools | ||
| cmake . | cmake . | ||
| make | make | ||
| - | cd .. | + | cd ..</code> |
| - | </code> | + | Снимите дампы |
| + | <code=bash>sudo ./envytools/nva/nvagetbios -s PRAMIN >vbios_pramin.rom | ||
| + | sudo ./envytools/nva/nvagetbios -s PROM >vbios_prom.rom</code> | ||
| - | ==== Снимите дампы: ==== | + | Если nvagetbios выдал ошибку, например |
| - | <code=bash> | + | <code=bash>nvagetbios -s PROM >vbios.rom |
| - | sudo ./envytools/nva/nvagetbios -s PRAMIN >vbios_pramin.rom | + | |
| - | sudo ./envytools/nva/nvagetbios -s PROM >vbios_prom.rom | + | |
| - | </code> | + | |
| - | + | ||
| - | ==== Если nvagetbios выдал ошибку, например: ==== | + | |
| - | + | ||
| - | <code=bash> | + | |
| - | # nvagetbios -s PROM >vbios.rom | + | |
| Attempt to extract the vbios from card 0 (nva8) using PROM | Attempt to extract the vbios from card 0 (nva8) using PROM | ||
| - | Invalid signature(0x55aa). You may want to try another retrieval method. | + | Invalid signature(0x55aa). You may want to try another retrieval method.</code> |
| - | </code> | + | то можете попробовать снять дампы с ACPI. Простейший метод — перезагрузить систему с добавлением ''nouveau.vbios=ACPI'' к опциям ядра, а затем: |
| + | <code=bash>mount -t debugfs debugfs /sys/kernel/debug | ||
| + | cp /sys/kernel/debug/dri/0/vbios.rom ~/</code> | ||
| - | то можете попробовать снять дампы с ACPI. Простейший метод — перезагрузить систему с добавлением «nouveau.vbios=ACPI» к опциям ядра, а затем: | + | ==== Отправка полученных данных ==== |
| - | + | Полученные файлы (со строкой «MXMS», вывод i2cdump, дампы VBIOS) отправьте на [[mmio.dumps@gmail.com]]. | |
| - | <code=bash> | + | |
| - | mount -t debugfs debugfs /sys/kernel/debug | + | |
| - | cp /sys/kernel/debug/dri/0/vbios.rom ~/ | + | |
| - | </code> | + | |
| - | + | ||
| - | Полученные файлы (со строкой «MXMS», вывод i2cdump, дампы VBIOS) отправьте на mmio[точка]dumps[собака]gmail.com. | + | |
| Если возникнут какие-то вопросы — можете ответить на письмо в списке рассылки или связаться с Беном Скеггсом в IRC-канале #nouveau на irc.freenode.net (ник Бена — darktama). | Если возникнут какие-то вопросы — можете ответить на письмо в списке рассылки или связаться с Беном Скеггсом в IRC-канале #nouveau на irc.freenode.net (ник Бена — darktama). | ||
| - | + | ==== Ссылки ==== | |
| - | ===== Ссылки ===== | + | * [[http://www.linux.org.ru/news/hardware/6846125|Разработчикам nouveau требуется помощь владельцев ноутбуков!]] |
| - | + | ||
| - | * [[FIXME]] | + | |
| {{tag>nouveau nvidia fixme тестирование разработка}} | {{tag>nouveau nvidia fixme тестирование разработка}} | ||