diff -Nru /tmp/Sror9pQnHu/initramfs-tools-0.69ubuntu25/debian/changelog /tmp/Ae7I2mKZeQ/initramfs-tools-0.69ubuntu26/debian/changelog --- /tmp/Sror9pQnHu/initramfs-tools-0.69ubuntu25/debian/changelog 2006-12-01 07:19:44.000000000 -0500 +++ /tmp/Ae7I2mKZeQ/initramfs-tools-0.69ubuntu26/debian/changelog 2006-12-01 12:07:59.000000000 -0500 @@ -1,3 +1,11 @@ +initramfs-tools (0.69ubuntu26) feisty; urgency=low + + * Add some firmware handling functions in hoot-functions. + * Add qla2xxx firmware to auto and dep targets (dep checks if qla2xxx module + is loaded). + + -- Ben Collins Fri, 1 Dec 2006 12:07:26 -0500 + initramfs-tools (0.69ubuntu25) feisty; urgency=low * hook-functions: Put mptfc, mptsas, mptscsih, and mptspi back in for scsi diff -Nru /tmp/Sror9pQnHu/initramfs-tools-0.69ubuntu25/hook-functions /tmp/Ae7I2mKZeQ/initramfs-tools-0.69ubuntu26/hook-functions --- /tmp/Sror9pQnHu/initramfs-tools-0.69ubuntu25/hook-functions 2006-12-01 07:18:15.000000000 -0500 +++ /tmp/Ae7I2mKZeQ/initramfs-tools-0.69ubuntu26/hook-functions 2006-12-01 12:02:52.000000000 -0500 @@ -54,6 +54,21 @@ done } +manual_add_firmware() +{ + for x_firm in $(find "/lib/firmware/${version}" -name "${1}" -print); do + if [ -e "${DESTDIR}/${x_firm}" ]; then + continue + fi + + mkdir -p "${DESTDIR}/$(dirname "${x_firm}")" + ln -s "${x_firm}" "${DESTDIR}/$(dirname "${x_firm}")" + if [ -n "${verbose}" -a "${verbose}" = "y" ]; then + echo "Adding firmware ${x_firm}" + fi + done +} + # $1 is source # $2 is relative destination copy_exec() { @@ -134,6 +149,9 @@ if [ -e /sys/bus/scsi/devices/ ]; then manual_add_modules sd_mod + if [ -e /sys/module/qla2xxx/ ]; then + auto_add_firmware scsi + fi fi if [ -e /sys/bus/i2o/devices/ ]; then @@ -142,6 +160,20 @@ } +auto_add_firmware() +{ + case "$1" in + scsi) + for x in 100 200 300 322 400; do + manual_add_firmware "ql2${x}_fw.bin" + done + ;; + *) + auto_add_firmware scsi + ;; + esac +} + # The modules "most" classes added per default to the initramfs auto_add_modules() { @@ -171,6 +203,7 @@ for x in mptfc mptsas mptscsih mptspi; do manual_add_modules "${x}" done + auto_add_firmware scsi ;; ata) copy_modules_dir kernel/drivers/ata