Changes

Jump to: navigation, search
Created page with "== Introduction == FreeBSD doesn't enable target mode support for QLogic cards, so we need to compile a custom kernel. We'll assume we have installed a release and we have a..."
== Introduction ==

FreeBSD doesn't enable target mode support for QLogic cards, so we need to compile a custom kernel. We'll assume we have installed a release and we have a populated /usr/src.

== Create the kernel configuration file ==

cat <<EOF >/tmp/FCTARGET
include GENERIC
ident FCTARGET

options ISP_TARGET_MODE
EOF
sudo install -g staff -o aram /tmp/FCTARGET /usr/src/sys/amd64/conf

== Create /etc/make.conf ==

cat <<EOF >/tmp/make.conf
# Build kernel with FC target mode alongside GENERIC
# defaults to installing FCTARGET
KERNCONF=FCTARGET GENERIC
EOF
sudo install -g staff -o aram /tmp/make.conf /etc

== Create /usr/obj ==

Assuming you have ZFS:

sudo zfs create zroot/usr/obj
sudo chown aram:staff /usr/obj

== Build and install the kernels ==

Build the kernels:

cd /usr/src
# builds FCTARGET and GENERIC
make buildkernel -j24

Install the kernels:

# installs FCTARGET
sudo make installkernel

# installs GENERIC under GENERIC name
sudo make installkernel KERNCONF=GENERIC INSTKERNNAME=GENERIC

== Load isp(4) driver in /etc/loader.conf ==

As root:

sudo su -
echo isp_load="YES" >> /boot/loader.conf
echo ispfw_load="YES" >> /boot/loader.conf

== Reboot and test ==

sudo reboot

== References ==

* [https://www.freebsd.org/cgi/man.cgi?query=make.conf&sektion=5&apropos=0&manpath=FreeBSD+11.2-RELEASE+and+Ports make.conf(5)]
* [https://www.freebsd.org/cgi/man.cgi?query=src.conf&sektion=5&apropos=0&manpath=FreeBSD+11.2-RELEASE+and+Ports src.conf(5)]
* [https://www.freebsd.org/cgi/man.cgi?build(7) build(7)]
* [https://www.freebsd.org/doc/handbook/kernelconfig-building.html FreeBSD Handbook: Building and Installing a Custom Kernel]
* [https://www.freebsd.org/cgi/man.cgi?query=isp&sektion=4&manpath=FreeBSD+8.1-RELEASE isp(4)]

Navigation menu