I’m having this same error: Ath12k Qualcomm Wifi7 - For Developers - OpenWrt Forum
Country is not set for the card, so hostapd fails to start.
root@banana1 /root $ iw phy0 reg get
phy#0
country na: DFS-UNSET
(2402 - 2472 @ 40), (N/A, 20), (N/A)
(2457 - 2482 @ 20), (N/A, 20), (N/A), PASSIVE-SCAN
(5170 - 5330 @ 160), (N/A, 20), (N/A), AUTO-BW, PASSIVE-SCAN
(5490 - 5730 @ 160), (N/A, 20), (N/A), AUTO-BW, PASSIVE-SCAN
(5735 - 5895 @ 160), (N/A, 20), (N/A), AUTO-BW, PASSIVE-SCAN
(5945 - 7125 @ 160), (N/A, 20), (N/A), AUTO-BW, PASSIVE-SCAN
(5945 - 7125 @ 320), (N/A, 30), (N/A), AUTO-BW, PASSIVE-SCAN
root@banana1 /root $
I’m using @frank-w’s kernel. I have applied these patches to the 6.13 kernel so country can be set, but compilation fails. Any ideas?
Error:
Build Kernel
building with 4 threads
Cleanup Kernel Build
needed: make u-boot-tools bc gcc libc6-dev libncurses-dev ccache libssl-dev
generate branch vars...
getting git branch:
* 6.13-main
kernbranch:6.13-main,gitbranch:-main
make[1]: Entering directory '/root/build'
GEN Makefile
CALL /root/BPI-Router-Linux/scripts/checksyscalls.sh
CC [M] drivers/net/wireless/ath/ath12k/mac.o
CC init/main.o
CC io_uring/io_uring.o
CC init/do_mounts.o
CC io_uring/notif.o
CC init/init_task.o
CC io_uring/net.o
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c: In function 'ath12k_bss_assoc':
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c:3007:18: error: 'struct ath12k_link_vif' has no member named 'vdev_type'
3007 | arvif->vdev_type == WMI_VDEV_TYPE_STA &&
| ^~
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c:3008:18: error: 'struct ath12k_link_vif' has no member named 'vdev_subtype'
3008 | arvif->vdev_subtype == WMI_VDEV_SUBTYPE_NONE)
| ^~
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c: In function 'ath12k_mac_op_hw_scan':
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c:4069:18: error: 'struct ath12k_link_vif' has no member named 'vdev_type'
4069 | arvif->vdev_type == WMI_VDEV_TYPE_STA &&
| ^~
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c:4070:18: error: 'struct ath12k_link_vif' has no member named 'vdev_subtype'
4070 | arvif->vdev_subtype == WMI_VDEV_SUBTYPE_NONE)
| ^~
In file included from /root/BPI-Router-Linux/include/linux/init.h:5,
from /root/BPI-Router-Linux/include/linux/printk.h:6,
from /root/BPI-Router-Linux/include/asm-generic/bug.h:22,
from /root/BPI-Router-Linux/arch/arm64/include/asm/bug.h:26,
from /root/BPI-Router-Linux/include/linux/bug.h:5,
from /root/BPI-Router-Linux/include/net/mac80211.h:16,
from /root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c:7:
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c: In function 'ath12k_mac_vif_ap_active_any':
/root/BPI-Router-Linux/include/linux/container_of.h:20:54: error: 'struct ath12k_vif' has no member named 'list'
20 | static_assert(__same_type(*(ptr), ((type *)0)->member) || \
| ^~
/root/BPI-Router-Linux/include/linux/build_bug.h:78:56: note: in definition of macro '__static_assert'
78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg)
| ^~~~
/root/BPI-Router-Linux/include/linux/container_of.h:20:9: note: in expansion of macro 'static_assert'
20 | static_assert(__same_type(*(ptr), ((type *)0)->member) || \
| ^~~~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/container_of.h:20:23: note: in expansion of macro '__same_type'
20 | static_assert(__same_type(*(ptr), ((type *)0)->member) || \
| ^~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:601:9: note: in expansion of macro 'container_of'
601 | container_of(ptr, type, member)
| ^~~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:612:9: note: in expansion of macro 'list_entry'
612 | list_entry((ptr)->next, type, member)
| ^~~~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:770:20: note: in expansion of macro 'list_first_entry'
770 | for (pos = list_first_entry(head, typeof(*pos), member); \
| ^~~~~~~~~~~~~~~~
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c:6836:17: note: in expansion of macro 'list_for_each_entry'
6836 | list_for_each_entry(arvif, &ar->arvifs, list) {
| ^~~~~~~~~~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/compiler_types.h:483:27: error: expression in static assertion is not an integer
483 | #define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/build_bug.h:78:56: note: in definition of macro '__static_assert'
78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg)
| ^~~~
/root/BPI-Router-Linux/include/linux/container_of.h:20:9: note: in expansion of macro 'static_assert'
20 | static_assert(__same_type(*(ptr), ((type *)0)->member) || \
| ^~~~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/container_of.h:20:23: note: in expansion of macro '__same_type'
20 | static_assert(__same_type(*(ptr), ((type *)0)->member) || \
| ^~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:601:9: note: in expansion of macro 'container_of'
601 | container_of(ptr, type, member)
| ^~~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:612:9: note: in expansion of macro 'list_entry'
612 | list_entry((ptr)->next, type, member)
| ^~~~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:770:20: note: in expansion of macro 'list_first_entry'
770 | for (pos = list_first_entry(head, typeof(*pos), member); \
| ^~~~~~~~~~~~~~~~
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c:6836:17: note: in expansion of macro 'list_for_each_entry'
6836 | list_for_each_entry(arvif, &ar->arvifs, list) {
| ^~~~~~~~~~~~~~~~~~~
In file included from /root/BPI-Router-Linux/include/uapi/linux/posix_types.h:5,
from /root/BPI-Router-Linux/include/uapi/linux/types.h:14,
from /root/BPI-Router-Linux/include/linux/types.h:6,
from /root/BPI-Router-Linux/include/linux/kasan-checks.h:5,
from /root/BPI-Router-Linux/include/asm-generic/rwonce.h:26,
from /root/BPI-Router-Linux/arch/arm64/include/asm/rwonce.h:71,
from /root/BPI-Router-Linux/include/linux/compiler.h:339,
from /root/BPI-Router-Linux/include/asm-generic/bug.h:5:
/root/BPI-Router-Linux/include/linux/stddef.h:16:33: error: 'struct ath12k_vif' has no member named 'list'
16 | #define offsetof(TYPE, MEMBER) __builtin_offsetof(TYPE, MEMBER)
| ^~~~~~~~~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/container_of.h:23:28: note: in expansion of macro 'offsetof'
23 | ((type *)(__mptr - offsetof(type, member))); })
| ^~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:601:9: note: in expansion of macro 'container_of'
601 | container_of(ptr, type, member)
| ^~~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:612:9: note: in expansion of macro 'list_entry'
612 | list_entry((ptr)->next, type, member)
| ^~~~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:770:20: note: in expansion of macro 'list_first_entry'
770 | for (pos = list_first_entry(head, typeof(*pos), member); \
| ^~~~~~~~~~~~~~~~
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c:6836:17: note: in expansion of macro 'list_for_each_entry'
6836 | list_for_each_entry(arvif, &ar->arvifs, list) {
| ^~~~~~~~~~~~~~~~~~~
In file included from /root/BPI-Router-Linux/include/linux/smp.h:12,
from /root/BPI-Router-Linux/include/linux/alloc_tag.h:14,
from /root/BPI-Router-Linux/include/linux/percpu.h:5,
from /root/BPI-Router-Linux/arch/arm64/include/asm/arch_timer.h:18,
from /root/BPI-Router-Linux/arch/arm64/include/asm/timex.h:8,
from /root/BPI-Router-Linux/include/linux/timex.h:67,
from /root/BPI-Router-Linux/include/linux/time32.h:13,
from /root/BPI-Router-Linux/include/linux/time.h:60,
from /root/BPI-Router-Linux/include/linux/skbuff.h:15,
from /root/BPI-Router-Linux/include/linux/if_ether.h:19,
from /root/BPI-Router-Linux/include/net/mac80211.h:18:
/root/BPI-Router-Linux/include/linux/list.h:761:26: error: 'struct ath12k_vif' has no member named 'list'
761 | list_is_head(&pos->member, (head))
| ^~
/root/BPI-Router-Linux/include/linux/list.h:771:15: note: in expansion of macro 'list_entry_is_head'
771 | !list_entry_is_head(pos, head, member); \
| ^~~~~~~~~~~~~~~~~~
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c:6836:17: note: in expansion of macro 'list_for_each_entry'
6836 | list_for_each_entry(arvif, &ar->arvifs, list) {
| ^~~~~~~~~~~~~~~~~~~
In file included from /root/BPI-Router-Linux/include/linux/kernel.h:22,
from /root/BPI-Router-Linux/include/net/mac80211.h:17:
/root/BPI-Router-Linux/include/linux/list.h:645:25: error: 'struct ath12k_vif' has no member named 'list'
645 | list_entry((pos)->member.next, typeof(*(pos)), member)
| ^~
/root/BPI-Router-Linux/include/linux/container_of.h:19:33: note: in definition of macro 'container_of'
19 | void *__mptr = (void *)(ptr); \
| ^~~
/root/BPI-Router-Linux/include/linux/list.h:645:9: note: in expansion of macro 'list_entry'
645 | list_entry((pos)->member.next, typeof(*(pos)), member)
| ^~~~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:772:20: note: in expansion of macro 'list_next_entry'
772 | pos = list_next_entry(pos, member))
| ^~~~~~~~~~~~~~~
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c:6836:17: note: in expansion of macro 'list_for_each_entry'
6836 | list_for_each_entry(arvif, &ar->arvifs, list) {
| ^~~~~~~~~~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:645:25: error: 'struct ath12k_vif' has no member named 'list'
645 | list_entry((pos)->member.next, typeof(*(pos)), member)
| ^~
/root/BPI-Router-Linux/include/linux/build_bug.h:78:56: note: in definition of macro '__static_assert'
78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg)
| ^~~~
/root/BPI-Router-Linux/include/linux/container_of.h:20:9: note: in expansion of macro 'static_assert'
20 | static_assert(__same_type(*(ptr), ((type *)0)->member) || \
| ^~~~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/container_of.h:20:23: note: in expansion of macro '__same_type'
20 | static_assert(__same_type(*(ptr), ((type *)0)->member) || \
| ^~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:601:9: note: in expansion of macro 'container_of'
601 | container_of(ptr, type, member)
| ^~~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:645:9: note: in expansion of macro 'list_entry'
645 | list_entry((pos)->member.next, typeof(*(pos)), member)
| ^~~~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:772:20: note: in expansion of macro 'list_next_entry'
772 | pos = list_next_entry(pos, member))
| ^~~~~~~~~~~~~~~
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c:6836:17: note: in expansion of macro 'list_for_each_entry'
6836 | list_for_each_entry(arvif, &ar->arvifs, list) {
| ^~~~~~~~~~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/container_of.h:20:54: error: 'struct ath12k_vif' has no member named 'list'
20 | static_assert(__same_type(*(ptr), ((type *)0)->member) || \
| ^~
/root/BPI-Router-Linux/include/linux/build_bug.h:78:56: note: in definition of macro '__static_assert'
78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg)
| ^~~~
/root/BPI-Router-Linux/include/linux/container_of.h:20:9: note: in expansion of macro 'static_assert'
20 | static_assert(__same_type(*(ptr), ((type *)0)->member) || \
| ^~~~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/container_of.h:20:23: note: in expansion of macro '__same_type'
20 | static_assert(__same_type(*(ptr), ((type *)0)->member) || \
| ^~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:601:9: note: in expansion of macro 'container_of'
601 | container_of(ptr, type, member)
| ^~~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:645:9: note: in expansion of macro 'list_entry'
645 | list_entry((pos)->member.next, typeof(*(pos)), member)
| ^~~~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:772:20: note: in expansion of macro 'list_next_entry'
772 | pos = list_next_entry(pos, member))
| ^~~~~~~~~~~~~~~
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c:6836:17: note: in expansion of macro 'list_for_each_entry'
6836 | list_for_each_entry(arvif, &ar->arvifs, list) {
| ^~~~~~~~~~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:645:25: error: 'struct ath12k_vif' has no member named 'list'
645 | list_entry((pos)->member.next, typeof(*(pos)), member)
| ^~
/root/BPI-Router-Linux/include/linux/build_bug.h:78:56: note: in definition of macro '__static_assert'
78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg)
| ^~~~
/root/BPI-Router-Linux/include/linux/container_of.h:20:9: note: in expansion of macro 'static_assert'
20 | static_assert(__same_type(*(ptr), ((type *)0)->member) || \
| ^~~~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/container_of.h:21:23: note: in expansion of macro '__same_type'
21 | __same_type(*(ptr), void), \
| ^~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:601:9: note: in expansion of macro 'container_of'
601 | container_of(ptr, type, member)
| ^~~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:645:9: note: in expansion of macro 'list_entry'
645 | list_entry((pos)->member.next, typeof(*(pos)), member)
| ^~~~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:772:20: note: in expansion of macro 'list_next_entry'
772 | pos = list_next_entry(pos, member))
| ^~~~~~~~~~~~~~~
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c:6836:17: note: in expansion of macro 'list_for_each_entry'
6836 | list_for_each_entry(arvif, &ar->arvifs, list) {
| ^~~~~~~~~~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/compiler_types.h:483:27: error: expression in static assertion is not an integer
483 | #define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/build_bug.h:78:56: note: in definition of macro '__static_assert'
78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg)
| ^~~~
/root/BPI-Router-Linux/include/linux/container_of.h:20:9: note: in expansion of macro 'static_assert'
20 | static_assert(__same_type(*(ptr), ((type *)0)->member) || \
| ^~~~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/container_of.h:20:23: note: in expansion of macro '__same_type'
20 | static_assert(__same_type(*(ptr), ((type *)0)->member) || \
| ^~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:601:9: note: in expansion of macro 'container_of'
601 | container_of(ptr, type, member)
| ^~~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:645:9: note: in expansion of macro 'list_entry'
645 | list_entry((pos)->member.next, typeof(*(pos)), member)
| ^~~~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:772:20: note: in expansion of macro 'list_next_entry'
772 | pos = list_next_entry(pos, member))
| ^~~~~~~~~~~~~~~
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c:6836:17: note: in expansion of macro 'list_for_each_entry'
6836 | list_for_each_entry(arvif, &ar->arvifs, list) {
| ^~~~~~~~~~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/stddef.h:16:33: error: 'struct ath12k_vif' has no member named 'list'
16 | #define offsetof(TYPE, MEMBER) __builtin_offsetof(TYPE, MEMBER)
| ^~~~~~~~~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/container_of.h:23:28: note: in expansion of macro 'offsetof'
23 | ((type *)(__mptr - offsetof(type, member))); })
| ^~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:601:9: note: in expansion of macro 'container_of'
601 | container_of(ptr, type, member)
| ^~~~~~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:645:9: note: in expansion of macro 'list_entry'
645 | list_entry((pos)->member.next, typeof(*(pos)), member)
| ^~~~~~~~~~
/root/BPI-Router-Linux/include/linux/list.h:772:20: note: in expansion of macro 'list_next_entry'
772 | pos = list_next_entry(pos, member))
| ^~~~~~~~~~~~~~~
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c:6836:17: note: in expansion of macro 'list_for_each_entry'
6836 | list_for_each_entry(arvif, &ar->arvifs, list) {
| ^~~~~~~~~~~~~~~~~~~
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c:6837:34: error: 'struct ath12k_vif' has no member named 'is_u p'
6837 | if (arvif->is_up && arvif->vdev_type == WMI_VDEV_TYPE_AP)
| ^~
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c: In function 'ath12k_mac_vdev_create':
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c:7129:26: error: 'struct ath12k_link_vif' has no member named 'vdev_type'
7129 | arvif->vdev_type == WMI_VDEV_TYPE_STA &&
| ^~
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c:7130:26: error: 'struct ath12k_link_vif' has no member named 'vdev_subtype'
7130 | arvif->vdev_subtype == WMI_VDEV_SUBTYPE_NONE) {
| ^~
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c: In function 'ath12k_mac_vdev_delete':
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c:7475:18: error: 'struct ath12k_link_vif' has no member named 'vdev_type'
7475 | arvif->vdev_type == WMI_VDEV_TYPE_STA &&
| ^~
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c:7476:18: error: 'struct ath12k_link_vif' has no member named 'vdev_subtype'
7476 | arvif->vdev_subtype == WMI_VDEV_SUBTYPE_NONE)
| ^~
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c: In function 'ath12k_mac_op_unassign_vif_chanctx':
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c:8320:18: error: 'struct ath12k_link_vif' has no member named 'vdev_type'
8320 | arvif->vdev_type == WMI_VDEV_TYPE_STA &&
| ^~
/root/BPI-Router-Linux/drivers/net/wireless/ath/ath12k/mac.c:8321:18: error: 'struct ath12k_link_vif' has no member named 'vdev_subtype'
8321 | arvif->vdev_subtype == WMI_VDEV_SUBTYPE_NONE &&
| ^~
make[8]: *** [/root/BPI-Router-Linux/scripts/Makefile.build:194: drivers/net/wireless/ath/ath12k/mac.o] Error 1
make[7]: *** [/root/BPI-Router-Linux/scripts/Makefile.build:440: drivers/net/wireless/ath/ath12k] Error 2
make[6]: *** [/root/BPI-Router-Linux/scripts/Makefile.build:440: drivers/net/wireless/ath] Error 2
make[5]: *** [/root/BPI-Router-Linux/scripts/Makefile.build:440: drivers/net/wireless] Error 2
make[4]: *** [/root/BPI-Router-Linux/scripts/Makefile.build:440: drivers/net] Error 2
make[3]: *** [/root/BPI-Router-Linux/scripts/Makefile.build:440: drivers] Error 2
make[3]: *** Waiting for unfinished jobs....
CC io_uring/poll.o
CC io_uring/uring_cmd.o
AR init/built-in.a
CC io_uring/sqpoll.o
CC io_uring/register.o
CC io_uring/napi.o
AR io_uring/built-in.a
make[2]: *** [/root/BPI-Router-Linux/Makefile:1989: .] Error 2
make[1]: Leaving directory '/root/build'
make[1]: *** [/root/BPI-Router-Linux/Makefile:251: __sub-make] Error 2
make: *** [Makefile:251: __sub-make] Error 2