[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <c67e095c-3fba-44df-950f-b014ce27eb0f@lechnology.com>
Date: Wed, 27 Nov 2024 08:36:39 -0600
From: David Lechner <david@...hnology.com>
To: "Rafael V. Volkmer" <rafael.v.volkmer@...il.com>, wbg@...nel.org
Cc: linux-kernel@...r.kernel.org, linux-iio@...r.kernel.org
Subject: Re: [PATCH] counter: add COUNTER_FUNCTION_DISABLE for energy saving
On 11/25/24 5:02 PM, Rafael V. Volkmer wrote:
> Add `COUNTER_FUNCTION_DISABLE` to the `counter_function` enum in the
> counter API. This allows file operations to signal other drivers to
> disable hardware resources, reducing energy consumption in
> power-sensitive scenarios.
>
> Previously, tests with Texas Instruments' eQEP modules revealed that
> hardware resources remained active unless the driver was removed,
> offering no user command to stop the count. This approach exposed the
> fragility of these resources.
>
> To address this, introduce a new enum option in the counter API to
> receive commands for disabling the hardware. This ensures the hardware
> enters an idle, power-saving state when not in use.
How does this work without an additional patch to modify the TI eQEP
counter driver to handle this new enum value? For example, I would
expect that this enum value would be added to ti_eqep_position_functions
and case statements added in ti_eqep_function_read(),
ti_eqep_function_write() and ti_eqep_action_read() to handle the new
option.
>
> Signed-off-by: Rafael V. Volkmer <rafael.v.volkmer@...il.com>
> ---
> include/uapi/linux/counter.h | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/include/uapi/linux/counter.h b/include/uapi/linux/counter.h
> index 008a691c254b..6f9a6ef878cf 100644
> --- a/include/uapi/linux/counter.h
> +++ b/include/uapi/linux/counter.h
> @@ -145,6 +145,7 @@ enum counter_function {
> COUNTER_FUNCTION_QUADRATURE_X2_A,
> COUNTER_FUNCTION_QUADRATURE_X2_B,
> COUNTER_FUNCTION_QUADRATURE_X4,
> + COUNTER_FUNCTION_DISABLE,
> };
>
> /* Signal values */
Powered by blists - more mailing lists