[PATCH v3 1/2] ath10k: handle cycle counter wraparound

Kalle Valo kvalo at qca.qualcomm.com
Fri May 22 05:12:59 PDT 2015


Michal Kazior <michal.kazior at tieto.com> writes:

> On 22 May 2015 at 13:56, Michal Kazior <michal.kazior at tieto.com> wrote:
>> On 22 May 2015 at 13:36, Kalle Valo <kvalo at qca.qualcomm.com> wrote:
>>> Michal Kazior <michal.kazior at tieto.com> writes:
> [...]
>>>> +void ath10k_core_get_cc_delta(struct ath10k *ar,
>>>> +                           u32 *cc_delta, u32 *rcc_delta,
>>>> +                           u32 cc, u32 rcc,
>>>> +                           u32 cc_prev, u32 rcc_prev)
>>>> +{
>>>> +     if (ar->hw_params.has_shifted_cc_wraparound && cc < cc_prev) {
>>>> +             cc_prev -= 0x7fffffff;
>>>> +             rcc *= 2;
>>>> +     }
>>>> +
>>>> +     *cc_delta = cc - cc_prev;
>>>> +     *rcc_delta = rcc - rcc_prev;
>>>> +}
>>>
>>> Why do you have this function in core.c? Why not in wmi.c?
>>
>> I don't consider this a part of WMI protocol per se. It's a logic
>> which happens to be used with values delivered via WMI but is chip
>> specific otherwise. For what it's worth we could be reading CC
>> registers, e.g. directly via MMIO.
>
> Now that I think about it this would fit into hw.c as well.

Yeah, hw.c would be much better. And we could start adding more similar
hw adaptation code there in the future.

-- 
Kalle Valo



More information about the ath10k mailing list