Page 2 of 4

Re: Kolibri-А

Posted: Wed Feb 09, 2011 1:33 pm
by art_zh
XVilka

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

В любом случае нужны
1) тысячи человеко-часов каторжной работы, плюс
2) достоверные исходники BIOS для каждой конкретной платформы.

Я вовсе не отвергаю Ваше предложение: есть задачи, для которых овчинка стоит выделки. Какие могут быть варианты их решения?

1) работать с ворованным/взломанным BIOSом: минимум затрат, минимум технической поддержки и никаких шансов для выхода на открытый рынок. Годится для разовых шабашек и закрытых проектов; работает только на одной конкретной доске, переносимость не гарантируется, легального рынка нет.

2) заказать легальные исходники BIOS у производителя: максимум затрат и всяческих проверок на вшивость, полноценная техническая поддержка и полное право на продажи конечного продукта. Открывать исходный код (даже твой собственный) никакая лицензия не разрешит. Переносимость (во всяком случае для одного семейства чипсетов) гарантируется. Идеальный вариант для перспективных коммерческих проектов.

3) использовать альтернативный 32-разрядный загрузчик CoreBoot, заточенный под Линукс-ядро. Очень заманчиво во всех отношениях, но в Колибри под него очень много всего надо перепиливать. К тому же этот загрузчик приходится индивидуально затачивать под каждую систему. Почти все платформы, на которых CoreBoot достоверно и стабильно работает - унылое старьё.

Но есть и кое-что интересное: ASUS M4A78/785, AsRock 939A785, GigaByte GA-MA78* - это всё мои клиенты. Еще в декабре их не было - явно не обошлось без слива из АМД...

yogev_ezra, как насчет CoreBoot-загрузки - может, объединим усилия? (правда, Vortex'ов там в списке нет совсем)

Re: Kolibri-А

Posted: Wed Feb 09, 2011 2:50 pm
by yogev_ezra
art_zh wrote:yogev_ezra, как насчет CoreBoot-загрузки - может, объединим усилия? (правда, Vortex'ов там в списке нет совсем)
Я буду рад помочь, чем смогу - только скажите, чем? В принципе, для Vortex это не нужно, там в заводском BIOS уже есть поддержка загрузки floppy image из BIOS, просто эта опция присутствует не на всех версиях BIOS, и я сейчас ищу подходящую

Re: Kolibri-А

Posted: Wed Feb 09, 2011 4:31 pm
by XVilka
Clean-room reverse engineering еще никто не отменял. :)

А по поводу Setup-меню, не проще ли его на самой Колибри реализовать? Не вижу в нем особого смысла, если честно.

Re: Kolibri-А

Posted: Wed Feb 09, 2011 6:04 pm
by art_zh
yogev_ezra wrote:Я буду рад помочь, чем смогу - только скажите, чем? В принципе, для Vortex это не нужно, там в заводском BIOS уже есть поддержка загрузки floppy image из BIOS, просто эта опция присутствует не на всех версиях BIOS, и я сейчас ищу подходящую
Я зашился с новым графическим движком, приветствуются любые отзывы/тесты/багфиксы. Кстати, подобная графика имхо и Вам не помешает - никакой привязки к AMD/ATI там нет.

Re: Kolibri-А

Posted: Wed Feb 09, 2011 6:24 pm
by yogev_ezra
art_zh wrote:Я зашился с новым графическим движком, приветствуются любые отзывы/тесты/багфиксы. Кстати, подобная графика имхо и Вам не помешает - никакой привязки к AMD/ATI там нет.
Готов потестировать, только скажите, как. Мы используем Kolibri Trunk (Auto-Build by CleverMouse).

Re: Kolibri-А

Posted: Wed Feb 09, 2011 6:47 pm
by art_zh
yogev_ezra
Еще нечего тестировать - код сырой, ядро вылетает, не успев дорисовать все иконки. Я включу А-версию в автосборку как только добьюсь стабильной работы графики.

Интересно было бы обсудить общую концепцию (пока она еще не закостенела) и вставку тайловой графики в основной транк в соответствующей теме.

И еще - я выкинул (за ненадобностью) генератор графических обоев из graph32.inc . Мне они нафиг не нужны, но в транке без них нельзя. Кто возьмется привинтить обои к тайловому движку?

XVilka
Сетап, помимо всего прочего, дает возможность ручной настройки контроллера памяти. Тащить ее в Колибри - значит грузить ядро в голый кэш с неинициализированным RAMом. Та еще задачка...

Re: Kolibri-А

Posted: Wed Apr 27, 2011 10:21 am
by XVilka
Вот, поскольку сейчас экспериментирую с загрузкой колибри без биоса - возникла задачка, зачем вообще нам 16-битный загрузчик? Может на 32 бита перепишем? Выкинем еще немного кода?

P.S. Кстати, теперь AMD coreboot официально поддерживает и сама код контрибьютит. А еще гугл вливание большое сделал.

Re: Kolibri-А

Posted: Wed Apr 27, 2011 12:11 pm
by art_zh
XVilka
С настройкой чипсета и контроллера памяти CoreBoot конечно справится лучше чем BIOS.
Вот только bios-диски придется выкинуть, вместе с VM-режимом.
Может и фиг с ними?
SB700 отлично эмулирует PATA-режим для SATA-дисков, а без флэшки во встроенной системе вполне можно обойтись...

Re: Kolibri-А

Posted: Wed Apr 27, 2011 1:54 pm
by XVilka
фиг с ними, с дисками, а усб - все-равно только пока в учи-режиме работает, пока можно и без него

Re: Kolibri-А

Posted: Wed Apr 27, 2011 4:24 pm
by Mario
Такие эксперименты лучше отдельной веткой проводить, а сливать с основными только после полной проверки. Мне например на транковом ядре /bdX/X/ диски нужны, а если речь исключительно про ветку Колибри-А, то тут уж автор ответвления сам решает.

Re: Kolibri-А

Posted: Wed Apr 27, 2011 5:57 pm
by art_zh
Mario
CoreBoot надо затачивать надфилем буквально под каждый провод на конкретной матери.
Тут даже по "удачным" инсталляциям можно судить - то мыш не пашет, то питание не выключается...
Так что ни о каком сливе экспериментального кода в транк речь не идёт.

Но сама идея
"Колибри - в ROM, а BIOS - к черту!" (С)
достаточно красивая, чтобы ее попробовать.

Re: Kolibri-А

Posted: Wed Apr 27, 2011 10:50 pm
by VaStaNi
art_zh wrote:CoreBoot надо затачивать надфилем буквально под каждый провод на конкретной матери.
наверное более конкрентее или правильнее сказать - чипсет!
Имеешь по нему доки открытые, или даже биос сорец, или куски сорцов работы с "чипсетовыми глубинами" - тогда "на коне" в данном деле. Не только надфилем, но и "алмазной пастой" доводить надо! :D
Такого уродства и избыточности насмотришься, порой в BIOS коде, что диву даешься, какие индусы его писали и какой менеджер проекта его тупо компилил, что там штук 5-6, например клон-процедур работы с PCIcfg...
art_zh wrote:Но сама идея
"Колибри - в ROM, а BIOS - к черту!" (С)
достаточно красивая, чтобы ее попробовать.
да, но надо иметь определенную долю фанатизма, профессионализма и интреса, чтобы заниматься этим очень низкоуровневым, "узкозаточенным" делом с большим расходом сил, времени и сомнительным по сути результатом. Хорошо, когда путями хаживал хотябы кто то и как то, например AWARD BIOS!
"Вкусняшка" копаться в нем, хоть и отживает, наверное свое... жаль!

Re: Kolibri-А

Posted: Thu Apr 28, 2011 12:39 am
by art_zh
VaStaNi
Дело не в чипсете (на него документацию найти несложно), а именно в проводах - они на каждой материнке проведены по-своему.

Пример из жизни: шина PCIe управляется с Северного моста RS780; регистровая модель управления шиной хорошо и понятно документирована, даже типовые протоколы треннинга линий детально прописаны. Только сигнал Bus_Reset заведён на разъём неизвестно откуда. А без него этот самый треннинг не идёт.
После четырёх часов ручной трассировки проводников (под микроскопом!) установлено, что Reset управляется не с NB, и даже не из SB, а вообще через SIO. Так бьло ASUSу удобно. А MSI его вполне может через GPIO Южного моста нарисовать - и так везде!

Re: Kolibri-А

Posted: Thu Apr 28, 2011 9:12 am
by VaStaNi
Как я тебя понимаю...
Я тебе мысленно памятник воздвиг после прочтения. Тройной респект!
Кстати тут у меня мать и кажется 780я и AMDшная... или тебе этого добра довольно уже?

Re: Kolibri-А

Posted: Tue May 10, 2011 3:55 pm
by art_zh
svn1928: добавлена поддержка процессоров Phenom и Fusion

VaStaNi
Не знаю куда девать :)
Но очень бы хотелось чтоб хоть кто-то оттестил...