1 |
If you own a SPARC system with a qla2xxx fibre channel adapter - SUN |
2 |
Blade 1000/2000 for instance - you have been through a lot to get it |
3 |
working with a recent kernel. |
4 |
|
5 |
Before kernel 2.6.18 was released it worked out of the box but then the |
6 |
firmware has been removed from the kernel(due to licence issues) and an |
7 |
initramfs was required to boot such a system. |
8 |
|
9 |
http://www.gentoo.org/proj/en/base/sparc/qla2xxx.xml was created to |
10 |
assist users in creating such an initramfs. |
11 |
|
12 |
Not any more! |
13 |
|
14 |
In kernel 2.6.27 a new features has been added that allows you to |
15 |
compile 3rd party (including non-GPL) firmwares directly into the |
16 |
kernel. |
17 |
|
18 |
To set it up you need to install the kernel |
19 |
>=sys-kernel/vanilla-sources-2.6.27_rc1 |
20 |
or |
21 |
>=sys-kernel/gentoo-sources-2.6.27 |
22 |
|
23 |
and the firmware for the qla2xxx adapter |
24 |
sys-block/qla-fc-firmware |
25 |
|
26 |
open up your kernel's menuconfig and set |
27 |
Device Drivers ---> |
28 |
Generic Driver Options ---> |
29 |
External firmware blobs to build into the kernel binary |
30 |
to "ql2200_fw.bin" |
31 |
|
32 |
and |
33 |
Device Drivers ---> |
34 |
Generic Driver Options ---> |
35 |
Firmware blobs root directory |
36 |
to "/lib/firmware" |
37 |
|
38 |
translated to .config this means: |
39 |
CONFIG_EXTRA_FIRMWARE="ql2200_fw.bin" |
40 |
CONFIG_EXTRA_FIRMWARE_DIR="/lib/firmware" |
41 |
|
42 |
Compile it, boot it and during the boot-process you'll see this line |
43 |
that indicates that everything works as it should: |
44 |
firmware: using built-in firmware ql2200_fw.bin |
45 |
|
46 |
|
47 |
Please note, the linux kernel is GPL, the qla2xxx firmware is NOT. That |
48 |
means you may not redistribute the resulting kernel image. |
49 |
However, you may redistribute both, the linux kernel(source) and the |
50 |
firmware seperatly(under the terms of their licences) and provide |
51 |
instructions to others on how to compile it. |