Before kernel 2.6.18 was released it worked out of the box but then the firmware has been removed from the kernel(due to licence issues) and an initramfs was required to boot such a system.
http://www.gentoo.org/proj/en/base/sparc/qla2xxx.xml was created to assist users in creating such an initramfs.
Not any more!
In kernel 2.6.27 a new features has been added that allows you to compile 3rd party (including non-GPL) firmwares directly into the kernel.
To set it up you need to install the kernel
Code: Select all
>=sys-kernel/vanilla-sources-2.6.27_rc1
or
>=sys-kernel/gentoo-sources-2.6.27
Code: Select all
sys-block/qla-fc-firmware
Code: Select all
Device Drivers --->
Generic Driver Options --->
External firmware blobs to build into the kernel binary
and
Code: Select all
Device Drivers --->
Generic Driver Options --->
Firmware blobs root directory
translated to .config this means:
Code: Select all
CONFIG_EXTRA_FIRMWARE="ql2200_fw.bin"
CONFIG_EXTRA_FIRMWARE_DIR="/lib/firmware"
Code: Select all
firmware: using built-in firmware ql2200_fw.bin
However, you may redistribute both, the linux kernel(source) and the firmware seperatly(under the terms of their licences) and provide instructions to others on how to compile it.
