Удалось мне пропатчить DSDT таким образом, что бы лэптоп просыпался после suspend-2-ram. Делюсь методикой.
Ставим BIOS последней версии.
Вся проблема в том, что последние версии прошивальщиков идут только под Windows. Скрипт для определения, чего и как шить написан на BASICе. Нас это не остановит.
Переименовываем файл прошивки SanAntonion10 BIOS590MP.exe в нечто с расширением rar – 590.rar и распаковываем его UNRARом.
Нас интересуют только файлы с расширением ROM. В зависимости от того, какая у вас видеокарта, выбираем нужный файл (GM – для лэптопов с Intel GMA, PM – для лэптомов с ATI/AMD и nVidia).
Так же нам понадобится DOS-версия флешера phlash16.exe (можно взять из старых версий прошивок в ISO-образе).
Подготовка к прошивке. Загрузочный диск.
Поскольку у меня нет флоповода, я воспользовался DVD. Взял ISO-образ инсталяционного диска FreeDOS, при помощи ISO Master положил в корень диска два файла phlash16.exe и s10pm590.rom. Записал этот образ на DWD-RW.
Прошивка.
Прошивку выполнял как обычно – загрузился со вновь созданного диска. И из командной строки выполнил команду:
phlash16.exe s10pm590.rom /X /MODE=3
Все ключи взяты из батника, который находится в ISO-образе старых версий прошивок. Но, судя по описанию ключей, они не обязательны.
Исправляем DSDT.
Тут я воспользовался мануалом на gentoo-wiki.com – HOWTO Fix Common ACPI Problems.
Нам понадобится Intel ACPI Source Language (ASL) compiler.
Делаем дамп DSDT:
# cat /proc/acpi/dsdt > dsdt.dat
Декомпилируем дамп:
# iasl -d dsdt.dat
Ищем в файле dsdt.dsl слово _OSI, исправляем Store (One, LINX) на Store (0×03E8, OSYS) (как вариант можно использовать Store (0×07D6, OSYS)). Возможно, лучшим вариантом было прикинуться, какой-нибудь Windows, но я поленился
Компилируем заново:
# iasl -tc dsdt.dsl
Если ошибок компиляции небыло, то на выходе получаем два файла – dsdt.aml и dsdt.hex. Нас интересует последний.
Компиляция ядра с новым DSDT.
Далее все строго по мануалу Встраивание в Кернел.
Перегружаемся и проверяем. В моем случае нареканий небыло.
Вообще после всей проделанной работы, у меня сложилось впечатление, что Toshiba намерено внесла такие коррективы в биос.
Comments
Leave a comment Trackback