Re: [PATCH v5] counter: Introduce the COUNTER_COMP_FREQUENCY() macro

From: Fabrice Gasnier
Date: Mon Mar 04 2024 - 04:09:37 EST


On 3/1/24 16:55, William Breathitt Gray wrote:
> On Fri, Mar 01, 2024 at 11:25:05AM +0100, Fabrice Gasnier wrote:
>> Now that there are two users for the "frequency" extension, introduce a
>> new COUNTER_COMP_FREQUENCY() macro.
>> This extension is intended to be a read-only signal attribute.
>>
>> Suggested-by: William Breathitt Gray <william.gray@xxxxxxxxxx>
>> Signed-off-by: Fabrice Gasnier <fabrice.gasnier@xxxxxxxxxxx>
>> ---
>> Changes in v5
>> - "frequency" extension is read-only, so there's no need to provide
>> a write parameter.
>> - patch sent separately from "counter: Add stm32 timer events support" [1]
>> [1] https://lore.kernel.org/lkml/20240227173803.53906-2-fabrice.gasnier@xxxxxxxxxxx/
>> ---
>> include/linux/counter.h | 7 +++++++
>> 1 file changed, 7 insertions(+)
>>
>> diff --git a/include/linux/counter.h b/include/linux/counter.h
>> index 702e9108bbb4..0ac36f815b7d 100644
>> --- a/include/linux/counter.h
>> +++ b/include/linux/counter.h
>> @@ -602,6 +602,13 @@ struct counter_array {
>> #define COUNTER_COMP_FLOOR(_read, _write) \
>> COUNTER_COMP_COUNT_U64("floor", _read, _write)
>>
>> +#define COUNTER_COMP_FREQUENCY(_read) \
>> +{ \
>> + .type = COUNTER_COMP_U64, \
>> + .name = "frequency", \
>> + .signal_u64_read = (_read), \
>> +}
>> +
>> #define COUNTER_COMP_POLARITY(_read, _write, _available) \
>> { \
>> .type = COUNTER_COMP_SIGNAL_POLARITY, \
>> --
>> 2.25.1
>
> Hi Fabrice,
>
> Setting the structure members directly works, but why not use
> COUNTER_COMP_SIGNAL_U64("frequency", _read, NULL) instead to keep the
> code more succinct?

Hi William,

I originally wrote it this way, but I had a doubt since some macros use
the structure members directly.

I can update to use COUNTER_COMP_SIGNAL_U64() instead, that will spare
few lines.

Please let me know what you prefer (I guess your proposal above ?).

Best Regards,
Thanks,
Fabrice

>
> William Breathitt Gray