Hello community,

here is the log from the commit of package kernel-firmware for openSUSE:Factory 
checked in at 2014-02-13 15:01:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kernel-firmware (Old)
 and      /work/SRC/openSUSE:Factory/.kernel-firmware.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "kernel-firmware"

Changes:
--------
--- /work/SRC/openSUSE:Factory/kernel-firmware/kernel-firmware.changes  
2013-12-09 19:10:56.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kernel-firmware.new/kernel-firmware.changes     
2014-02-13 15:01:39.000000000 +0100
@@ -1,0 +2,21 @@
+Thu Dec 19 16:27:35 UTC 2013 - meiss...@suse.com
+
+- fixed last submission to actually build.
+
+-------------------------------------------------------------------
+Tue Dec 10 15:46:02 UTC 2013 - tr...@suse.de
+
+- Add mkinitrd script to add AMD microcode to initrd.
+  This is needed because microcode driver is built in or gets loaded
+  automatically via udev early. Therefore the microcode has to be available
+  in initrd already.
+  This must not be mixed up with early micorcode loading. This feature will
+  not be implemented via mkinitrd. Dracut is doing early microcode loading.
+- bnc#847158
+- mkinitrd scripts:
+    - mkinitrd_setup-amd_microcode.sh
+      Adding microcode to the initrd
+    - mkinitrd_boot-amd_microcode.sh
+      Triggering the reload at boot
+
+-------------------------------------------------------------------
@@ -5 +26 @@
-  on machines with Intel CPUs
+  on machines with AMD CPUs

New:
----
  mkinitrd_boot-amd_microcode.sh
  mkinitrd_setup-amd_microcode.sh

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ kernel-firmware.spec ++++++
--- /var/tmp/diff_new_pack.BKzFLX/_old  2014-02-13 15:01:40.000000000 +0100
+++ /var/tmp/diff_new_pack.BKzFLX/_new  2014-02-13 15:01:40.000000000 +0100
@@ -16,7 +16,6 @@
 #
 
 
-
 Name:           kernel-firmware
 BuildRequires:  fdupes
 BuildRequires:  kernel-default
@@ -31,6 +30,8 @@
 Source1:        firmware.sh
 Source3:        iwlwifi-4965-1.ucode
 Source4:        carl9170-1.fw
+Source5:        mkinitrd_setup-amd_microcode.sh
+Source6:        mkinitrd_boot-amd_microcode.sh
 %define __find_supplements bash %_sourcedir/firmware.sh --find-supplements
 
 %define __ksyms_supplements bash %_sourcedir/firmware.sh --cache 
%{_builddir}/%{?buildsubdir}/find_supplements.cache --find-supplements
@@ -88,6 +89,8 @@
 # nothing to do
 
 %install
+install -D -m 0755 %{SOURCE5} 
%{buildroot}/lib/mkinitrd/scripts/setup-amd_microcode.sh
+install -D -m 0755 %{SOURCE6} 
%{buildroot}/lib/mkinitrd/scripts/boot-amd_microcode.sh
 mkdir -p %{buildroot}/lib/firmware
 cp -avf * %{buildroot}/lib/firmware
 rm -f %{buildroot}/lib/firmware/WHENCE
@@ -103,16 +106,45 @@
 %clean
 rm -rf %{buildroot}
 
+%post -n ucode-amd
+[ -x /sbin/mkinitrd_setup ] && mkinitrd_setup
+if [ "${YAST_IS_RUNNING}" != "instsys" ]; then
+ if [ -e /var/lib/no_initrd_recreation_by_suspend ]; then
+   echo "Skipping recreation of existing initial ramdisks, due"
+   echo "to presence of /var/lib/no_initrd_recreation_by_suspend"
+ elif [ -x /sbin/mkinitrd ]; then
+   [ -x /sbin/mkinitrd_setup ] && /sbin/mkinitrd_setup
+   /sbin/mkinitrd || :
+ fi
+fi
+
+%postun -n ucode-amd
+[ -x /sbin/mkinitrd_setup ] && mkinitrd_setup
+if [ "${YAST_IS_RUNNING}" != "instsys" ]; then
+ if [ -e /var/lib/no_initrd_recreation_by_suspend ]; then
+   echo "Skipping recreation of existing initial ramdisks, due"
+   echo "to presence of /var/lib/no_initrd_recreation_by_suspend"
+ elif [ -x /sbin/mkinitrd ]; then
+   [ -x /sbin/mkinitrd_setup ] && /sbin/mkinitrd_setup
+   /sbin/mkinitrd || :
+ fi
+fi
+
 %files
 %defattr(0644,root,root,0755)
 %doc WHENCE README GPL-3 LICENCE.*
-%exclude /lib/firmware/amd-ucode/microcode_amd.bin
-%exclude /lib/firmware/amd-ucode/microcode_amd_fam15h.bin
+%exclude /lib/firmware/amd-ucode/microcode_amd.bin*
+%exclude /lib/firmware/amd-ucode/microcode_amd_fam15h.bin*
 /lib/firmware/*
 
 %files -n ucode-amd
 %defattr(0644,root,root,0755)
-/lib/firmware/amd-ucode/microcode_amd.bin
-/lib/firmware/amd-ucode/microcode_amd_fam15h.bin
+/lib/firmware/amd-ucode/microcode_amd.bin*
+/lib/firmware/amd-ucode/microcode_amd_fam15h.bin*
+/lib/firmware/amd-ucode/
+%dir /lib/mkinitrd
+%dir /lib/mkinitrd/scripts
+%attr(0755,root,root) /lib/mkinitrd/scripts/setup-amd_microcode.sh
+%attr(0755,root,root) /lib/mkinitrd/scripts/boot-amd_microcode.sh
 
 %changelog



++++++ mkinitrd_boot-amd_microcode.sh ++++++
#!/bin/bash

#%stage: boot
#%depends: udev

if [ -w /sys/devices/system/cpu/microcode/reload ];then
        echo 1 >/sys/devices/system/cpu/microcode/reload
fi
++++++ mkinitrd_setup-amd_microcode.sh ++++++
#/bin/bash

#%stage: boot
#
#  Adds AMD microcode to the initrd
#
#  If processor(s) are upgraded on the system, mkinitrd has to be re-called
#  manually to include a possible other needed firmware to the initrd
#

if grep -q -i AuthenticAMD /proc/cpuinfo; then
        echo -n "Microcode: "
        if [ ! -e /lib/firmware/amd-ucode ];then
            echo "AMD microcode not found, amd-ucode package not installed?"
            return 0
        fi
        fam=`head /proc/cpuinfo |sed -n -e 's/cpu family.*: \([0-9]\+\)/\1/p'`
        # Only try to update when family >= 16 (0x10, fam 10h)
        if [ $fam -ge 16 >& /dev/null ];then
            # Family 0x15 firmware is named: microcode_amd_famXXh.bin"
            if [ $fam -lt 21 >& /dev/null ];then
                file=microcode_amd.bin
            else
                file=`printf "microcode_amd_fam%xh.bin" $fam`
            fi
            if [ -e /lib/firmware/amd-ucode ];then
                echo "Adding AMD microcode $file"
                mkdir -p $tmp_mnt/lib/firmware/amd-ucode
                cp /lib/firmware/amd-ucode/"$file"* 
$tmp_mnt/lib/firmware/amd-ucode
            else
                echo "No AMD microcode found, amd-ucode package not installed?"
            fi
        else
            printf "AMD CPU family: 0x%x does not support microcode updates" 
$fam
        fi
fi
-- 
To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org
For additional commands, e-mail: opensuse-commit+h...@opensuse.org

Reply via email to