Jump to content

    
Sign in to follow this  
PNO

Требуется COM-port c управлением из-под UEFI BIOS

Recommended Posts

Уважаемые специалисты!

 

Есть такая задача:

 

Пару лет назад нами было разработано некое устройство на процессоре PIC с USB, которое представляет собой USB-шный СОМ-порт, т.е. при подключении к ПК по USB видится ОС как СОМ-порт. И приложение пользователя может работать с нашим устройством как с обычным СОМ-портом (посылать и принимать некие строки символов).

 

Теперь заказчик поставил нам задачу сделать то же самое, но с возможностью управления из-под UEFI BIOS.

Т.е. это должно быть некое устройство, которое видно в UEFI BIOS еще до загрузки ОС, и к которому UEFI BIOS имеет доступ для записи/чтения строк символов, аналогично нашему обычному СОМ-порту.

 

Опыта разработки подобных устройств у нас нет, поэтому просим помощи. Готовы оплатить услуги высокооплачиваемого специалиста для освоения этой технологии.

 

Прошу вопросы и предложения писать не в личку, а на мейл pribor_2003(сами понимаете какой символ)inbox.ru

Share this post


Link to post
Share on other sites

Спасибо за ссылку, мы в курсе, что СОМ-порты на PCI бывают, но нам нужно освоить технологию - самим делать такие платы нужных нам габаритов и с нужным функционалом, а главное - самим программировать интерфейс с ней в UEFI BIOS.

Share this post


Link to post
Share on other sites

Я наверное невнятно изложил задачу.

Постараюсь еще раз сформулировать.

 

Требуется:

Разработать устройство, представляющее из себя СОМ-порт. Куда он втыкается в материнскую плату - юсб или pci - абсолютно неважно. Важно, чтобы мы могли управлять этим устройством из UEFI BIOS. Управлять - это не значит задавать битрейт и четность. Это значит, чтобы у нас было в UEFI BIOS целое СВОЁ меню для управления этим устройством, где будут десятки разных кнопок и десятки разных окошек с выводимыми параметрами. С точки зрения железа эти кнопки будут посылать в СОМ-порт строку символов, а окошки - отображать строки символов, полученные из устройства.

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

 

Share this post


Link to post
Share on other sites
Постараюсь еще раз сформулировать.
да уж.. получилось ещё более невнятно и туманно... :wacko:

Разработать устройство, представляющее из себя СОМ-порт. Куда он втыкается в материнскую плату - юсб или pci - абсолютно неважно.

Исходя из Вашего первого поста

при подключении к ПК по USB видится ОС как СОМ-порт
можно сделать вывод, что устройство должно по USB реализовывать CDC-профиль.

Под той же виндой - нет проблем. А Вы уверены, что USB-хост BIOS-а поддерживает CDC-класс устройств?

Или работа включает в себя в том числе и разработку такого БИОСа? B)

И если нужно будет писать ещё и БИОС (или Вы будете его писать), то зачем тогда CDC? Так как устройство проприетарное, то CDC - лишний костыль, можно сделать проще, без CDC.

Share this post


Link to post
Share on other sites
Исходя из Вашего первого поста

можно сделать вывод, что устройство должно по USB реализовывать CDC-профиль.

Под той же виндой - нет проблем. А Вы уверены, что USB-хост BIOS-а поддерживает CDC-класс устройств?

Или работа включает в себя в том числе и разработку такого БИОСа? B)

 

Нет, вывод из первого поста неверный.

Давайте вообще забудем про первый пост, чтобы не путаться. И про USB тоже забудем.

 

Нам нужен СОМ-порт с возможностью посылать строки и читать строки из UEFI BIOS.

 

Share this post


Link to post
Share on other sites
Нам нужен СОМ-порт с возможностью посылать строки и читать строки из UEFI BIOS.

Подключаться к этому БИОСу он должен каким образом (интерфейс, протокол, etc)?

Share this post


Link to post
Share on other sites

PNO

вы должны понять следующее:

вам придется кроме самого физического устройства сделать/разработать/купить

1) UEFI-драйвер этого физического устройства

2а) API для доступа к этому драйверу, либо

2б) непосредственно скомпилированный код UEFI-модуля, который будет делать всё то что вам нужно, со всеми функциями которые вам нужны.

 

Сейчас необходимо понять, насколько большой вы видите разницу в стоимости между 1)+2а) и 1)+2б).

Если вы считаете, что купив 1)+2а) вы сможете легко превратить этот вариант в 2б), значит вы ничего не понимаете в UEFI.

 

в UEFI издревле другие приоритеты:

1) совместимость

2) быстродействие

3) безопасность (в смысле security, а не safety)

 

к чему я это всё. даже купив готовые исходники, вам придется вникать в суть, и главное, забыть о том, что это может быть "просто".

Share this post


Link to post
Share on other sites
Я наверное невнятно изложил задачу.

Постараюсь еще раз сформулировать.

 

Требуется:

Разработать устройство, представляющее из себя СОМ-порт. Куда он втыкается в материнскую плату - юсб или pci - абсолютно неважно. Важно, чтобы мы могли управлять этим устройством из UEFI BIOS. Управлять - это не значит задавать битрейт и четность. Это значит, чтобы у нас было в UEFI BIOS целое СВОЁ меню для управления этим устройством, где будут десятки разных кнопок и десятки разных окошек с выводимыми параметрами. С точки зрения железа эти кнопки будут посылать в СОМ-порт строку символов, а окошки - отображать строки символов, полученные из устройства.

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

Вы наверное в курсе , что uefi bios (точнее его исходный код и документация) находятся у производителя оборудования, т.е. компьютера? Это не операционная система, которая может распространятся как с платной или бесплатной документацией и со средствами разработки драйверов или модулей. Для того чтобы решить эту задачу - необходимо получить исходный код и документацию на bios, а потом приступать к решению задачи. Если имеется такое на руках - можно начинать или найти специалиста, который в этом разберется

Edited by ichthyandr

Share this post


Link to post
Share on other sites
Вы наверное в курсе , что uefi bios (точнее его исходный код и документация) находятся у производителя оборудования, т.е. компьютера? Это не операционная система, которая может распространятся как с платной или бесплатной документацией и со средствами разработки драйверов или модулей. Для того чтобы решить эту задачу - необходимо получить исходный код и документацию на bios, а потом приступать к решению задачи. Если имеется такое на руках - можно начинать или найти специалиста, который в этом разберется

 

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

 

видимо нужен uefi dxe драйвер для управления внешним устройством через последовательный порт

 

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

Share this post


Link to post
Share on other sites
Документация полностью открыта[/url], есть открытые средства разработки (UDK) и написать графическое/текстовое приложение для UEFI не составляет большого труда.

 

Да, именно на такой вариант мы и рассчитываем.

Share this post


Link to post
Share on other sites

А если взять ПЛИС с PCIExpress и прописать в Configruation Header

Class Code 0x07 - Simple Communication Controller,

Sub-Class 0x00

Interface 0x01 ... 0x06 16xxx-compatible

А дальше к нему прикрутить контроллер, к примеру контроллер 16650,

то может он сможет автоматически распознаваться в UEFI?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this