BOCA

ЧТО ВАМ ПОТРЕБУЕТСЯ ДЛЯ УСТАНОВКИ;BOCABOARD?

Сама карта и инструкция к ней

Исходные тексты ядра Linux

Терпение

Далее описана стандартная процедура:

Перекомпиляция ядра

Сначала вам надо сделать так, чтобы ядро "знало", что у вас установлена BocaBoard. К сожалению, этого нет в скрипте конфигурации, и вам придется сделать это в исходных текстах самостоятельно. Это начинается с написания следующей строки в начале linux/drivers/char/serial.c:

   #define CONFIG_BOCA  1

В различных версиях эта строка может немного отличаться, а в новых ядрах вам следует найти "BOCA_FLAGS" #define в serial.c и сменить значение на
#define BOCA_FLAGS  ASYNC_BOOT_AUTOCONF

Затем вам надо перекомпилировать ядро по инструкции, содержащейся в его исходных текстах. Я рекомендую запускать новое ядро с дискеты, пока не удостоверитесь, что оно работает; иначе довольно сложно вернуть систему в первоначальный вид.

Установка карты
Адрес по умолчанию стоит одинаковый, что на карте, что в системе - это 0x100; оставьте его таким же. Установите IRQ на 12. Если вы захотите потом изменить IRQ, вам придется найти "BOCA_FLAGS" в файле serial.c. Вы найдете строку типа:

{ BASE_BAUD, 0x100, 12, BOCA_FLAGS },   /* ttyS16 */
{ BASE_BAUD, 0x108, 12, BOCA_FLAGS },   /* ttyS17 */
...

Вы конечно можете изменить IRQ с 12 на любой правильный, но я этого не делал. Активирование карты в Linux

После того, как вы скомпилировали новое ядро, выключите машину и установите карту. Затем запустите ее с новым ядром с дискеты. Если установка прошла правильно, то вы сможете насладиться кучей сообщений о том, что 16550 UARTS было подсоединено к ttyS16-ttyS32. Потом система успокоится.

Странность в том, что этих файлов нет в;/dev. Помните что они начинаются от 16 и идут до 32. Если вы посмотрите в исходные тексты, то увидите почему так; поддержка других карт идет до этих чисел. Создать эти файлы довольно легко, если знаешь небольшой секрет.

Для того чтобы создать входы для линий dial-out (линии по которым вы дозваниваетесь):

    mknod /dev/cuaxx c 4 N

n = 64 + <line number> . Буква C означает, что это символьное устройство. Например, для того, чтобы создать первую пару линий на вашей карте, введите :

    mknod /dev/cua16 c 4 80
mknod /dev/cua17 c 4 81
...

Для создания линий dial-in (по которым к вам будут дозваниваться клиенты), наберите
mknod /dev/ttySxx c 5 n

Например, для того, чтобы создать первую пару линий на вашей карте, введите :
mknod /dev/ttyS16 c 5 80
mknod /dev/ttyS17 c 5 81
...

Для того, чтобы ваша система была наиболее гибкой, рекомендуется создать линии dial in и dial out для каждого порта. Очень удобно создать одну линию, как dial-out и дозвониться до своего сервера. Я так сделал, и это прекрасно работает! Это пригодится, когда нужно узнать, как все выглядит со стороны; я использовал это, когда хотел увидеть, как все смотрится при скорости 2400. (Это медленнее чем с консоли Linux. НАМНОГО медленнее).Теперь, когда вы с этим покончили, то можете внести строки в файл inittab аналогично стандартным входам ttySx, и все терминалы и модемы должны заработать!

Проблемы

Если у вас есть проблемы, то они, скорее всего, возникли из-за конфликта карты Boca и двойного контроллера IDE. Об этом написал Kevin Traas:

Распознает ли ядро карту? При запуске системы все 16 портов должны быть указаны на экране, а;ttySxx, порты I/O, и IRQ распознаны. По команде `setserial -bg ttyS*` *все* порты должны отображаться на экране.По умолчанию, BB2016 настроено на использование портов IO с 0100 по 017f. Это создает проблемы в системах, в которых естьдвойной IDE контроллер. Второй контроллер, ide1, использует 0170-0177, которые попадают в этот промежуток. Это может привести к большим проблемам!!!

В моем случае решением было указать промежуток использования портов IO от 0200 до 027f. После этого проблем не было; так или иначе вам лучше все перепроверить. (запустите `cat /proc/ioports` и еще `cat /proc/interrupts` для того чтобы удостовериться что IRQ 12 тоже не используется.)

После того, как вы определите неиспользуемый интервал портов и IRQ это еще не все; вам понадобится изменить положение переключателей на BB2016 и изменить /usr/src/linux/drivers/char/serial.c в соответствии с проведенными изменениями. Затем перекомпилируйте ядро и установите его.

БОЛЬШАЯ ТРУДНОСТЬ: Вам еще кое-что понадобится, и это не очень простоЕсли вы хотите использовать карту Boca с любым стандартным разъемом DB-25 RS232, то вам придется приобрести дополнительно переходник, который стоит $ 80. У самой карты есть переходник, но он подсоединяется к карте нестандартным кабелем (магистраль содержащая несколько похожих на телефонные кабелей, то есть не DB-25). От него надо провести кабели на порты. Для этого вам и понадобится переходник за $ 80 который имеет стандартный разъем RS-232. И только теперь у вас есть система которая может работать с модемами и терминалами, поэтому при сравнении с аналогами возьмите цену карты и прибавьте;к ней цену переходника.

Я получил карту Boca 2016 на выставке на специальных льготных условиях, вряд ли вы сможете приобрести ее дешевле или даже за такую же цену. Это произошло тут же на выставке, а вот переходник я смог получить только через две недели. Поэтому вы должны удостовериться. что вы можете найти переходник до того, как приобретете карту. Цена на эти удовольствия составила $ 235 за карту и $ 79.95 за переходник.

Но это было еще не все, на моей карте Boca 2016 работал только один порт. Я позвонил в Boca, думая что мне начнут задавать множество вопросов и давать не меньше советов. Но когда я услышал: "Linux? Что это?" Я почувствовал неладное. После того как я объяснил свою проблему они вежливо сказали мне, что возможно карта с дефектом и я могу ее отослать обратно, так как у нее 5 лет гарантии и ее можно поменять на новую в течении 30-ти дней.;

Я поменял свою карту через продавца. Но к сожалению, я получил ее через 2 недели. Должен признаться, что это мне очень надоело, потому что мне всего лишь надо было чтобы у меня все работало.

У некоторых возникали проблемы с портами после 8-го. Поэтому я проверил свою до 11-го и все порты работали. На будущее я бы посоветовал всем у кого возникнут проблемы с этими картами позвонить напрямую в Boca. На мой взгляд это будет быстрее и возможно более надежно, чем работать с продавцом. В компании все были довольно вежливы и готовы помочь.

Сейчас у меня четыре телефонных линии. Я купил 16-ти портовую карту по двум причинам: она может управлять модемом в отличии от более маленьких и в надежде на будущее расширение.

Kevin Traas из Baan Business Systems написал мне по этому поводу:
BTW, Я несколько раз использовал BB2016 под Linux и у меня не возникло никаких нареканий. Я действительно ей доволен. Они хорошо работают, довольно дешевы и надежны. Они рассчитаны на 115200 bps на каждый порт. У меня была ситуация, когда у меня были две системы соединенные по PPP. Я использовал это соединение с трафиком в 115200 и у меня не было никаких ошибок (при сотнях тысяч пересланных пакетов). Теперь я хочу использовать EQL и дополнительные PPP соединения между переходниками для увеличения пропускной способности...;И еще одно замечание. Не соглашаясь с этим Howto, я сделал свои кабеля на BB2016 (с разъемами RJ). У карты BB2016 есть разъем RJ48-10 с полной поддержкой модема.

Теперь я использую 10-ти жильный провод между картой BB2016 и модемом. И работает это здорово! самой большой проблемой было найти разъемы RJ48.

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

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