[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <29a6055c-0e78-49d0-81b7-cdf7297091a9@amd.com>
Date: Thu, 12 Sep 2024 09:30:25 +0200
From: Michal Simek <michal.simek@....com>
To: Ronak Jain <ronak.jain@....com>
Cc: linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] firmware: xilinx: use u32 for reset ID in reset APIs
On 8/30/24 12:00, Ronak Jain wrote:
> Refactors the reset handling mechanisms by replacing the reset ID's
> enum type with a u32. This update improves flexibility, allowing the
> reset ID to accommodate a broader range of values, including those
> that may not fit into predefined enum values.
>
> The use of u32 for reset ID enhances extensibility, especially for
> hardware platforms or features where more granular control of reset
> operations is required. By shifting to a general integer type, this
> change reduces constraints and simplifies integration with other
> system components that rely on non-enum-based reset IDs.
>
> Signed-off-by: Ronak Jain <ronak.jain@....com>
> ---
> drivers/firmware/xilinx/zynqmp.c | 4 ++--
> include/linux/firmware/xlnx-zynqmp.h | 9 ++++-----
> 2 files changed, 6 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/firmware/xilinx/zynqmp.c b/drivers/firmware/xilinx/zynqmp.c
> index add8acf66a9c..c8be32d9c6af 100644
> --- a/drivers/firmware/xilinx/zynqmp.c
> +++ b/drivers/firmware/xilinx/zynqmp.c
> @@ -920,7 +920,7 @@ int zynqmp_pm_set_boot_health_status(u32 value)
> *
> * Return: Returns status, either success or error+reason
> */
> -int zynqmp_pm_reset_assert(const enum zynqmp_pm_reset reset,
> +int zynqmp_pm_reset_assert(const u32 reset,
> const enum zynqmp_pm_reset_action assert_flag)
> {
> return zynqmp_pm_invoke_fn(PM_RESET_ASSERT, NULL, 2, reset, assert_flag);
> @@ -934,7 +934,7 @@ EXPORT_SYMBOL_GPL(zynqmp_pm_reset_assert);
> *
> * Return: Returns status, either success or error+reason
> */
> -int zynqmp_pm_reset_get_status(const enum zynqmp_pm_reset reset, u32 *status)
> +int zynqmp_pm_reset_get_status(const u32 reset, u32 *status)
> {
> u32 ret_payload[PAYLOAD_ARG_CNT];
> int ret;
> diff --git a/include/linux/firmware/xlnx-zynqmp.h b/include/linux/firmware/xlnx-zynqmp.h
> index 563382cf16f2..5b938fc2adad 100644
> --- a/include/linux/firmware/xlnx-zynqmp.h
> +++ b/include/linux/firmware/xlnx-zynqmp.h
> @@ -557,9 +557,9 @@ int zynqmp_pm_get_pll_frac_data(u32 clk_id, u32 *data);
> int zynqmp_pm_set_sd_tapdelay(u32 node_id, u32 type, u32 value);
> int zynqmp_pm_sd_dll_reset(u32 node_id, u32 type);
> int zynqmp_pm_ospi_mux_select(u32 dev_id, u32 select);
> -int zynqmp_pm_reset_assert(const enum zynqmp_pm_reset reset,
> +int zynqmp_pm_reset_assert(const u32 reset,
> const enum zynqmp_pm_reset_action assert_flag);
> -int zynqmp_pm_reset_get_status(const enum zynqmp_pm_reset reset, u32 *status);
> +int zynqmp_pm_reset_get_status(const u32 reset, u32 *status);
> unsigned int zynqmp_pm_bootmode_read(u32 *ps_mode);
> int zynqmp_pm_bootmode_write(u32 ps_mode);
> int zynqmp_pm_init_finalize(void);
> @@ -702,14 +702,13 @@ static inline int zynqmp_pm_ospi_mux_select(u32 dev_id, u32 select)
> return -ENODEV;
> }
>
> -static inline int zynqmp_pm_reset_assert(const enum zynqmp_pm_reset reset,
> +static inline int zynqmp_pm_reset_assert(const u32 reset,
> const enum zynqmp_pm_reset_action assert_flag)
> {
> return -ENODEV;
> }
>
> -static inline int zynqmp_pm_reset_get_status(const enum zynqmp_pm_reset reset,
> - u32 *status)
> +static inline int zynqmp_pm_reset_get_status(const u32 reset, u32 *status)
> {
> return -ENODEV;
> }
Applied.
M
Powered by blists - more mailing lists