Commit Graph

4095 Commits

Author SHA1 Message Date
Josh Boyer
08bb5322f4 Merge branch 'make-error-on-copyopts' into 'main'
Makefile: error out of 'install' if COPYOPTS is set

See merge request kernel-firmware/linux-firmware!340
2024-10-21 12:23:29 +00:00
Adam Williamson
4f397306dc Makefile: error out of 'install' if COPYOPTS is set
Since https://gitlab.com/kernel-firmware/linux-firmware/-/merge_requests/319
and https://gitlab.com/kernel-firmware/linux-firmware/-/merge_requests/331 ,
doing `make COPYOPTS="blahblah" install` does not fail, but does
not do what it did before. This is a surprising and possibly
undesired result (in Fedora, it led to our firmware suddenly
taking up 500MB more space on disk, and that led to a bunch of
live image builds failing).

To make the change more apparent, let's just fail out with an
explanatory message if invoked with COPYOPTS set.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
Co-authored by: Emil Velikov <emil.l.velikov@gmail.com>
2024-10-21 01:01:31 -07:00
Mario Limonciello
41a6688a08 Merge branch 'skip-git' into 'main'
check_whence.py: skip some validation if git ls-files fails

See merge request kernel-firmware/linux-firmware!339
2024-10-18 15:10:15 +00:00
Emil Velikov
2f0464118f check_whence.py: skip some validation if git ls-files fails
Recently we started running check_whence.py to validate WHENCE before
installing files with copy-firmware.sh. It did not consider the fact
that people may be using the distribution tarball, which lacks the
relevant git metadata.

Throw a warning and skip the relevant validation.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2024-10-18 15:08:24 +00:00
Mario Limonciello
1f83bd21e4 Merge branch 'robot/pr-0-1729235875' into 'main'
robot/pr-0-1729235875

See merge request kernel-firmware/linux-firmware!337
2024-10-18 13:21:04 +00:00
Sibi Sankar
feb324e311 qcom: Add Audio firmware for X1E80100 CRD/QCPs
Add audio firmware for X1E80100 CRD/QCPs, which are required to get
charging and audio functional.

Signed-off-by: Sibi Sankar <quic_sibis@quicinc.com>
2024-10-18 13:19:10 +00:00
Mario Limonciello
9b2a30ea06 Merge branch 'amd-staging' into 'main'
amdgpu: DMCUB updates for various AMDGPU ASICs

See merge request kernel-firmware/linux-firmware!338
2024-10-18 13:12:02 +00:00
Wayne Lin
3d45353e12 amdgpu: DMCUB updates forvarious AMDGPU ASICs
DMCUB updaes for DCN314, DCN351, DCN35, Yellow Carp
From internal git commit 358f90a77c62e560cb40b578b86ec09a2f69b99f

Firmware release 0.0.239.0
Tested with DC 3.2.306

Release notes:
- Fix USB4
- Avoid SDP in VActive

Signed-off-by: Wayne Lin <Wayne.Lin@amd.com>
2024-10-18 08:04:24 +00:00
Mario Limonciello
8dbcf94bfc Merge branch 'robot/patch-0-1729102102' into 'main'
robot/patch-0-1729102102

See merge request kernel-firmware/linux-firmware!334
2024-10-17 15:40:04 +00:00
Tomasz Maciej Nowak
c569ca455c brcm: replace NVRAM for Jetson TX1
The current version is copied from latest Jetson Linux BSP and it's for
P3310 (TX2) module. While both TX1 and TX2 have same wireless chip,
possibly the SDIO module slightly differ and both have different NVRAM
files provided in separate BSP archives. Although TX1 module wireless
inteface can be brought up with TX2 NVRAM file, the performance is
slightly degraded, simple download test yielded extra 4MiB/s with proper
NVRAM file. Thus, replace it with proper file from R32.7.5 BSP, while
also droping commented-out values, since those are not parsed by the
driver.

Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
2024-10-17 15:30:51 +00:00
Josh Boyer
22a6c7dcc1 Merge branch 'robot/patch-0-1729081061' into 'main'
robot/patch-0-1729081061

See merge request kernel-firmware/linux-firmware!333
2024-10-17 12:45:19 +00:00
Zenm Chen
efcf2f1028 rtlwifi: Update firmware for RTL8192FU to v7.3
This firmware was extracted from the vendor driver
rtl8192FU_rtl8725AU_WiFi_linux_v5.15.2-53-g9bfbc74cf.20230615_COEX20220422-2b07
provided by Realtek developer.

Signed-off-by: Zenm Chen <zenmchen@gmail.com>
2024-10-17 12:43:34 +00:00
Mario Limonciello
ab2a7d892e Merge branch 'split-dedup' into 'main'
Remove configure, fix and check permissions, split out de-duplication

See merge request kernel-firmware/linux-firmware!331
2024-10-16 15:54:54 +00:00
Emil Velikov
515022675f make: separate installation and de-duplication targets
For better or worse some distributions cannot have the firmware
de-duplication happen automatically.

In addition, when it was introduced it changed the default behaviour
leaving people with no firmware in their systems.

Revert to the original behaviour: in the worst case, people will have a
few MB extra of duplicate firmware, yet their systems will continue to
work.

To make things stand out, we print a message at the end of install so
that everyone can opt-in as needed.

In addition, I've went ahead and opened tentative MR/PR with Alpine,
Arch, CentOS Stream, Debian, Gentoo, informing them of this change.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2024-10-16 15:52:59 +00:00
Emil Velikov
8c232721a5 check_whence.py: check the permissions
A handful of in-tree scripts must have the execute bit, as well as all
directories. Everything else should not.

In the past we had multiple commits adding and removing execute bit(s),
so instead we can check before things get in-tree.

With all the firmware files updated to drop the bit (as of last commit),
we can add some tests to enforce it going forward.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2024-10-16 15:52:59 +00:00
Emil Velikov
5ddb886bef Remove execute bit from firmware files
AFAICT neither of the firmware files need to be executable, so drop the
execute bit.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2024-10-16 15:52:59 +00:00
Emil Velikov
d2fd241fe0 configure: remove unused file
Remove the dummy and unused configure file. Glancing across distributions (Alpine, Arch,
Fedora, CentOS Stream, Gentoo, Debian, Ubuntu) - they don't use it.

It's not mentioned in our README either, so let's just remove it.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2024-10-16 15:52:59 +00:00
Mario Limonciello
a296fe324c Merge branch 'robot/patch-0-1729044406' into 'main'
robot/patch-0-1729044406

See merge request kernel-firmware/linux-firmware!332
2024-10-16 02:08:41 +00:00
ChunHao Lin
2af74771a7 rtl_nic: add firmware rtl8125d-1
This adds firmware rtl8125d-1 for RTL8125d rev.a.

Signed-off-by: ChunHao Lin <hau@realtek.com>
2024-10-15 21:06:46 -05:00
Mario Limonciello
4e420ebb4c Merge branch 'robot/pr-0-1728931123' into 'main'
robot/pr-0-1728931123

See merge request kernel-firmware/linux-firmware!329
2024-10-14 18:52:25 +00:00
Miri Korenblit
99f9c7ed1f iwlwifi: add gl/Bz FW for core91-69 release
Add the -94 ucode firmware and update the pnvm binary
for gl/bz device.

Build number: Core_manual_signed_core91-69
Revision: 67ce4588 (gl, bz)

Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
2024-10-14 18:50:36 +00:00
Miri Korenblit
b67630c6ff iwlwifi: update ty/So/Ma firmwares for core91-69 release
Update -89.ucode firmwares for ty/So/Ma devices,
and update the PNVM files.

Build number: Core_manual_signed_core91-69
Revision: 6b44fa0b (ty, so, ma)

Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
2024-10-14 18:50:36 +00:00
Miri Korenblit
d032dfb87e iwlwifi: update cc/Qu/QuZ firmwares for core91-69 release
Update -77.ucode firmwares for cc/Qu/QuZ devices.

Build number: Core_manual_signed_core91-69
Revision: 85be44d3 (Qu, QuZ, cc)

Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
2024-10-14 18:50:36 +00:00
Josh Boyer
ee280db081 Merge branch 'wcn785x' into 'main'
QCA: Add Bluetooth firmwares for WCN785x with UART transport

See merge request kernel-firmware/linux-firmware!328
2024-10-14 17:13:47 +00:00
Josh Boyer
caa18c766a Merge https://github.com/zijun-hu/qca_btfw into wcn785x
Signed-off-by: Josh Boyer <jwboyer@kernel.org>
2024-10-14 13:10:31 -04:00
Mario Limonciello
3f28e83b72 Merge branch 'robot/pr-0-1728920002' into 'main'
robot/pr-0-1728920002

See merge request kernel-firmware/linux-firmware!327
2024-10-14 15:38:04 +00:00
Simon Trimmer
879bd9ae0b cirrus: cs35l56: Add firmware for Cirrus CS35L56 for a Lenovo Laptop
This patch adds the firmware files for the Cirrus CS35L56 smart
amplifier used in a Lenovo laptop.

- 17aa380e

Signed-off-by: Simon Trimmer <simont@opensource.cirrus.com>
2024-10-14 15:22:54 +00:00
Simon Trimmer
ec61c8a2c7 cirrus: cs35l56: Add firmware for Cirrus CS35L56 for some ASUS laptops
This patch adds the firmware files for the Cirrus CS35L56 smart
amplifier used in two ASUS laptops.

- 10431e13
- 10431f43

Signed-off-by: Simon Trimmer <simont@opensource.cirrus.com>
2024-10-14 15:22:47 +00:00
Simon Trimmer
6f4db4495a cirrus: cs35l56: Add firmware for Cirrus Amps for some HP laptops
This patch adds the firmware files for the Cirrus CS35L54 and CS35L56
smart amplifiers used in these HP laptops.

- 103c8d85
- 103c8d86
- 103c8d8c
- 103c8d8d
- 103c8d8e
- 103c8d8f
- 103c8d90
- 103c8d91 (two component variants)
- 103c8d92
- 103c8e14
- 103c8e15
- 103c8e16
- 103c8e17
- 103c8e18
- 103c8e19
- 103c8e1a
- 103c8e1b
- 103c8e1c
- 103c8e2c

Signed-off-by: Simon Trimmer <simont@opensource.cirrus.com>
2024-10-14 15:22:40 +00:00
Josh Boyer
1292f4f730 Merge branch 'en8811h' into 'main'
linux-firmware: update firmware for en8811h 2.5G ethernet phy

See merge request kernel-firmware/linux-firmware!326
2024-10-14 14:21:12 +00:00
Lucien.Jheng
d3480463fc linux-firmware: update firmware for en8811h 2.5G ethernet phy
1. Reinitialize the FNPLL clock during MD32 startup.
2. Optimize cable diag
3. Set Co-Clock default enable
4. Enable EMI Calibration Function
5. Enhance AN control mechanism
6. Fix internal bus arbitrator issue

Signed-off-by: Lucien.Jheng <lucien.jheng@airoha.com>
Signed-off-by: Josh Boyer <jwboyer@kernel.org>
2024-10-14 10:03:34 -04:00
Mario Limonciello
06bad2f170 Merge branch 'robot/pr-0-1728664917' into 'main'
robot/pr-0-1728664917

See merge request kernel-firmware/linux-firmware!325
2024-10-11 17:01:39 +00:00
Shayne Chen
808cba847c mtk_wed: add firmware for mt7988 Wireless Ethernet Dispatcher
Signed-off-by: Shayne Chen <shayne.chen@mediatek.com>
2024-10-12 00:02:10 +08:00
Mario Limonciello
d55315295c Merge branch 'superm1/qci-patches' into 'main'
ath12k: QCN9274 hw2.0: add board-2.bin

See merge request kernel-firmware/linux-firmware!322
2024-10-10 19:11:13 +00:00
Jeff Johnson
34d181d737 ath12k: WCN7850 hw2.0: update board-2.bin
Signed-off-by: Jeff Johnson <jjohnson@qti.qualcomm.com>
2024-10-10 14:06:58 -05:00
Jeff Johnson
a2d650c9cb ath12k: QCN9274 hw2.0: add to WLAN.WBE.1.3.1-00162-QCAHKSWPL_SILICONZ-1
Signed-off-by: Jeff Johnson <jjohnson@qti.qualcomm.com>
2024-10-10 14:06:42 -05:00
Jeff Johnson
2cdc4f42ce ath12k: QCN9274 hw2.0: add board-2.bin
Signed-off-by: Jeff Johnson <jjohnson@qti.qualcomm.com>
2024-10-10 14:06:42 -05:00
Mario Limonciello
c410e4c9fa Merge branch 'pr/misc-fixes' into 'main'
check_whence.py: use consistent naming

See merge request kernel-firmware/linux-firmware!319
2024-10-10 15:40:28 +00:00
Emil Velikov
a89349c33c copy-firmware.sh: rename variables in symlink hanlding
Currently we use f(ile) and d(irectory), over the more common ones t(arget) and
l(ink). Rename things appropriately.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2024-10-10 14:33:32 +00:00
Emil Velikov
9ce7dac098 copy-firmware.sh: remove no longer reachable test -L
The check_whence.py script ensures that links defined in WHENCE are not in-tree.
Since we're calling the script, we no longer need the convoluted path and
associated --prune tag.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2024-10-10 14:33:32 +00:00
Emil Velikov
25d5e6352b copy-firmware.sh: remove no longer reachable test -f
With previous commit we call check_whence.py, which ensures that all files
listed are available. Drop the now dead code.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2024-10-10 14:33:32 +00:00
Emil Velikov
6edd0fd36a copy-firmware.sh: call ./check_whence.py before parsing the file
Currently ./check_whence.py is used when submitting new firmware, while
copy-firmware.sh when the firmware is to be consumed.

Since the latter does (very little) validation, having a malformed WHENCE file
can lead to all sorted of problems. From the obvious, where it errors out, to
more serious one where it overwrites or executes something it should not have.

Just call check_whence.py and error out. It takes 0.2s on my 5 year old
mid-range laptop, so the overhead is negligible.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2024-10-10 14:33:32 +00:00
Emil Velikov
32f71d6d45 copy-firmware.sh: warn if the destination folder is not empty
If the user provides an existing non-empty folder (their /usr/lib/firmware/ or otherwise)
there is a high chance we'll silently overwrite existing files. That may or may not be what
they wanted, so throw a warning so highlight that.

v2:
 - use printf instead of echo

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2024-10-10 14:33:32 +00:00
Emil Velikov
97d200d75b copy-firmware.sh: add err() helper
v2:
 - use printf instead of echo -e

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2024-10-10 14:33:32 +00:00
Emil Velikov
6360b4a1d7 copy-firmware.sh: fix indentation
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2024-10-10 14:33:32 +00:00
Emil Velikov
a3446bc1a7 copy-firmware.sh: reset and consistently handle destdir
Currently we don't reset/override the destdir variable, so we end up inheriting
whatever the caller's environment has for it. While it may work, it's not
particularly consistent (be that within the script or other tools) nor is it
obvious.

While in here, ensure we handle the variable with test -z/-n instead of varying
other constructs.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2024-10-10 14:33:32 +00:00
Emil Velikov
e8f8537768 Revert "copy-firmware: Support additional compressor options"
This reverts commit 2bad80e7ed.

The commit effectively added accidental command injection, while it was aiming
to control the compression flags.

In practise you'd want to use ZSTD_CLEVEL and ZSTD_NBTHREADS for zstd. As
documented in zstd(1) it allows for up-to level 19, which is fine since the
kernel does not support higher levels.

Arch, Alpine and likely other distributions have been using this approach
since day one.

The other compressors like xz have equivalent.

Cc: Juerg Haefliger <juerg.haefliger@canonical.com>
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2024-10-10 14:33:32 +00:00
Emil Velikov
ee8c336ab3 copy-firmware.sh: flesh out and fix dedup-firmware.sh
Flesh out the de-duplication logic in separate script. The copy-firmware.sh is
already complex enough and de-duplication doesn't really fit in there.

In the process we migrate away from the open-coded `ln --relative`. We also
avoid touching symlinks, which are not created by rdfind. Otherwise we end up
"fixing" the folder to folder symlinks (created earlier in the process) and
things explode.

As result we also get a few bonuses:
 - the COPYOPTS shell injection is gone - the variable was never used
 - people can dedup as separate step if/when they choose to do so

Aside: based on the noise in git log and around distros ... I'm wondering if
having the de-duplication as opt-in, would have been better. Is it too late to
change or the ship has sailed?

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2024-10-10 14:33:32 +00:00
Emil Velikov
cc4c1fccb0 Style update yaml files
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2024-10-10 14:33:32 +00:00
Emil Velikov
a924bda835 editorconfig: add initial config file
It's a simple format handled by practically every supported platform or program
out there.

Add an initial configuration file, so we reduce the style variation of the files
in-tree.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2024-10-10 14:33:32 +00:00