mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-21 22:47:56 +00:00
mt76: update to the latest version
74dedf9352c5 mt76: mt7615: fix skb use-after-free on mac reset
7201290eda43 mt76: mt7921: Fix out of order process by invalid event pkt
ca1b57e9971a mt76: mt7915: add a missing HT flag for GI parsing
4932c5d80153 of: net: pass the dst buffer to of_get_mac_address()
51d9eb3e6f52 mt76: mt7915: fix endianness warnings in mu radiotap
833ca13014ab mt76: mt7921: Add mt7922 support
8f8ed44d026e mt76: mt7915: add control knobs for thermal throttling
16f18bab6b11 mt76: mt7915: send EAPOL frames at lowest rate
affea639c586 mt76: mt7921: send EAPOL frames at lowest rate
ac00fed412d4 mt76: mt7915: fix potential overflow of eeprom page index [update]
e576ddb76dfa mt76: mt7915: switch proper tx arbiter mode in testmode
222847c3d5eb mt76: mt7915: fix bit fields for HT rate idx
d04814366c83 mt76: add support for setting mcast rate
4602acc9271a mt76: mt7921: fix dma hang in rmmod
ec2cf3bf96fd mt76: connac: fix GTK rekey offload failure on WPA mixed mode
2fdb9d621431 mt76: connac: add support for limiting to maximum regulatory Tx power
489ace63d42c mt76: mt7921: get rid of monitor_vif
22da8d28fcc8 mt76: mt7921: get rid of mt7921_mac_set_beacon_filter
c94130519786 mt76: mt7921: introduce mt7921_mcu_set_beacon_filter utility routine
51cff39d7ad3 mt76: overwrite default reg_ops if necessary
da11c1c6edef mt76: mt7615: move mt7615_mcu_set_p2p_oppps in mt76_connac module
47f50b0aa4b8 mt76: mt7921: report HE MU radiotap
4f48ba4b0254 mt76: mt7915: checkpatch cleanup
bc7ee7d7bdea mt76: mt7915: add HE-LTF into fixed rate command
6a19e40820aa mt76: mt7921: continue to probe driver when fw already downloaded
8b3d8e2de084 mt76: mt7921: fix firmware usage of RA info using legacy rates
17305a54b166 mt76: mt7921: fix kernel warning from cfg80211_calculate_bitrate
801c15577293 mt76: mt7921: fix endianness warnings in mt7921_mac_decode_he_mu_radiotap
0182a5b99a7a mt76: mt7915: update mac timing settings
e2ee9d0a33ed mt76: use IEEE80211_OFFLOAD_ENCAP_ENABLED instead of MT_DRV_AMSDU_OFFLOAD
fa6504aceb4f Revert "mt76: mt7915: checkpatch cleanup"
56b842b72a72 mt76: mt7915: fix wmm index on DBDC cards
8044311f5de5 mt76: mt7915: fix potential NPE in TXS processing
28da4baec7c5 mt76: mt7915: fix he_mcs capabilities for 160mhz
f7088ebe7452 mt76: mt7915: add LED support
ee019046284d mt76: mt7915: introduce bss coloring support
9848094e4bb5 mt76: mt7921: Fix fall-through warning for Clang
5710d0643418 mt76: add a bound check in mt76_calculate_default_rate()
a509cf2b654e mt76: mt7921: move mt7921_queue_rx_skb to mac.c
5a0f2382fcfe mt76: mt7915: rework debugfs queue info
62ffc31f4d7b mt76: mt7915: rename debugfs tx-queues
4750b5c918e5 mt76: mt7921: always wake device if necessary in debugfs
ac6adf74b3f2 mt76: mt7921: update mib counters dumping phy stats
eb75b9266ce6 net🛜mt76: fix boolreturn.cocci warnings
d7c4698435b3 mt76: mt7921: fix the inconsistent state between bind and unbind
9dcfba3169c4 mt76: switch from 'pci_' to 'dma_' API
d8b5e42c9a73 mt76: fill boottime_ns in Rx path
8ee6446075f2 mt76: disable BH around napi_schedule() calls
e17d730bf2f6 mt76: mt7915: add LED support [update to v3]
80fe40c9457e mt76: mt7915: enable configured beacon tx rate
c8f0d1d81d05 mt76: mt7915: fix hwmon temp sensor mem use-after-free
3b9ba7e02076 mt76: mt7615: fix hwmon temp sensor mem use-after-free
5e82eceb45cb mt76: mt7921: start reworking tx rate reporting
eb66b5c9ff77 mt76: mt7921: add support for tx status reporting
c8010f170e76 mt76: mt7921: report tx rate directly from tx status
4dc7f3db572b mt76: mt7921: remove mcu rate reporting code
db89c6f86724 mt76: mt7921: remove mt7921_sta_stats
6bb8b4267dbe mt76: move spin_lock_bh to spin_lock in tasklet
0eacf41985da mt76: mt7915: honor all possible error conditions in mt7915_mcu_init()
4dfff296ee6e mt76: mt7915: fix possible infinite loop release semaphore
537ed88dd2d0 mt76: mt7921: robustify hardware initialization flow
e0b846159221 mt76: mt7921: fix retrying release semaphore without end
c55dedcea268 mt76: mt7915: add ethtool stats support
d1d5e8cd3a3e mt76: mt7915: add tx stats gathered from tx-status callbacks
1687189d68b7 mt76: mt7915: add some per-station tx stats to ethtool
f4dde5f765af mt76: mt7915: add tx mu/su counters to mib
9752bf0643c9 mt76: mt7915: add more MIB registers
4727415017c9 mt76: mt7915: add mib counters to ethtool stats
4ca80a749e7f mt76: connac: set 6G phymode in mt76_connac_get_phy_mode{,v2}
3f2a5d39631e mt76: connac: enable 6GHz band for hw scan
817a41826bd7 mt76: connac: add 6GHz support to mt76_connac_mcu_set_channel_domain
a6ab81c21080 mt76: connac: set 6G phymode in single-sku support
ca4f47028a44 mt76: connac: add 6GHz support to mt76_connac_mcu_sta_tlv
d2e192ea81e2 mt76: connac: add 6GHz support to mt76_connac_mcu_uni_add_bss
c3dd12b4c8ae mt76: connac: enable hw amsdu @ 6GHz
91ed2b256c20 mt76: add 6GHz support
de8c4f92621f mt76: mt7921: add 6GHz support
f143aedc1d57 mt76: introduce packet_id idr
bcc8d9e03a5d mt76: remove mt76_wcid pointer from mt76_tx_status_check signature
ccbd84763153 mt76: substitute sk_buff_head status_list with spinlock_t status_lock
69bb59df894c mt76: schedule status timeout at dma completion
03a992645310 mt76: support reading EEPROM data embedded in fdt
75615480b3fe mt76: introduce __mt76_mcu_send_firmware routine
e8e2eae41f94 mt76: drop MCU header size from buffer size in __mt76_mcu_send_firmware
4c455e8b1a20 mt76: mt7915: introduce __mt7915_get_tsf routine
9d49c611a2d7 mt76: mt7915: introduce mt7915_mcu_twt_agrt_update mcu command
f44ca79c9aed mt76: mt7915: introduce mt7915_mac_add_twt_setup routine
2f9555a2f18f mt76: mt7915: enable twt responder capability
440e2db8d541 mt76: mt7915: add twt_stats knob in debugfs
eb5f640f8afa mt76: debugfs: improve queue node readability
53d7eb3b4884 mt76: mt7615: fix monitor mode tear down crash
2aa3d4414826 mt76: mt7921: add delay config for sched scan
47e8e96e8e4d mt76: use a separate CCMP PN receive counter for management frames
5560b08f8e2d mt76: do not access 802.11 header in ccmp check for 802.3 rx skbs
Signed-off-by: Felix Fietkau <nbd@nbd.name>
This commit is contained in:
parent
978e822db3
commit
4f2fd0215b
@ -8,9 +8,9 @@ PKG_LICENSE_FILES:=
|
||||
|
||||
PKG_SOURCE_URL:=https://github.com/openwrt/mt76
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_DATE:=2021-07-15
|
||||
PKG_SOURCE_VERSION:=bbebea7d6dc64313132226adc3f7369d36e9359d
|
||||
PKG_MIRROR_HASH:=17cd74e72c1f6c8742b698bf6772afacc6fba71b233af8c4d59530600cf44d5b
|
||||
PKG_SOURCE_DATE:=2021-10-11
|
||||
PKG_SOURCE_VERSION:=5560b08f8e2dfe92aa920a9cf3c5655a309dd25b
|
||||
PKG_MIRROR_HASH:=36359a85325a60230838e38e087f9aecc49cf7abca0ef55b2dbee86cf9194425
|
||||
|
||||
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
|
||||
PKG_USE_NINJA:=0
|
||||
|
@ -1,206 +0,0 @@
|
||||
From 83216e3988cd196183542937c9bd58b279f946af Mon Sep 17 00:00:00 2001
|
||||
From: Michael Walle <michael@walle.cc>
|
||||
Date: Mon, 12 Apr 2021 19:47:17 +0200
|
||||
Subject: of: net: pass the dst buffer to of_get_mac_address()
|
||||
|
||||
of_get_mac_address() returns a "const void*" pointer to a MAC address.
|
||||
Lately, support to fetch the MAC address by an NVMEM provider was added.
|
||||
But this will only work with platform devices. It will not work with
|
||||
PCI devices (e.g. of an integrated root complex) and esp. not with DSA
|
||||
ports.
|
||||
|
||||
There is an of_* variant of the nvmem binding which works without
|
||||
devices. The returned data of a nvmem_cell_read() has to be freed after
|
||||
use. On the other hand the return of_get_mac_address() points to some
|
||||
static data without a lifetime. The trick for now, was to allocate a
|
||||
device resource managed buffer which is then returned. This will only
|
||||
work if we have an actual device.
|
||||
|
||||
Change it, so that the caller of of_get_mac_address() has to supply a
|
||||
buffer where the MAC address is written to. Unfortunately, this will
|
||||
touch all drivers which use the of_get_mac_address().
|
||||
|
||||
Usually the code looks like:
|
||||
|
||||
const char *addr;
|
||||
addr = of_get_mac_address(np);
|
||||
if (!IS_ERR(addr))
|
||||
ether_addr_copy(ndev->dev_addr, addr);
|
||||
|
||||
This can then be simply rewritten as:
|
||||
|
||||
of_get_mac_address(np, ndev->dev_addr);
|
||||
|
||||
Sometimes is_valid_ether_addr() is used to test the MAC address.
|
||||
of_get_mac_address() already makes sure, it just returns a valid MAC
|
||||
address. Thus we can just test its return code. But we have to be
|
||||
careful if there are still other sources for the MAC address before the
|
||||
of_get_mac_address(). In this case we have to keep the
|
||||
is_valid_ether_addr() call.
|
||||
|
||||
The following coccinelle patch was used to convert common cases to the
|
||||
new style. Afterwards, I've manually gone over the drivers and fixed the
|
||||
return code variable: either used a new one or if one was already
|
||||
available use that. Mansour Moufid, thanks for that coccinelle patch!
|
||||
|
||||
<spml>
|
||||
@a@
|
||||
identifier x;
|
||||
expression y, z;
|
||||
@@
|
||||
- x = of_get_mac_address(y);
|
||||
+ x = of_get_mac_address(y, z);
|
||||
<...
|
||||
- ether_addr_copy(z, x);
|
||||
...>
|
||||
|
||||
@@
|
||||
identifier a.x;
|
||||
@@
|
||||
- if (<+... x ...+>) {}
|
||||
|
||||
@@
|
||||
identifier a.x;
|
||||
@@
|
||||
if (<+... x ...+>) {
|
||||
...
|
||||
}
|
||||
- else {}
|
||||
|
||||
@@
|
||||
identifier a.x;
|
||||
expression e;
|
||||
@@
|
||||
- if (<+... x ...+>@e)
|
||||
- {}
|
||||
- else
|
||||
+ if (!(e))
|
||||
{...}
|
||||
|
||||
@@
|
||||
expression x, y, z;
|
||||
@@
|
||||
- x = of_get_mac_address(y, z);
|
||||
+ of_get_mac_address(y, z);
|
||||
... when != x
|
||||
</spml>
|
||||
|
||||
All drivers, except drivers/net/ethernet/aeroflex/greth.c, were
|
||||
compile-time tested.
|
||||
|
||||
Suggested-by: Andrew Lunn <andrew@lunn.ch>
|
||||
Signed-off-by: Michael Walle <michael@walle.cc>
|
||||
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
|
||||
Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
---
|
||||
arch/arm/mach-mvebu/kirkwood.c | 3 +-
|
||||
arch/powerpc/sysdev/tsi108_dev.c | 5 +-
|
||||
drivers/net/ethernet/aeroflex/greth.c | 6 +--
|
||||
drivers/net/ethernet/allwinner/sun4i-emac.c | 10 ++--
|
||||
drivers/net/ethernet/altera/altera_tse_main.c | 7 +--
|
||||
drivers/net/ethernet/arc/emac_main.c | 8 +--
|
||||
drivers/net/ethernet/atheros/ag71xx.c | 7 +--
|
||||
drivers/net/ethernet/broadcom/bcm4908_enet.c | 7 +--
|
||||
drivers/net/ethernet/broadcom/bcmsysport.c | 7 +--
|
||||
drivers/net/ethernet/broadcom/bgmac-bcma.c | 10 ++--
|
||||
drivers/net/ethernet/broadcom/bgmac-platform.c | 11 ++--
|
||||
drivers/net/ethernet/cadence/macb_main.c | 11 ++--
|
||||
drivers/net/ethernet/cavium/octeon/octeon_mgmt.c | 8 +--
|
||||
drivers/net/ethernet/cavium/thunder/thunder_bgx.c | 5 +-
|
||||
drivers/net/ethernet/davicom/dm9000.c | 10 ++--
|
||||
drivers/net/ethernet/ethoc.c | 6 +--
|
||||
drivers/net/ethernet/ezchip/nps_enet.c | 7 +--
|
||||
drivers/net/ethernet/freescale/fec_main.c | 7 +--
|
||||
drivers/net/ethernet/freescale/fec_mpc52xx.c | 7 +--
|
||||
drivers/net/ethernet/freescale/fman/mac.c | 9 ++--
|
||||
.../net/ethernet/freescale/fs_enet/fs_enet-main.c | 5 +-
|
||||
drivers/net/ethernet/freescale/gianfar.c | 8 +--
|
||||
drivers/net/ethernet/freescale/ucc_geth.c | 5 +-
|
||||
drivers/net/ethernet/hisilicon/hisi_femac.c | 7 +--
|
||||
drivers/net/ethernet/hisilicon/hix5hd2_gmac.c | 7 +--
|
||||
drivers/net/ethernet/lantiq_xrx200.c | 7 +--
|
||||
drivers/net/ethernet/marvell/mv643xx_eth.c | 5 +-
|
||||
drivers/net/ethernet/marvell/mvneta.c | 6 +--
|
||||
.../net/ethernet/marvell/prestera/prestera_main.c | 11 ++--
|
||||
drivers/net/ethernet/marvell/pxa168_eth.c | 9 +---
|
||||
drivers/net/ethernet/marvell/sky2.c | 8 ++-
|
||||
drivers/net/ethernet/mediatek/mtk_eth_soc.c | 11 ++--
|
||||
drivers/net/ethernet/micrel/ks8851_common.c | 7 ++-
|
||||
drivers/net/ethernet/microchip/lan743x_main.c | 5 +-
|
||||
drivers/net/ethernet/nxp/lpc_eth.c | 4 +-
|
||||
drivers/net/ethernet/qualcomm/qca_spi.c | 10 ++--
|
||||
drivers/net/ethernet/qualcomm/qca_uart.c | 9 +---
|
||||
drivers/net/ethernet/renesas/ravb_main.c | 12 +++--
|
||||
drivers/net/ethernet/renesas/sh_eth.c | 5 +-
|
||||
.../net/ethernet/samsung/sxgbe/sxgbe_platform.c | 13 ++---
|
||||
drivers/net/ethernet/socionext/sni_ave.c | 10 ++--
|
||||
.../net/ethernet/stmicro/stmmac/dwmac-anarion.c | 2 +-
|
||||
.../ethernet/stmicro/stmmac/dwmac-dwc-qos-eth.c | 2 +-
|
||||
.../net/ethernet/stmicro/stmmac/dwmac-generic.c | 2 +-
|
||||
drivers/net/ethernet/stmicro/stmmac/dwmac-imx.c | 2 +-
|
||||
.../net/ethernet/stmicro/stmmac/dwmac-intel-plat.c | 2 +-
|
||||
.../net/ethernet/stmicro/stmmac/dwmac-ipq806x.c | 2 +-
|
||||
.../net/ethernet/stmicro/stmmac/dwmac-lpc18xx.c | 2 +-
|
||||
.../net/ethernet/stmicro/stmmac/dwmac-mediatek.c | 2 +-
|
||||
drivers/net/ethernet/stmicro/stmmac/dwmac-meson.c | 2 +-
|
||||
.../net/ethernet/stmicro/stmmac/dwmac-meson8b.c | 2 +-
|
||||
drivers/net/ethernet/stmicro/stmmac/dwmac-oxnas.c | 2 +-
|
||||
.../ethernet/stmicro/stmmac/dwmac-qcom-ethqos.c | 2 +-
|
||||
drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c | 2 +-
|
||||
.../net/ethernet/stmicro/stmmac/dwmac-socfpga.c | 2 +-
|
||||
drivers/net/ethernet/stmicro/stmmac/dwmac-sti.c | 2 +-
|
||||
drivers/net/ethernet/stmicro/stmmac/dwmac-stm32.c | 2 +-
|
||||
drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c | 2 +-
|
||||
drivers/net/ethernet/stmicro/stmmac/dwmac-sunxi.c | 2 +-
|
||||
.../net/ethernet/stmicro/stmmac/dwmac-visconti.c | 2 +-
|
||||
drivers/net/ethernet/stmicro/stmmac/stmmac.h | 2 +-
|
||||
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 2 +-
|
||||
.../net/ethernet/stmicro/stmmac/stmmac_platform.c | 14 ++---
|
||||
.../net/ethernet/stmicro/stmmac/stmmac_platform.h | 2 +-
|
||||
drivers/net/ethernet/ti/am65-cpsw-nuss.c | 19 ++++---
|
||||
drivers/net/ethernet/ti/cpsw.c | 7 +--
|
||||
drivers/net/ethernet/ti/cpsw_new.c | 7 +--
|
||||
drivers/net/ethernet/ti/davinci_emac.c | 8 +--
|
||||
drivers/net/ethernet/ti/netcp_core.c | 7 +--
|
||||
drivers/net/ethernet/wiznet/w5100-spi.c | 8 ++-
|
||||
drivers/net/ethernet/wiznet/w5100.c | 2 +-
|
||||
drivers/net/ethernet/xilinx/ll_temac_main.c | 8 +--
|
||||
drivers/net/ethernet/xilinx/xilinx_axienet_main.c | 15 +++---
|
||||
drivers/net/ethernet/xilinx/xilinx_emaclite.c | 8 +--
|
||||
drivers/net/wireless/ath/ath9k/init.c | 5 +-
|
||||
drivers/net/wireless/mediatek/mt76/eeprom.c | 9 +---
|
||||
drivers/net/wireless/ralink/rt2x00/rt2x00dev.c | 6 +--
|
||||
drivers/of/of_net.c | 60 ++++++++++------------
|
||||
drivers/staging/octeon/ethernet.c | 10 ++--
|
||||
drivers/staging/wfx/main.c | 7 ++-
|
||||
include/linux/of_net.h | 6 +--
|
||||
include/net/dsa.h | 2 +-
|
||||
net/dsa/dsa2.c | 2 +-
|
||||
net/dsa/slave.c | 2 +-
|
||||
net/ethernet/eth.c | 11 ++--
|
||||
85 files changed, 218 insertions(+), 364 deletions(-)
|
||||
|
||||
diff --git a/drivers/net/wireless/mediatek/mt76/eeprom.c b/drivers/net/wireless/mediatek/mt76/eeprom.c
|
||||
index 665b54c5c8ae5..6d895738222ad 100644
|
||||
--- a/eeprom.c
|
||||
+++ b/eeprom.c
|
||||
@@ -91,15 +91,9 @@ void
|
||||
{
|
||||
struct mt76_dev *dev = phy->dev;
|
||||
|
||||
-#ifdef CONFIG_OF
|
||||
struct device_node *np = dev->dev->of_node;
|
||||
- const u8 *mac = NULL;
|
||||
|
||||
- if (np)
|
||||
- mac = of_get_mac_address(np);
|
||||
- if (!IS_ERR_OR_NULL(mac))
|
||||
- ether_addr_copy(phy->macaddr, mac);
|
||||
-#endif
|
||||
+ of_get_mac_address(np, phy->macaddr);
|
||||
|
||||
if (!is_valid_ether_addr(phy->macaddr)) {
|
||||
eth_random_addr(phy->macaddr);
|
||||
--
|
||||
cgit 1.2.3-1.el7
|
||||
|
Loading…
Reference in New Issue
Block a user