Re: [PATCH v6 04/11] firmware: xilinx: Add query data API

From: Sudeep Holla
Date: Thu May 10 2018 - 10:12:29 EST




On 10/04/18 20:38, Jolly Shah wrote:
> From: Rajan Vaja <rajanv@xxxxxxxxxx>
>
> Add ZynqMP firmware query data API to query platform
> specific information(clocks, pins) from firmware.
>
> Signed-off-by: Rajan Vaja <rajanv@xxxxxxxxxx>
> Signed-off-by: Jolly Shah <jollys@xxxxxxxxxx>
> ---
> drivers/firmware/xilinx/zynqmp.c | 14 ++++++++++++++
> include/linux/firmware/xlnx-zynqmp.h | 20 ++++++++++++++++++++
> 2 files changed, 34 insertions(+)
>
> diff --git a/drivers/firmware/xilinx/zynqmp.c b/drivers/firmware/xilinx/zynqmp.c
> index 44b43fa..ef09c44 100644
> --- a/drivers/firmware/xilinx/zynqmp.c
> +++ b/drivers/firmware/xilinx/zynqmp.c
> @@ -258,9 +258,23 @@ static int zynqmp_pm_ioctl(u32 node_id, u32 ioctl_id, u32 arg1, u32 arg2,
> arg1, arg2, out);
> }
>
> +/**
> + * zynqmp_pm_query_data() - Get query data from firmware
> + * @qdata: Variable to the zynqmp_pm_query_data structure
> + * @out: Returned output value
> + *
> + * Return: Returns status, either success or error+reason
> + */
> +static int zynqmp_pm_query_data(struct zynqmp_pm_query_data qdata, u32 *out)
> +{
> + return zynqmp_pm_invoke_fn(PM_QUERY_DATA, qdata.qid, qdata.arg1,
> + qdata.arg2, qdata.arg3, out);
> +}
> +
> static const struct zynqmp_eemi_ops eemi_ops = {
> .get_api_version = zynqmp_pm_get_api_version,
> .ioctl = zynqmp_pm_ioctl,
> + .query_data = zynqmp_pm_query_data,

Can you give more insight into this ? How will be this used ?
How this aligns with data we get from DT ? I am just trying to
understand how is this information split between this API and DT for
example.

--
Regards,
Sudeep