2026-08-18 09:41:38 -07:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
|
set -euo pipefail
|
|
|
|
|
|
|
|
|
|
# Dev-host module swap: builds the bench ixgbe (the product patch plus the
|
|
|
|
|
# bench-only extras) out of tree and replaces the running driver. Does not
|
|
|
|
|
# survive a reboot; the appliance image gets the product patch from
|
|
|
|
|
# kernel/ixgbe-sff.patch via mkimage instead.
|
Nothing lives outside the repo: the bench ixgbe driver source moves in tracked at kernel/ixgbe-sff/ (build artifacts gitignored, load-ixgbe repointed, module build verified from the new home — the reg_ops/ts_bench bench extras are finally versioned), the ice sff_i2c patch is vendored at docs/nics/e810/ice-sff-i2c.patch with its out-of-tree build recipe (TRACE_INCLUDE_PATH fixup, version-matched Makefile), the e810 NVM flash logistics land in the e810 README (exact package name, rollback -m B49691D578EC into the inactive bank, post-flash inventory failing until power cycle is the expected tell), and every ~/work/phydiag-work pointer becomes an inline statement; phydiag-work, ice-sff, e810nvm and the wiitekphy CLI (a duplicate of documented transport+protocol) are deleted
2026-08-19 16:27:48 -07:00
|
|
|
src=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/kernel/ixgbe-sff
|
2026-08-18 09:41:38 -07:00
|
|
|
make -C "/usr/lib/modules/$(uname -r)/build" "M=$src" modules
|
|
|
|
|
sudo rmmod ixgbe
|
|
|
|
|
sudo insmod "$src/ixgbe.ko" allow_unsupported_sfp=1
|
|
|
|
|
sudo sh -c 'ls /sys/kernel/debug/ixgbe/*/sff_i2c'
|