LINUX.ORG.RU

Эксперименты с прошивкой диска SAMSUNG SP0802N. Есть программные средства заливки, без дополнительно железа?

 , , ,


1

1

Здравствуйте. Есть старенький SAMSUNG SP0802N. Хочу попробовать изменить микрокод управляющей программ, то есть перепрошить. Можно ли это в принципе сделать без привлечения дополнительных проводов, аппаратных средств, возни с системником? Только программно: средствами или загрузочных носителей или дистрибутива GNU/Linux. Чисто поковыряться интересно, модифицировать прошивку.



Последнее исправление: Mindincrash (всего исправлений: 1)

Если на сайте производителя можно скачать прошивку и прошиватель, то можно эту прошивку изучить и поменять. Если нет, то нет. //К.О.

Лучше просверли свой хард, если так хочется его угробить.

legolegs ★★★★★
()

прошивка грузится АТА командой.

в интернетах есть бурн-комплекты (с мэйнкодом). можете пробовать разбирать их.

но, думается, мало что хорошего из этого получится.

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

Бурн-комплект это образ, который можно записать на флешку и прошиться? ATA команды это что вообще? Каким образом обращение проходит к содержимому памяти в которой прошивка и где сама прошивка находится?

Mindincrash
() автор топика
Ответ на: комментарий от NiTr0

Честно, у вас один из самых годных ответов, на первый взгляд. Кстати, тот диск Я отдал и нашел другой для экспериментов, не хуже: MAXTOR STM3160815AS.
Я нашел кое-что, но это даже не образ, а rar архив и как и уда грузить непонятно: http://files.hddguru.com/download/PC-3000-UDMA Support/Seagate/Barracuda 7200...
MAXTOR STM3160815AS-3.AAD-9RA744CP.rar

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

«Прошивка» - частично в маске проца (хотя в самсунгах - не уверен что маска есть/играет сколь-либо важную роль), частично во флэшке, частично - в оверлеях на блинах.

АТА команды - это это

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

хотя в самсунгах

Я отдал уже тот Samsung. Сейчас могу экспериментировать с MAXTOR STM3160815AS
Хорошо, почитаю про эти ATA команды. Спасибо, если еще что-то знаете, то прошу )

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

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

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

у макстора в принципе по большому счету все то же - разве что заливка через терминал

То есть нужна терминальная программа и подключение жесткого диска через COM-порт? Это обязательно? Нельзя вообще перепрошить без колдовства с железом?

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

если для вас проблема воткнуть 3 проводка винту в терминальный разъем, то, думаю, дизассемблировать и понять, что делает несколько сот килобайт кода (да-да, 64кб ПЗУ, 150+кб аппкод + еще килобайт 70 ата оверлеев - это то, что используется в работе, не считая церта который юзается для селфскана), а тем более - осмысленно их поправить, у вас навряд получится. особенно - учитывая отсутствующие знания внутреннего устройства и принципов работы диска даже на базовом уровне...

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

Сейчас он тебе скажет, что «давайте не будем обсуждать меня, я задал конкретный вопрос и хотел бы получить на него ответ» :]

intelfx ★★★★★
()

Я понимаю, что это риторический вопрос

Но — нахрена, т.е.в чём задача? А так вам совершенно верно тут отвечают, тот сунг и этот вот макстор имеют UART на плате, и если проблема его подключить, то… А так — прошить можно АТА командой 92h, важно только, чтоб диск признал то, что вы хотите туда запихать. А так народ грузит даже линукс (на WD через jtag), но всё это требует ненулевых знаний…

olegkrutov ★★
()
Ответ на: Я понимаю, что это риторический вопрос от olegkrutov

А так народ грузит даже линукс (на WD через jtag)

хм, можно линк? интересно на это посмотреть.

там камень вроде без MMU, да и линь наверное максимум по терминалу покричать сможет что-то - но все равно интересно.

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

Немного перефразирую вопрос.
Допустим, у меня есть уже весь тот код, который признает диск и Я не хочу реверсинженерить ЖД, чтобы получить этот код. Прошиться(не получить прошивку) Я могу без дополнительных проводов?

Mindincrash
() автор топика
Ответ на: комментарий от NiTr0

Немного переспрошу.
Чтобы изъять код непосредственно с ЖД нужно подключать дополнительные провода, понятно.
Но чтобы прошить нужно ли что-то подключать или залить в ЖД код можно без дополнительных проводов?

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

Вот вы скачайте пдфку АТА-стандарта

Там описаны регистры диска, какой для чего, описана команда 92h «Download microcode». Если вам лень вникать даже в это, тогда man hdparm, оно умеет лить прошивки (но только в исправный диск). Если хотите зачем-то залить прошивку в свой сигейт, найдите в инете загрузочный образ iso для вашей серии дисков, добудьте оттуда .lod файл, это и есть то, что надо лить в диск.

olegkrutov ★★
()
Ответ на: Вот вы скачайте пдфку АТА-стандарта от olegkrutov

добудьте оттуда .lod файл

.lod или все же .ldr?

регистры диска, какой для чего, описана команда 92h

92h выполняется каким процессором?

Если вам лень вникать даже в это, тогда man hdparm, оно умеет лить прошивки (но только в исправный диск). Если хотите зачем-то залить прошивку в свой сигейт, найдите в инете загрузочный образ iso для вашей серии дисков, добудьте оттуда .lod файл, это и есть то, что надо лить в диск.

Для такой заливки мне не нужно дополнительных проводов?

Mindincrash
() автор топика
Ответ на: И да, если диск исправен, проводов не нужно от olegkrutov

И да, если диск исправен, проводов не нужно
Всё делается через интерфейс.

За это спасибо, Я это хотел услышать больше всего. ISO не нашел, но нашел rar и в нем нет .lod, но есть .ldr
Самая нижняя:
http://files.hddguru.com/download/PC-3000-UDMA Support/Seagate/Barracuda 7200...

Mindincrash
() автор топика
Ответ на: комментарий от olegkrutov

перепакованный архив

Что значит «перепакованный»?
По сути вся прошивка находится в .ldr и этот .ldr это тот же самый .lod, но просто переименованный?
Для перепрошивки через hdparm достаточно этого .ldr файла?
Я iso-образ для перепрошивки не нашел и где взять не знаю.
Простите за глупые вопросы, но если знаете ответы, то ответьте, пожалуйста, чтобы мне дальше легче было предпринимать действия, чтобы понять картину в общем, а потом уже углубляться, если нужно будет.

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

Штатно обновление для сигейтов F3 идет в двух видах

Это образ исо или виндовый инсталлятор, который, кажется, генерит тоже загрузочный образ, который потом надо записать на болванку или флэшку, загрузиться с него и полуавтоматически обновить прошивки дисков. Но если есть другие средства, то важное из этих архивов — только сами файлы с прошивками, которые имеют расширение lod изначально. Наверно, на хддгуру эти файлы те же, просто желе расширение,я не знаю, мы их вытаскивали из архивов, которые раздавал сигейт. Надо попробовать скормить соответствующий ldr вашему диску и посмотреть, что будет. Важно изучить, какая версия прошивки может подойти для какой версии исходной прошивки. Это уж сами, в открытом доступе всё есть, гугл велик.

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

До сих пор не понимаю, зачем вам лезть в эти дебри с таким уровнем знаний

F3 — название архитектурного ряда дисков Seagate

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

Ну просто интересно, извините. Да, Я вообще знаний ИТ не имею и о программировании имею поверхностное представление, но может вникну. Если Вас не сильно затрудняет, то отвечайте, даже если вопросы кажутся совсем детсадовскими. Нашел листинг функции, которая выполняет ATA-команду, но нужно знать порт устройства(какой порт?), MaxBusyTime (word) — это сколько байт и в каком виде?
http://www.argc-argv.com/5_2003/article1.pdf
Ладно, допустим Я сейчас сказал бред(99%). Я знаю как это бывает, когда человек не понимает тему и говорит о чем-то. Что почитать по жестким дискам и их программированию, чтобы стать светлее?

Mindincrash
() автор топика

Надо попробовать скормить соответствующий ldr вашему диску и посмотреть, что будет.

Как скормить? Начало загрузки прошивки это 92h. То есть как-то нужно заставить микроконтроллер ЖД выполнить 92h и остальной код из .ldr. Как Я понимаю, то выполнение 92h + содержимое .ldr с флешки(на которой будет записан этот бинарник 92h+.ldr) ничего не даст, так как выполнение 92h будет на основном процессоре Intel, а не на микроконтроллере жесткого диска. Как заставить выполнять команды именно микроконтроллером жесткого диска, а не центральным процессором?

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

Не-не-не, Дэвид Блейн.

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

olegkrutov ★★
()
Ответ на: Не-не-не, Дэвид Блейн. от olegkrutov

Давайте вы освоите азы и выстроите в голове некую систему понятий

Ок. С чего начать?
--------------------------
Я мыслю, что мне нужен бинарник или img или iso, не важно. В конце бинарника, как Я мыслю, должна быть копия данных из файла .ldr, а вначале бинарниа должна быть программа, которая заставляет писать данные(которые в конце бинарника) частично на флешку жесткого диска и частично на пластины. Ну это наверное особая «магия».

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

С постановки задачи

Если б вам было надо на самом деле просто перешить конкретный диск, то инфы уже выдано вам с избытком. Берите, ищите и шейте.

olegkrutov ★★
()

Чисто поковыряться интересно, модифицировать прошивку.

сам жёсткий диск - некий специальный компьютер

общаешься ты с ним при помощи ATA/SCSI, а так же через SCSI захераченные в ATA и всё в таком духе.

для ATA есть вроде DOWNLOAD FIRMWARE комманда, что за набор байт она скачает только разрабам диска и известно.

какие там команды есть для заливки фирмваре тоже неясно. Фирмварь наверняка должен быть подписан, чтобы всякие мамко какеры не мучили сервис центры зря.

что там за процессор и как взаимодействует с моторами, головками и т.д. тоже неясно. Даже какая у него архитектура неясно.

https://origin-www.marvell.com/storage/assets/Marvell_88SS9187-001.pdf

The 88SS9187 integrates a dual-core
Marvell 88FR102 V5 CPU

этот проц может на основе ARM сделан, но какие там доп команды и т.д. хер знает.

да и понятное дело, что это всё большой рынок, можешь например попробовать у того же марвела референс боард купить

лучше risc-v поизучай

dimon555 ★★★★★
()

поищи ещё эмуляторы жёстких дисков

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

Вау, ого. Это Вы получается нашли процессор Marvell 88FR102 V5 CPU стоящий у какого диска: SAMSUNG SP0802N или MAXTOR STM3160815AS?

Фирмварь наверняка должен быть подписан

Ну хз. Я точно знаю, что пару лет назад жили люди, которые модифицировали прошивки под свои нужды.

поищи ещё эмуляторы жёстких дисков

Хорошо, спасибо за все ответы, очень информативно. Если помните хорошие книги, то прошу.

лучше risc-v поизучай

Так там точно не RISC-V, старый же диск. Ну для будущего, конечно, лишним не будет.

Mindincrash
() автор топика
Ответ на: комментарий от miXel

Хм, разве это не образы для программно-аппаратного комплекса PC-3000? Они, может, совсем по-другому запакованы.

Да, Вы скорее всего правы. Ну хз, поищу.

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