OCE(4)

πŸ’– OCE(4) πŸ’–

okay bestie, buckle up, because today we're talking about oce β€” the device driver for Emulex OneConnect 10Gb network adapters, straight out of the Kernel Interfaces Manual. yes it's giving very "niche network hardware" of it, but honestly? iconic. let's go πŸ¦‹


✨ NAME ✨

oce β€” the device driver for Emulex OneConnect 10Gb network adapters. that's it, that's the girl πŸ’…


🌸 SYNOPSIS 🌸

so if you want this driver baked directly into your kernel (no cap, main character energy), you drop these lines into your kernel configuration file:

device pci
device oce

or, if you're more of a "load it as a module at boot time" kinda girlie, you put this single line into loader.conf(5):

if_oce_load="YES"

both are valid, both are slay, pick your fighter πŸŽ€


πŸ’œ DESCRIPTION πŸ’œ

okay so here's the tea. Emulex OneConnect adapters come in various skews and with different combinations of NIC, FCoE and iSCSI functions. and the oce driver? it claims the NIC functions in all of these adapters. every single one. obsessed 🫢

and it's not just showing up and looking pretty β€” the oce driver supports a whole roster of features:

  • VLAN Hardware offload
  • TCP checksum offload
  • TCP segmentation offload (TSO)
  • Large receive offload (LRO)
  • Bonding
  • Jumbo frames (from 1500 - 9000)
  • Multiple TX queues
  • Receive-Side Scaling (RSS)
  • MSI-X interrupts

like?? that's a full resume. ate and left no crumbs πŸ”₯


πŸ‘‘ HARDWARE πŸ‘‘

the oce driver supports these network adapters, periodt:

  • Emulex BladeEngine 2
  • Emulex BladeEngine 3
  • Emulex Lancer

if yours is on this list, congrats, you're in πŸ’–


🧚 UPDATING FIRMWARE 🧚

important bestie: adapter firmware updates are persistent. this is not a temporary vibe. once it's flashed, it stays flashed. πŸ™ˆ

you can update firmware by following these steps, in order, no skipping:

  1. copy the below code to a Makefile:
KMOD=elxflash
FIRMWS=imagename.ufi:elxflash
.include <bsd.kmod.mk>
  1. replace imagename in the above with the UFI file name ✏️
  2. copy the Makefile and the UFI file to a directory πŸ“
  3. execute make & copy the generated elxflash.ko to /lib/modules πŸ› οΈ
  4. run sysctl dev.oce.<if_id>.fw_upgrade=elxflash πŸŽ›οΈ
  5. reboot the machine πŸ”„

and if something goes sideways with the supplied UFI, the flashing fails with one of these errors:

  1. "Invalid BE3 firmware image"
  2. "Invalid Cookie. Firmware image corrupted ?"
  3. "cmd to write to flash rom failed."
😭 yeah, if you see one of those three, the flash did not eat. it's giving corrupted cookie. try again with a good UFI.

🌈 SUPPORT 🌈

need general information or support? the Emulex website is right here:

http://www.Emulex.com/

or you can E-Mail them at:

freebsd-drivers@emulex.com

go get your answers, bestie, they're literally waiting πŸ’Œ


πŸ” SEE ALSO πŸ”


πŸ’« AUTHORS πŸ’«

the oce driver was written by freebsd-drivers@emulex.com. iconic of them, honestly. thank you for your service 🫑✨


and that's the whole page, bestie!! this one shipped out from Debian and it's dated February 19, 2012 β€” so yes, she's a vintage queen πŸ‘‘πŸ’– go forth and network at 10 gigs, mwah πŸ’…

πŸ“¦ where this page comes from