Page MenuHomeFreeBSD

D57242.diff
No OneTemporary

D57242.diff

diff --git a/sys/contrib/dev/mediatek/mt76/zzz_fw_ports_fwget.sh b/sys/contrib/dev/mediatek/mt76/zzz_fw_ports_fwget.sh
--- a/sys/contrib/dev/mediatek/mt76/zzz_fw_ports_fwget.sh
+++ b/sys/contrib/dev/mediatek/mt76/zzz_fw_ports_fwget.sh
@@ -24,6 +24,11 @@
FWSUBDIR=mediatek
CHECKFILE=mt792x.h
+SYS=../../../..
+LINUXKPI_INCLUDES="-I${SYS}/compat/linuxkpi/common/include \
+ -I${SYS}/compat/linuxkpi/dummy/include \
+ -include ${SYS}/compat/linuxkpi/common/include/linux/kconfig.h"
+
################################################################################
#
# Check pre-reqs
@@ -56,8 +61,8 @@
case ${d} in
mt7615) flav=${d} ;;
mt7915) flav=${d} ;;
- mt7921) flav=mt792x ;;
- mt7925) flav=mt792x ;;
+ mt7921) flav=${d} ;;
+ mt7925) flav=${d} ;;
mt7996) flav=${d} ;;
*) printf "ERROR: unsupported directory/flavor '%s'\n" ${d} >&2
exit 1
@@ -80,19 +85,22 @@
get_firmwares_by_flavor()
{
- for h in mt7615/mt7615.h mt7915/mt7915.h mt792x.h mt7996/mt7996.h; do
+ for h in mt7615/mt7615.h mt7915/mt7915.h mt7921/mt7921.h mt7925/mt7925.h mt7996/mt7996.h; do
case ${h} in
mt7615/mt7615.h) flav=mt7615 ;;
mt7915/mt7915.h) flav=mt7915 ;;
- mt792x.h) flav=mt792x ;;
+ mt7921/mt7921.h) flav=mt7921 ;;
+ mt7925/mt7925.h) flav=mt7925 ;;
mt7996/mt7996.h) flav=mt7996 ;;
*) printf "ERROR: unsupported header/flavor '%s'\n" ${h} >&2
exit 1
;;
esac
- awk -v rege="${FWSUBDIR}/" -v flav=${flav} -F\" '{ if ($0 ~ rege) { printf "%s\t%s\n", tolower(flav), $2; } }' ${h} | \
+ # Use preprocessor with a minimal include list to get #defines
+ cpp ${LINUXKPI_INCLUDES} -dM -M -MG -MF /dev/null ${h} 2> /dev/null | \
+ awk -v rege="${FWSUBDIR}/" -v flav=${flav} -F\" '{ if ($0 ~ rege) { printf "%s\t%s\n", tolower(flav), $2; } }' | \
while read flav fwn; do
if test ! -e ${LFWDIR}/${fwn}; then
#printf "Firmware %s (for %s) does not exist; skipping\n" ${fwn} ${flav} >&2
@@ -253,12 +261,12 @@
# printf "===> did %s flav %s\n" ${did} ${flav} >&2
if test ${n} -eq 1; then
- echo "${did} ${flav}" | awk -v drv=${FWSUBDIR} '{
+ echo "${did} ${flav}" | awk -v drv=${DRIVER} '{
printf "\t%s)\taddpkg \"wifi-firmware-%s-kmod-%s\"; return 1 ;;\n",
tolower($1), drv, tolower($2);
}' >> ${fwgetfile}
else
- echo "${did} ${flav}" | awk -v drv=${FWSUBDIR} '{
+ echo "${did} ${flav}" | awk -v drv=${DRIVER} '{
printf "\t%s)\taddpkg \"wifi-firmware-%s-kmod-%s\"\n",
tolower($1), drv, tolower($2);
}' >> ${fwgetfile}
@@ -276,7 +284,7 @@
#printf "===> did %s flav %s\n" ${did} ${flav} >&2
- echo "${did} ${flav}" | awk -v drv=${FWSUBDIR} '{
+ echo "${did} ${flav}" | awk -v drv=${DRIVER} '{
printf "\t\taddpkg \"wifi-firmware-%s-kmod-%s\"\n",
drv, tolower($2);
}' >> ${fwgetfile}
@@ -290,5 +298,6 @@
fi
printf "INFO: fwget pci_network_mediatek %s template at %s\n" ${DRIVER} ${fwgetfile} >&2
+printf "WARNING: make sure to check for PCI_VENDOR_ID_* other than Mediatek"
# end
diff --git a/usr.sbin/fwget/pci/pci b/usr.sbin/fwget/pci/pci
--- a/usr.sbin/fwget/pci/pci
+++ b/usr.sbin/fwget/pci/pci
@@ -47,6 +47,7 @@
0x168c) echo "qca" ;; # Qualcomm Atheros
0x17cb) echo "qca" ;; # Qualcomm Technologies
0x8086) echo "intel" ;;
+ 0x0b48) echo "ittim" ;;
esac
}
diff --git a/usr.sbin/fwget/pci/pci_network_ittim b/usr.sbin/fwget/pci/pci_network_ittim
new file mode 100644
--- /dev/null
+++ b/usr.sbin/fwget/pci/pci_network_ittim
@@ -0,0 +1,45 @@
+#-
+# SPDX-License-Identifier: BSD-2-Clause
+#
+# Copyright (c) 2026 The FreeBSD Foundation
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+# 1. Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+# notice, this list of conditions and the following disclaimer in the
+# documentation and/or other materials provided with the distribution.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+# SUCH DAMAGE.
+#
+
+pci_network_ittim_mt76()
+{
+
+ case "$1" in
+ 0x7922) addpkg "wifi-firmware-mt76-kmod-mt7921"; return 1 ;;
+ esac
+}
+
+pci_network_ittim()
+{
+
+ for _drv in mt76; do
+ pci_network_ittim_${_drv} "$1"
+ case $? in
+ 1) break ;;
+ esac
+ done
+}
diff --git a/usr.sbin/fwget/pci/pci_network_mediatek b/usr.sbin/fwget/pci/pci_network_mediatek
--- a/usr.sbin/fwget/pci/pci_network_mediatek
+++ b/usr.sbin/fwget/pci/pci_network_mediatek
@@ -38,9 +38,9 @@
# { sys/contrib/dev/mediatek/mt76/zzz_fw_ports_fwget.sh }
### >>>
- 0x0608) addpkg "wifi-firmware-mt76-kmod-mt792x"; return 1 ;;
- 0x0616) addpkg "wifi-firmware-mt76-kmod-mt792x"; return 1 ;;
- 0x0717) addpkg "wifi-firmware-mt76-kmod-mt792x"; return 1 ;;
+ 0x0608) addpkg "wifi-firmware-mt76-kmod-mt7921"; return 1 ;;
+ 0x0616) addpkg "wifi-firmware-mt76-kmod-mt7921"; return 1 ;;
+ 0x0717) addpkg "wifi-firmware-mt76-kmod-mt7925"; return 1 ;;
0x7611) addpkg "wifi-firmware-mt76-kmod-mt7615"; return 1 ;;
0x7615) addpkg "wifi-firmware-mt76-kmod-mt7615"; return 1 ;;
0x7663) addpkg "wifi-firmware-mt76-kmod-mt7615"; return 1 ;;
@@ -48,10 +48,10 @@
0x790a) addpkg "wifi-firmware-mt76-kmod-mt7915"; return 1 ;;
0x7915) addpkg "wifi-firmware-mt76-kmod-mt7915"; return 1 ;;
0x7916) addpkg "wifi-firmware-mt76-kmod-mt7915"; return 1 ;;
- 0x7920) addpkg "wifi-firmware-mt76-kmod-mt792x"; return 1 ;;
- 0x7922) addpkg "wifi-firmware-mt76-kmod-mt792x"; return 1 ;;
- 0x7925) addpkg "wifi-firmware-mt76-kmod-mt792x"; return 1 ;;
- 0x7961) addpkg "wifi-firmware-mt76-kmod-mt792x"; return 1 ;;
+ 0x7920) addpkg "wifi-firmware-mt76-kmod-mt7921"; return 1 ;;
+ 0x7922) addpkg "wifi-firmware-mt76-kmod-mt7921"; return 1 ;;
+ 0x7925) addpkg "wifi-firmware-mt76-kmod-mt7925"; return 1 ;;
+ 0x7961) addpkg "wifi-firmware-mt76-kmod-mt7921"; return 1 ;;
0x7990) addpkg "wifi-firmware-mt76-kmod-mt7996"; return 1 ;;
0x7991) addpkg "wifi-firmware-mt76-kmod-mt7996"; return 1 ;;
0x7992) addpkg "wifi-firmware-mt76-kmod-mt7996"; return 1 ;;

File Metadata

Mime Type
text/plain
Expires
Fri, Jul 3, 5:10 PM (22 h, 5 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
34631660
Default Alt Text
D57242.diff (6 KB)

Event Timeline