SBNI(4)
π SBNI(4) β bestie edition
okay so you're on the i386 Kernel Interfaces Manual page, and today's main character is sbni π (yes the header literally says SBNI(4) up top and i386 Kernel Interfaces Manual right next to it, we love a formal entrance β¨)
πΈ NAME
sbni β the Granch SBNI12 leased line modem driver π
like, it's the driver that makes your leased line modem go brrr. no cap.
β¨ SYNOPSIS
device sbni
that's it. that's the whole vibe check. one line and you're in π
π¦ DESCRIPTION
okay so the sbni driver provides support for leased line modems of these models, and I need you to read the whole list because every single one matters π
SBNI12-02,SBNI12D-02SBNI12-04,SBNI12D-04SBNI12-05,SBNI12D-05, ISA and PCISBNI12-10,SBNI12D-10, ISA and PCI
and also a kit for data link over a voice band, which is lowkey iconic:
SBNI12-11,SBNI12D-11, ISA and PCI.
so here's the tea π: besides the standard port and IRQ specifications, the sbni driver also supports a number of flags which can set baud rate, receive level, and the low three bytes of the Ethernet MAC-address (the high three are always 00:ff:01, periodt, they never change). why do the flags exist? because Granch modems are presented to the system as Ethernet-like network cards π«Ά
the high byte of the flags is a bit field, and it's used to specify the SBNI adapter receive level/baud rate. let's break it down, bestie:
- Bits 0-3: receive level (
0x00..0x0f) - Bits 4-5: baud rate number:
00- 0 baud rate (2Mb in fast mode/500kb in slow)01- 1 baud rate (1Mb/250kb)10- 2 baud rate (500kb/125kb)11- 3 baud rate (250kb/62.5kb)
- Bit 6: use fixed receive level
- if bit 6 is set then receive level will be set according to bits 0-3 value, otherwise receive level will be autodetected π
- Bit 7: use fixed baud rate
- if bit 7 is set then baud rate will be set according to bits 4-5 value, otherwise baud rate is set to 2Mb
fr fr, bit 6 and bit 7 are the "do I want to be a control freak about this or let the hardware figure it out" switches and honestly same π
π FILES
the sources for the driver reside in, and I'm listing them exactly because you WILL need them:
/sys/dev/sbni/if_sbni.c
/sys/dev/sbni/if_sbnireg.h
/sys/dev/sbni/if_sbnivar.h
π₯ SEE ALSO
go read these next, iykyk:
π HISTORY
the sbni device driver first appeared in FreeBSD 4.6. a whole era. we stan a vintage queen π
π AUTHORS
the sbni device driver for FreeBSD 4.x was written by Denis I. Timofeev, partially based on David Greenman's ed(4) driver. earlier versions (available on ftp.granch.com) were written by Alexey V. Zverev. give them their flowers π
and SBNI12 hardware was designed by Alexey V. Chirkov. hardware icon behavior only π§
π one last thing: nothing here is marked deprecated or dangerous, so no scary warnings today β but always keep your flags straight, bestie, because bit 6 and bit 7 lowkey decide your whole receive level and baud rate destiny π
and that's the page, bestie π this little bundle of joy came from Debian, dated January 8, 2002 β vintage, iconic, and still giving SBNI(4) energy β¨π
π¦ where this page comes from
- freebsd 14.5: base 14.5
- freebsd 15.1: base 15.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms