Messages in this thread | | | From | Nobuhiro Iwamatsu <> | Date | Tue, 16 Feb 2021 00:56:20 +0900 | Subject | Re: [PATCH v2] firmware: xilinx: Remove zynqmp_pm_get_eemi_ops() in IS_REACHABLE(CONFIG_ZYNQMP_FIRMWARE) |
| |
Hi,
2021年2月12日(金) 21:53 Michal Simek <michal.simek@xilinx.com>: > > > > On 2/12/21 12:23 AM, Nobuhiro Iwamatsu wrote: > > zynqmp_pm_get_eemi_ops() was removed in commit 4db8180ffe7c: "Firmware: xilinx: > > Remove eemi ops for fpga related APIs", but not in IS_REACHABLE(CONFIG_ZYNQMP_FIRMWARE). > > Any driver who want to communicate with PMC using EEMI APIs use the functions provided > > for each function. > > This removed zynqmp_pm_get_eemi_ops() in IS_REACHABLE(CONFIG_ZYNQMP_FIRMWARE), and also > > modify the documentation for this driver. > > > > Fixes: 4db8180ffe7c ("firmware: xilinx: Remove eemi ops for fpga related APIs") > > Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org> > > --- > > v2: Added the comment pointed out by Michal. > > > > Documentation/driver-api/xilinx/eemi.rst | 27 +----------------------- > > include/linux/firmware/xlnx-zynqmp.h | 5 ----- > > 2 files changed, 1 insertion(+), 31 deletions(-) > > > > diff --git a/Documentation/driver-api/xilinx/eemi.rst b/Documentation/driver-api/xilinx/eemi.rst > > index 9dcbc6f18d75df..53416d25d309a8 100644 > > --- a/Documentation/driver-api/xilinx/eemi.rst > > +++ b/Documentation/driver-api/xilinx/eemi.rst > > @@ -19,32 +19,7 @@ device to issue or respond to power management requests. > > EEMI ops is a structure containing all eemi APIs supported by Zynq MPSoC. > > The zynqmp-firmware driver maintain all EEMI APIs in zynqmp_eemi_ops > > structure. Any driver who want to communicate with PMC using EEMI APIs > > -can call zynqmp_pm_get_eemi_ops(). > > - > > -Example of EEMI ops:: > > - > > - /* zynqmp-firmware driver maintain all EEMI APIs */ > > - struct zynqmp_eemi_ops { > > - int (*get_api_version)(u32 *version); > > - int (*query_data)(struct zynqmp_pm_query_data qdata, u32 *out); > > - }; > > - > > - static const struct zynqmp_eemi_ops eemi_ops = { > > - .get_api_version = zynqmp_pm_get_api_version, > > - .query_data = zynqmp_pm_query_data, > > - }; > > - > > -Example of EEMI ops usage:: > > - > > - static const struct zynqmp_eemi_ops *eemi_ops; > > - u32 ret_payload[PAYLOAD_ARG_CNT]; > > - int ret; > > - > > - eemi_ops = zynqmp_pm_get_eemi_ops(); > > - if (IS_ERR(eemi_ops)) > > - return PTR_ERR(eemi_ops); > > - > > - ret = eemi_ops->query_data(qdata, ret_payload); > > +use the functions provided for each function. > > > > IOCTL > > ------ > > diff --git a/include/linux/firmware/xlnx-zynqmp.h b/include/linux/firmware/xlnx-zynqmp.h > > index 2a0da841c942f6..4ef77deaf7918c 100644 > > --- a/include/linux/firmware/xlnx-zynqmp.h > > +++ b/include/linux/firmware/xlnx-zynqmp.h > > @@ -355,11 +355,6 @@ int zynqmp_pm_read_pggs(u32 index, u32 *value); > > int zynqmp_pm_system_shutdown(const u32 type, const u32 subtype); > > int zynqmp_pm_set_boot_health_status(u32 value); > > #else > > -static inline struct zynqmp_eemi_ops *zynqmp_pm_get_eemi_ops(void) > > -{ > > - return ERR_PTR(-ENODEV); > > -} > > - > > static inline int zynqmp_pm_get_api_version(u32 *version) > > { > > return -ENODEV; > > > > I can't see any difference compare to v1. Don't you forget to commit > your changes?
Oh, sorry. I will resend with update.
Best regards, Nobuhiro
-- Nobuhiro Iwamatsu iwamatsu at {nigauri.org / debian.org} GPG ID: 40AD1FA6
| |