1 From b4bfbc50b1b92a0815800eb1231f73bfc917af03 Mon Sep 17 00:00:00 2001
2 From: Ping-Ke Shih <pkshih@realtek.com>
3 Date: Thu, 16 Jan 2025 20:04:24 +0800
4 Subject: [PATCH] wifi: rtw88: add RTW88_LEDS depends on LEDS_CLASS to Kconfig
6 When using allmodconfig, .config has CONFIG_LEDS_CLASS=m but
7 autoconf.h has CONFIG_LEDS_CLASS_MODULE (additional suffix _MODULE)
8 instead of CONFIG_LEDS_CLASS, which condition CONFIG_LEDS_CLASS in
9 rtw88/led.h can't work properly.
11 Add RTW88_LEDS to Kconfig, and use it as condition to fix this problem.
13 drivers/net/wireless/realtek/rtw88/led.c:19:6: error: redefinition of 'rtw_led_init'
14 19 | void rtw_led_init(struct rtw_dev *rtwdev)
16 In file included from drivers/net/wireless/realtek/rtw88/led.c:7:
17 drivers/net/wireless/realtek/rtw88/led.h:15:20: note: previous definition of 'rtw_led_init' with type 'void(struct rtw_dev *)'
18 15 | static inline void rtw_led_init(struct rtw_dev *rtwdev)
20 drivers/net/wireless/realtek/rtw88/led.c:64:6: error: redefinition of 'rtw_led_deinit'
21 64 | void rtw_led_deinit(struct rtw_dev *rtwdev)
23 drivers/net/wireless/realtek/rtw88/led.h:19:20: note: previous definition of 'rtw_led_deinit' with type 'void(struct rtw_dev *)'
24 19 | static inline void rtw_led_deinit(struct rtw_dev *rtwdev)
27 Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
28 Closes: https://lore.kernel.org/linux-wireless/e19a87ad9cd54bfa9907f3a043b25d30@realtek.com/T/#me407832de1040ce22e53517bcb18e322ad0e2260
29 Fixes: 4b6652bc6d8d ("wifi: rtw88: Add support for LED blinking")
30 Cc: Bitterblue Smith <rtl8821cerfe2@gmail.com>
31 Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
32 Signed-off-by: Kalle Valo <kvalo@kernel.org>
33 Link: https://patch.msgid.link/20250116120424.13174-1-pkshih@realtek.com
35 drivers/net/wireless/realtek/rtw88/Kconfig | 5 +++++
36 drivers/net/wireless/realtek/rtw88/Makefile | 2 +-
37 drivers/net/wireless/realtek/rtw88/led.h | 2 +-
38 3 files changed, 7 insertions(+), 2 deletions(-)
40 --- a/drivers/net/wireless/realtek/rtw88/Kconfig
41 +++ b/drivers/net/wireless/realtek/rtw88/Kconfig
42 @@ -267,4 +267,9 @@ config RTW88_DEBUGFS
44 If unsure, say Y to simplify debug problems
48 + depends on LEDS_CLASS=y || LEDS_CLASS=MAC80211
52 --- a/drivers/net/wireless/realtek/rtw88/Makefile
53 +++ b/drivers/net/wireless/realtek/rtw88/Makefile
54 @@ -20,7 +20,7 @@ rtw88_core-y += main.o \
56 rtw88_core-$(CONFIG_PM) += wow.o
58 -rtw88_core-$(CONFIG_LEDS_CLASS) += led.o
59 +rtw88_core-$(CPTCFG_RTW88_LEDS) += led.o
61 obj-$(CPTCFG_RTW88_8822B) += rtw88_8822b.o
62 rtw88_8822b-objs := rtw8822b.o rtw8822b_table.o
63 --- a/drivers/net/wireless/realtek/rtw88/led.h
64 +++ b/drivers/net/wireless/realtek/rtw88/led.h
69 -#ifdef CONFIG_LEDS_CLASS
70 +#ifdef CPTCFG_RTW88_LEDS
72 void rtw_led_init(struct rtw_dev *rtwdev);
73 void rtw_led_deinit(struct rtw_dev *rtwdev);