This is Gentoo's testing wiki. It is a non-operational environment and its textual content is outdated.
Please visit our production wiki at https://wiki.gentoo.org
Handbook:SPARC/Blocks/Kernel
Architecture specific options
Activate the correct bus-support:
'"`UNIQ--pre-00000000-QINU`"'
Of course enable support for the OBP:
'"`UNIQ--pre-00000003-QINU`"'
Enable SCSI-specific support:
'"`UNIQ--pre-00000006-QINU`"'
To support the network card, select one of the following:
'"`UNIQ--pre-00000009-QINU`"'
With a 4-port Ethernet machine (10/100 or 10/100/1000) the port order is different from the one used by Solaris. Use sys-apps/ethtool to check the port link status.
When using a qla2xxx disk controller, install sys-block/qla-fc-firmware and add support for loading external firmware.
'"`UNIQ--pre-0000000C-QINU`"'
Set "External firmware blobs" to ql2200_fw.bin and "Firmware blobs root directory" to /lib/firmware/.
Compiling and installing
With the kernel configured, it is time to compile and install it. Exit the configuration and start the compilation process:
root #
make && make modules_install
It is possible to enable parallel builds using make -j
X
with X being the number of parallel tasks that the build process is allowed to launch. This is similar to the instructions about /etc/portage/make.conf earlier, with the MAKEOPTS variable.When the kernel has finished compiling, check the size of the resulting file:
root #
ls -lh arch/sparc/boot/image
-rw-r--r-- 1 root root 2.4M Oct 25 14:38 image
If the (uncompressed) size is bigger than 7.5 MB, reconfigure the kernel until it doesn't exceed these limits. One way of accomplishing this is by having most kernel drivers compiled as modules. Ignoring this can lead to a non-booting kernel.
Also, if the kernel is just a tad too big, try stripping it using the strip command:
root #
strip -R .comment -R .note arch/sparc/boot/image
Finally copy the kernel image to /boot/.
root #
cp arch/sparc/boot/image /boot/kernel-3.16.5-gentoo