M. Vefa Bicakci 3dc5327a84 bnxt_en: Automatically load bnxt_re
This commit ensures that the bnxt_re module is automatically loaded
whenever bnxt_en is loaded by StarlingX's boot-up process or manually by
the user.

The bnxt_re module is not automatically loaded, and this requires
manually loading the module before being able to use RDMA.

In contrast, bnxt_en has aliases that allows it to be automatically
loaded on systems with compatible Broadcom network adapters.

This commit adds a 'softdep' modprobe hook for bnxt_en, so that the
bnxt_re module is automatically loaded after the bnxt_en module is
loaded.

In terms of alternatives, the following options were considered:

- Always load bnxt_en and bnxt_re, like Mellanox OFED's drivers.
  This option's main drawback is that the modules will always consume
  resources such as kernel memory, even when a compatible network
  adapter is not available.

- Use install and remove hooks.
  This option is functionally similar to having a softdep hook, but
  allows the use of arbitrary shell commands. We did not opt for this
  option, because the modprobe.conf manual page mentions that the
  install/remove hooks will eventually be deprecated.

Verification
- An ISO image was built successfully using a monolithic incremental
  build procedure.
- The built ISO image was installed onto a virtual machine in All-in-One
  simplex mode, low-latency profile.
- The bnxt_en module was loaded using "sudo modprobe bnxt_en". "lsmod"
  showed that both bnxt_en and bnxt_re were loaded.
- The bnxt_en module was removed using "sudo modprobe -v -r bnxt_en",
  which indicated that bnxt_re and bnxt_en were removed, in that order.
  The end result was confirmed with "lsmod".

Story: 2009915
Task: 44917

Change-Id: I6f58ed7b1cd07d856ae9fba5f27820adf8f649d0
Signed-off-by: M. Vefa Bicakci <vefa.bicakci@windriver.com>
2022-04-07 15:48:17 -04:00

13 lines
518 B
Plaintext

COPY_LIST=" \
$PATCHES_BASE/* \
$PKG_BASE/files/modprobe.conf \
$STX_BASE/downloads/netxtreme-bnxt_en-1.10.2-220.0.13.0.tar.gz \
"
OPT_DEP_LIST_FOR_BUILD_TYPE[std]=$GIT_BASE/kernel-std
OPT_DEP_LIST_FOR_BUILD_TYPE[rt]=$GIT_BASE/kernel-rt
BASE_SRCREV_FOR_PATH[$GIT_BASE/kernel-std]=1378583af6e040bc974f67850cd44e0c62d42f81
BASE_SRCREV_FOR_PATH[$GIT_BASE/kernel-rt]=1378583af6e040bc974f67850cd44e0c62d42f81
PKG_BASE_SRCREV=1378583af6e040bc974f67850cd44e0c62d42f81
TIS_PATCH_VER=PKG_GITREVCOUNT+OTHER_GITREVCOUNT