Search Linux Wireless

RE: [PATCH v3] wifi: rtw89: rtw8852b{t}: fix TSSI debug timestamps

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Dmitry Antipov <dmantipov@xxxxxxxxx> wrote:
> According to Ping-Ke, 

I meant please don't mention my name in commit message. I don't think that
helps. 

> the vendor driver measures 'tssi_alimk_time' of
> 'struct rtw89_tssi_info' in microseconds. So adjust rtw8852b{t}-specific
> '_tssi_alimentk()' to not mess the former with nanoseconds and print both
> per-call and accumulated times. Compile tested only.
> 
> Fixes: 7f18a70d7b4d ("wifi: rtw89: 8852b: rfk: add TSSI")
> Signed-off-by: Dmitry Antipov <dmantipov@xxxxxxxxx>
> ---
> v3: do not mess s64 vs. ktime_t and print the former as signed
> v2: actually use microseconds and print both times
> ---
>  drivers/net/wireless/realtek/rtw89/core.h          |  2 +-
>  drivers/net/wireless/realtek/rtw89/rtw8852b_rfk.c  | 13 +++++++------
>  drivers/net/wireless/realtek/rtw89/rtw8852bt_rfk.c | 13 +++++++------
>  3 files changed, 15 insertions(+), 13 deletions(-)
> 
> diff --git a/drivers/net/wireless/realtek/rtw89/core.h b/drivers/net/wireless/realtek/rtw89/core.h
> index b3fdd8eded21..eb2a6b90c940 100644
> --- a/drivers/net/wireless/realtek/rtw89/core.h
> +++ b/drivers/net/wireless/realtek/rtw89/core.h
> @@ -5141,7 +5141,7 @@ struct rtw89_tssi_info {
>         u32 alignment_backup_by_ch[RF_PATH_MAX][TSSI_MAX_CH_NUM][TSSI_ALIMK_VALUE_NUM];
>         u32 alignment_value[RF_PATH_MAX][TSSI_ALIMK_MAX][TSSI_ALIMK_VALUE_NUM];
>         bool alignment_done[RF_PATH_MAX][TSSI_ALIMK_MAX];
> -       u32 tssi_alimk_time;
> +       u64 tssi_alimk_time;
>  };
> 
>  struct rtw89_power_trim_info {
> diff --git a/drivers/net/wireless/realtek/rtw89/rtw8852b_rfk.c
> b/drivers/net/wireless/realtek/rtw89/rtw8852b_rfk.c
> index ef47a5facc83..8b1cc8b71d1f 100644
> --- a/drivers/net/wireless/realtek/rtw89/rtw8852b_rfk.c
> +++ b/drivers/net/wireless/realtek/rtw89/rtw8852b_rfk.c
> @@ -3585,7 +3585,8 @@ static void _tssi_alimentk(struct rtw89_dev *rtwdev, enum rtw89_phy_idx phy,
>         u8 ch_idx = _tssi_ch_to_idx(rtwdev, channel);
>         struct rtw8852bx_bb_tssi_bak tssi_bak;
>         s32 aliment_diff, tssi_cw_default;
> -       u32 start_time, finish_time;
> +       ktime_t start_time;
> +       s64 this_time;

In reverse X'mas tree order.

>         u32 bb_reg_backup[8] = {0};
>         const s16 *power;
>         u8 band;
> @@ -3613,7 +3614,7 @@ static void _tssi_alimentk(struct rtw89_dev *rtwdev, enum rtw89_phy_idx phy,
>                 return;
>         }
> 
> -       start_time = ktime_get_ns();
> +       start_time = ktime_get();
> 
>         if (chan->band_type == RTW89_BAND_2G)
>                 power = power_2g;
> @@ -3738,12 +3739,12 @@ static void _tssi_alimentk(struct rtw89_dev *rtwdev, enum rtw89_phy_idx phy,
>         rtw8852bx_bb_restore_tssi(rtwdev, phy, &tssi_bak);
>         rtw8852bx_bb_tx_mode_switch(rtwdev, phy, 0);
> 
> -       finish_time = ktime_get_ns();
> -       tssi_info->tssi_alimk_time += finish_time - start_time;
> +       this_time = ktime_us_delta(ktime_get(), start_time);
> +       tssi_info->tssi_alimk_time += this_time;
> 
>         rtw89_debug(rtwdev, RTW89_DBG_RFK,
> -                   "[TSSI PA K] %s processing time = %d ms\n", __func__,
> -                   tssi_info->tssi_alimk_time);
> +                   "[TSSI PA K] %s processing time = %lld us (acc = %llu us)\n",
> +                   __func__, this_time, tssi_info->tssi_alimk_time);
>  }
> 
>  void rtw8852b_dpk_init(struct rtw89_dev *rtwdev)
> diff --git a/drivers/net/wireless/realtek/rtw89/rtw8852bt_rfk.c
> b/drivers/net/wireless/realtek/rtw89/rtw8852bt_rfk.c
> index 336a83e1d46b..07c31929222e 100644
> --- a/drivers/net/wireless/realtek/rtw89/rtw8852bt_rfk.c
> +++ b/drivers/net/wireless/realtek/rtw89/rtw8852bt_rfk.c
> @@ -3663,7 +3663,8 @@ static void _tssi_alimentk(struct rtw89_dev *rtwdev, enum rtw89_phy_idx phy,
>         u8 ch_idx = _tssi_ch_to_idx(rtwdev, channel);
>         struct rtw8852bx_bb_tssi_bak tssi_bak;
>         s32 aliment_diff, tssi_cw_default;
> -       u32 start_time, finish_time;
> +       ktime_t start_time;
> +       s64 this_time;

ditto. 

>         u32 bb_reg_backup[8] = {};
>         const s16 *power;
>         u8 band;
> @@ -3675,7 +3676,7 @@ static void _tssi_alimentk(struct rtw89_dev *rtwdev, enum rtw89_phy_idx phy,
>                     "======> %s   channel=%d   path=%d\n", __func__, channel,
>                     path);
> 
> -       start_time = ktime_get_ns();
> +       start_time = ktime_get();
> 
>         if (chan->band_type == RTW89_BAND_2G)
>                 power = power_2g;
> @@ -3802,12 +3803,12 @@ static void _tssi_alimentk(struct rtw89_dev *rtwdev, enum rtw89_phy_idx phy,
>         rtw8852bx_bb_restore_tssi(rtwdev, phy, &tssi_bak);
>         rtw8852bx_bb_tx_mode_switch(rtwdev, phy, 0);
> 
> -       finish_time = ktime_get_ns();
> -       tssi_info->tssi_alimk_time += finish_time - start_time;
> +       this_time = ktime_us_delta(ktime_get(), start_time);
> +       tssi_info->tssi_alimk_time += this_time;
> 
>         rtw89_debug(rtwdev, RTW89_DBG_RFK,
> -                   "[TSSI PA K] %s processing time = %d ms\n", __func__,
> -                   tssi_info->tssi_alimk_time);
> +                   "[TSSI PA K] %s processing time = %lld us (acc = %llu us)\n",
> +                   __func__, this_time, tssi_info->tssi_alimk_time);
>  }
> 
>  void rtw8852bt_dpk_init(struct rtw89_dev *rtwdev)
> --
> 2.48.1
> 






[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux