Прошить Radeon 9250

Здравствуйте! Пытаюсь написать некоторое подобие флэшера, чтоб работал хотя бы на одном моем компьютере (чисто из интереса:) ). С системной биос все хорошо, спд микру тоже научился... Теперь дошло время и до видеокарты:). Видел примеры для карт nvidia (в flashrom'e), но сомневаюсь, что для ати это прокатит... Посмотрел дров в ативинфлэш. Он явно мапит память, но с другой стороны говорит, что флэшка там M25P16, то бишь SPI, что явно не в пользу метода для нвидиа... Собственно вопрос: может кто располагает даташитом на карту (сам найти, к сожалению, не смог) или знает, какие регистры нужно использовать... Буду рад любой информации. Заранее спасибо:)

дай плиз ссылку, что читать, чтоб разобраться как прогу написать для прошивки

Ну эээ... Во-первых, сорцы юнифлэша и флэшрома в этой же ветке. Во-вторых, на хакер.ру были статьи а-ля "Проникновение в BIOS ROM" или что-то в этом духе... Ну и из личного опыта могу посоветовать дизасм системной биос, слитой из шадоу рам (если биос авард, то ищем сигнатуру и смещение нужной процедуры. Описание структуры - в юнифлэше:). После чего натравливаем на это ида про и смотрим, как биос сам отмапливает, что надо). Вот так как-то:). Насчет спд, тык это то же на хакере было... Даташиты на чипсеты есть...кроме нвидиа, а у меня нвидиа, да еще с не совсем обычной мп с гпо. Помог дизасм:)

Вобщем нашел исходники xf86-video-ati и амдшный M56 Register Reference Guide. Судя по исходникам, смещения нужных регистров должны совпадать. Регистры эти, видимо, SEPROM_CNTL1, SEPROM_CNTL2, ROM_INDEX, ROM_DATA, CONFIG_XSTRAP. Все бы хорошо, но я не очень понимаю, в чем великий смысл поля sec_command при наличии специальных битов для выбора команды, и как собственно запустить транзакцию на шине спи... На чипсетах интел с этим вроде все прозрачно. Пытался научно потыкать, но только повесил комп:(. Может быть, кто-то более опытный сможет разобраться с этим?

Доброе время суток!


Спустя год сам отвечу на некоторые свои вопросы. Последовательность команд, необходимая для запуска транзакции на шине, ясна из исходника stw_flash. Но он написан для ATI Xilleon, причем для открытия доступа к флэшке там используется инициализация регистров GPIO. Попробовал шить, взведя лишь бит RADEON_ROM_WRT_EN в регистре BUS_CNTL, но ничего не выходит. Возникает вопрос: подсоединены ли какие-нибудь пины GPIO к шине SPI на RV280 (на Xilleon - GPIO 10)? И еще: на Mach64 существовал интерфейс в BIOS, подобный AWDFLASH у Award, который в частности предоставлял функцию write ROM byte (описание есть в файле с описанием регистров Mach64 ATI.TXT). Осталось ли что-то подобное на Radeon?
Спасибо заранее:)

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
  • Разрешённые HTML-теги: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img>
  • You can use BBCode tags in the text. URLs will automatically be converted to links.

Подробнее о форматировании текста

Антибот - введите цифру.
Ленты новостей