public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] genkernel r612 - trunk
@ 2008-03-10  0:38 Andrew Gaffney (agaffney)
  0 siblings, 0 replies; only message in thread
From: Andrew Gaffney (agaffney) @ 2008-03-10  0:38 UTC (permalink / raw
  To: gentoo-commits

Author: agaffney
Date: 2008-03-10 00:38:49 +0000 (Mon, 10 Mar 2008)
New Revision: 612

Modified:
   trunk/ChangeLog
   trunk/gen_cmdline.sh
   trunk/gen_determineargs.sh
   trunk/gen_initramfs.sh
   trunk/genkernel.conf
Log:
Add support for --firmware and --firmware-dir options to include firmware in the initramfs

Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog	2008-03-09 17:54:44 UTC (rev 611)
+++ trunk/ChangeLog	2008-03-10 00:38:49 UTC (rev 612)
@@ -2,6 +2,11 @@
 # Copyright 2006-2008 Gentoo Foundation; Distributed under the GPL v2
 # $Header: $
 
+  10 Mar 2008; Andrew Gaffney <agaffney@gentoo.org> gen_cmdline.sh,
+  gen_determineargs.sh, gen_initramfs.sh, genkernel.conf:
+  Add support for --firmware and --firmware-dir options to include firmware in
+  the initramfs
+
   09 Mar 2008; Andrew Gaffney <agaffney@gentoo.org> generic/linuxrc:
   Apply patch from Vince C <v_cadet@yahoo.fr> to mount sysfs prior to loading
   modules, so that the mdev firmware loading can actually work

Modified: trunk/gen_cmdline.sh
===================================================================
--- trunk/gen_cmdline.sh	2008-03-09 17:54:44 UTC (rev 611)
+++ trunk/gen_cmdline.sh	2008-03-10 00:38:49 UTC (rev 612)
@@ -117,6 +117,11 @@
   echo "	--initramfs-overlay=<dir>"
   echo "				Directory structure to include in the initramfs,"
   echo "				only available on 2.6 kernels"
+  echo "	--firmware"
+  echo "				Enable copying of firmware into initramfs"
+  echo "	--firmware-dir=<dir>"
+  echo "				Specify directory to copy firmware from (defaults"
+  echo "				to /lib/firmware)"
 }
 
 usage() {
@@ -476,6 +481,15 @@
 			CMD_LUKS=1
 			print_info 2 "CMD_LUKS: ${CMD_LUKS}"
 			;;
+		--firmware)
+			CMD_FIRMWARE=1
+			print_info 2 "CMD_FIRMWARE: ${CMD_FIRMWARE}"
+			;;
+		--firmware-dir=*)
+			CMD_FIRMWARE_DIR=`parse_opt "$*"`
+			CMD_FIRMWARE=1
+			print_info 2 "CMD_FIRMWARE_DIR: ${CMD_FIRMWARE_DIR}"
+			;;
 		all)
 			BUILD_KERNEL=1
 			BUILD_MODULES=1

Modified: trunk/gen_determineargs.sh
===================================================================
--- trunk/gen_determineargs.sh	2008-03-09 17:54:44 UTC (rev 611)
+++ trunk/gen_determineargs.sh	2008-03-10 00:38:49 UTC (rev 612)
@@ -114,6 +114,8 @@
 	set_config_with_override 1 DISKLABEL            CMD_DISKLABEL
 	set_config_with_override 1 LUKS                 CMD_LUKS
 	set_config_with_override 1 MDADM                CMD_MDADM
+	set_config_with_override 1 FIRMWARE             CMD_FIRMWARE
+	set_config_with_override 2 FIRMWARE_DIR         CMD_FIRMWARE_DIR         "/lib/firmware"
 
 		BOOTDIR=`arch_replace "${BOOTDIR}"`
 		BOOTDIR=${BOOTDIR%/}    # Remove any trailing slash

Modified: trunk/gen_initramfs.sh
===================================================================
--- trunk/gen_initramfs.sh	2008-03-09 17:54:44 UTC (rev 611)
+++ trunk/gen_initramfs.sh	2008-03-10 00:38:49 UTC (rev 612)
@@ -251,6 +251,23 @@
 	cd ${INITRAMFS_OVERLAY}
 	find . -print | cpio ${CPIO_ARGS} --append -F "${CPIO}"
 }
+
+append_firmware() {
+	if [ ! -d "${FIRMWARE_DIR}" ]
+	then
+		gen_die "specified firmware directory (${FIRMWARE_DIR}) does not exist"
+	fi
+	if [ -d "${TEMP}/initramfs-firmware-temp" ]
+	then
+		rm -r "${TEMP}/initramfs-firmware-temp/"
+	fi
+	mkdir -p "${TEMP}/initramfs-firmware-temp/lib/firmware"
+	cp -a "${FIRMWARE_DIR}/*" ${TEMP}/initramfs-firmware-temp/lib/firmware/
+	find . -print | cpio ${CPIO_ARGS} --append -F "${CPIO}" \
+		|| gen_die "appending firmware to cpio"
+	rm -r "${TEMP}/initramfs-firmware-temp/"
+}
+
 print_list()
 {
 	local x
@@ -449,6 +466,11 @@
 	append_data 'blkid' "${DISKLABEL}"
 	append_data 'splash' "${SPLASH}"
 
+	if isTrue "${FIRMWARE}" && [ -n "${FIRMWARE_DIR}" ]
+	then
+		append_data 'firmware'
+	fi
+
 	# This should always be appended last
 	if [ "${INITRAMFS_OVERLAY}" != '' ]
 	then

Modified: trunk/genkernel.conf
===================================================================
--- trunk/genkernel.conf	2008-03-09 17:54:44 UTC (rev 611)
+++ trunk/genkernel.conf	2008-03-10 00:38:49 UTC (rev 612)
@@ -69,6 +69,9 @@
 # Copy /etc/mdadm.conf to initramfs.
 # MDADM="no"
 
+# Enable copying of firmware into initramfs
+# FIRMWARE="no"
+# FIRMWARE_DIR="/lib/firmware"
 
 # =========Low Level Compile Settings=========
 #

-- 
gentoo-commits@lists.gentoo.org mailing list



^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2008-03-10  0:38 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-03-10  0:38 [gentoo-commits] genkernel r612 - trunk Andrew Gaffney (agaffney)

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox