Драйвер Ethernet контроллеров семейств SMC91c9x и SMC91c1xx (SMC9000)
io-pkt-* -d smc9000 [,опция[,опция ...]] ...
- connector=0|1|2
- Тип разъема сетевого кабеля:
-
0
- BNC
-
1
(по умолчанию) - UTP
-
2
- AUI
- duplex=0|1
- Полудуплексный (
0
) или полнодуплексный (1
) режим. Для поддерживаемых устройств значение по умолчанию определяется автоматически. Если указана опция duplex, также следует указать скорость (опция speed); если указана только опция дуплексного режима, то она игнорируется и выполняется автоматическое согласование как скорости передачи, так и дуплексного режима.
- iftype=число
- Тип интерфейса (из
<net/if_types.h>
). Значение по умолчанию – IFT_ETHER
.
- ioport=адрес
- Базовый адрес портов ввода-вывода. Параметр адрес должен быть шестнадцатеричным адресом (например,
0x320
). Для поддерживаемых устройств значение по умолчанию обнаруживается автоматически (см. предупреждение ниже).
- irq=число
- Номер прерывания (IRQ) интерфейса. Для поддерживаемых устройств значение по умолчанию определяется автоматически.
- lan=число
- Номер подсети (LAN). Значение по умолчанию –
0
.
- mac=XXXXXXXXXXXX
- MAC-адрес контроллера. Обязательно задайте MAC-адрес для этого контроллера.
- media=число
- Тип среды передачи (из
<hw/nicinfo.h>
). Значение по умолчанию – NIC_MEDIA_802_3
.
- mru=число
- Максимальная длина принимаемого пакета. Значение по умолчанию –
1514
.
- mtu=число
- Максимальная длина передаваемого пакета. Для поддерживаемых аустройств значение по умолчанию (
1514
) определяется автоматически.
- nomulticast
- Запретить отправку/получение драйвером многоадресных пакетов. По умолчанию многоадресная передача разрешена.
- num_rx=число
- Размер внутреннего пакетного кэша (по умолчанию -
128
).
- phy=число
- Адрес подключенного контроллера физического уровня (PHY).
- pmmparent=строка
- Перезаписать родительский компонент в путевом имени для регистрации в управлении питанием.
- priority=N
- Приоритет потока событий драйвера. Значение по умолчанию –
21
.
- promiscuous
- Активировать "неразборчивый" режим. По умолчанию этот режим отключен.
- qnet
- По умолчанию полученные пакеты помещаются в память со смещением 2 байта от начала npkt. Это полезно для TCP / IP, поскольку он выравнивает заголовок IP, который начинается после 14-байтового заголовка MAC Ethernet. Однако это НЕ помогает qnet, так как он уже выполняет свои собственные 2-байтовые дополнения для выравнивания - это приводит к тому, что qnet делает копию каждого полученного пакета для его повторного выравнивания. Если большая часть трафика вашего протокола - это qnet, используйте эту опцию командной строки, чтобы избавиться от двухбайтового смещения и, таким образом, избежать копирования пакета qnet.
- speed=10|100
- Скорость передачи данных в среде передачи (режим 10 Мбит/с или 100 Мбит/с). Для поддерживаемых устройств значение по умолчанию определяется автоматически. Если указана опция speed, также следует указать дуплексный режим (опция duplex); если указана только опция скорости, то заданная скорость будет установлена правильно, однако по умолчанию будет выбран режим полудуплексной передачи (
0
).
- txcap=число
- Установить максимальное количество пакетов, помещаемых в очередь передачи в статическое ОЗУ внутри интегральной схемы. Для 91c111 значение по умолчанию –
1
, поскольку объем встроенной в интегральную схему памяти ограничен (4 пакета). Благодаря ограничению количества передаваемых пакетов предотвращается использование всего объема статического ОЗУ для передачи пакетов и высвобождается объем статического ОЗУ для приема. Это необходимо для предотвращения переполнения при приеме пакетов. Для других микросхем со статическим ОЗУ большего объема ограничение составляет 32 пакета.
- probe_phy=X
- Если Х не равен нулю, будет происходить мониторинг состояния устройства. Это будет ухудшать производительность. По умолчанию мониторинг отключён.
- uptype=имя
- Имя интерфейса. Значение по умолчанию –
en
.
- variant=имя
- Настроить драйвер для определенного варианта платы. В настоящее время реализована поддержка следующих вариантов:
- generic
- assabet
- dbpxa250dp
- graphicsmaster
- innovator
- pxa250tmdp
- verbose=число
- Вывести расширенную информацию. Для вывода более подробной информации укажите число (число может принимать значения в диапазоне от
1
до 4
; чем больше значение, тем более подробная информация выводится). Значение по умолчанию – 0
. Информация выводится в slogger; для просмотра информации следует вызвать sloginfo.
- width=8|16|32
- Формат доступа для ввода-вывода (
8
, 16
или 32
разряда). Значение по умолчанию – 16
.
 | Неправильный выбор формата может привести к блокировке платы или ЦП платформы.
Если указана опция variant, то опцию width можно проигнорировать. |
 | Для разделения опций используется запятая (но не пробелы). |
ЗОСРВ «Нейтрино»
arm, armv7, mips, ppc, x86
Драйвер devn-smc9000.so управляет адаптерами Ethernet, совместимыми с SMC 91c9x/91c1xx. Этот драйвер является драйвером io-net; имена интерфейсов этого драйвера назначаются в виде enX, где X – целое число.
 | В некоторых случаях этому драйверу не удается обнаружить корректные значения опций irq и iorange (в особенности для устройств ISA). Поэтому при использовании этого драйвера следует обязательно задать irq и iorange. |
Некоторые устройства поддерживают аппаратную обработку контрольных сумм, но другие могут выполнять такую обработку только в одном направлении. Для определения возможностей конкретного устройства выполните команду.
ifconfig enX
и найдите в списке поддерживаемых опций следующие:
- ip4csum, ip4csum-rx, ip4csum-tx
- tcp4csum, tcp4csum-rx, tcp4csum-tx
- tcp6csum, tcp6csum-rx, tcp6csum-tx
- udp4csum, udp4csum-rx, udp4csum-tx
- udp6csum, udp6csum-rx, udp6csum-tx
Затем можно воспользоваться утилитой ifconfig для включения/выключения любых опций, поддерживаемых устройством.
- SMC GENERIC
- SMC ASSABET
- SMC DBPXA250DP
- SMC PXA250TMDP
- SMC GMASTER
- SMC TEX405CR
- SMC INNOVATOR
- SMC XINGU8
- SMC DBPXA270DP
Запуск io-pkt-* с использованием драйвера SMC9000:
io-pkt-v4-hc -dsmc9000 iorange=0x200,irq=5
ifconfig en0 10.1.0.184
- /dev/io-net
- Каталог по умолчанию для добавления файлов драйверов и модулей протоколов. Для получения дополнительной информации см. описание io-pkt-*.
Базовые подсистемы ЗОСРВ «Нейтрино», Драйверы
devn-*, devnp-*, ifconfig, io-pkt-*, nicinfo
Предыдущий раздел: Драйверы