first commit

This commit is contained in:
Ward 2023-02-23 22:02:13 +02:00
commit 3c0f4c2bda
101 changed files with 77939 additions and 0 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,50 @@
Ubuntu Maintenance Notes
========================
Development Series
------------------
For the current development series, we don't cherry-pick upstream commits but
rather rebase onto latest upstream. Whenever a rebase is performed, a new
orig tarball needs to be generated and uploaded to the archive as part of the
source package upload.
The following are the steps to rebase onto latest upstream and create a new
source package.
1) $ debian/scripts/rebase-upstream
Rebases onto latest upstream/main, updates the content of debian/upstream and
creates a rebase commit.
2) $ debian/scripts/create-orig-tarball
Creates a new orig tarball, using the upstream commit and version from
debian/upstream.
3) $ debian/scripts/close-release
Creates a new changelog entry with all changes since the last release. Commits
the changelog and tags the commit. The new package version is generated
automatically from the upstream version.
4) $ debian/scripts/build-package -S -us -uc
Creates a new (unsigned) source package.
Stable Series
-------------
Stable series are not rebased to latest upstream but instead only receive
cherry-picked and backported commits. The development series becomes a stable
series at the time of its official release. At this time, a new development
branch should be created and an initial SRU release commit should be added to
the branch of the just released series:
1) $ debian/scripts/open-sru
This creates a dummy initial release commit with a package version ending in
.0 which prevents future rebases and serves as a starting point for future
SRU release.

View File

@ -0,0 +1,5 @@
linux-firmware (20220923.gitf09bebf3-99pika1) kinetic; urgency=medium
* Initial Creation
-- Ward Nakchbandi <hotrod.master@hotmail.com> Sat, 01 Oct 2022 14:50:00 +0200

View File

@ -0,0 +1,20 @@
Source: linux-firmware
Section: misc
Priority: optional
Maintainer: Ubuntu Kernel Team <kernel-team@lists.ubuntu.com>
Standards-Version: 4.5.0
Build-Depends: debhelper-compat (= 13), dh-exec
Vcs-Git: git://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux-firmware
Package: linux-firmware
Architecture: all
Multi-Arch: foreign
Priority: optional
Depends: ${misc:Depends}
Recommends: firmware-sof-signed
Provides: atmel-firmware
Conflicts: atmel-firmware
Replaces: atmel-firmware, linux-restricted-common, linux-firmware-snapdragon (<= 1.2-0ubuntu1)
Breaks: linux-firmware-snapdragon (<= 1.2-0ubuntu1), linux-firmware-raspi2 (<= 1.20190819-0ubuntu2), amd64-microcode (<= 3.20220411.1ubuntu1)
Description: Firmware for Linux kernel drivers
This package provides firmware used by Linux kernel drivers.

View File

@ -0,0 +1,267 @@
This is the Ubuntu Linux firmware package:
This package was put together by the Ubuntu Kernel Team, from
sources retrieved from vendors.
This package is currently maintained by the
Ubuntu Kernel Team <kernel-team@lists.ubuntu.com>
FIRMWARE:
TERMS AND CONDITIONS
IMPORTANT - PLEASE READ BEFORE INSTALLING OR USING THIS INTEL® SOFTWARE
Do not use or load this firmware (the "Software") until you have carefully read the following terms and conditions. By loading or using the Software, you agree to the terms of this Agreement. If you do not wish to so agree, do not install or use the Software.
LICENSEES: Please note:
* If you are an End-User, only Exhibit A, the SOFTWARE LICENSE AGREEMENT, applies.
* If you are an Original Equipment Manufacturer (OEM), Independent Hardware Vendor (IHV), or Independent Software Vendor (ISV), this complete Agreement applies
For OEMs, IHVs, and ISVs:
LICENSE. This Software is licensed for use only in conjunction with Intel component products. Use of the Software in conjunction with non-Intel component products is not licensed hereunder. Subject to the terms of this Agreement, Intel grants to you a nonexclusive, nontransferable, worldwide, fully paid-up license under Intel's copyrights to: (i) copy the Software internally for your own development and maintenance purposes; (ii) copy and distribute the Software to your end-users, but only under a license agreement with terms at least as restrictive as those contained in Intel's Final, Single User License Agreement, attached as Exhibit A; and (iii) modify, copy and distribute the end-user documentation which may accompany the Software, but only in association with the Software.
If you are not the final manufacturer or vendor of a computer system or software program incorporating the Software, then you may transfer a copy of the Software, including any related documentation (modified or unmodified) to your recipient for use in accordance with the terms of this Agreement, provided such recipient agrees to be fully bound by the terms hereof. You shall not otherwise assign, sublicense, lease, or in any other way transfer or disclose Software to any third party. You may not, nor may you assist any other person or entity to modify, translate, convert to another programming language, decompile, reverse engineer, or disassemble any portion of the Software or otherwise attempt to derive source code from any object code modules of the Software or any internal data files generated by the Software. Your rights to redistribute the Software shall be contingent upon your installation of this Agreement in its entirety in the same directory as the Software.
CONFIDENTIALITY. If you wish to have a third party consultant or subcontractor ("Contractor") perform work on your behalf which involves access to or use of Software, you shall obtain a written confidentiality agreement from the Contractor which contains provisions with respect to access to or use of the Software no less restrictive than those set forth in this Agreement and excluding any distribution rights, and use for any other purpose. Except as expressly provided herein, you shall not disclose the terms or existence of this Agreement or use Intel's name in any publications, advertisements, or other announcements without Intel's prior written consent. You do not have any rights to use any Intel trademarks or logos.
OWNERSHIP OF SOFTWARE AND COPYRIGHTS. Software and accompanying materials, if any, are owned by Intel or its suppliers and licensors and may be protected by copyright, trademark, patent and trade secret law and international treaties. Any rights, express or implied, in the intellectual property embodied in the foregoing, other than those specified in this Agreement, are reserved by Intel and its suppliers and licensors or otherwise as set forth in any applicable open source license agreement. You will keep the Software free of liens, attachments, and other encumbrances. You agree not to remove any proprietary notices and/or any labels from the Software and accompanying materials without prior written approval by Intel
LIMITATION OF LIABILITY. IN NO EVENT SHALL INTEL OR ITS SUPPLIERS AND LICENSORS BE LIABLE FOR ANY DAMAGES WHATSOEVER FROM ANY CAUSE OF ACTION OF ANY KIND (INCLUDING, WITHOUT LIMITATION, LOST PROFITS, BUSINESS INTERRUPTION, OR LOST INFORMATION) ARISING OUT OF THE USE, MODIFICATION, OR INABILITY TO USE THE INTEL SOFTWARE, OR OTHERWISE, NOR FOR PUNITIVE, INCIDENTAL, CONSEQUENTIAL, OR SPECIAL DAMAGES OF ANY KIND, EVEN IF INTEL OR ITS SUPPLIERS AND LICENSORS HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME JURISDICTIONS PROHIBIT EXCLUSION OR LIMITATION OF LIABILITY FOR IMPLIED WARRANTIES, CONSEQUENTIAL OR INCIDENTAL DAMAGES, SO CERTAIN LIMITATIONS MAY NOT APPLY. YOU MAY ALSO HAVE OTHER LEGAL RIGHTS THAT VARY BETWEEN JURISDICTIONS.
EXCLUSION OF WARRANTIES. THE SOFTWARE IS PROVIDED "AS IS" AND POSSIBLY WITH FAULTS. UNLESS EXPRESSLY AGREED OTHERWISE, INTEL AND ITS SUPPLIERS AND LICENSORS DISCLAIM ANY AND ALL WARRANTIES AND GUARANTEES, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT, OR FITNESS FOR A PARTICULAR PURPOSE. Intel does not warrant or assume responsibility for the accuracy or completeness of any information, text, graphics, links or other items contained within the Software. You assume all liability, financial or otherwise, associated with Your use or disposition of the Software.
APPLICABLE LAW. Claims arising under this Agreement shall be governed by the laws of State of California], excluding its principles of conflict of laws and the United Nations Convention on Contracts for the Sale of Goods.
WAIVER AND AMENDMENT. No modification, amendment or waiver of any provision of this Agreement shall be effective unless in writing and signed by an officer of Intel. No failure or delay in exercising any right, power, or remedy under this Agreement shall operate as a waiver of any such right, power or remedy. Without limiting the foregoing, terms and conditions on any purchase orders or similar materials submitted by you to Intel, and any terms contained in Intel’s standard acknowledgment form that are in conflict with these terms, shall be of no force or effect.
SEVERABILITY. If any provision of this Agreement is held by a court of competent jurisdiction to be contrary to law, such provision shall be changed and interpreted so as to best accomplish the objectives of the original provision to the fullest extent allowed by law and the remaining provisions of this Agreement shall remain in full force and effect.
EXPORT RESTRICTIONS. Each party acknowledges that the Software is subject to applicable import and export regulations of the United States and of the countries in which each party transacts business, specifically including U.S. Export Administration Act and Export Administration Regulations. Each party shall comply with such laws and regulations, as well as all other laws and regulations applicable to the Software. Without limiting the generality of the foregoing, each party agrees that it will not export, re-export, transfer or divert any of the Software or the direct programs thereof to any restricted place or party in accordance with U.S. export regulations. Note that Software containing encryption may be subject to additional restrictions.
GOVERNMENT RESTRICTED RIGHTS. The Software is provided with "RESTRICTED RIGHTS." Use, duplication, or disclosure by the Government is subject to restrictions as set forth in FAR52.227-14 and DFAR252.227-7013 et seq. or their successors. Use of the Software by the Government constitutes acknowledgment of Intel's proprietary rights therein. Contractor or Manufacturer is Intel Corporation, 2200 Mission College Blvd., Santa Clara, CA 95052.
TERMINATION OF THE AGREEMENT. Intel may terminate this Agreement if you violate its terms. Upon termination, you will immediately destroy the Software or return all copies of the Software to Intel.
EXHIBIT "A"
SOFTWARE LICENSE AGREEMENT (Final, Single User)
IMPORTANT - READ BEFORE COPYING, INSTALLING OR USING.Do not use or load this firmware image (the "Software") until you have carefully read the following terms and conditions. By loading or using the Software, you agree to the terms of this Agreement. If you do not wish to so agree, do not install or use the Software.
LICENSE. You may copy and use the Software, subject to these conditions:
1. This Software is licensed for use only in conjunction with Intel component products. Use of the Software in conjunction with non-Intel component products is not licensed hereunder.
2. You may not copy, modify, rent, sell, distribute or transfer any part of the Software except as provided in this Agreement, and you agree to prevent unauthorized copying of the Software.
3. You may not reverse engineer, decompile, or disassemble the Software.
4. You may not sublicense the Software.
5. The Software may contain the software or other property of third party suppliers.
OWNERSHIP OF SOFTWARE AND COPYRIGHTS. Title to all copies of the Software remains with Intel or its suppliers. The Software is copyrighted and protected by the laws of the United States and other countries, and international treaty provisions. You may not remove any copyright notices from the Software. Intel may make changes to the Software, or items referenced therein, at any time without notice, but is not obligated to support or update the Software. Except as otherwise expressly provided, Intel grants no express or implied right under Intel patents, copyrights, trademarks, or other intellectual property rights. You may transfer the Software only if a copy of this license accompanies the Software and the recipient agrees to be fully bound by these terms.
EXCLUSION OF OTHER WARRANTIES EXCEPT AS PROVIDED ABOVE, THE SOFTWARE IS PROVIDED "AS IS" WITHOUT ANY EXPRESS OR IMPLIED WARRANTY OF ANY KIND INCLUDING WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT, OR FITNESS FOR A PARTICULAR PURPOSE. Intel does not warrant or assume responsibility for the accuracy or completeness of any information, text, graphics, links or other items contained within the Software.
LIMITATION OF LIABILITY. IN NO EVENT SHALL INTEL OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER (INCLUDING, WITHOUT LIMITATION, LOST PROFITS, BUSINESS INTERRUPTION, OR LOST INFORMATION) ARISING OUT OF THE USE OF OR INABILITY TO USE THE SOFTWARE, EVEN IF INTEL HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME JURISDICTIONS PROHIBIT EXCLUSION OR LIMITATION OF LIABILITY FOR IMPLIED WARRANTIES OR CONSEQUENTIAL OR INCIDENTAL DAMAGES, SO THE ABOVE LIMITATION MAY NOT APPLY TO YOU. YOU MAY ALSO HAVE OTHER LEGAL RIGHTS THAT VARY BETWEEN JURISDICTIONS.
TERMINATION OF THIS AGREEMENT. Intel may terminate this Agreement at any time if you violate its terms. Upon termination, you will immediately destroy the Software.
APPLICABLE LAWS. Claims arising under this Agreement shall be governed by the laws of California, excluding its principles of conflict of laws and the United Nations Convention on Contracts for the Sale of Goods. You may not export the Software in violation of applicable export laws and regulations. Intel is not obligated under any other agreements unless they are in writing and signed by an authorized representative of Intel.
GOVERNMENT RESTRICTED RIGHTS. The Software is provided with "RESTRICTED RIGHTS." Use, duplication, or disclosure by the Government is subject to restrictions as set forth in FAR52.227-14 and DFAR252.227-7013 et seq. or their successors. Use of the Software by the Government constitutes acknowledgment of Intel's proprietary rights therein. Contractor or Manufacturer is Intel Corporation, 2200 Mission College Blvd., Santa Clara, CA 95052.
This License is granted by Adaptec, Inc., referred to in this License
as "ADAPTEC" or "we" or "us." ADAPTEC reserves the right to record
all activities and to use any information obtained in accordance
with the privacy policy which you can access below.
Directions to Obtain Your File:
CAREFULLY READ THE FOLLOWING TERMS AND CONDITIONS AS WELL AS THE
EXPORT COMPLIANCE REQUIREMENTS SET OUT BELOW. YOU MUST ANSWER THE
REQUIRED QUESTION TRUTHFULLY TO LET US KNOW WHETHER YOU HAVE READ
AND UNDERSTOOD THE TERMS AND CONDITIONS AND EXPORT COMPLIANCE
REQUIREMENTS AND WHETHER YOU AGREE TO COMPLY. YOU MUST CLICK A
FURTHER BUTTON TO CONFIRM YOUR ANSWER AND IF YOU ANSWER IN THE
AFFIRMATIVE, A BINDING LICENSE AGREEMENT ("LICENSE") WILL BE
CONCLUDED BETWEEN US. YOU MAY THEN PROCEED TO DOWNLOAD THE SOFTWARE.
IF YOU DO NOT AGREE TO THESE TERMS, CONDITIONS, AND EXPORT COMPLIANCE
REQUIREMENTS THEN DO NOT DOWNLOAD THE SOFTWARE. IF YOU WISH TO
CANCEL THIS LICENSE AT ANY TIME YOU MAY DO SO BY DESTROYING ALL
COPIES AND PARTIAL COPIES OF THE SOFTWARE WHICH YOU HAVE DOWNLOADED.
YOU ALSO AGREE THAT YOU HAVE ALL NECESSARY INFORMATION IN ORDER
TO ENTER INTO THIS LICENSE WHETHER UNDER AN APPLICABLE EUROPEAN
E-COMMERCE DIRECTIVE OR OTHERWISE. IF YOU DO NOT AGREE TO THESE
TERMS, CONDITIONS, AND REQUIREMENTS, DO NOT DOWNLOAD ANY FILES.
Please retain a copy of the License for your files or you may
contact ADAPTEC's Legal Department at the address listed below
for a further copy. This license may be concluded in English or
the language in which it is drafted by ADAPTEC and appears to you
online, as applicable. If you are a consumer residing in Europe
(a "European Consumer") then this License shall not affect your
statutory rights under the local laws in Europe.
This License grants you a non-exclusive license to use the ADAPTEC
Software and related documentation ("Software") on the following
terms, conditions, and export compliance requirements:
If you are NOT an individual consumer residing in Europe then the
following terms, conditions and export compliance requirements apply
and are a part of your license: ALL SECTIONS EXCEPT AS SPECIFIED
HEREIN.
If you are an individual consumer residing in Europe ("European
Consumer") then the following terms, conditions and export compliance
requirements apply and are made part of your License: 1, 2, 3,
4, applicable parts of 6, 7, 9 and the first paragraph of export
compliance. IF YOU ARE A EUROPEAN CONSUMER THIS LICENSE SHALL NOT
AFFECT YOUR RIGHTS UNDER THE STATUTORY LAWS OF EUROPE.
1. Your right to use the Software.You may use the Software
in machine readable form (i.e. the form you download from us)
within a single working location. You may copy the Software in
the same form solely for back-up purposes or use within a single
working location. You must reproduce ADAPTEC's copyright notice
and proprietary legends. These requirements apply to European
Consumers.
2. Restrictions. This Software contains trade secrets and in order
to protect them you may not: (1) distribute copies of the Software
in any manner, including, but not limited to, distribution through
web site posting; (2) decompile, reverse engineer, disassemble,
or otherwise reduce the Software to a human perceivable form; (3)
MODIFY, ADAPT OR TRANSLATE THE SOFTWARE INTO ANY OTHER FORM; (4)
RENT, LEASE, LOAN, RESELL FOR PROFIT, OR CREATE DERIVATIVE WORKS
BASED UPON THE SOFTWARE OR ANY PART OF IT. These requirements
apply to European Consumers.
3. Ownership. The Software is copyrighted by, proprietary to and
a trade secret of ADAPTEC. ADAPTEC retains the title, ownership
and intellectual property rights in and to the Software and all
subsequent copies regardless of the form or media. The Software is
protected by the copyright laws of the United States, the European
Union, and international copyright treaties. This License is not
a sale of the Software. These terms apply to European consumers.
4. Termination. This License is effective until terminated. This
License will terminate automatically without notice if you
fail to comply with any of the provisions. Upon termination you
shall destroy all copies of the Software including any partial
copies. This provision applies to European Consumers.
5. Disclaimer of Warranty. IF YOU ARE A EUROPEAN CONSUMER THEN
THIS SECTION 5 DOES NOT APPLY TO YOU AND DOES NOT FORM PART
OF YOUR LICENSE WITH US. PROCEED TO SECTION 6. THE SOFTWARE
IS LICENSED TO YOU "AS IS." YOU ACCEPT ALL RISKS WHICH MAY
ARISE FROM THE DOWNLOADING OF THE SOFTWARE, INCLUDING BUT NOT
LIMITED TO ERRORS IN TRANSMISSION OR CORRUPTION OF EXISTING DATA
OR SOFTWARE. ADAPTEC MAKES NO WARRANTIES, EXPRESS OR IMPLIED,
AND SPECIFICALLY DISCLAIMS ANY WARRANTY OF NON INFRINGEMENT OF
THIRD PARTIES' RIGHTS, WARRANTIES OF SATISFACTORY QUALITY AND OF
FITNESS FOR A PARTICULAR PURPOSE. Some states do not allow the
exclusion of implied warranties or limitations of how long an
implied warranty may last, so the above exclusion may not apply
to you. You may also have other rights which vary from state to
state.
6. Limitation of Liability. FOR EUROPEAN CONSUMERS: WE WILL NOT
BE LIABLE TO YOU WHERE YOU SUFFER LOSS WHICH WAS NOT FORESEEABLE
TO YOU AND TO US WHEN YOU DOWNLOADED THE SOFTWARE (EVEN IF IT
RESULTS FROM OUR FAILURE TO COMPLY WITH THIS LICENSE OR OUR
NEGLIGENCE); WHERE YOU SUFFER ANY BUSINESS LOSS INCLUDING LOSS
OF REVENUE, PROFITS OR ANTICIPATED SAVINGS (WHETHER THOSE LOSSES
ARE THE DIRECT OR INDIRECT RESULT OF OUR DEFAULT); OR WHERE YOUR
LOSS DOES NOT RESULT FROM OUR FAILURE TO COMPLY WITH THIS LICENSE
OR OUR NEGLIGENCE. THE SOFTWARE HAS BEEN MADE AVAILABLE TO YOU
FREE OF CHARGE. YOU MAY AT ANY TIME DOWNLOAD A FURTHER COPY OF
THE SOFTWARE FREE OF CHARGE TO REPLACE YOUR ORIGINAL COPY OF THE
SOFTWARE (CONSEQUENTLY, WE AND OUR SUPPLIERS WILL ONLY BE LIABLE
TO YOU UP TO A MAXIMUM TOTAL LIMIT OF TWO THOUSAND DOLLARS U.S. OR
ITS EURO EQUIVALENT AT THE TIME A CLAIM IS MADE). OUR MAXIMUM
FINANCIAL RESPONSIBILITY TO YOU AND THAT OF OUR SUPPLIERS WILL
NOT EXCEED THIS LIMIT EVEN IF THE ACTUAL LOSS YOU SUFFER IS MORE
THAN THAT. HOWEVER, NOTHING IN THIS LICENSE SHALL RESTRICT ANY
PARTY'S LIABILITY FOR FRAUD, DEATH OR PERSONAL INJURY ARISING FROM
ITS NEGLIGENCE OR FOR FRAUD OR ANY FRAUDULENT MISREPRESENTATION.
ALL OTHERS DOWNLOADING THE SOFTWARE: THE SOFTWARE IS PROVIDED
FREE OF CHARGE TO YOU, THEREFORE UNDER NO CIRCUMSTANCES
EXCEPT AS DESCRIBED HEREIN AND UNDER NO LEGAL THEORY, TORT
(INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL ADAPTEC
OR ITS SUPPLIERS OR RESELLERS BE LIABLE TO YOU OR ANY OTHER
PERSON FOR ANY ECONOMIC LOSS (INCLUDING LOSS OF PROFIT) OR FOR
ANY LOSS OF DATA, LOSS OF BUSINESS, LOSS OF GOODWILL, LOSS OF
ANTICIPATED SAVINGS (IN EACH CASE WHETHER DIRECT OR INDIRECT)
OR FOR ANY OTHER DIRECT OR INDIRECT, SPECIAL, INCIDENTAL, OR
CONSEQUENTIAL DAMAGES OF ANY CHARACTER EVEN IF ADAPTEC SHALL
HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. HOWEVER,
NOTHING IN THIS LICENSE SHALL RESTRICT ANY PARTY'S LIABILITY
FOR FRAUD, DEATH OR PERSONAL INJURY ARISING FROM ITS NEGLIGENCE
OR FOR FRAUD OR ANY FRAUDULENT MISREPRESENTATION.
7. Export. By downloading, you acknowledge that the laws and
regulations of the United States and relevant countries within
the European Union, restrict the export and re-export of the
Software. Further, you agree that you will not export or re-export
the Software or media in any form without the appropriate United
States and foreign government approval. If you are a European
Consumer you must not export Software outside the country in
which you download it without our prior written permission. (See
below for details on Export Compliance Requirements.)
8. U.S. Government Restricted Rights. IF YOU ARE A EUROPEAN
CONSUMER THEN THIS CLAUSE WILL NOT APPLY TO YOU AND DOES NOT
FORM PART OF YOUR LICENSE AGREEMENT WITH US. PLEASE PROCEED TO
SECTION 9. If the Software is acquired under the terms of a United
States GSA contract, use, reproduction or disclosure is subject
to the restrictions set forth in the applicable ADP Schedule
contract. If the Software is acquired under the terms of a DoD
or civilian agency contract, use, duplication or disclosure by
the Government is subject to the restrictions of this License
in accordance with 48 C.F.R. 12.212 of the Federal Acquisition
Regulations and its successors and 48 C.F.R. 227.7202-1 of the
DoD FAR Supplement and its successors. (See below for details
on Export Compliance Requirements.)
9. General. California residents entered into and to be performed
within California, except as governed by Federal law. Should
any provision of this License be declared unenforceable in any
jurisdiction, then such provision shall be deemed to be severable
from this License and shall not affect the remainder hereof. All
rights in the Software not specifically granted in this License
are reserved by Adaptec.
EXPORT COMPLIANCE REQUIREMENTS
Export of any information from the Adaptec web site (including
Confidential Information obtained through Adaptec Access) outside
of the United States is subject to all U.S. export control
laws. You will abide by such laws and also to the provision of
the U.S. Export-Re-export Requirements and Enhanced Proliferation
Control Initiative set forth here. You and your organization will
not sell, license, or otherwise provide or ship Adaptec products
or technical data (or the direct product thereof) for export or
re-export to the embargoed or restricted* countries listed below:
Afghanistan (Taliban controlled area), Cuba, Iran, Iraq, North
Korea*, Sudan, and Syria*
You agree not to transfer, export or re-export Adaptec products,
technology or software to your customers or any intermediate entity
in the chain of supply if our products will be used in the design,
development, production, stockpiling or use of missiles, chemical
or biological weapons or for nuclear end uses without obtaining
prior authorization from the U.S. Government.
You also agree that unless you receive prior authorization from
the U.S. Department of Commerce, you shall not transfer, export
or re-export, directly or indirectly, any Adaptec technology or
software (or the direct product of such technology or software or
any part thereof, or any process or service which is the direct
product of such technology or software) to any Sanctioned and/or
Embargoed entity listed on:
* Bureau of Industry and Security's Lists to Check
If you have any questions concerning this License, contact:
Adaptec, Inc.
Legal Department
691 South Milpitas Boulevard
Milpitas, California 95035

View File

@ -0,0 +1,6 @@
#!/usr/bin/dh-exec --with=install
WHENCE => /usr/share/doc/linux-firmware/README
WHENCE.ubuntu => /usr/share/doc/linux-firmware/README.ubuntu
LICEN[CS]E* GPL-[23] /usr/share/doc/linux-firmware/licenses/

View File

@ -0,0 +1,9 @@
#!/bin/sh
set -e
if [ -x /usr/sbin/update-initramfs ]; then
/usr/sbin/update-initramfs -u -k all
fi
#DEBHELPER#

View File

@ -0,0 +1,16 @@
#!/bin/sh
set -e
case "$1" in
install|upgrade)
# Fix package upgrade (LP: #1964814)
if [ -L /lib/firmware/ath11k/WCN6855/hw2.1 ]; then
rm -f /lib/firmware/ath11k/WCN6855/hw2.1
fi
;;
esac
#DEBHELPER#
exit 0

View File

@ -0,0 +1 @@
ubuntu.patch

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,220 @@
# This file contains a list of firmware files and/or directories that need to
# be removed from the final package.
# Replaces commit 6a312e01f665 ("UBUNTU: Remove obsolete ueagle-atm firmware")
ueagle-atm/CMVeiWO.bin
ueagle-atm/CMVepES.bin
ueagle-atm/CMVepES03.bin
ueagle-atm/CMVepFR.bin
ueagle-atm/CMVepFR04.bin
ueagle-atm/CMVepFR10.bin
ueagle-atm/CMVepIT.bin
ueagle-atm/CMVepWO.bin
# Replaces commit ee2de66a5c8e ("UBUNTU: Drop obsolete cxgb3 firmware")
cxgb3/t3fw-7.0.0.bin
cxgb3/t3fw-7.1.0.bin
cxgb3/t3fw-7.4.0.bin
# Replaces commit 634d7ba9a08a ("UBUNTU: Remove obsolete iwlwifi ucode files")
iwlwifi-1000-3.ucode
iwlwifi-5000-1.ucode
iwlwifi-5000-2.ucode
iwlwifi-6000g2b-5.ucode
iwlwifi-6050-4.ucode
# Replaces commit 4f7cf7c3ecd1 ("UBUNTU: Remove obsolete bnx2x firmware files")
bnx2x-e1-4.8.53.0.fw
bnx2x-e1-5.2.13.0.fw
bnx2x-e1-5.2.7.0.fw
bnx2x-e1h-4.8.53.0.fw
bnx2x-e1h-5.2.13.0.fw
bnx2x-e1h-5.2.7.0.fw
bnx2x/bnx2x-e1-6.0.34.0.fw
bnx2x/bnx2x-e1-6.2.5.0.fw
bnx2x/bnx2x-e1-6.2.9.0.fw
bnx2x/bnx2x-e1-7.0.20.0.fw
bnx2x/bnx2x-e1-7.0.23.0.fw
bnx2x/bnx2x-e1h-6.0.34.0.fw
bnx2x/bnx2x-e1h-6.2.5.0.fw
bnx2x/bnx2x-e1h-6.2.9.0.fw
bnx2x/bnx2x-e1h-7.0.20.0.fw
bnx2x/bnx2x-e1h-7.0.23.0.fw
bnx2x/bnx2x-e2-6.0.34.0.fw
bnx2x/bnx2x-e2-6.2.5.0.fw
bnx2x/bnx2x-e2-6.2.9.0.fw
bnx2x/bnx2x-e2-7.0.20.0.fw
bnx2x/bnx2x-e2-7.0.23.0.fw
# Replaces commit 85ee46eb9136 ("UBUNTU: Remove obsolete ar3k firmware")
ar3k/1020200/PS_ASIC.pst
ar3k/1020200/RamPatch.txt
ar3k/1020200/ar3kbdaddr.pst
ar3k/30000/PS_ASIC.pst
ar3k/30000/RamPatch.txt
ar3k/30000/ar3kbdaddr.pst
ar3k/30101/PS_ASIC.pst
ar3k/30101/RamPatch.txt
ar3k/30101/ar3kbdaddr.pst
ar3k/30101coex/PS_ASIC.pst
ar3k/30101coex/PS_ASIC_aclHighPri.pst
ar3k/30101coex/PS_ASIC_aclLowPri.pst
ar3k/30101coex/RamPatch.txt
ar3k/30101coex/ar3kbdaddr.pst
# Replaces commit 0563995d173f ("UBUNTU: Remove obsolete ath9k firmware")
ar9271.fw
# Replaces commit e55ef4edc755 ("UBUNTU: Remove obsolete slicoss firmware")
slicoss/oasisdbgdownload.sys
# Replaces commit 0470cfcec635 ("UBUNT: Remove obsolete ath6k firmware")
ath6k/AR6002/athwlan.bin.z77
ath6k/AR6002/data.patch.hw2_0.bin
ath6k/AR6002/eeprom.bin
ath6k/AR6002/eeprom.data
ath6k/AR6003.1/hw2.1.1/athwlan.bin
ath6k/AR6003.1/hw2.1.1/bdata.SD31.bin
ath6k/AR6003.1/hw2.1.1/bdata.SD32.bin
ath6k/AR6003.1/hw2.1.1/bdata.WB31.bin
ath6k/AR6003.1/hw2.1.1/data.patch.bin
ath6k/AR6003.1/hw2.1.1/endpointping.bin
ath6k/AR6003.1/hw2.1.1/otp.bin
ath6k/AR6003/hw1.0/athwlan.bin.z77
ath6k/AR6003/hw1.0/bdata.SD31.bin
ath6k/AR6003/hw1.0/bdata.SD32.bin
ath6k/AR6003/hw1.0/bdata.WB31.bin
ath6k/AR6003/hw1.0/data.patch.bin
ath6k/AR6003/hw1.0/otp.bin.z77
ath6k/AR6003/hw2.0/bdata.SD32.bin
ath6k/AR6003/hw2.0/bdata.WB31.bin
ath6k/AR6003/hw2.1.1/bdata.SD32.bin
ath6k/AR6003/hw2.1.1/bdata.WB31.bin
ath6k/AR6003/hw2.1.1/endpointping.bin
# Replaces commit 2188b4baf819 ("UBUNTU: Remove obsolete 3com firmware")
3com/3C359.bin
# Replaces commit f11a59536386 ("UBUNTU: Remove obsolete ath3k firmware")
ar3k/1020201/PS_ASIC.pst
ar3k/1020201/RamPatch.txt
# Replaces commit c5a7aadccbfd ("UBUNTU: Remove obsolete ar7010 firmware")
ar7010.fw
ar7010_1_1.fw
# Replaces commit 4ce08856dee0 ("UBUNTU: Remove obsolete ar9170 firmware")
ar9170-1.fw
ar9170-2.fw
# Replaces commit 064c4d3944e4 ("UBUNTU: Remove obsolete bnx2x firmware")
bnx2x/bnx2x-e1-7.0.29.0.fw
bnx2x/bnx2x-e1-7.2.16.0.fw
bnx2x/bnx2x-e1h-7.0.29.0.fw
bnx2x/bnx2x-e1h-7.2.16.0.fw
bnx2x/bnx2x-e2-7.0.29.0.fw
bnx2x/bnx2x-e2-7.2.16.0.fw
# Replaces commit 03310ea1e1e7 ("UBUNTU: Remove obsolete cxgb firmware")
cxgb3/t3fw-7.10.0.bin
# Replaces commit 22f2239919d9 ("UBUNTU: Remove obsolete dabusb firmware")
dabusb/bitstream.bin
dabusb/firmware.fw
# Replaces commit 1faeeb10de57 ("UBUNTU: Remove obsolete Computone firmware")
intelliport2.bin
# Replaces commit a46068ae4580 ("UBUNTU: Remove obsolete libertas firmware")
libertas/gspi8682.bin
libertas/gspi8682_helper.bin
libertas/lbtf_sdio.bin
libertas/sd8682.bin
libertas/sd8682_helper.bin
libertas/usb8388_olpc.bin
# Replaces commit bfa2ac04ade6 ("UBUNTU: Remove obsolete mwl8k firmware")
mwl8k/fmimage_8366_ap-1.fw
# Replaces commit 9b6d6bbcbc18 ("UBUNTU: Remove obsolete myricom firmware")
myricom/lanai.bin
# Replaces commit 09e02976b05b ("UBUNTU: Remove obsolete sxg firmware")
sxg/saharadbgdownloadB.sys
sxg/saharadownloadB.sys
# Replaces commit 3d183a325fec ("UBUNTU: Remove obsolete tda1004x firmware")
LICENCE.tda7706-firmware.txt
TDA7706_OM_v2.5.1_boot.txt
TDA7706_OM_v3.0.2_boot.txt
# Replaces commit 1be4f28f91fb ("UBUNTU: Remove obsolete ti-connectivity firmware")
ti-connectivity/TIInit_7.2.31.bts
ti-connectivity/wl1271-fw-2.bin
ti-connectivity/wl1271-fw-ap.bin
ti-connectivity/wl1271-fw.bin
ti-connectivity/wl127x-fw-3.bin
ti-connectivity/wl127x-fw-plt-3.bin
ti-connectivity/wl128x-fw-3.bin
ti-connectivity/wl128x-fw-ap.bin
ti-connectivity/wl128x-fw-plt-3.bin
ti-connectivity/wl128x-fw.bin
ti-connectivity/wl18xx-fw.bin
# Replaces commit 935dc770957e ("UBUNTU: Remove obsolete tr_smctr firmware")
tr_smctr.bin
# Replaces commit 513a97a03fba ("UBUNTU: Remove obsolete bnx2x firmware files")
bnx2x/bnx2x-e1-7.10.51.0.fw
bnx2x/bnx2x-e1-7.8.17.0.fw
bnx2x/bnx2x-e1-7.8.19.0.fw
bnx2x/bnx2x-e1h-7.10.51.0.fw
bnx2x/bnx2x-e1h-7.8.17.0.fw
bnx2x/bnx2x-e1h-7.8.19.0.fw
bnx2x/bnx2x-e2-7.10.51.0.fw
bnx2x/bnx2x-e2-7.8.17.0.fw
bnx2x/bnx2x-e2-7.8.19.0.fw
# Replaces commit 251237583bdd ("UBUNTU: Revert "linux-firmware: Add firmware files for Siano DTV devices"")
LICENCE.siano
cmmb_vega_12mhz.inp
cmmb_venice_12mhz.inp
dvb_nova_12mhz.inp
dvb_nova_12mhz_b0.inp
isdbt_nova_12mhz.inp
isdbt_nova_12mhz_b0.inp
isdbt_rio.inp
sms1xxx-hcw-55xxx-dvbt-02.fw
sms1xxx-hcw-55xxx-isdbt-02.fw
sms1xxx-nova-a-dvbt-01.fw
sms1xxx-nova-b-dvbt-01.fw
sms1xxx-stellar-dvbt-01.fw
tdmb_nova_12mhz.inp
# Replaces commit 563bb48ed143 ("UBUNTU: Remove amd64-microcode")
LICENSE.amd-ucode
amd-ucode
# LP: #1962468
# Remove upstream directories that contain reasonably old firmware files that
# are not referenced by the currently supported Jammy kernels.
atusb
carl9170fw
dabusb
dsp56k
matrox
mwlwifi
myricom
r128
sb16
sxg
ti-keystone
usbdux
# LP: #1983409
# LP: #1986796
# Remove AMD SEV firmware which is now provided by amd64-microcode
LICENSE.amd-sev
amd
# Remove AMDGPU firmware which is now provided by amdgpu-dkms-firmware
amdgpu

32
linux-firmware/debian/rules Executable file
View File

@ -0,0 +1,32 @@
#!/usr/bin/make -f
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
dest_dir = $(CURDIR)/debian/linux-firmware
firmware_dir = $(dest_dir)/lib/firmware
license_dir = $(dest_dir)/usr/share/doc/linux-firmware/licenses
%:
dh $@
override_dh_install:
dh_install
# Everything is installed, so remove unwanted firmware and licences
# and check for any dangling symlinks
debian/scripts/remove-firmware $(firmware_dir)
debian/scripts/remove-firmware $(license_dir)
debian/scripts/check-symlinks $(dest_dir)
override_dh_clean:
dh_clean
# Run sanity checks if in a git repo
if [ -d .git ] ; then \
$(MAKE) check ; \
fi
override_dh_auto_build:
override_dh_auto_test:
override_dh_strip_nondeterminism:

View File

@ -0,0 +1,31 @@
#!/bin/bash -eu
#
# Apply quilt patch series
#
function out()
{
local rc=${?}
trap - EXIT INT TERM HUP
if [ ${rc} -ne 0 ] ; then
echo "Error: Script failed" >&2
fi
exit "${rc}"
}
trap out EXIT INT TERM HUP
# Remove patches first
while IFS= read -r patch ; do
echo "Unapply ${patch} ..."
patch -p1 -R < "${patch}"
done < <(ls -1r -- debian/patches/*.patch)
# Reapply patches using quilt
echo "Apply quilt series ..."
export QUILT_PATCHES=debian/patches
rm -rf .pc
quilt init
quilt push -a

View File

@ -0,0 +1,41 @@
#!/bin/bash -eu
#
# Wrapper around dpkg-buildpackage
#
function out()
{
local rc=${?}
trap - EXIT INT TERM HUP
if [ ${rc} -ne 0 ] ; then
echo "Error: Script failed" >&2
fi
exit "${rc}"
}
if [ -n "$(git status --porcelain)" ] ; then
echo "Repo is unclean" >&2
exit 1
fi
trap out EXIT INT TERM HUP
debian/scripts/create-quilt-series
debian/scripts/apply-quilt-series
# Default dpkg-builpackage options
opts=(
"-i" # Exclude revision control files and directories (diff)
"-I" # Exclude revision control files and directories (tarball)
)
# Check if the orig tarball should be included
version=$(dpkg-parsechangelog -SVersion)
prev_version=$(dpkg-parsechangelog -SVersion -o1 -c1)
if [ "${version%-*}" != "${prev_version%-*}" ] ; then
opts+=("-sa") # Include the original source tarball
fi
dpkg-buildpackage "${opts[@]}" "${@}"

View File

@ -0,0 +1,22 @@
#!/bin/bash -eu
#
# Check for dangling symlinks
#
if [ $# -ne 1 ] ; then
echo "Usage: check-symlinks <dirname>" >&2
exit 2
fi
if ! [ -d "${1}" ] ; then
echo "No such directory: ${1}" >&2
exit 1
fi
echo "Check for dangling symlinks in ${1} ..."
if [ "$(find "${1}" -xtype l | wc -l)" -ne 0 ] ; then
echo "Error: Dangling symlinks found" >&2
find "${1}" -xtype l
exit 1
fi

View File

@ -0,0 +1,81 @@
#!/bin/bash -eu
#
# Close a release
#
function usage()
{
cat <<EOF
Usage: $(basename "${0}") [-h]
Close a release, i.e., create a release commit.
Optional arguments:
-h, --help Show this help text and exit.
EOF
}
while [ ${#} -gt 0 ] ; do
case "${1}" in
-h|--help)
usage
exit
;;
*)
echo "Invalid argument: ${1}" >&2
exit 2
;;
esac
shift
done
# Current upstream commit and version
. debian/upstream
# Current package release and version
release=$(dpkg-parsechangelog -SDistribution)
version=$(dpkg-parsechangelog -SVersion)
# New release version and and tag
if [ "${version%-*}" = "${VERSION}" ] ; then
# Bump the upload number
upload=$(echo "${version}" | grep -o '[0-9]*$')
new_version=${version%${upload}}$((upload + 1))
else
# New upstream version
new_version="${VERSION}-0ubuntu1"
fi
new_tag="Ubuntu-${new_version}"
# Check if the tag exists already
if git rev-parse "${new_tag}" >/dev/null 2>&1 ; then
echo "Tag exists already: ${new_tag}" >&2
exit 1
fi
# Find the previous release commit
prev_subject="UBUNTU: Ubuntu-${version}"
prev_commit=$(git log --format='%H %s' | \
grep -m1 -P "^[0-9a-f]{40} ${prev_subject}$" || true)
prev_commit=${prev_commit%% *}
if [ -z "${prev_commit}" ] ; then
echo "Unable to find previous release commit: ${prev_subject}" >&2
exit 1
fi
# Add a new changelog section with all the new commit subjects since the
# previous release
{
echo "linux-firmware (${new_version}) ${release}; urgency=medium"
echo
debian/scripts/generate-changelog "${prev_commit}"..
echo
echo " -- ${DEBFULLNAME} <${DEBEMAIL}> $(date -R)"
echo
cat debian/changelog
} > debian/changelog.new
mv debian/changelog.new debian/changelog
# Commit the new release
git commit -s -m "UBUNTU: ${new_tag}" -- debian/changelog
debian/scripts/tag-release

View File

@ -0,0 +1,34 @@
#!/bin/bash -eu
#
# Compress firmware blobs
#
if [ $# -ne 1 ] ; then
echo "Usage: compress-firmware <dirname>" >&2
exit 2
fi
if ! [ -d "${1}" ] ; then
echo "No such directory: ${1}" >&2
exit 1
fi
echo "Compress firmware files in ${1} ..."
while IFS= read -r f ; do
if [ "${f%.xz}" = "${f}" ] ; then
xz -F xz -C crc32 "${f}"
fi
done < <(find "${1}" -type f)
echo "Recreate symlinks in ${1} ..."
while IFS= read -r l ; do
if [ "${l%.xz}" = "${l}" ] ; then
t=$(readlink "${l}")
if ( cd "${l%/*}" && ! [ -d "${t}" ] ) ; then
ln -s "${t}".xz "${l}".xz
rm "${l}"
fi
fi
done < <(find "${1}" -type l)

View File

@ -0,0 +1,31 @@
#!/bin/bash -eu
#
# Create an orig tarball
#
function out()
{
local rc=${?}
trap - EXIT INT TERM HUP
if [ ${rc} -ne 0 ] ; then
echo "Error: Script failed" >&2
fi
exit "${rc}"
}
trap out EXIT INT TERM HUP
# Current upstream commit and version
. debian/upstream
orig_tarball=../linux-firmware_${VERSION}.orig.tar.xz
if [ -e "${orig_tarball}" ] ; then
echo "Orig tarball ${orig_tarball} exists already"
exit
fi
echo "Creating orig tarball ${orig_tarball} ..."
git archive --format=tar --prefix=linux-firmware-"${VERSION}"/ "${COMMIT}" | \
xz -z - > "${orig_tarball}"

View File

@ -0,0 +1,71 @@
#!/bin/bash -eu
#
# Create quilt patch series and include-binaries file
#
function out()
{
local rc=${?}
trap - EXIT INT TERM HUP
if [ ${rc} -ne 0 ] ; then
echo "Error: Script failed" >&2
fi
exit "${rc}"
}
function add_file()
{
local added=${1} name=${2}
if [ -z "${name}" ] || [ "${name#debian/}" != "${name}" ] ; then
# Empty name or debian/* file
return
fi
if [ -h "${name}" ] ; then
# Symlink
BINARIES+=("${name}")
PATCHABLES+=("${name}")
elif [ "${added}" = "-" ] ; then
# Binary file
BINARIES+=("${name}")
else
# Patchable file
PATCHABLES+=("${name}")
fi
}
trap out EXIT INT TERM HUP
# Current upstream commit
version=$(dpkg-parsechangelog -Sversion)
upstream=${version#*.git}
upstream=${upstream%%-*}
BINARIES=()
PATCHABLES=()
# Walk through all touched files and separate them into binaries that need to
# be included and patchable files
while IFS=" " read -r added name new_name ; do
add_file "${added}" "${name}"
add_file "${added}" "${new_name}"
done < <(git diff --numstat "${upstream}" | awk '{ print $1 " " $3 " " $5 }')
if [ ${#BINARIES[@]} -gt 0 ] ; then
echo "Create debian/source/include-binaries ..."
printf "%s\n" "${BINARIES[@]}" > debian/source/include-binaries
fi
rm -rf debian/patches
install -d debian/patches
if [ ${#PATCHABLES[@]} -gt 0 ] ; then
echo "Create debian/patches/ubuntu.patch ..."
for patchable in "${PATCHABLES[@]}" ; do
git diff "${upstream}" -- "${patchable}"
done > debian/patches/ubuntu.patch
echo ubuntu.patch > debian/patches/series
fi

View File

@ -0,0 +1,131 @@
#!/bin/bash -eu
#
# Generate an Ubuntu-style changelog entry
#
function lp_title()
{
curl -s -S --get "https://api.launchpad.net/devel/bugs/${1}" | \
python3 -c "\
import json,sys
try:
obj = json.load(sys.stdin)
print(obj['title'])
except:
pass
"
}
function usage()
{
cat <<EOF
Usage: $(basename "${0}") [-h] REV_RANGE
Generate an Ubuntu-style changelog entry.
Positional arguments:
REV_RANGE Git revision range.
Optional arguments:
-h, --help Show this help text and exit.
EOF
}
rev_range=
while [ ${#} -gt 0 ] ; do
case "${1}" in
-h|--help)
usage
exit
;;
*)
rev_range=("${@}")
break
;;
esac
shift
done
if [ ${#rev_range[@]} -eq 0 ] ; then
usage
exit 2
fi
declare -A commits=()
declare -a keys=()
while IFS= read -r commit ; do
# Check for 'Ignore: yes'
if git log --format='%b' "${commit}" -1 | grep -q '^Ignore: yes$' ; then
continue
fi
# Extract all bug numbers and CVEs from the commit message
readarray -t refs < <(git log --format='%b' "${commit}" -1 | \
grep -P '^BugLink: |^CVE-' | \
sed 's,BugLink: .*/,,')
# Generate the commits array key
if [ ${#refs[@]} -eq 0 ] ; then
if git log --format='%s' "${commit}" -1 | grep -q '^\s*UBUNTU:\s*' ; then
refs=("UBUNTU")
else
refs=("MISC")
fi
fi
key=${refs[*]}
# Add the commit to the commits array
prev=${commits["${key}"]:-}
if [ -z "${prev}" ] ; then
commits["${key}"]=${commit}
keys+=("${key}")
else
commits["${key}"]="${prev} ${commit}"
fi
done < <(git log --no-merges --reverse --format='%h' "${rev_range[@]}")
for key in "${keys[@]}" ; do
# Generate and print the entry title
entry=
for ref in ${key} ; do
case "${ref}" in
UBUNTU)
title="Miscellaneous Ubuntu changes"
;;
MISC)
title="Miscellaneous upstream changes"
;;
CVE-*)
title=${ref}
;;
*)
title=$(lp_title "${ref}")
if [ -z "${title}" ] ; then
title="INVALID or PRIVATE BUG (LP: #${ref})"
else
title="${title} (LP: #${ref})"
fi
;;
esac
if [ -z "${entry}" ] ; then
entry=" * ${title}"
else
entry="${entry} //\n ${title}"
fi
done
echo -e "${entry}"
# Print the sub-entries (commit subjects)
for commit in ${commits["${key}"]} ; do
subject=$(git log --format='%s' "${commit}" -1 | sed -e 's/^\s*UBUNTU:\s*//')
echo " - ${subject}"
# For rebase commits, add the list of changes from the commit message
if [ "${subject#Rebase to upstream commit}" != "${subject}" ] ; then
git log --format='%b' "${commit}" -1 | grep -P '^Rebase|^- ' | \
sed -e 's,^, ,'
fi
done
done

View File

@ -0,0 +1,32 @@
#!/bin/bash
#
# List status of downstream files
#
. debian/upstream
while IFS= read -r name ; do
# Check if file exists in upstream
if git cat-file -e "${COMMIT}":"${name}" > /dev/null 2>&1 ; then
if [ -e "${name}" ] ; then
if [ -z "$(git diff 6342082c -- "${name}")" ] ; then
# Files is identical with upstream
echo "IDENTICAL ${name}"
else
# File was modified
echo "MODIFIED ${name}"
fi
else
# File was deleted
echo "DELETED ${name}"
fi
else
if [ -e "${name}" ] ; then
# Files was added
echo "ADDED ${name}"
else
# File was added and subsequently removed again
echo "TRANSIENT ${name}"
fi
fi
done < <(git log --format= --name-only "${COMMIT}"..)

View File

@ -0,0 +1,45 @@
#!/bin/bash -eu
#
# Open a new SRU release
#
function usage()
{
cat <<EOF
Usage: $(basename "${0}") [-h]
Open a new SRU release.
Optional arguments:
-h, --help Show this help text and exit.
EOF
}
while [ ${#} -gt 0 ] ; do
case "${1}" in
-h|--help)
usage
exit
;;
*)
echo "Invalid argument: ${1}" >&2
exit 2
;;
esac
shift
done
version=$(dpkg-parsechangelog -S Version)
if echo "${version}" | grep -qE '\.[0-9]$' ; then
echo "Current package version (${version}) looks like an SRU version" \
"already." >&2
exit 1
fi
dist=$(dpkg-parsechangelog -S Distribution)
dch -v "${version}.0" "Initial dummy SRU release."
dch -r -D "${dist}" ""
git commit -s -m "UBUNTU: Initial dummy SRU release
Ignore:yes" -- debian/changelog

View File

@ -0,0 +1,82 @@
#!/bin/bash -eu
#
# Rebase onto upstream
#
function out()
{
local rc=${?}
trap - EXIT INT TERM HUP
if [ ${rc} -ne 0 ] ; then
echo "Error: Script failed" >&2
fi
exit "${rc}"
}
function usage()
{
cat <<EOF
Usage: $(basename "${0}") [-h]
Rebase onto latest upstream linux-firmware. If not present, adds a new remote
'upstream', fetches form it, rebases onto upstream/main and adds a rebase
commit.
Option arguments:
-h, --help Show this help text and exit.
EOF
}
while [ ${#} -gt 0 ] ; do
case "${1}" in
-h|--help)
usage
exit
;;
*)
echo "Invalid argument: ${1}" >&2
exit 2
;;
esac
shift
done
version=$(dpkg-parsechangelog -SVersion)
if echo "${version}" | grep -qE '\.[0-9]$' ; then
echo "Current package version (${version}) looks like an SRU version." \
"Not rebasing." >&2
exit 1
fi
trap out EXIT INT TERM HUP
# Add an upstream remote and fetch it
upstream_git=git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
if ! git remote | grep -qxF upstream ; then
git remote add upstream "${upstream_git}"
fi
git fetch upstream
# Current upstream commit and version
. debian/upstream
# New upstream commit and version
new_commit=$(git rev-parse upstream/main)
new_version=$(date --utc +%Y%m%d).git${new_commit::8}
# Rebase onto upstream/main
git rebase "${new_commit}"
# Create the rebase commit
{
echo "COMMIT=${new_commit}"
echo "VERSION=${new_version}"
} > debian/upstream
git add debian/upstream
git commit -s -m "UBUNTU: Rebase to upstream commit ${new_commit}
Rebase against ${upstream_git}
${new_commit}
$(git log --no-merges --reverse --format='- %s' "${COMMIT}".."${new_commit}")"

View File

@ -0,0 +1,27 @@
#!/bin/bash -eu
#
# Remove firmware files and/or directories
#
if [ $# -ne 1 ] ; then
echo "Usage: remove-firmware <dirname>" >&2
exit 2
fi
if ! [ -d "${1}" ] ; then
echo "No such directory: ${1}" >&2
exit 1
fi
echo "Remove firmware files in ${1} ..."
while IFS= read -r item ; do
# Don't quote 'item' to allow globs in remove-firmware.list
# shellcheck disable=SC2086
for fw in "${1:?}"/${item} ; do
if [ -e "${fw}" ] ; then
echo " ${fw}"
rm -rf "${fw}"
fi
done
done < <(sed -E '/^#|^$/d' debian/remove-firmware.list)

View File

@ -0,0 +1,51 @@
#!/bin/bash -eu
#
# Tag a release
#
function usage()
{
cat <<EOF
Usage: $(basename "${0}") [-f] [-h]
Tag a release commit.
Optional arguments:
-f, --force Overwrite an already existing tag.
-h, --help Show this help text and exit.
EOF
}
force=0
while [ ${#} -gt 0 ] ; do
case "${1}" in
-f|--force)
force=1
;;
-h|--help)
usage
exit
;;
*)
echo "Invalid argument: ${1}" >&2
exit 2
;;
esac
shift
done
version=$(git log --format='%s' -1 | sed -n 's/^UBUNTU: Ubuntu-//p')
if [ -z "${version}" ] ; then
echo "Current HEAD is not an Ubuntu release commit" >&2
exit 1
fi
tag=Ubuntu-${version}
if [ ${force} -eq 0 ] && git rev-parse "${tag}" >/dev/null 2>&1 ; then
echo "Tag exists already: ${tag}" >&2
exit 1
fi
git tag -f -s -m "UBUNTU: ${tag}" "${tag}"

View File

@ -0,0 +1,6 @@
#!/bin/bash -eu
#
# Update firmware from sources
#
make -C fw_source update

View File

@ -0,0 +1 @@
3.0 (quilt)

View File

@ -0,0 +1,74 @@
1a98-INTEL-EDK2-2-tplg.bin
asihpi/dsp2400.bin
asihpi/dsp5000.bin
asihpi/dsp6200.bin
asihpi/dsp6205.bin
asihpi/dsp6400.bin
asihpi/dsp6600.bin
asihpi/dsp8700.bin
asihpi/dsp8900.bin
ath3k-1.fw
atmel_at76c504_2958.bin
atmel_at76c504a_2958.bin
ea/3g_asic.fw
ea/darla20_dsp.fw
ea/darla24_dsp.fw
ea/echo3g_dsp.fw
ea/gina20_dsp.fw
ea/gina24_301_dsp.fw
ea/gina24_361_dsp.fw
ea/indigo_dj_dsp.fw
ea/indigo_djx_dsp.fw
ea/indigo_dsp.fw
ea/indigo_io_dsp.fw
ea/indigo_iox_dsp.fw
ea/layla20_asic.fw
ea/layla20_dsp.fw
ea/layla24_dsp.fw
ea/loader_dsp.fw
ea/mia_dsp.fw
ea/mona_301_dsp.fw
ea/mona_361_dsp.fw
intel/ipu6_fw.bin
intel/ipu6ep_fw.bin
ipw2100-1.3-i.fw
ipw2100-1.3-p.fw
ipw2100-1.3.fw
ipw2200-bss.fw
ipw2200-ibss.fw
ipw2200-sniffer.fw
iwlwifi-6000g2b-5.ucode
v4l-cx2341x-dec.fw
v4l-cx2341x-enc.fw
v4l-cx2341x-init.mpg
v4l-pvrusb2-24xxx-01.fw
v4l-pvrusb2-29xxx-01.fw
vsc/soc_a1_prod/ivsc_fw.bin
vsc/soc_a1_prod/ivsc_pkg_hi556_0.bin
vsc/soc_a1_prod/ivsc_pkg_himx11b1_0.bin
vsc/soc_a1_prod/ivsc_pkg_ovti01a0_0.bin
vsc/soc_a1_prod/ivsc_pkg_ovti01af_0.bin
vsc/soc_a1_prod/ivsc_pkg_ovti01as_0.bin
vsc/soc_a1_prod/ivsc_pkg_ovti02c1_0.bin
vsc/soc_a1_prod/ivsc_pkg_ovti2740_0.bin
vsc/soc_a1_prod/ivsc_pkg_ovti5678_0.bin
vsc/soc_a1_prod/ivsc_pkg_ovti9734_0.bin
vsc/soc_a1_prod/ivsc_pkg_ovti9738_0.bin
vsc/soc_a1_prod/ivsc_skucfg_hi556_0_1.bin
vsc/soc_a1_prod/ivsc_skucfg_himx11b1_0_1.bin
vsc/soc_a1_prod/ivsc_skucfg_ovti01a0_0_1.bin
vsc/soc_a1_prod/ivsc_skucfg_ovti01af_0_1.bin
vsc/soc_a1_prod/ivsc_skucfg_ovti01as_0_1.bin
vsc/soc_a1_prod/ivsc_skucfg_ovti02c1_0_1.bin
vsc/soc_a1_prod/ivsc_skucfg_ovti2740_0_1.bin
vsc/soc_a1_prod/ivsc_skucfg_ovti5678_0_1.bin
vsc/soc_a1_prod/ivsc_skucfg_ovti9734_0_1.bin
vsc/soc_a1_prod/ivsc_skucfg_ovti9738_0_1.bin
zd1201-ap.fw
zd1201.fw
zd1211/zd1211_ub
zd1211/zd1211_uphr
zd1211/zd1211_ur
zd1211/zd1211b_ub
zd1211/zd1211b_uphr
zd1211/zd1211b_ur

View File

@ -0,0 +1,2 @@
COMMIT=f09bebf31b0590bdc875d7236aa705279510cfd0
VERSION=20220923.gitf09bebf3

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
linux-firmware/zd1201-ap.fw Normal file

Binary file not shown.

BIN
linux-firmware/zd1201.fw Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More