rtw_mac_power_switch() calls rtw_pwr_seq_parser() which can return
-EINVAL, -EBUSY or 0. Propagate the original error code instead of
unconditionally returning -EINVAL in case of an error.
Fixes: e3037485c68e ("rtw88: new Realtek 802.11ac driver")
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Reviewed-by: Ping-Ke Shih <pkshih@realtek.com>
Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link: https://lore.kernel.org/r/20230226221004.138331-3-martin.blumenstingl@googlemail.com
 
        const struct rtw_pwr_seq_cmd **pwr_seq;
        u8 rpwm;
        bool cur_pwr;
+       int ret;
 
        if (rtw_chip_wcpu_11ac(rtwdev)) {
                rpwm = rtw_read8(rtwdev, rtwdev->hci.rpwm_addr);
                return -EALREADY;
 
        pwr_seq = pwr_on ? chip->pwr_on_seq : chip->pwr_off_seq;
-       if (rtw_pwr_seq_parser(rtwdev, pwr_seq))
-               return -EINVAL;
+       ret = rtw_pwr_seq_parser(rtwdev, pwr_seq);
+       if (ret)
+               return ret;
 
        if (pwr_on)
                set_bit(RTW_FLAG_POWERON, rtwdev->flags);