Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e15fcb19 authored by Colin Ian King's avatar Colin Ian King Committed by Greg Kroah-Hartman
Browse files

rtlwifi: rtl8192de: make arrays static const, makes object smaller



[ Upstream commit b05897ca8c821a16ac03850c4704fe460b3f21a0 ]

Don't populate arrays the stack but instead make them static const. Replace
array channel_info with channel_all since it contains the same data as
channel_all. Makes object code smaller by 961 bytes.

Before:
   text	   data	    bss	    dec	   hex	filename
 128147	  44250	   1024	 173421	 2a56d	../realtek/rtlwifi/rtl8192de/phy.o

After
   text	   data	    bss	    dec	   hex	filename
 127122	  44314	   1024	 172460	 2a1ac	../realtek/rtlwifi/rtl8192de/phy.o

(gcc version 10.2.0)

Signed-off-by: default avatarColin Ian King <colin.king@canonical.com>
Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
Link: https://lore.kernel.org/r/20210803144949.79433-2-colin.king@canonical.com


Stable-dep-of: b8b2baad2e65 ("wifi: rtlwifi: rtl8192de: using calculate_bit_shift()")
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent ae1df4cc
Loading
Loading
Loading
Loading
+20 −28
Original line number Diff line number Diff line
@@ -160,6 +160,15 @@ static u32 targetchnl_2g[TARGET_CHNL_NUM_2G] = {
	25711, 25658, 25606, 25554, 25502, 25451, 25328
};

static const u8 channel_all[59] = {
	1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
	36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58,
	60, 62, 64, 100, 102, 104, 106, 108, 110, 112,
	114, 116, 118, 120, 122, 124, 126, 128,	130,
	132, 134, 136, 138, 140, 149, 151, 153, 155,
	157, 159, 161, 163, 165
};

static u32 _rtl92d_phy_calculate_bit_shift(u32 bitmask)
{
	u32 i = ffs(bitmask);
@@ -1356,14 +1365,6 @@ static void _rtl92d_phy_switch_rf_setting(struct ieee80211_hw *hw, u8 channel)

u8 rtl92d_get_rightchnlplace_for_iqk(u8 chnl)
{
	u8 channel_all[59] = {
		1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
		36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58,
		60, 62, 64, 100, 102, 104, 106, 108, 110, 112,
		114, 116, 118, 120, 122, 124, 126, 128,	130,
		132, 134, 136, 138, 140, 149, 151, 153, 155,
		157, 159, 161, 163, 165
	};
	u8 place = chnl;

	if (chnl > 14) {
@@ -3218,37 +3219,28 @@ void rtl92d_phy_config_macphymode_info(struct ieee80211_hw *hw)
u8 rtl92d_get_chnlgroup_fromarray(u8 chnl)
{
	u8 group;
	u8 channel_info[59] = {
		1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
		36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56,
		58, 60, 62, 64, 100, 102, 104, 106, 108,
		110, 112, 114, 116, 118, 120, 122, 124,
		126, 128, 130, 132, 134, 136, 138, 140,
		149, 151, 153, 155, 157, 159, 161, 163,
		165
	};

	if (channel_info[chnl] <= 3)
	if (channel_all[chnl] <= 3)
		group = 0;
	else if (channel_info[chnl] <= 9)
	else if (channel_all[chnl] <= 9)
		group = 1;
	else if (channel_info[chnl] <= 14)
	else if (channel_all[chnl] <= 14)
		group = 2;
	else if (channel_info[chnl] <= 44)
	else if (channel_all[chnl] <= 44)
		group = 3;
	else if (channel_info[chnl] <= 54)
	else if (channel_all[chnl] <= 54)
		group = 4;
	else if (channel_info[chnl] <= 64)
	else if (channel_all[chnl] <= 64)
		group = 5;
	else if (channel_info[chnl] <= 112)
	else if (channel_all[chnl] <= 112)
		group = 6;
	else if (channel_info[chnl] <= 126)
	else if (channel_all[chnl] <= 126)
		group = 7;
	else if (channel_info[chnl] <= 140)
	else if (channel_all[chnl] <= 140)
		group = 8;
	else if (channel_info[chnl] <= 153)
	else if (channel_all[chnl] <= 153)
		group = 9;
	else if (channel_info[chnl] <= 159)
	else if (channel_all[chnl] <= 159)
		group = 10;
	else
		group = 11;