bugfixes:
* Rreverted patch `105-ath11k-fix-monitor-crash-if-tx-offload-is-enabled.patch`.
Initial test show lower memory use. `ieee80211_tx_status_8023` was
also removed upstream for a reason as it wasn't being used, and the
logic behind it was flawed.
See https://patchwork.kernel.org/project/linux-wireless/patch/20230308174703.12270-2-quic_pradeepc@quicinc.com
* Mmemory profile for '256M' was missing logic that was in 512/1G.
Should build correctly now
* added more qsdk related patches to nss/offload
ath11k_nss: fix up patches
ath11k_nss: revert m3, fix coredump when rebooting
M3 SSR dump logic makes the router coredump. Just putting dummy case to
skip warning.
[12394.072384] Hardware name: Dynalink DL-WRX36 (DT)
[12394.079758] Call trace:
[12394.084354] dump_backtrace.part.0+0xbc/0xd0
[12394.086614] show_stack+0x18/0x30
[12394.091127] dump_stack_lvl+0x6c/0x88
[12394.094339] dump_stack+0x18/0x34
[12394.097985] bad_page+0xe0/0x110
[12394.101282] __free_pages_ok+0x33c/0x360
[12394.104582] __free_pages+0xbc/0xe0
[12394.108487] dma_direct_free+0xd0/0x140
[12394.111701] dma_free_attrs+0x90/0xb0
[12394.115519] ath11k_qmi_fwreset_from_cold_boot+0x9e0/0xa10 [ath11k]
[12394.119343] ath11k_qmi_deinit_service+0x64/0x21d0 [ath11k]
[12394.125419] ath11k_core_deinit+0xa4/0xc0 [ath11k]
[12394.130974] 0xffffffc000fb3600
[12394.135831] platform_shutdown+0x24/0x40
[12394.138871] device_shutdown+0x14c/0x240
[12394.143037] kernel_restart+0x40/0xb0
[12394.146944] __do_sys_reboot+0xcc/0x200
[12394.150502] __arm64_sys_reboot+0x24/0x30
[12394.154148] invoke_syscall.constprop.0+0x5c/0x110
[12394.158317] do_el0_svc+0x58/0x170
[12394.163001] el0_svc+0x18/0x60
[12394.166386] el0t_64_sync_handler+0x114/0x120
[12394.169426] el0t_64_sync+0x174/0x178
In case you want to specify the memory profile to use rather than
letting it autodetect. The following new uci option is introduced.
pbuf.
config general opt
option memory_profile ''
choices are 1gb, 512mb, 256mb. Delete option to let it autodetect.
NOTE: You must reboot after changing these settings, for it to
autoapply.
ath11k_nss: fix compilation and rename some patches
Memory allocations in the driver & mac80211 are logged
and populate those values to the user space via debugfs.
This stats will give the snapshot of the memory being
used by the driver at the time of dumping these
memory stats.
Command:
cat /sys/kernel/debug/ath11k/ipq8074\ hw2.0/memory_stats
Sample output of the stats
MEMORY STATS IN BYTES:
malloc size : 6287583
ce_ring_alloc size: 109308
dma_alloc size:: 10831860
htc_skb_alloc size: 3840
wmi alloc size: 0
per peer object: 4644
rx_post_buf size: 5091840
Total size: 22329075
User can disable/enable the memory stats accounting with
the below command.
echo N > /sys/kernel/debug/ath11k/ipq8074\ hw2.0/enable_memory_stats
where N = 0 to disable logging, 1 to enable the logging.
Note: This should be enabled/disabled only after wifi is down.
User shouldn't enable/disable when the wifi is up to avoid
accounting the negative values which cause incorrect values
in the memory stats.
Command:
cat /sys/kernel/debug/ieee80211/phyX/memory_stats
memory stats: malloc_size: 108
ath11k_nss: bugfix change start order
value 'dev.nss.n2hcfg.n2h_wifi_pool_buf' was not getting set, wait till
after qca-nss-drv is loaded.
ath11k_nss: finally fix n2hcfg values not being set
Attempt at getting NSS WiFi Offload working on kernel 6.1 (backport 6.5)
These patches are a mix of @ansuel branch for 5.15 (ipq807x-5.15-ecm-wifi)
3ecaee768e
And QUIC's upstream NSS patches on [NHSS.QSDK.12.4.5.r3](https://git.codelinaro.org/clo/qsdk/oss/system/feeds/wlan-open.git)
For the actual package setup (Makfiles,ath.mk) Qualcomm's branch is under 'wlan-open/NHSS.QSDK.12.4.5.r3'
Looks like they've swtiched to using backports 6.5-rc3, and figured to
use a mix of their patches on 'NHSS.QSDK.12.4.5.r3' (nss)
'wlan-open/NHSS.QSDK.12.4.5.r3' (syncing with openwrt main).
Booting with "nss_offload=1 frame_mode=2"
Logs show:
[ 16.606282] WARNING: CPU: 2 PID: 3524 at ath11k_nss_tx+0x1d4/0x1e0 [ath11k]
[ 16.611060] Modules linked in: ecm pppoe ppp_async nft_fib_inet nf_flow_table_inet ath11k_ahb ath11k pptp pppox ppp_generic nft_reject_ipv6 nft_reject_ipv4 nft_reject_inet nft_reject nft_redir nft_quota nft_objref nft_numgen nft_nat nft_masq nft_log nft_limit nft_hash nft_fullcone nft_flow_offload nft_fib_ipv6 nft_fib_ipv4 nft_fib nft_ct nft_compat nft_chain_nat nf_tables nf_nat nf_flow_table nf_conntrack_netlink nf_conntrack mac80211 iptable_mangle iptable_filter ipt_REJECT ipt_ECN ip_tables cfg80211 xt_time xt_tcpudp xt_tcpmss xt_statistic xt_multiport xt_mark xt_mac xt_limit xt_length xt_hl xt_ecn xt_dscp xt_comment xt_TCPMSS xt_LOG xt_HL xt_DSCP xt_CLASSIFY x_tables wireguard slhc sch_cake qrtr_smd qrtr qmi_helpers nfnetlink nf_reject_ipv6 nf_reject_ipv4 nf_log_syslog nf_defrag_ipv4 mhi libcrc32c libchacha20poly1305 compat sch_tbf sch_ingress sch_htb sch_hfsc em_u32 cls_u32 cls_route cls_matchall cls_fw cls_flow cls_basic act_skbedit act_mirred act_gact qca_nss_cfi_cryptoapi
[ 16.611215] qca_nss_crypto qca_nss_qdisc qca_nss_wifi_meshmgr qca_nss_gre ledtrig_usbport qca_mcs bonding ip6_gre ip_gre gre ifb nat46 nf_defrag_ipv6 sit qca_nss_drv ip6_tunnel tunnel6 tunnel4 nls_utf8 nls_iso8859_1 nls_cp437 vxlan seqiv michael_mic uas usb_storage leds_gpio xhci_plat_hcd xhci_pci xhci_hcd dwc3 dwc3_qcom qca_nss_dp qca_ssdk ramoops reed_solomon pstore gpio_button_hotplug ext4 mbcache jbd2 aquantia hwmon crc_ccitt crc32c_generic
[ 16.721723] CPU: 2 PID: 3524 Comm: hostapd Not tainted 6.1.68 #0
[ 16.743958] Hardware name: Dynalink DL-WRX36 (DT)
[ 16.750032] pstate: 60400005 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[ 16.754635] pc : ath11k_nss_tx+0x1d4/0x1e0 [ath11k]
[ 16.761403] lr : ath11k_nss_tx+0x1bc/0x1e0 [ath11k]
[ 16.766264] sp : ffffffc00b1db790
[ 16.771122] x29: ffffffc00b1db790 x28: 0000000000000038 x27: 0000000000000000
[ 16.774602] x26: ffffff8006dd7430 x25: ffffff8007ea9dc8 x24: 0000000060000012
[ 16.781719] x23: ffffff8005c6a060 x22: ffffff8005c6a060 x21: ffffff80072f12d8
[ 16.788837] x20: ffffff8007ea9dc8 x19: ffffff8006082800 x18: 0000000000000005
[ 16.795957] x17: 6976312065707974 x16: 207061636e652062 x15: 6b73207874207373
[ 16.803075] x14: ffffffc00a0dd518 x13: 000000000000018b x12: 000000000000018b
[ 16.810192] x11: 00000000ffffffea x10: ffffffc00a135518 x9 : 0000000000000001
[ 16.817310] x8 : 0000000000000001 x7 : 0000000000017fe8 x6 : c0000000ffffefff
[ 16.824429] x5 : 0000000000000000 x4 : 0000000000000000 x3 : 0000000000000000
[ 16.831547] x2 : ffffff80072f1370 x1 : 0000000000000000 x0 : 0000000000000001
[ 16.838665] Call trace:
[ 16.845774] ath11k_nss_tx+0x1d4/0x1e0 [ath11k]
[ 16.848035] ath11k_mac_tx_mgmt_pending_free+0x3034/0x9600 [ath11k]
[ 16.852551] ieee80211_handle_wake_tx_queue+0x68/0xb10 [mac80211]
[ 16.858801] ieee80211_probereq_get+0xca4/0x11f0 [mac80211]
[ 16.865049] ieee80211_tx_prepare_skb+0x1dc/0x240 [mac80211]
[ 16.870432] ieee80211_xmit+0xcc/0x120 [mac80211]
[ 16.876333] __ieee80211_subif_start_xmit+0x2b8/0x380 [mac80211]
[ 16.880937] ieee80211_subif_start_xmit+0x40/0x3b0 [mac80211]
[ 16.887013] ieee80211_subif_start_xmit_8023+0xb8/0x430 [mac80211]
[ 16.892656] dev_hard_start_xmit+0x8c/0x110
[ 16.898728] __dev_queue_xmit+0x1f0/0xbc0
[ 16.902808] dev_queue_xmit+0x14/0x20
[ 16.906975] packet_sendmsg+0x768/0x1260
[ 16.910620] __sys_sendto+0xdc/0x140
[ 16.914613] __arm64_sys_sendto+0x28/0x40
[ 16.918174] invoke_syscall.constprop.0+0x5c/0x110
[ 16.922081] do_el0_svc+0x58/0x170
[ 16.926765] el0_svc+0x18/0x60
[ 16.930149] el0t_64_sync_handler+0x114/0x120
[ 16.933190] el0t_64_sync+0x174/0x178
[ 16.933197] ---[ end trace 0000000000000000 ]---
[ 16.933230] ath11k c000000.wifi: failed to transmit frame -22
[ 17.041495] ath11k c000000.wifi: encap mismatch in nss tx skb encap type 1vif encap type 2
[ 17.041578] ath11k c000000.wifi: failed to transmit frame -22
Which is confusing since the parameter is definitley set to '2'.
➤ cat /sys/module/ath11k/parameters/frame_mode
2
Booting with either "nss_offload=1 frame_mode=3" (RAW), or "nss_offload=1 frame_mode=1" (Native Wifi)
Results in:
[ 15.644742] ath11k c000000.wifi: peer not found for nss peer delete
[ 15.744742] ath11k c000000.wifi: peer not found for nss peer delete
[ 15.745742] ath11k c000000.wifi: peer not found for nss peer delete
[ 15.746682] ath11k c000000.wifi: peer not found for nss peer delete
Clients connect and then are immediately kicked off, stuck in a loop.
ath11k-nss: Wifi offloading working (unstable)
Wifi offloading seems to be working, however it is not stable. Logs will
initially show a lot of flooding.
```
[Sun Dec 17 02:43:25 2023] ath11k c000000.wifi: peer not found for nss peer delete
[Sun Dec 17 02:43:28 2023] ath11k c000000.wifi: peer not found for nss peer delete
[Sun Dec 17 02:43:30 2023] ath11k c000000.wifi: peer not found for nss peer delete
[Sun Dec 17 02:43:32 2023] ath11k c000000.wifi: peer not found for nss peer delete
[Sun Dec 17 02:43:34 2023] ath11k c000000.wifi: peer not found for nss peer delete
[Sun Dec 17 02:43:40 2023] ath11k c000000.wifi: peer not found for nss peer delete
[Sun Dec 17 02:43:41 2023] ath11k c000000.wifi: peer not found for nss peer delete
[Sun Dec 17 02:43:46 2023] ath11k c000000.wifi: peer not found for nss peer delete
```
But eventually ends up subsiding. Needs heavy testing...
ath11k_nss: Add mac address to debug `nss peer delete` warnings
also delete ath10k patch, and refresh.
ath11k_nss: FIX `nss peer delete` + encap errors
This should hopefullly fix the following errors:
```
[Sun Dec 24 22:03:21 2023] ath11k c000000.wifi: encap mismatch in nss tx skb encap type 1vif encap type 2
[Sun Dec 24 22:03:21 2023] ath11k c000000.wifi: failed to transmit frame -22
[Sun Dec 24 22:08:25 2023] ath11k c000000.wifi: encap mismatch in nss tx skb encap type 1vif encap type 2
[Sun Dec 24 22:08:25 2023] ath11k c000000.wifi: failed to transmit frame -22
```
Clients should also be able to switch between 2Ghz and 5Ghz AP, as well
as join using password (no longer required to boot with NSS off first,
connect the client to acquire PSK, and reboot back with nss wifi offload
enabled).
Uptime has been 5 hours and so far no issues.
ath11k_nss: Remove unecessary clang-tidy formatting
ath11k_nss: add 'debug_mode' flag quiet warnings
Will properly handle:
```
[Mon Dec 25 16:51:34 2023] ath11k c000000.wifi: encap mismatch in nss tx skb encap type 1 vif encap type 2
```
should take the path for native wifi encap
ath11k_nss: Rework depends, make `nss_redirect` optional
1.) Added a reworked `qca-nss-pbuf` init script from QSDK that will set sysctl
NSS `n2hcfg` wifi options based on board type and available
RAM.
2.) ath11k is fully capable of offloading wifi, it does not need
mac80211 to create any NSS vifs. This lowers overhead and has actually
shown considerable speed improvements for CPU programs on the router
side (i.e. SMB). I believe ax3600's IoT (ath10k) would require it
for offloading.
I've added 2 new makemenu options, `MAC80211_NSS_SUPPORT` which enables
NSS related features, and `MAC80211_NSS_REDIRECT` which provides the option to
autoload the module on boot with `nss_redirect=1`.
3.) Reverted the option that deafulted `ATH11K_MEM_PROFILE_512M` to
true. This was not required for platforms with 1GB or more memory
(which is most of them). The default is 1GB. Select for platforms
like Xiaomi AX3600.
ath11k_nss: remove requirement for '/sys/kernel/debug/ath11k'
ath11k_nss: set default values lower to avoid eating up memory
ath11k_nss: Add NSS VLAN support + improvements
1) tweaked qca-nss-pbuf script to better handle different board configs
2) added some QSDK NSS patches for dynamic vlan, WDS.
3) added QSDK fixes for beacon, and bt-coex
For devices that keep getting disconnected (mostly on 2G). It is
recommended to use the following settings for wifi. Change for your
country.
config wifi-device 'radio0'
option type 'mac80211'
option path 'platform/soc/c000000.wifi'
option band '5g'
option txpower '24'
option country 'PA'
option channel '100'
option htmode 'HE160'
option cell_density '0'
config wifi-iface 'default_radio0'
option device 'radio0'
option network 'lan'
option mode 'ap'
option encryption 'psk2'
option key 'SOME_PASSWORD'
option ssid 'EXAMPLE_5G'
option dtim_period '3'
option max_inactivity '86400'
option disassoc_low_ack '0'
config wifi-device 'radio1'
option type 'mac80211'
option path 'platform/soc/c000000.wifi+1'
option band '2g'
option htmode 'HT20'
option channel '1'
option txpower '36'
option country 'PA'
option cell_density '0'
config wifi-iface 'default_radio1'
option device 'radio1'
option network 'lan'
option mode 'ap'
option ssid 'EXAMPLE_2G'
option encryption 'psk2'
option key 'SOME_PASSWORD'
option max_inactivity '86400'
option dtim_period '3'
option disassoc_low_ack '0'
WPA3 should be disabled, and left as WPA2. Experimenting with max_inactivity, dtim_period, and disassoc_low_ack to hopefully resolve the deauth disconnects.
Signed-off-by: bitthief <bitthief@protonmail.ch>
qualcommax: dts: provide label for NSS reserved-memory
Provide a label for the NSS reserved-memory node so it can be easily passed
to the NSS DRV instead of having to global match by name which is fragile.
Signed-off-by: bitthief <bitthief@protonmail.ch>
For some reason the new belkin-header.py script works without issues
in a local Fedora build environment. In the OpenWrt build pipeline it
produces the following errors:
Traceback (most recent call last):
File "/builder/shared-workdir/build/scripts/belkin-header.py", line 92, in <module>
head = create_header(buf, args.belkin_header, args.belkin_model)
File "/builder/shared-workdir/build/scripts/belkin-header.py", line 68, in create_header
head[28:29] = VERSION1.to_bytes(1)
TypeError: to_bytes() missing required argument 'byteorder' (pos 2)
This may be related due to different python version. Fix this by
handing over the needed parameters
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/16667
Signed-off-by: Robert Marko <robimarko@gmail.com>
513bd7683746 Revert "wifi: mt76: mt7915: disable the second PCIe link for MT7915"
703c6b78c133 wifi: mt76: mt7915: firmware restart on devices with a second pcie link
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Backport BLOCK OF support patch merged upstream and refresh pending
BLOCK patches.
This is a new way to declare partition table for BLOCK device (eMMC
currently supported) with the use of DTS.
Current pending patch are adapted to not cause regression with current
downstream implementation of a similar functionality.
Also enable the new OF_PARTITION config by default.
Link: https://github.com/openwrt/openwrt/pull/16663
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
The bootloader can support zImage linux kernel which can decrease
the firmware image size.
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/16662
Signed-off-by: Robert Marko <robimarko@gmail.com>
When a target is installed from a feed, the linux kernel package is scanned
before the installation of this target.
If some kernel module packages are defined in this feeds at the target
level, there were not parsed during the scan of linux kernel package, as
the target didn't exist yet. So these kernel module packages don't exist.
Once the target is installed, clean the linux kernel packageinfo to force
the scan of the linux kernel package next time this script (or the make
command) is called.
Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://patchwork.ozlabs.org/project/openwrt/patch/mailman.117548.1727195440.1280.openwrt-devel@lists.openwrt.org/
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
RmNet driver provides a transport agnostic MAP (multiplexing and
aggregation protocol) support in embedded module. Module provides
virtual network devices which can be attached to any IP-mode
physical device.
This is commonly used on Qualcomm based modems for data aggregation.
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Instead of forcing 2.5G PHYs into rate-adapter mode which results higher
energy consumption, lack of support for half-duplex modes and typically
worse performance when linked at speeds less than 2.5G, use SGMII mode
which allows the MAC to follow the PHY speed.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Follow the advise of Russell King allows to greatly improve the driver
for RealTek's 1G and 2.5G Ethernet PHYs. The results are full/half
duplex as well as Gbit master/slave property being read from PHY
Specific Status Register (PHYSR), and fixes regarding link-partner
advertisement.
Fixes: #14504
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
The previous iteration of MediaTek's PHY patches caused various weird bugs.
Drop culprit patch 733-10-net-phy-mediatek-Extend-1G-TX-RX-link-pulse-time.patch
and use the most recent iteration of the patchset which has been posted to the
netdev mailing list.
Link: https://patchwork.kernel.org/project/netdevbpf/list/?series=895513&state=*
Fixes: #16448
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Wrong variable name from copy/paste.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16640
Signed-off-by: Robert Marko <robimarko@gmail.com>
These options are not recognized by the valgrind configure script,
remove them.
Link: https://github.com/openwrt/openwrt/pull/16633
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
The valgrind configure script checks if host_cpu is set to armv7 or arm.
By default --host is set to arm-openwrt-linux and the host_cpu variable
is set to arm. Then the valgrind build tries to compile valgrind for
armv6 and fails. Set it explicitly to armv7 to compile valgrind with
armv7 support.
Fixes: 1a55d90320 ("valgrind: Update to version 3.23")
Link: https://github.com/openwrt/openwrt/pull/16633
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
mutex_destroy is not called in any error paths or in _remove. Just use
devm to do so.
Removed a pointless platform_set_devdata call. Not needed with all of
the devm conversions.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16630
Signed-off-by: Robert Marko <robimarko@gmail.com>
Also use devm for gpiochip_add_data.
Allows completely removing the _remove function.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16622
Signed-off-by: Robert Marko <robimarko@gmail.com>
Specification
-------------
- SoC : Qualcomm IPQ4019
- RAM : 256 MiB DDR3 (NT5CC128M16JR-EK)
- Flash : 64 MiB SPI NOR (Winbond W25Q512JVFQ)
- WLAN : IPQ4019 built-in
- 2.4 GHz : 2x2 MIMO WiFi4
- 5 GHz : 2x2 MIMO WiFi5
- Ethernet : QCA8075 10/100/1000 Mbps 1x WAN (ETH1, PoE); 1x LAN (ETH2)
- USB : 1x 2.0 Type-A
- UART : 3.3V, 115200n8
- Buttons : 1x Reset
- LEDs : 1x RUN (lime & red)
1x WiFi 2.4 GHz (lime)
1x WiFi 5 GHz (lime)
2x ETH (lime), controlled by the QCA8075 phy
- Power : DC 12V & 802.3at PoE
- FCC ID : 2AHKT-WIA3300-20
- TFTP IP :
- client : 192.168.18.254
- router : 192.168.18.1
Installation
------------
1. Open uart console and start TFTP server. Copy initramfs image to
the TFTP root directory and rename it to 'ipqinitramfs.bin'.
2. Power on and press 'Enter' to exit to the u-boot console according
to the TTL log prompt.
3. Execute commands to load the initramfs image:
tftpboot && bootm
4. Enter into OpenWrt to backup the partitions if you want to restore
the stock firmware one day.
5. Override default 'bootcmd' environment variable in u-boot console:
env set bootcmd 'sf probe && sf read $loadaddr 0x980000 0x800000 && bootm $loadaddr'
env save
6. Repeat step 3 and flash 'sysupgrade' image in OpenWrt.
Recovery and return to stock
----------------------------
1. Restore the backup firmware partitions in the installation step 4.
2. Restore `bootcmd` environment variable via commands:
env set bootcmd bootipq && env save
MAC addresses
-------------
+---------+-------------------+
| | MAC example |
+---------+-------------------+
| LABEL | xx:xx:xx:xx:xx:25 |
| LAN | xx:xx:xx:xx:xx:26 |
| WAN | xx:xx:xx:xx:xx:25 |
| WLAN 2g | xx:xx:xx:xx:xx:28 |
| WLAN 5g | xx:xx:xx:xx:xx:29 |
+---------+-------------------+
Notice
-----------
1. Some CH340 USB-TTL module doesn't work on this device.
2. The 'firmware' partition consists of four parts in the vendor
layout:
* Name Start Size
* rootfs 0x980000 0x1680000
* 0:HLOS1 0x2000000 0x800000
* rootfs_1 0x2800000 0x1400000
* rootfs_data 0x3c00000 0x350000
3. User can control the USB power supply via commands:
echo enabled > /sys/devices/platform/output-usb-power/state
echo disabled > /sys/devices/platform/output-usb-power/state
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/16476
Signed-off-by: Robert Marko <robimarko@gmail.com>
It can be used to control the power on/off status for the fixed
voltage regulator via sysfs.
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/16476
Signed-off-by: Robert Marko <robimarko@gmail.com>
dcbab62 ipq40xx: add BDFs for SKSpruce WIA3300-20
A new board file package "ipq-wifi-skspruce_wia3300-20" will be
added for the incoming device SKSpruce WIA3300-20.
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/16476
Signed-off-by: Robert Marko <robimarko@gmail.com>
Allows remove the _remove function as devm calls mutex_destroy
automatically.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16615
Signed-off-by: Robert Marko <robimarko@gmail.com>
Use most recent version of the Intel AX101 and AX210 firmware provided
by linux-firmware and supported the driver used in OpenWrt.
Link: https://github.com/openwrt/openwrt/pull/16621
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Even though optional is used, there's are still pointless NULL
assignments.
Use dev_err_probe to avoid manually handling EPROBE_DEFER.
Use devm_platform_iomap_resource. No struct resource needed.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Tested-by: Shiji Yang <yangshiji66@qq.com> on NETGEAR R6100.
Link: https://github.com/openwrt/openwrt/pull/16519
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
...conversion.
Commit 20736013e910 ("kernel: backport nvmem v6.6 fixes and v6.7 changes")
has causedt he device to no longer correctly read MAC address from its
onboard 24c64 EEPROM, because "at24" driver doesn't support legacy
nvmem-cell bindings [1] - and there was an explicit config option added
to mandate that behaviour in the following patch:
820-v6.7-0002-nvmem-add-explicit-config-option-to-read-old-syntax-.patch
But some of the devices, MR33 and MR74 included, weren't converted with
that as well.
Convert the definition to use proper fixed-layout binding to fix it.
The offending change was introduced between v23.05.0 and v23.05.1, and
found by bisection:
git bisect start
# status: waiting for both good and bad commits
# good: [bd4f415efacfc03bbe5b79ae1d39c1451f5f7385] OpenWrt v23.05.0: adjust config defaults
git bisect good bd4f415efacfc03bbe5b79ae1d39c1451f5f7385
# status: waiting for bad commit, 1 good commit known
# bad: [a58a86693f8593974ff7c26bb42e280b62a8724c] OpenWrt v23.05.1: adjust config defaults
git bisect bad a58a86693f8593974ff7c26bb42e280b62a8724c
# good: [3d0a78add22754aa891529b6702b5e4c7b837446] qualcommax: only build initramfs if CONFIG_TARGET_ROOTFS_INITRAMFS is set
git bisect good 3d0a78add22754aa891529b6702b5e4c7b837446
# bad: [21e5db97c410f4008c8fe8515fb79a7cde368dbf] build: add CycloneDX SBOM JSON support
git bisect bad 21e5db97c410f4008c8fe8515fb79a7cde368dbf
# good: [89184b15cfce4aaffac8cda87c2fa74f829ace42] mediatek: add build for MT7981 RFB
git bisect good 89184b15cfce4aaffac8cda87c2fa74f829ace42
# bad: [41f27bbb6d0af2f37098b97cd28d5f514a6fc417] bcm53xx: add the latest fix version of brcm_nvram
git bisect bad 41f27bbb6d0af2f37098b97cd28d5f514a6fc417
# good: [b649b0bf7100bdc6adb7e857c74738cab7c47b4c] kernel: nvmem: fix "fixed-layout" & support "mac-base"
git bisect good b649b0bf7100bdc6adb7e857c74738cab7c47b4c
# bad: [20736013e91030005353b401bc4b757ba5e5fa98] kernel: backport nvmem v6.6 fixes and v6.7 changes
git bisect bad 20736013e91030005353b401bc4b757ba5e5fa98
# good: [066971615ff66512bc542b09a90be34c2afe98bb] kernel: backport v6.6 nvmem changes
git bisect good 066971615ff66512bc542b09a90be34c2afe98bb
# first bad commit: [20736013e91030005353b401bc4b757ba5e5fa98] kernel: backport nvmem v6.6 fixes and v6.7 changes
Link: [1] https://github.com/openwrt/openwrt/issues/15393#issuecomment-2212300849
Fixes: 20736013e910 ("kernel: backport nvmem v6.6 fixes and v6.7 changes")
Fixes: https://github.com/openwrt/openwrt/issues/15393
Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16623
Signed-off-by: Robert Marko <robimarko@gmail.com>