Takashi Iwai
76a011dd6c
- Update to version 20231127 (git commit 4124f8f928d5): * Make rdfind optional * ice: update ice DDP wireless_edge package to 1.3.13.0 * linux-firmware: update firmware for mediatek bluetooth chip (MT7922) * linux-firmware: update firmware for mediatek bluetooth chip (MT7921) * linux-firmware: update firmware for MT7922 WiFi device * linux-firmware: update firmware for MT7921 WiFi device * Makefile, copy-firmware: Use portable "command -v" to detect installed programs * amdgpu: update DMCUB firmware to 0.0.194.0 for DCN321 and DCN32 * powervr: add firmware for Imagination Technologies AXE-1-16M GPU * ice: update ice DDP comms package to 1.3.45.0 * ice: update ice DDP package to 1.3.35.0 * mediatek: Remove an unused packed library * amdgpu: update DMCUB firmware to 0.0.193.0 for DCN31 and DCN314 - Drop obsoleted copy-file-skip-rdfind.patch; use --ignore-duplicates - Update to version 20231120 (git commit 9552083a783e): * mediatek: Sync shared memory structure changes * Intel Bluetooth: Update firmware file for Intel Bluetooth BE200 * i915: Update MTL DMC to v2.19 * Make email replies more resilient * Try both utf-8 and windows-1252 for decoding email - Update to version 20231116 (git commit 6723a8d90923): * iwlwifi: fix for the new FWs from core83-55 release * Enable deb and rpm builds on tags * linux-firmware: Add firmware for Cirrus CS35L41 on HP G11 Laptops * linux-firmware: Add firmware for Cirrus CS35L41 on 2024 ASUS Zenbook Laptops - Update to version 20231115 (git commit a07fd0b96b5a): OBS-URL: https://build.opensuse.org/request/show/1129509 OBS-URL: https://build.opensuse.org/package/show/Kernel:HEAD/kernel-firmware?expand=0&rev=450
105 lines
1.9 KiB
Bash
105 lines
1.9 KiB
Bash
#!/bin/sh
|
|
#
|
|
# Read WHENCE from stdin create files-xxx for each topic
|
|
#
|
|
# usage: make-files.sh [-v] topics.list DESTDIR < WHENCE
|
|
#
|
|
|
|
verbose=:
|
|
|
|
if [ x"$1" = x"-v" ]; then
|
|
verbose=echo
|
|
shift
|
|
fi
|
|
|
|
topics="$1"
|
|
DESTDIR="$2"
|
|
fwdir=${3:-/lib/firmware}
|
|
dest=$DESTDIR/$fwdir
|
|
|
|
do_compress=1
|
|
|
|
if [ -n "$do_compress" ]; then
|
|
cext=".xz"
|
|
else
|
|
cext=""
|
|
fi
|
|
|
|
make_dirs () {
|
|
local f="$1"
|
|
local d=$(dirname "$f")
|
|
if [ "$d" != "." ]; then
|
|
while true; do
|
|
if ! grep -q '%dir '"$fwdir/$d"'$' files-$topic; then
|
|
echo "%dir $fwdir/$d" >> files-$topic
|
|
fi
|
|
case "$d" in
|
|
*/*) d=${d%/*};;
|
|
*) break;;
|
|
esac
|
|
done
|
|
fi
|
|
}
|
|
|
|
add_file () {
|
|
local f="$1"
|
|
make_dirs "$f"
|
|
if [ -e "$dest/$f" ]; then
|
|
echo "\"$fwdir/$f\"" >> files-$topic
|
|
else
|
|
echo "\"$fwdir/$f$cext\"" >> files-$topic
|
|
fi
|
|
}
|
|
|
|
sub="xxx"
|
|
while read l; do
|
|
test -z "$l" && continue
|
|
case "$l" in
|
|
----*)
|
|
sub=""
|
|
topic=""
|
|
;;
|
|
Driver:*)
|
|
test -n "$sub" && continue
|
|
sub=$(echo "$l" | sed -e's/Driver: *//' -e's/[ :].*$//')
|
|
m=$(grep -m1 "^$sub": "$topics" | sed -e's/^.*:[[:space:]]*//')
|
|
test -z "$m" && continue
|
|
set -- $m
|
|
topic="$1"
|
|
if [ "$topic" = "SKIP" ]; then
|
|
continue
|
|
fi
|
|
$verbose "Switching to topic $topic"
|
|
if [ -n "$topic" ]; then
|
|
if [ ! -s files-$topic ]; then
|
|
echo "%dir $fwdir" > files-$topic
|
|
fi
|
|
fi
|
|
;;
|
|
File:*|RawFile:*)
|
|
test "$topic" = "SKIP" && continue
|
|
if [ -z "$topic" ]; then
|
|
echo "ERROR: no topic found for $l"
|
|
exit 1
|
|
fi
|
|
f=$(echo "$l" | sed -e's/^File: *//' -e's/^RawFile: *//' -e's/"//g' -e's/\\//g')
|
|
case "$f" in
|
|
*/README*)
|
|
continue;;
|
|
esac
|
|
add_file "$f"
|
|
;;
|
|
Link:*)
|
|
test "$topic" = "SKIP" && continue
|
|
if [ -z "$topic" ]; then
|
|
echo "ERROR: no topic found for $l"
|
|
exit 1
|
|
fi
|
|
f=$(echo "$l" | sed -e's/^Link: *//' -e's/ *->.*$//' -es'/\\//g')
|
|
add_file "$f"
|
|
;;
|
|
esac
|
|
done
|
|
|
|
exit 0
|