]> git.itanic.dy.fi Git - linux-stable/commitdiff
wifi: rt2x00: use explicitly signed or unsigned types
authorJason A. Donenfeld <Jason@zx2c4.com>
Wed, 19 Oct 2022 15:55:41 +0000 (09:55 -0600)
committerKalle Valo <kvalo@kernel.org>
Fri, 21 Oct 2022 06:59:39 +0000 (09:59 +0300)
On some platforms, `char` is unsigned, but this driver, for the most
part, assumed it was signed. In other places, it uses `char` to mean an
unsigned number, but only in cases when the values are small. And in
still other places, `char` is used as a boolean. Put an end to this
confusion by declaring explicit types, depending on the context.

Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Cc: Stanislaw Gruszka <stf_xl@wp.pl>
Cc: Helmut Schaa <helmut.schaa@googlemail.com>
Cc: Kalle Valo <kvalo@kernel.org>
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Acked-by: Stanislaw Gruszka <stf_xl@wp.pl>
Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link: https://lore.kernel.org/r/20221019155541.3410813-1-Jason@zx2c4.com
13 files changed:
drivers/net/wireless/ralink/rt2x00/rt2400pci.c
drivers/net/wireless/ralink/rt2x00/rt2400pci.h
drivers/net/wireless/ralink/rt2x00/rt2500pci.c
drivers/net/wireless/ralink/rt2x00/rt2500pci.h
drivers/net/wireless/ralink/rt2x00/rt2500usb.c
drivers/net/wireless/ralink/rt2x00/rt2500usb.h
drivers/net/wireless/ralink/rt2x00/rt2800lib.c
drivers/net/wireless/ralink/rt2x00/rt2800lib.h
drivers/net/wireless/ralink/rt2x00/rt2x00usb.c
drivers/net/wireless/ralink/rt2x00/rt61pci.c
drivers/net/wireless/ralink/rt2x00/rt61pci.h
drivers/net/wireless/ralink/rt2x00/rt73usb.c
drivers/net/wireless/ralink/rt2x00/rt73usb.h

index 273c5eac336203edccbf39cf1808f070d134716c..ddfc16de1b26f495d28beb08fbfc163459622aec 100644 (file)
@@ -1023,9 +1023,9 @@ static int rt2400pci_set_state(struct rt2x00_dev *rt2x00dev,
 {
        u32 reg, reg2;
        unsigned int i;
-       char put_to_sleep;
-       char bbp_state;
-       char rf_state;
+       bool put_to_sleep;
+       u8 bbp_state;
+       u8 rf_state;
 
        put_to_sleep = (state != STATE_AWAKE);
 
@@ -1561,7 +1561,7 @@ static int rt2400pci_probe_hw_mode(struct rt2x00_dev *rt2x00dev)
 {
        struct hw_mode_spec *spec = &rt2x00dev->spec;
        struct channel_info *info;
-       char *tx_power;
+       u8 *tx_power;
        unsigned int i;
 
        /*
index b8187b6de1439afca211ecf62b567f1effb4798f..979d5fd8babf7ccb81089163d04948222ef64117 100644 (file)
 #define DEFAULT_TXPOWER        39
 
 #define __CLAMP_TX(__txpower) \
-       clamp_t(char, (__txpower), MIN_TXPOWER, MAX_TXPOWER)
+       clamp_t(u8, (__txpower), MIN_TXPOWER, MAX_TXPOWER)
 
 #define TXPOWER_FROM_DEV(__txpower) \
        ((__CLAMP_TX(__txpower) - MAX_TXPOWER) + MIN_TXPOWER)
index 8faa0a80e73a667603b805c73b24b8bb1fdb9567..cd6371e25062bead63dd3c56e63719146c782769 100644 (file)
@@ -1176,9 +1176,9 @@ static int rt2500pci_set_state(struct rt2x00_dev *rt2x00dev,
 {
        u32 reg, reg2;
        unsigned int i;
-       char put_to_sleep;
-       char bbp_state;
-       char rf_state;
+       bool put_to_sleep;
+       u8 bbp_state;
+       u8 rf_state;
 
        put_to_sleep = (state != STATE_AWAKE);
 
@@ -1856,7 +1856,7 @@ static int rt2500pci_probe_hw_mode(struct rt2x00_dev *rt2x00dev)
 {
        struct hw_mode_spec *spec = &rt2x00dev->spec;
        struct channel_info *info;
-       char *tx_power;
+       u8 *tx_power;
        unsigned int i;
 
        /*
index 7e64aee2a172e237243f9df774a2490b6678f30a..ba362675c52c0e955226cb493c74a57452cbe76f 100644 (file)
        (((u8)(__txpower)) > MAX_TXPOWER) ? DEFAULT_TXPOWER : (__txpower)
 
 #define TXPOWER_TO_DEV(__txpower) \
-       clamp_t(char, __txpower, MIN_TXPOWER, MAX_TXPOWER)
+       clamp_t(u8, __txpower, MIN_TXPOWER, MAX_TXPOWER)
 
 #endif /* RT2500PCI_H */
index bb5ed6630645823e5232c18545d4fd8a0848af9b..4f3b0e6c6256ca1f474852fce250f6e4cfdf00c0 100644 (file)
@@ -984,9 +984,9 @@ static int rt2500usb_set_state(struct rt2x00_dev *rt2x00dev,
        u16 reg;
        u16 reg2;
        unsigned int i;
-       char put_to_sleep;
-       char bbp_state;
-       char rf_state;
+       bool put_to_sleep;
+       u8 bbp_state;
+       u8 rf_state;
 
        put_to_sleep = (state != STATE_AWAKE);
 
@@ -1663,7 +1663,7 @@ static int rt2500usb_probe_hw_mode(struct rt2x00_dev *rt2x00dev)
 {
        struct hw_mode_spec *spec = &rt2x00dev->spec;
        struct channel_info *info;
-       char *tx_power;
+       u8 *tx_power;
        unsigned int i;
 
        /*
index 0c070288a140f41ea8513362520e8dfcea1598f1..746f0e950b76e3e83e5c1d19f8e7b80e428bafa3 100644 (file)
        (((u8)(__txpower)) > MAX_TXPOWER) ? DEFAULT_TXPOWER : (__txpower)
 
 #define TXPOWER_TO_DEV(__txpower) \
-       clamp_t(char, __txpower, MIN_TXPOWER, MAX_TXPOWER)
+       clamp_t(u8, __txpower, MIN_TXPOWER, MAX_TXPOWER)
 
 #endif /* RT2500USB_H */
index cbbb1a4849cff046a767fa002d379718435cebf1..12b700c7b9c3b7e124e363554af2a96acbcc3ff3 100644 (file)
@@ -3372,10 +3372,10 @@ static void rt2800_config_channel_rf53xx(struct rt2x00_dev *rt2x00dev,
        if (rt2x00_has_cap_bt_coexist(rt2x00dev)) {
                if (rt2x00_rt_rev_gte(rt2x00dev, RT5390, REV_RT5390F)) {
                        /* r55/r59 value array of channel 1~14 */
-                       static const char r55_bt_rev[] = {0x83, 0x83,
+                       static const u8 r55_bt_rev[] = {0x83, 0x83,
                                0x83, 0x73, 0x73, 0x63, 0x53, 0x53,
                                0x53, 0x43, 0x43, 0x43, 0x43, 0x43};
-                       static const char r59_bt_rev[] = {0x0e, 0x0e,
+                       static const u8 r59_bt_rev[] = {0x0e, 0x0e,
                                0x0e, 0x0e, 0x0e, 0x0b, 0x0a, 0x09,
                                0x07, 0x07, 0x07, 0x07, 0x07, 0x07};
 
@@ -3384,7 +3384,7 @@ static void rt2800_config_channel_rf53xx(struct rt2x00_dev *rt2x00dev,
                        rt2800_rfcsr_write(rt2x00dev, 59,
                                           r59_bt_rev[idx]);
                } else {
-                       static const char r59_bt[] = {0x8b, 0x8b, 0x8b,
+                       static const u8 r59_bt[] = {0x8b, 0x8b, 0x8b,
                                0x8b, 0x8b, 0x8b, 0x8b, 0x8a, 0x89,
                                0x88, 0x88, 0x86, 0x85, 0x84};
 
@@ -3392,10 +3392,10 @@ static void rt2800_config_channel_rf53xx(struct rt2x00_dev *rt2x00dev,
                }
        } else {
                if (rt2x00_rt_rev_gte(rt2x00dev, RT5390, REV_RT5390F)) {
-                       static const char r55_nonbt_rev[] = {0x23, 0x23,
+                       static const u8 r55_nonbt_rev[] = {0x23, 0x23,
                                0x23, 0x23, 0x13, 0x13, 0x03, 0x03,
                                0x03, 0x03, 0x03, 0x03, 0x03, 0x03};
-                       static const char r59_nonbt_rev[] = {0x07, 0x07,
+                       static const u8 r59_nonbt_rev[] = {0x07, 0x07,
                                0x07, 0x07, 0x07, 0x07, 0x07, 0x07,
                                0x07, 0x07, 0x06, 0x05, 0x04, 0x04};
 
@@ -3406,14 +3406,14 @@ static void rt2800_config_channel_rf53xx(struct rt2x00_dev *rt2x00dev,
                } else if (rt2x00_rt(rt2x00dev, RT5390) ||
                           rt2x00_rt(rt2x00dev, RT5392) ||
                           rt2x00_rt(rt2x00dev, RT6352)) {
-                       static const char r59_non_bt[] = {0x8f, 0x8f,
+                       static const u8 r59_non_bt[] = {0x8f, 0x8f,
                                0x8f, 0x8f, 0x8f, 0x8f, 0x8f, 0x8d,
                                0x8a, 0x88, 0x88, 0x87, 0x87, 0x86};
 
                        rt2800_rfcsr_write(rt2x00dev, 59,
                                           r59_non_bt[idx]);
                } else if (rt2x00_rt(rt2x00dev, RT5350)) {
-                       static const char r59_non_bt[] = {0x0b, 0x0b,
+                       static const u8 r59_non_bt[] = {0x0b, 0x0b,
                                0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0a,
                                0x0a, 0x09, 0x08, 0x07, 0x07, 0x06};
 
@@ -4035,23 +4035,23 @@ static void rt2800_iq_calibrate(struct rt2x00_dev *rt2x00dev, int channel)
        rt2800_bbp_write(rt2x00dev, 159, cal != 0xff ? cal : 0);
 }
 
-static char rt2800_txpower_to_dev(struct rt2x00_dev *rt2x00dev,
+static s8 rt2800_txpower_to_dev(struct rt2x00_dev *rt2x00dev,
                                  unsigned int channel,
-                                 char txpower)
+                                 s8 txpower)
 {
        if (rt2x00_rt(rt2x00dev, RT3593) ||
            rt2x00_rt(rt2x00dev, RT3883))
                txpower = rt2x00_get_field8(txpower, EEPROM_TXPOWER_ALC);
 
        if (channel <= 14)
-               return clamp_t(char, txpower, MIN_G_TXPOWER, MAX_G_TXPOWER);
+               return clamp_t(s8, txpower, MIN_G_TXPOWER, MAX_G_TXPOWER);
 
        if (rt2x00_rt(rt2x00dev, RT3593) ||
            rt2x00_rt(rt2x00dev, RT3883))
-               return clamp_t(char, txpower, MIN_A_TXPOWER_3593,
+               return clamp_t(s8, txpower, MIN_A_TXPOWER_3593,
                               MAX_A_TXPOWER_3593);
        else
-               return clamp_t(char, txpower, MIN_A_TXPOWER, MAX_A_TXPOWER);
+               return clamp_t(s8, txpower, MIN_A_TXPOWER, MAX_A_TXPOWER);
 }
 
 static void rt3883_bbp_adjust(struct rt2x00_dev *rt2x00dev,
@@ -8530,7 +8530,7 @@ static void rt2800_r_calibration(struct rt2x00_dev *rt2x00dev)
        u8 bytevalue = 0;
        int rcalcode;
        u8 r_cal_code = 0;
-       char d1 = 0, d2 = 0;
+       s8 d1 = 0, d2 = 0;
        u8 rfvalue;
        u32 MAC_RF_BYPASS0, MAC_RF_CONTROL0, MAC_PWR_PIN_CFG;
        u32 maccfg;
@@ -8591,7 +8591,7 @@ static void rt2800_r_calibration(struct rt2x00_dev *rt2x00dev)
        if (bytevalue > 128)
                d1 = bytevalue - 256;
        else
-               d1 = (char)bytevalue;
+               d1 = (s8)bytevalue;
        rt2800_bbp_write(rt2x00dev, 22, 0x0);
        rt2800_rfcsr_write_bank(rt2x00dev, 0, 35, 0x01);
 
@@ -8601,7 +8601,7 @@ static void rt2800_r_calibration(struct rt2x00_dev *rt2x00dev)
        if (bytevalue > 128)
                d2 = bytevalue - 256;
        else
-               d2 = (char)bytevalue;
+               d2 = (s8)bytevalue;
        rt2800_bbp_write(rt2x00dev, 22, 0x0);
 
        rcalcode = rt2800_calcrcalibrationcode(rt2x00dev, d1, d2);
@@ -8703,7 +8703,7 @@ static void rt2800_rxdcoc_calibration(struct rt2x00_dev *rt2x00dev)
 static u32 rt2800_do_sqrt_accumulation(u32 si)
 {
        u32 root, root_pre, bit;
-       char i;
+       s8 i;
 
        bit = 1 << 15;
        root = 0;
@@ -9330,11 +9330,11 @@ static void rt2800_loft_search(struct rt2x00_dev *rt2x00dev, u8 ch_idx,
                               u8 alc_idx, u8 dc_result[][RF_ALC_NUM][2])
 {
        u32 p0 = 0, p1 = 0, pf = 0;
-       char idx0 = 0, idx1 = 0;
+       s8 idx0 = 0, idx1 = 0;
        u8 idxf[] = {0x00, 0x00};
        u8 ibit = 0x20;
        u8 iorq;
-       char bidx;
+       s8 bidx;
 
        rt2800_bbp_write(rt2x00dev, 158, 0xb0);
        rt2800_bbp_write(rt2x00dev, 159, 0x80);
@@ -9384,17 +9384,17 @@ static void rt2800_loft_search(struct rt2x00_dev *rt2x00dev, u8 ch_idx,
 static void rt2800_iq_search(struct rt2x00_dev *rt2x00dev, u8 ch_idx, u8 *ges, u8 *pes)
 {
        u32 p0 = 0, p1 = 0, pf = 0;
-       char perr = 0, gerr = 0, iq_err = 0;
-       char pef = 0, gef = 0;
-       char psta, pend;
-       char gsta, gend;
+       s8 perr = 0, gerr = 0, iq_err = 0;
+       s8 pef = 0, gef = 0;
+       s8 psta, pend;
+       s8 gsta, gend;
 
        u8 ibit = 0x20;
        u8 first_search = 0x00, touch_neg_max = 0x00;
-       char idx0 = 0, idx1 = 0;
+       s8 idx0 = 0, idx1 = 0;
        u8 gop;
        u8 bbp = 0;
-       char bidx;
+       s8 bidx;
 
        for (bidx = 5; bidx >= 1; bidx--) {
                for (gop = 0; gop < 2; gop++) {
@@ -10043,11 +10043,11 @@ static int rt2800_rf_lp_config(struct rt2x00_dev *rt2x00dev, bool btxcal)
        return 0;
 }
 
-static char rt2800_lp_tx_filter_bw_cal(struct rt2x00_dev *rt2x00dev)
+static s8 rt2800_lp_tx_filter_bw_cal(struct rt2x00_dev *rt2x00dev)
 {
        unsigned int cnt;
        u8 bbp_val;
-       char cal_val;
+       s8 cal_val;
 
        rt2800_bbp_dcoc_write(rt2x00dev, 0, 0x82);
 
@@ -10079,7 +10079,7 @@ static void rt2800_bw_filter_calibration(struct rt2x00_dev *rt2x00dev,
        u8 rx_filter_target_20m = 0x27, rx_filter_target_40m = 0x31;
        int loop = 0, is_ht40, cnt;
        u8 bbp_val, rf_val;
-       char cal_r32_init, cal_r32_val, cal_diff;
+       s8 cal_r32_init, cal_r32_val, cal_diff;
        u8 saverfb5r00, saverfb5r01, saverfb5r03, saverfb5r04, saverfb5r05;
        u8 saverfb5r06, saverfb5r07;
        u8 saverfb5r08, saverfb5r17, saverfb5r18, saverfb5r19, saverfb5r20;
@@ -11550,9 +11550,9 @@ static int rt2800_probe_hw_mode(struct rt2x00_dev *rt2x00dev)
 {
        struct hw_mode_spec *spec = &rt2x00dev->spec;
        struct channel_info *info;
-       char *default_power1;
-       char *default_power2;
-       char *default_power3;
+       s8 *default_power1;
+       s8 *default_power2;
+       s8 *default_power3;
        unsigned int i, tx_chains, rx_chains;
        u32 reg;
 
index 3cbef77b4bd3062e1d34c6ecfba58c11b2a2fd0d..194de676df8fd37c535bd6bfe74729179072b81d 100644 (file)
@@ -32,10 +32,10 @@ struct rf_reg_pair {
 struct rt2800_drv_data {
        u8 calibration_bw20;
        u8 calibration_bw40;
-       char rx_calibration_bw20;
-       char rx_calibration_bw40;
-       char tx_calibration_bw20;
-       char tx_calibration_bw40;
+       s8 rx_calibration_bw20;
+       s8 rx_calibration_bw40;
+       s8 tx_calibration_bw20;
+       s8 tx_calibration_bw40;
        u8 bbp25;
        u8 bbp26;
        u8 txmixer_gain_24g;
index 0827bc860bf866803572a6a163254194cf2eda05..8fd22c69855fa463c1a794eb26368a5fc4aa5696 100644 (file)
@@ -117,12 +117,12 @@ int rt2x00usb_vendor_request_buff(struct rt2x00_dev *rt2x00dev,
                                  const u16 buffer_length)
 {
        int status = 0;
-       unsigned char *tb;
+       u8 *tb;
        u16 off, len, bsize;
 
        mutex_lock(&rt2x00dev->csr_mutex);
 
-       tb  = (char *)buffer;
+       tb  = (u8 *)buffer;
        off = offset;
        len = buffer_length;
        while (len && !status) {
@@ -215,7 +215,7 @@ void rt2x00usb_register_read_async(struct rt2x00_dev *rt2x00dev,
        rd->cr.wLength = cpu_to_le16(sizeof(u32));
 
        usb_fill_control_urb(urb, usb_dev, usb_rcvctrlpipe(usb_dev, 0),
-                            (unsigned char *)(&rd->cr), &rd->reg, sizeof(rd->reg),
+                            (u8 *)(&rd->cr), &rd->reg, sizeof(rd->reg),
                             rt2x00usb_register_read_async_cb, rd);
        usb_anchor_urb(urb, rt2x00dev->anchor);
        if (usb_submit_urb(urb, GFP_ATOMIC) < 0) {
index d92f9eb07dc99b8aabcddb97f28bb54766930dfd..81db7f57c7e42019c3feb612a0c9748d28fd01f6 100644 (file)
@@ -1709,7 +1709,7 @@ static int rt61pci_set_state(struct rt2x00_dev *rt2x00dev, enum dev_state state)
 {
        u32 reg, reg2;
        unsigned int i;
-       char put_to_sleep;
+       bool put_to_sleep;
 
        put_to_sleep = (state != STATE_AWAKE);
 
@@ -2656,7 +2656,7 @@ static int rt61pci_probe_hw_mode(struct rt2x00_dev *rt2x00dev)
 {
        struct hw_mode_spec *spec = &rt2x00dev->spec;
        struct channel_info *info;
-       char *tx_power;
+       u8 *tx_power;
        unsigned int i;
 
        /*
index 5f208ad509bd43a61019baee275bd091554b4bc8..d72d0ffd11275c8e6ed33f67e15759f21ff9650a 100644 (file)
@@ -1484,6 +1484,6 @@ struct hw_pairwise_ta_entry {
        (((u8)(__txpower)) > MAX_TXPOWER) ? DEFAULT_TXPOWER : (__txpower)
 
 #define TXPOWER_TO_DEV(__txpower) \
-       clamp_t(char, __txpower, MIN_TXPOWER, MAX_TXPOWER)
+       clamp_t(u8, __txpower, MIN_TXPOWER, MAX_TXPOWER)
 
 #endif /* RT61PCI_H */
index e3269fd7c59e3ddd0faa96bf647044e4c2366271..8610354443740902069dee85bab22ac27895b5ae 100644 (file)
@@ -1378,7 +1378,7 @@ static int rt73usb_set_state(struct rt2x00_dev *rt2x00dev, enum dev_state state)
 {
        u32 reg, reg2;
        unsigned int i;
-       char put_to_sleep;
+       bool put_to_sleep;
 
        put_to_sleep = (state != STATE_AWAKE);
 
@@ -2090,7 +2090,7 @@ static int rt73usb_probe_hw_mode(struct rt2x00_dev *rt2x00dev)
 {
        struct hw_mode_spec *spec = &rt2x00dev->spec;
        struct channel_info *info;
-       char *tx_power;
+       u8 *tx_power;
        unsigned int i;
 
        /*
index 1b56d285c34b45fa17d5fa86c21c6c884b916dde..bb0a68516c08b0f462dbe743f4f20f32d4d4bebb 100644 (file)
@@ -1063,6 +1063,6 @@ struct hw_pairwise_ta_entry {
        (((u8)(__txpower)) > MAX_TXPOWER) ? DEFAULT_TXPOWER : (__txpower)
 
 #define TXPOWER_TO_DEV(__txpower) \
-       clamp_t(char, __txpower, MIN_TXPOWER, MAX_TXPOWER)
+       clamp_t(u8, __txpower, MIN_TXPOWER, MAX_TXPOWER)
 
 #endif /* RT73USB_H */