Дэвид Эйрли (David Airlie), один из наиболее активных разработчиков X.Org, выступил (http://airlied.livejournal.com/76383.html) с критикой открытого (http://www.opennet.me/opennews/art.shtml?num=35161) вчера драйвера для видеоускорителя Broadcom VideoCore. Как известно, изначально драйвер был разделён на две части: работающий на уровне ядра модуль и набор библиотек для непосредственного взаимодействия с GPU. Функции модуля, работающего на уровне ядра, сводятся к организации обмена сообщениями между GPU и работающим на уровне пользователя кодом, который до вчерашнего дня распространялся в бинарном виде.
Дэвид Эйрли обратил внимание на то, что даже при открытии пользовательских компонентов драйвера его нельзя рассматривать полностью открытым, так как он очень сильно привязан к загружаемой в GPU прошивке, которая по прежнему остаётся закрытой. В отличие от видеокарт AMD и NVIDIA, в которых тоже практикуется загрузка микрокода, в случае чипов Broadcom на стороне GPU выполняется подобие операционной системы, на стороне которой реализованы многие компоненты, обычно работающих на стороне драйвера. Например, поддержка OpenGL ES реализована целиком на стороне бинарной прошивки GPU. Открытые компоненты по сути являются реализацией RPC-интерфейса для обращения к прошивке.
Таким образом, код открытых пользовательских компонентов драйвера мало что меняет, так как он является лишь высокоуровневой прослойкой для трансляции обращений к бинарной прошивке, выполняемой на стороне GPU. Подобная схема не позволяет независимым разработчикам как-либо повлиять на работу графической подсистемы, например, невозможно внести свои улучшения в реализацию OpenGL ES, добавить новые расширения и даже исправить ошибки. Кроме того, такой подход не даёт невозможность написать драйвер Mesa/Gallium для Broadcom VideoCore.
Являясь мейнтейнером DRM-подсистемы ядра Linux Дэвид Эйрли также заявил, что открытый Broadcom модуль ядра Linux не может быть принят в состав основного ядра Linux, даже несмотря на то, что он распространяется под лицензий GPL. Проблема в том, что драйвер остаётся зависим от проприетарой прошивки и не может рассматриваться как самодостаточный. Дэвид привёл образный пример, указав на то, что драйвер Broadcom напоминает драйвер для Ethernet-карты, у которой весь TCP/IP-стек реализован на уровне прошивки. Подобный подход хорош с точки зрения снятия нагрузки с CPU, но ставит разработчиков в тупик, как только возникает необходимость самостоятельно исправить ошибки или доработать функциональность. По мнению Дэвида ключевым фактором открытия кода является предоставление другим людям возможности внесения улучшения в выполняемые кодом функции, в случае с драйвером Broadcom такая возможность отсутствует.
URL: http://airlied.livejournal.com/76383.html
Новость: http://www.opennet.me/opennews/art.shtml?num=35165
Ох, лол. Сначала радовались, что открыли, потом ругаються, что открыли, да не так. Прям как Солженицин, который кричал, что СССР надо развалить, а когда развалили - кричал, что неправильно.
Ну так двойной перепост с фороникса: не разобравшись сначала начали радоваться, а потом (когда на форониксе появилось опровержение), спховатились. Нет же времени критически рассмотреть новость, надо поскорее к себе запилить.
При чем тут фроникс, когда в официальном анонсе было написано про полную открытость и прочие прелести.В официальном анонсе даже жирным шрифтом выделено: "it does actually mean that the BCM2835 used in the Raspberry Pi is the first ARM-based multimedia SoC with fully-functional, vendor-provided (as opposed to partial, reverse engineered) fully open-source drivers, and that Broadcom is the first vendor to open their mobile GPU drivers up in this way."
> При чем тут фроникс, когда в официальном анонсе было написано про полную
> открытость и прочие прелести.
> В официальном анонсе даже жирным шрифтом выделено: "it does actually mean that
> the BCM2835 used in the Raspberry Pi is the first ARM-based
> multimedia SoC with fully-functional, vendor-provided (as opposed to partial, reverse
> engineered) fully open-source drivers, and that Broadcom is the first vendor
> to open their mobile GPU drivers up in this way."Просто вы гнуторасы, с ГНУ башки мозга - думаете, что открытие сорца это все, алилуйя!
Нет, мы как раз не думаем. Так думают Оэпенсоурцэ Коммуните.
В ГНУ ценится свобода в первую очередь и благие намеряния сразу за ней.
И имееер настоящая, неподдельная свобода. Полусвобода, почтисвобода и прочие маркетинговые наёбки ГНУ не принимает. Или совсем свободно или нахернадо.
СССР развалился не так как хотелось.
Драйверы открылись не так, как хотелось.
> СССР развалился не так как хотелось.СССР развалился? Не, не слышал.
Чо тогда все эти рожи в кремле забыли, если СССР всё?Это же относится к драйверу, который открыли не так, как хотелось. А открывали ли драйвер?
> Чо тогда все эти рожи в кремле забыли, если СССР всё?Царской морде положено сидеть в Кремле.
> Сначала радовались, что открыли, потом ругаються, что открыли, да не так.Скорее, это вопрос к общему довольно странному дизайну чипа.
Вот вот настырные гики! Ну, откроет Broadcom код прошивки, написанной на asm-е некой диковинной архитектуры(допустим) - что это им даст? Тут же потребуют переделать на С? Так и у разбитого корыта остаться недолго.
>на asm-е некой диковинной архитектуры(допустим) - что это им даст? Тут же потребуют переделать на С?Нет. Не тут же и не потребуют. Но да, сделают кодогененратор для неё gcc или llvm какой, перепишут и выкинут блобятину, улучшат и продвинут реализацию, сделают поддержку аппаратного декодирования ogg-theora, avc, wma, приделают opencl... Если это будет кому-то нужно.
Если успеют до (и, м.б., немного после) бродкомовской отмашки "опа, EOL-юшки, пасаны".
> Так и у разбитого корыта остаться недолго.
И Вам успехов в этом.
> Нет. Не тут же и не потребуют. Но да, сделают кодогененратор для неё gcc или llvm какой, перепишут и выкинут блобятину, улучшат и продвинут реализацию, сделают поддержку аппаратного декодирования ogg-theora, avc, wma, приделают opencl...Написано в духе как будто опен-сорс самый лучший и прогрессивный, а проприетарное ПО - УГ. Пока что весь прогресс идет в коммерческом софте, и лишь с некоторым опозданием перекочевывает и реализовывается в открытых аналогах.
> Если это будет кому-то нужно.
А вот это ключевое и как раз поэтому на опенсорс полагаться нельзя если за проектом не стоят коммерческие интересы. Сегодня студенту Васе это нужно и он налабал код, завтра он устроился на работу или родил ребенка и ему это нафиг не сдалось. Как я могу вложиться в технологию, у которой нет гарантированного будущего?
> Пока что весь прогресс идет в коммерческом софте, и лишь с некоторым опозданием перекочевывает и реализовывается в открытых аналогах.
> на опенсорс полагаться нельзя если за проектом не стоят коммерческие интересы.Вы противоречите сами себе.
> Как я могу вложиться в технологию, у которой нет гарантированного будущего?Для любой технологии гарантировано отсутствие будущего.
Как раньше компании вкладывались в разработку ОЗУ на ферритовых кольцах? Так же и сейчас можно.
> Написано в духе как будто опен-сорс самый лучший и прогрессивный, а проприетарное
> ПО - УГ. Пока что весь прогресс идет в коммерческом софте,Да, особенно заметно как прогрессивно майкрософт впаривает клиентуре файловые системы 20-30 летней давности да еще купоны за это внаглую пытается стричь.
> Сегодня студенту Васе это
> нужно и он налабал код, завтра он устроился на работу или
> родил ребенка и ему это нафиг не сдалось. Как я могу
> вложиться в технологию, у которой нет гарантированного будущего?Вот реально — такой жырный или такой тупой?
Лучше вкладываться в васю-проприетарщика, который выдав себя за крупную компанию по разработке софта на всё забьёт послезавтра, да?
С Васей, который под свободной лицензией даёт, можно нанять Петю в случае смерти Васи и продолжить разработки, даже если сами такие тупые, что код прочитать и написать не могём. В отличие от васи-проприетарщика, после отхода которого можно только поплеваться и поорать на отдел ай-ти, который это говно поставил на компы всем.
читаем внимательно: "самостоятельно исправить ошибки или доработать функциональность"
> Ну, откроет Broadcom код прошивки, написанной на asm-е некой диковинной архитектуры(допустим) - что это им даст? Тут же потребуют переделать на С? Так и у разбитого корыта остаться недолго.вообще-то эти гики ничего НЕ требуют.
они просто описали ФАКТ того что в данном случае достаточной открытости нет.
а если будет достаточная открытость, но [например] мега-говённая реализация [как раз которая будет очевидна после открытости] -- то вероятнее всего гики точно так же выразят описание и этого ФАКТА тоже.
но это НЕ требование, а только лишь называние вещей своими именами.
чтобы Вам было проще понять -- я приведу отвлечёный пример:
я говорю вам что "Венда это полное гавно! она меня не устраивает!" (далее я могу привести ряд фактов почему я так думаю. и что конкретно меня в ней не устраивает... но не буду, чтобы не тратить много времени в ЭТОЙ теме)...
...но эти мои слова (про Венду) вовсе не обозначает что я хочу чтобы Майкрософт исправила все те недароботки которые меня в ней бесят. потому что мне и на Федоре хорошо сидится.
вот и с Broadcom VideoCore также.
>Производите сами хардвер, вы, утырки! Технологические линии же просто
>растут на деревьях или самозарождаются в мусорных кучах квартир вас,
>недоумков, с безлимитным личным временем!Вот ты сам незаметно и подошел к важному. Никто и не носится с кличем "Отдайте нам бесплатно хардвер!". Все готовы (и хотят) его покупать. Так твои технологические линии и окупились бы. Только "извольте позволить" нам использовать его так как мы хотим, а не так, как вы нам это навязываете всякими закрытыми дровами. Только опишите подробно в спецификации устройства как и за что его можно дергать, а как нельзя - сломается (хотя это уже плохое устройство, раз нет аппаратной защиты и его можно сломать программным управлением). И, если есть желание, напишите ОТКРЫТУЮ эталонную реализацию драйвера, а нет - сообщество само напишет по спецификации. Если производитель боится, что так конкуренты узнают как функционирует железка и повторят схему - то извините, закрытые дрова не спасут от реверс-инжиниринга, только ненадолго "оттянут позорный конец". И такое вообще надо просто патентом (на устройство и аппаратные решения) защищать, только не до уровня "прямоугольника со скругленными углами".
> просто патентом (на устройство и аппаратные решения) защищатьВотвот, лучше бы аппаратные архитектуры патентовали и открывали, чем всякую хероту.
Там хоть понятно (и документировано), сколько человекочасов ушло на разработку и за что нужна монополия на пару лет.
> Ну и пусть пойдут и сбросятся с 9 этажа, если им что не нравится.
> В этом мире, согласно словам тех же гиков, им никто ничего не обязан.
> Ну просто ничегошеньки! Производите сами хардвер, вы, утырки!
> Технологические линии же просто растут на деревьях или самозарождаются
> в мусорных кучах квартир вас, недоумков, с безлимитным личным временем!Вы, батенька, действительно неадекват. Вам просто указали на то, что заявленное (полная открытость драйверов) - ложь или же геббельсова правда (крохотный кусочек правды и куча лжи).
Вася: Смотрите, вот что я сделал - оно белое!
Петя: Какое же оно белое, оно у тебя почти черное!
Вася: Какое, нафиг, черное - оно белое!
Петя: Нет, не белое, я художником 10 лет работаю, в цветах разбираюсь, оно ближе к черному. Вон и Леха на это указывает. Вон справа больше половины чисто угольно-черным выкрашено.
Вася: Чего это вы меня взъелись, еще и упрашиваете? Нихрена я не буду ту половину белым выкрашивать, я вам этого не должен. И вообще, никто вам ничего не должен! И вообще, вы знаете сколько белая краска стоит? Вы думаете эта краска просто из водопроводного крана течет? Да вы полные утырки!
tl;dr.
А должно быть так:> Вася: Смотрите, вот что я сделал - оно белое
> Петя: Какое же оно белое, оно у тебя почти черное
> Вася: Не нравится - сам покрась как надо, вот тебе референс гайд и химические формулы красок
> Петя: Ок
Жаль, подмога не пришла
Подкрепленья не прислали
это же опенсорс, пусть возьмут да сами напишут
> это же опенсорс, пусть возьмут да сами напишутЩа, погодь, реверсить закончат...
> это же опенсорс, пусть возьмут да сами напишутНу если броадком готов выложить спеки - почему бы и нет?
>> это же опенсорс, пусть возьмут да сами напишут
> Ну если броадком готов выложить спеки - почему бы и нет?Не желаешь на свою зарплатку построить завод по производству чипов OpenHardware? Окажешь ценную услугу человечеству.
>>> это же опенсорс, пусть возьмут да сами напишут
>> Ну если броадком готов выложить спеки - почему бы и нет?
> Не желаешь на свою зарплатку построить завод по производству чипов OpenHardware? Окажешь
> ценную услугу человечеству.Нах завод-то строить? Схему нарисовать, дизайн разработать и заказывать хоть на микроне хоть у тайваньцев, хоть у корейцев, пущай клепают. При нормальных партиях будет стоить всего-то год-полтора работы отряда спецов и 20-40 баксов за чип (при партии хотя бы в миллион)
На сайте Raspberry Pi еще и удаляют гневные комментарии, разоблачающие их "открытость"... Козлы!
козлы? они никому не обязаны вообще-то.
> они никому не обязаны вообще-тоИ что с того?
> козлы? они никому не обязаны вообще-то.Это не отменяет того факта что дезинформировать нехорошо. С другой стороны странно гневаться на тот факт что железка в проце такая какая есть. Чем виноваты распберри? Ну разве что в погоне за дешевизной связались с броадкомом.
И тем не менее, хуже не стало. Лучше стало: для еще 1 SoC и ее странного GPU появился открытый драйвер. Не идеальный, но лучше чем было.
> На сайте Raspberry Pi еще и удаляют гневные комментариину дык что вы ожидали - так всегда поступают с лохами. Просто диву даюсь - как подобные прожекты находят успех в массах, впрочем все как всегда - немного рекламы придающей ощущение халявы и люди в очередь выстраиваются чтобы отдать вам свои денежки.
Да ладно, плата таки дешевая и удобная, хотя лично я так и не смог придумать, зачем бы оно мне понадобилось. Полуоткрытое видео - и черт бы с ним, я так понимаю, в половине приложений там это видео вообще не нужно
Там на этом видео загрузка системы завязана.
http://www.opennet.me/openforum/vsluhforumID3/86989.html#35
> в половине приложений там это видео вообще не нужнотам устаревшее, медленное ядро ARM. ARM как классическая load/store архитектура адово тормозит на системах общего назначения типа Linux, который всю жизнь затачивался энтузиастами под х86 - там практически отсутствуют оптимизации типа zero-copy что в ядре что в программах юзерспейс - на утюгах с полкиловатным БП до этого никому не было дела. Если отбросить DSP - у этого калеки просто никакой процессор.
Угу, а то что Интел что АМД внутри такая же, а снаружи только абстрактная система команд подается, которая потом перекомпилируется и оптимизируется на лету, оналитег не в курсе?
А при чём тут AMD?
> ну дык что вы ожидали - так всегда поступают с лохами. Просто
> диву даюсь - как подобные прожекты находят успех в массах,Ну вы же не выпустили свой прожект с готовым компьютером за 25 и 35 баксов, так? Вот так вот и находят. Перцы просто сделали в чуть ли не полтора землекопа забавную штуку задешево. Как умели. Народу понравилось. Тем более что более хорошие альтернативы по той же цене отсутствуют.
>> На сайте Raspberry Pi еще и удаляют гневные комментарии
> ну дык что вы ожидали - так всегда поступают с лохами. Просто
> диву даюсь - как подобные прожекты находят успех в массах, впрочем
> все как всегда - немного рекламы придающей ощущение халявы и люди
> в очередь выстраиваются чтобы отдать вам свои денежки.Вы и есть лохи. Софт, может, и растет в мусорных кучах в квартирах тебя и подобных тебе, с безлимитным личным временем. А вот хардвер, чувак, на деревьях не произрастает. Производство РЕАЛА стоит РЕАЛЬНОГО БАБЛА, патчи к линю тут в уплату не канают кагбе. Слышишь, Шигорин, ты, идеалист сопливый на зарплате?
> Производство РЕАЛА стоит РЕАЛЬНОГО БАБЛАверно, а лохи типа тебя покупают дерьмо за 25 баксов, потом требуют еще чего-то.
Я вот что-то не пойму.
Идет сравнение с прошивкой Ethernet-карты. А кому-нибудь хоть раз приходилось перепрошивать Ethernet-карту? И если нет, не надумана ли проблема?
На мой взгляд, главное чтобы потом можно было драйвер под любую ОС допилить. Это-то остается возможным?
> А кому-нибудь хоть раз приходилось перепрошивать Ethernet-карту?если до вас не доходит - есть чипы являющиеся по сути миникомпьютером которые сами обрабатывают TCP/IP стек, если и это не доходит - представьте видеоплеер домашний, научить его воспроизводить новый формат например VP8 который производителем не был предусмотрен заранее у вас уже не получится.
Весь драйвер выглядит какvoid doSomething(int pam, double param)
{
RPC_doSomething(pam, param);
}void doSomething1(int pam, double param)
{
RPC_doSomething1(pam, param);
}void doSomething2(int pam, double param)
{
RPC_doSomething2(pam, param);
}где RPC_* - это блоб. А теперь сами оцените его полезность.
Хотя да, такой драйвер просто портировать куда угодно и на что угодно. :)
> где RPC_* - это блоб. А теперь сами оцените его полезность.Внезапно, драйвер диска SATA выглядит не сильно лучше. Мы ему: эй, диск, дай нам сектор 100500. Он в ответ сектор. А как он там голову подвинул и ECC посчитал - нас не волнует. Хоть мы и не сможем в результате менять эти алгоритмы и это в принципе некое ограничение дизайна.
>> где RPC_* - это блоб. А теперь сами оцените его полезность.
> Внезапно, драйвер диска SATA выглядит не сильно лучше. Мы ему: эй, диск,
> дай нам сектор 100500. Он в ответ сектор. А как он
> там голову подвинул и ECC посчитал - нас не волнует. Хоть
> мы и не сможем в результате менять эти алгоритмы и это
> в принципе некое ограничение дизайна.Внезапно, а кто говорил, что это хорошо?
Но они хоть не врут об открытости
>> где RPC_* - это блоб. А теперь сами оцените его полезность.
> Внезапно, драйвер диска SATA выглядит не сильно лучше. Мы ему: эй, диск,
> дай нам сектор 100500. Он в ответ сектор. А как он
> там голову подвинул и ECC посчитал - нас не волнует. Хоть
> мы и не сможем в результате менять эти алгоритмы и это
> в принципе некое ограничение дизайна.В новости же ясно написано - в прошивку всунули тот функционал, который обычно работает на уровне драйвера ОС, а не на уровне среднестатистической прошивки. Там прошивка - переросток.
Т.е. с твоей аналогией получается еще круче. Возможность работать с сектором у тебя забрали. Не можешь ты прочитать произвольный сектор. Зато сделали "лучше"! Туда сразу прошили возможность работать с Ext4 и XFS!!! Тебе не нужны драйвера этих систем в операционке!(и ты не сможешь ими воспользоваться). Вывели для тебя интерфейсы для работы с этими файловыми системами. Просто тупо вызывай какой-нибудь "fileopen" и все тебе будет! Опа, тебе понадобилась JFS или BTRFS на диске? Извини, не получится. Есть только то что есть. Не, добавить не сможешь - исходники не дадим. Опа, проявился косяк Ext4, метаданные при размонтировании теряются? Подождите, скоро выпустим патч, через месяц и снова нет, исходники не дадим.
Ага, а почему линуксоиды тогда не вопят о закрытости firmware для контроллеров НЖМД или даже больше, о закрытости CPU microcode?
The line RMS draws, he says, is: As long as the firmware/software cannot be updated [update](by third persons)[/update], it should be considered and treated as a circuit – which is not open either and doesn’t need to be, because we cannot produce circuits at home anyways.His views have always been extreme. His only computer is a Lemote Yeelong netbook, because it's the only computer which uses only Free software - no firmware blobs, no proprietary BIOS; it's all Free.
Хитрая точка зрения и весьма логичная :)
> Ага, а почему линуксоиды тогда не вопят о закрытости firmware для контроллеров
> НЖМД или даже больше, о закрытости CPU microcode?Потому что разный уровень абстракции, а еще - стандартизация. Управлять режимом разгона шпинделя или каким-нибудь шаговыми двигателем блока головок - зачем? Это не прописано никакими общими стандартами. Каждый производитель может туда воткнуть то что хочет и управлять этим как заблагорассудится. И в НЖМД и в СPU microcode не зашит намертво какой-нибудь важный открытый общепризнанный стандарт, наподобие OpenGL, который постоянно меняется и в реализации которого могут быть ошибки. Причем реализация стандарта в прошивке может быть еще и неполной, а возможности улучшить ее - нет.
> На мой взгляд, главное чтобы потом можно было драйвер под любую ОС
> допилить. Это-то остается возможным?Нет. Нет исходников, одни интерфейсы дергания богатого функционала фирмвари железки или очень тонкая прослойка для передачи сообщений в этот блоб. В случае косяка в ИХ реализации (в их ЗАКРЫТОЙ фирмвари) того же OpenGL ES у вас не будет возможности это исправить. Или при не полной реализации стандарта. Или при выходе новой версии стандарта. Или при идее реализовать совершенно новую, вами придуманную фичу. Вы надеетесь только на то, что то что вам нужно реализует производитель. Через год. Или два. Или никогда.
Проблема, как говорится, системная. Может ли считаться полностью открытой система с открытым ПО, работающим на проприетарном оборудовании? Правильный ответ: ...
Попроси у бродкома полную разводку всех их чипов!
Не забудь разобрать CPU!
Да, вдруг там тоже блоб.
> Попроси у бродкома полную разводку всех их чипов!Даташиты на сайте качать не пробовал?
> Даташиты на сайте качать не пробовал?Пардон, там в лучшем случае формальное описание чипа. А он наверное про послойный лэйаут или VHDL который его порождает.
> А он наверное про послойный лэйаут или VHDL который его порождает.Угу, про них самых.
Дурь какая-то, почему тогда в ведре поставляются дрова для других устройств с микрокодом, а для этого вдруг нельзя?
Можно, всё можно. Не нравится вот это:So really Rasberry Pi and Broadcom - get a big FAIL for even bothering to make a press release for this, if they'd just stuck the code out there and gone on with things it would have been fine, nobody would have been any happier, but some idiot thought this crappy shim layer deserved a press release, pointless
Т.е. то что они раздули такую сенсацию из-за пары десятков весьма бесполезных заголовочных файлов, под видом того что всё сделали открытым.
> but some idiot thought this crappy shim layer deserved a press
> release, pointlessБольше всего порадовал именно _этот_ кусок: слово "shim" (не путать с shill) живо напомнило фонтан пресс-релизов и блого-постов про поддержку restricted boot-ов и ключей мракософтов.
И IM(ns)HO эта цитата очень точно описала _ту _ситуацию.
То, что под него Gallium-драйвер не сделать - уже меняет ситуацию.
> Дурь какая-то, почему тогда в ведре поставляются дрова для других устройств с
> микрокодом, а для этого вдруг нельзя?Просто этот микрокод слишком уж отдельная операционка а не просто сервисная фирмварь.
К слову ... если отрешится от догм и посмотреть в корень. то подход BroadCom очень интересен ... есть внутренная кухня, есть внешний API, который открыт .... мы получаем оборудование с возможность легкого написания драйверов (API то открыт) ... в случае обновления "кухни" GPU нет необходимости производить нкие специфические манипуляции на уровне ядра ...
А если отрешится от корней и посмотреть на все это с высоты птичьего полета, то это всего лишь +1 метод как впарить блоб, и чтоб все при этом были бы счастливы.
А вообще с таким подходом, весь комп можно считать внутренней кухней. :-)
> А вообще с таким подходом, весь комп можно считать внутренней кухней. :-)Простите, но по сути многие компоненты приближаются к такой схеме работы ... возьмем к примеру некий аппаратный RAID .... извините. но драйвер ОС - до сути реализует API, уже есть сетевые карты с похожим решением ....
> А если отрешится от корней и посмотреть на все это с высоты
> птичьего полета, то это всего лишь +1 метод как впарить блоб,
> и чтоб все при этом были бы счастливы.Никто не помешает открыть и фирмварю. Если бы они ее открыли, то тогда могли бы заявлять что оно все полностью открытое (и ты конкретно не написал этот пост про блоб). А так конечно - их заявления - ложь и впаривание блоба. Человек не про блоб говорит, а про концепцию - перетаскивать большие куски функционала из драйверов (выполнение на центральном процессоре) в фирмварю железки (выполнение на специализированном оборудовании), если оно целесообразно.
> А если отрешится от корней и посмотреть на все это с высоты
> птичьего полета, то это всего лишь +1 метод как впарить блоб,
> и чтоб все при этом были бы счастливы.Никто не мешает открыть и фирмварю. Если бы они ее открыли, то тогда могли бы заявлять что оно все полностью открытое (и ты конкретно не написал этот пост про блоб). А так конечно - их заявления - ложь и впаривание блоба. Человек не про блоб говорит, а про концепцию - перетаскивать большие куски функционала из драйверов (выполнение на центральном процессоре) в фирмварю железки (выполнение на специализированном оборудовании), если оно целесообразно.
Это если не хочется получить профит от доработки твоего драйвера другими людьми. Что вызывает всякие подозрения - либо там какие-то DRM, либо программно ограничена производительность в маркетинговых целях, то ли ещё что-то.
> К слову ... если отрешится от догм и посмотреть в корень. то
> подход BroadCom очень интересен ...Он вполне обычен, но в частности это означает что например вы не сможете доделать какой-то мелкий вызов для реализации какого-то нового кусочка. Ничего хорошего в этом нет - весь мир напротив двигает в обратную сторону, в GPGPU, когда GPU можно использовать для произвольных вычислений.
>> К слову ... если отрешится от догм и посмотреть в корень. то
>> подход BroadCom очень интересен ...
> Он вполне обычен, но в частности это означает что например вы не
> сможете доделать какой-то мелкий вызов для реализации какого-то нового кусочка. Ничего
> хорошего в этом нет - весь мир напротив двигает в обратную
> сторону, в GPGPU, когда GPU можно использовать для произвольных вычислений.ФСБ с тобой не согласится - и сильно не согласится.
это вроде как банальщина, обычный подход всех производителей железок - максимум впихнуть в железку, минимум снаружи. Чтобы разгрузить ЦП и систему в целом.
Как говорилось в докладе Raspberry Pi на Google Talks: лучше выпусить полуоткрытую железку для хакеров, энтузиасто и детей, чем сидеть ничего не делая и обсуждать как плохо быть проприетарщиной и почему все не любят опенсорц.Я думаю в ближайшее время Raspberry Pi foundation будет дальше пытаться открывать разные компоненты своего процессора. Как они сами говорят основная проблема - переговоры ведутся с юристами а не с инжинерами, что очень сильно замедляет процесс и само по себе достаточно болезненно :)
> Как говорилось в докладе Raspberry Pi на Google Talks: лучше выпуситьпобедный пресс-релиз об опен-сорц блобе //fixxed
> для хакеров, энтузиасто и детей, чем сидеть ничего не делая
> и обсуждать как плохо быть проприетарщиной и почему все не любят
> опенсорц.
> победный пресс-релиз об опен-сорц интерфейсе к блобу //bugfix.
точно, а если firmware вдруг откроют, тогда пусть verilog чипа ещё открывают, не понятно же что делают эти проклятые DSP инструкции и эти непонятнки не дают реализовать графическую архитектуру новейшую!
Дэвид Эйрли в роли Капитана :). Да, с таким дизайном GPU как-то доработать поддержку GL или что-то там изменить будет проблематично.
Но ведь открыв эту прослойку они же хоть капельку упростили жизнь остальным? Например, дали возможность самостоятельного натягивания всей этой драйверной ерунды на свежие версии ядер Linux, не?
У broadcom нет цели "упростить жизнь".
ЦРУ нужно чтобы их код без палева работал на хомячковых компах.
А чтобы хомяки не галдели, поют песни про "открытые драйвера". Но хомяки суко шибко умные пошли, пропалили подвох и все равно галдят, сопротивляются зонду этакие-разэдакие.
> У broadcom нет цели "упростить жизнь".
> ЦРУ нужно чтобы их код без палева работал на хомячковых компах.
> А чтобы хомяки не галдели, поют песни про "открытые драйвера". Но хомяки
> суко шибко умные пошли, пропалили подвох и все равно галдят, сопротивляются
> зонду этакие-разэдакие.Хомякам кажется, что они дотуя умные, потому что каждый хомяк прочитать и понять смысл кода кагбе не способен абсолютно, и греет ЧСВ только командами ./configure && make && make install, напевая в опеннете песенки о швободке.
>Кроме того, такой подход не даёт возможности написать драйвер Mesa/Gallium для Broadcom VideoCore.Это проблемы Mesa/Gallium - которые с какого то бодуна решили что всё должен делать CPU
>Дэвид привёл образный пример, указав на то, что драйвер Broadcom напоминает драйвер для Ethernet-карты, у которой весь TCP/IP-стек реализован на уровне прошивки. Подобный подход хорош с точки зрения снятия нагрузки с CPU, но ставит разработчиков в тупик, как только возникает необходимость самостоятельно исправить ошибки или доработать функциональность
Да чо там - пусть сразу говорит что раз напридумали всякой аппаратной фигни что бы CPU разгрузить - пройдите на костер
Ишь ересь какая ... CPU разгружать
ЗЫ: чо они там в X.Org курят ?
Открыли код не для того чтобы его раздавать, а для того чтобы сообщество помогло его портировать.
Дай Давиду палец...
Подскажите есть ли в ядре линукса закрытый драйвер для mali 400? Есть конечно открытый драйвер lima под лицензией GPLv2, но если он открыт то включен ли он в состав ядра?
>Кроме того, такой подход не даёт возможности написать драйвер Mesa/Gallium для Broadcom VideoCoreНе понятно почему. Это с лицензиями связано, или с организационными сложностями, или технически невозможно?
Вопрос тем, кто в курсе.
>>Кроме того, такой подход не даёт возможности написать драйвер Mesa/Gallium для Broadcom VideoCore
> Не понятно почему. Это с лицензиями связано, или с организационными сложностями, или
> технически невозможно?
> Вопрос тем, кто в курсе.Это юридически незаконно.
А точнее, что именно запрещает писать или использовать драйвер?
> А точнее, что именно запрещает писать или использовать драйвер?Про что был вопрос про то и был ответ.
>> А точнее, что именно запрещает писать или использовать драйвер?
> Про что был вопрос про то и был ответ.Написано же "Вопрос тем, кто в курсе".
>>> А точнее, что именно запрещает писать или использовать драйвер?
>> Про что был вопрос про то и был ответ.
> Написано же "Вопрос тем, кто в курсе".вот тебе и ответ от того, кто в курсе
>>Кроме того, такой подход не даёт возможности написать драйвер Mesa/Gallium для Broadcom VideoCore
> или технически невозможно?
> Вопрос тем, кто в курсе.Прям как маленький.
Что MESA, что gallium -- это низкоуровневое программирование железа. Они сделали свою месу (=полную замену) в блобе и дали самоструганный из полена, ни с чем не совместимый "оп-сорсный" интерфейс. Да, ещё пара переходников и натуральная меса уже почти вот-вот... уже вылезает... уже краешек виден!
Gallium -- то же, вид с боку: управление железом переместили в ядро, ?или типа того.
Вот в ядре прокладки под блобы нужны ещё больше, чем в MIT-lie-sensed месе, да. Больше блобов в ядре, ура. Всем нравится нвидия, кричали торвальдсы ура и в воздух... И бродком тоже ждёт _горячая встреча. Эйрли уже поднимает стакан... поднимает...
> Да, ещё пара переходников и
> натуральная меса уже почти вот-вот... уже вылезает... уже краешек виден!Тем проще драйвер написать. =)
> Вот в ядре прокладки под блобы нужны ещё больше, чем в MIT-lie-sensed
> месе, да. Больше блобов в ядре, ура. Всем нравится нвидия, кричали
> торвальдсы ура и в воздух... И бродком тоже ждёт _горячая встреча.
> Эйрли уже поднимает стакан... поднимает...Я правильно понял, что блоб Бродкома загружается в их железку как (для примера) фирмварь принтера, а не выполняется в ядре как (для примера) блоб Нвидии?
> Я правильно понял, что блоб Бродкома загружается в их железку как (для
> примера) фирмварь принтера, а не выполняется в ядре как (для примера)
> блоб Нвидии?Ага. При включении питания у них на ежевиках первым просыпается от вечного сна GPU, лезет на специально выделенный на SD-карте _fat_ раздел, грузит с него свою специальную GPU-всюизсебяпроприертарно-зажатую-OS, та уже работает для ARM ядра _начальным загрузчиком. И по счастливой случайности, выполняет opengl-ные запросы, транслируемые ей приоткрыто-сорсной прокладкой.
Почти такое же неизгладмое удовольствие, как пускть OS GNU/Linux _под Hyper-V. Наверное.
Некоторые считают, что переложив те 18Мб с фата на отдельную serial eprom микросхему, можно "полностью освободить" сей выкидышь бродкомовской передовой мысли. Успехов им в труде!
>[оверквотинг удален]
>> блоб Нвидии?
> Ага. При включении питания у них на ежевиках первым просыпается от вечного
> сна GPU, лезет на специально выделенный на SD-карте _fat_ раздел, грузит
> с него свою специальную GPU-всюизсебяпроприертарно-зажатую-OS, та уже работает для ARM
> ядра _начальным загрузчиком. И по счастливой случайности, выполняет opengl-ные запросы,
> транслируемые ей приоткрыто-сорсной прокладкой.
> Почти такое же неизгладмое удовольствие, как пускть OS GNU/Linux _под Hyper-V. Наверное.
> Некоторые считают, что переложив те 18Мб с фата на отдельную serial eprom
> микросхему, можно "полностью освободить" сей выкидышь бродкомовской передовой мысли.
> Успехов им в труде!Это конечно душераздирающая история. Соглашусь, что эту схему извращённые умы придумали, но вопрос был несколько о другом.
Или если вы хотите сказать, что написать драйвер для Месы не позволяет идеология, то это таки ответ на мой вопрос.
> но вопрос был несколько о другом.
> Или если вы хотите сказать, что написать драйвер для Месы не позволяет
> идеология, то это таки ответ на мой вопрос.На основе api-прокладки что ли? Ну, может, студент какой по незнанию и от безделия напишет. Только в апсстрим сие тяни-толкайство не возьмут, потому что поддерживать -- дураков точно нет, а сам [гипотетический] автор и тем более не понянет. Сначала не будет работать половина софта, потом обновится версия иксов или какого апи, _эта _блобятина в третьем поколении (да-да. опен-сорсная, да...) развалится и перестане работать вообще. Ну, мож, раз-другой и найдётся доброхот костыли чинить, но -- конец известен. Бит-рот-десс.
И это при _оптимистическом предположении, что это вообще кто-то напишет.
А так, сферически выражаясь в вакууме, _технических препятствий нет. Берите, товарищ прапорщик, и _пишите.
Идеология ли это? Политика? Не уверен. Подберите сами слово, какое больше понравится.
>Они сделали свою месу (=полную замену) в блобеОни сделали железную реализацию OpenGL ES, которое напомню - явлется стандартом для _встраивамого_ OpenGL http://www.khronos.org/opengles/.
Если авторы Mesa считают что все железячники спят и видят как бы реализовать именно месу - то пусть лучше проспяться. Или хотя бы попробуют пробить Месу в качестве стандарта
>и дали самоструганный из полена, ни с чем не совместимый "оп-сорсный" интерфейс.
Они по сути открыли полный API к железу.
Какая нафиг разница что он настолько высокоуровневый ?Меса плохо согласуется ? Это проблемы Месы.
>>Они сделали свою месу (=полную замену) в блобе
> Они сделали железную реализацию OpenGL ESА _18Мб_ блоба -- это начальный загрузчик для линукса, просто ассемблер того ядра "слегка" неэффективен? Ога-ога. Возм^H^Yсхитительно, однозначно.