On 21/10/2022 08:31, Ping-Ke Shih wrote: > > >> -----Original Message----- >> From: Bitterblue Smith <rtl8821cerfe2@xxxxxxxxx> >> Sent: Monday, October 17, 2022 1:30 AM >> To: linux-wireless@xxxxxxxxxxxxxxx >> Cc: Jes Sorensen <Jes.Sorensen@xxxxxxxxx> >> Subject: [PATCH 3/5] wifi: rtl8xxxu: Recognise all possible chip cuts >> >> The chip cut, also known as the chip version, is a letter from A (0) >> to P (15). Recognise them all instead of printing "unknown" when it's >> greater than E. >> >> Signed-off-by: Bitterblue Smith <rtl8821cerfe2@xxxxxxxxx> >> --- >> .../wireless/realtek/rtl8xxxu/rtl8xxxu_core.c | 27 +++++-------------- >> 1 file changed, 6 insertions(+), 21 deletions(-) >> >> diff --git a/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c >> b/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c >> index 2efc99896b96..a8914650815e 100644 >> --- a/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c >> +++ b/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c >> @@ -1573,31 +1573,16 @@ rtl8xxxu_set_spec_sifs(struct rtl8xxxu_priv *priv, u16 cck, u16 ofdm) >> >> static void rtl8xxxu_print_chipinfo(struct rtl8xxxu_priv *priv) >> { >> + static const char cuts[16] = "ABCDEFGHIJKLMNOP"; >> struct device *dev = &priv->udev->dev; >> - char *cut; >> + char cut = '?'; >> >> - switch (priv->chip_cut) { >> - case 0: >> - cut = "A"; >> - break; >> - case 1: >> - cut = "B"; >> - break; >> - case 2: >> - cut = "C"; >> - break; >> - case 3: >> - cut = "D"; >> - break; >> - case 4: >> - cut = "E"; >> - break; >> - default: >> - cut = "unknown"; >> - } >> + /* Currently always true: chip_cut is 4 bits. */ >> + if (priv->chip_cut <= 15) >> + cut = cuts[priv->chip_cut]; > > How about? > > cut = 'A' + priv->chip_cut; > That works too.