Автор: Fossa , 10 ноября 2015
Господа, поделитесь своими мыслями вот по такой теме.

Есть ноутбук, ASUS x55sv (Core2Duo T7500, I965PE, nVidia GF9500M GS), мой личный.

У него была видеокарта - GF9500M GS (перемаркированная GF8600M), которая благополучно сдохла. Видеокарта там нужна экзотическая, MXM-II, но "перевёрнутая наизнанку", за новый G84-625-A2 платить 4 тысячи жаба задушила.

Нашёл подобную перевёрнутую видеокарту от Asus a8j, видюха - Radeon HD2400. В игры я не играю, так что так даже лучше - меньше аккумулятор будет жрать и дольше проживёт.

Естественно, он с ней не заработал (нет видео). Вытащил из биоса от a8j нужный модуль, воткнул его в биос для x55sv, прошил - видео появилось, но не работала клавиатура (первые пару секунд работает, в биос войти можно) и кулер молотит на 100%. Причём с оригинальным биосом вставка HD2400 в разъём тоже отрубает клавиатуру.

Взял биос от x55sr (то же, что и x55sv, но с Radeon HD3450), сунул в него модуль для HD2400, подменил идентификаторы на x55sv, зашил - всё работет.

Вернее - почти всё - кулер продолжает молотить на полных оборотах независимо от температуры (родная прошивка ведёт себя так при отсутствии видеокарты).

ВНИМАНИЕ, ВОПРОС:

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

Правильно-ли я понимаю следующие вещи:

1) Где-то лежит код, периодически читающий из порта G84го показания термодатчика. Когда видеокарты нет или видеокарта другая из этого порта читается 0xFF, что код трактует как максимальную температуру и врубает кулер на полную.

2) Оборотами кулеров управляет мульт?

3) Данный код должен храниться в SMBIOS и только там, т.к. биос работает в реальном режиме, при загрузке ОС происходит переключение в защищённый, но обороты по-прежнему регулируются. Т.е. код сидит в области, которая не зависит от режима работы процессора. Может-ли данный код сидеть в видеобиосе?
Содержимое данного поля является приватным и не предназначено для показа.

BBCode

  • HTML-теги не обрабатываются и показываются как обычный текст
  • You may use the following BBCode tags:
    • [align]
    • [b]
    • [code]
    • [color]
    • [font]
    • [hr]
    • [i]
    • [img]
    • [list]
    • [quote]
    • [s]
    • [size]
    • [spoiler]
    • [sub]
    • [sup]
    • [table]
    • [u]
    • [url]
  • Адреса веб-страниц и email-адреса преобразовываются в ссылки автоматически.

Fossa

10 лет 3 месяца назад

Вдогонку - BIOS - AMI 8-ой версии.

igils

10 лет 3 месяца назад

Мимо проходил, я не пограммист.
1. Не 4т.р., а 3 с копейками, ну это мелочи,когда для себя.
2. Если хочется сэкономить, то почему не поставить народный 53-й видик? Всего штука с копейками, да и править, скорее всего, ничего вообще не придется.

Fossa

10 лет 3 месяца назад

Потому, что у 53-его народного видика будет другой PCI ID, вследствие чего ноутбучный биос его не инициализирует. И придётся в лучшем случае подменять ID в видеобиосе.

Ну и 625ый ещё покупать надо, а HD2400 - вот она, уже в ноуте и работает.

igils

10 лет 3 месяца назад

вот она, уже в ноуте и работает.

Ну, наверное, если бы все работало, то и тема бы эта не появилась?

Fossa

10 лет 3 месяца назад

Выглядит интересно (кусок из исходников nvclock). Надо искать чтение из регистра PMC по вот такому адресу.

static int g84_get_gpu_temp(void *sensor)
{
if(nv_card->debug)
{
/* A calibrated value of the temperature is stored in 0x20400, raw in 0x20008 it would require bios info to calibrate it */
printf("NV_20008 (0x20008): %08x\n", nv_card->PMC[0x20008/4]);
printf("NV_20400 (0x20400): %08x\n", nv_card->PMC[0x20400/4]);
}

/* A calibrated value of the temperature is stored in 0x20400 */
return nv_card->PMC[0x20400/4];
}

Fossa

10 лет 3 месяца назад

http://phrack.org/issues/66/11.html - ключ лежит здесь, полагаю.

vas_e30

9 лет 3 месяца назад

Подскажите пожалуйста!
Если я в asus x55s с GF9500M поставлю карту Radeon HD 3470 от asus F8V и прошью биос от asus x55sr (на нем тоже стояла 3470), то все заработает или есть еще какие-то нюансы?

Fossa

9 лет 3 месяца назад

Должно заработать. Я в X55SV зашивал биос от X55SR.

Но лучше - возьмите и перенесите модуль видеобиоса.

И да, кулер работать будет на 100% оборотах постоянно. Я победил только самопальным терморегулятором, ссылку могу дать.

Fossa

9 лет 3 месяца назад

Хотя про кулер - попробуйте... Может быть прошивка биоса от X55SR перепрошьёт EC так, что он будет кулером рулить. Я вставил HD2400, пришлось делать терморегулятор.

Fossa

9 лет 3 месяца назад

Хотя нет, не переносите модуль видеобиоса. Вон писал выше - почему-то клавиатура перестаёт работать, если родной биос от x55sv зашить.

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

Накрайняк - перепрошьёте на программаторе обратно.