History

firmware: xilinx: Remove eemi ops for get_api_version

Use direct function calls instead of using eemi ops. So remove eemi ops for get_api_version and use direct function call.

Rajan Vaja committed 6 years ago

Commit b9b3a8b1 parent 7536ad84 files · +10 −6Browse files

Unified · Split

4 files
  1. drivers/firmware/xilinx/zynqmp-debug.c +1 −1
  2. drivers/firmware/xilinx/zynqmp.c +2 −2
  3. drivers/soc/xilinx/zynqmp_power.c +2 −2
  4. include/linux/firmware/xlnx-zynqmp.h +5 −1
drivers/firmware/xilinx/zynqmp-debug.c+1−1
@@ -92,7 +92,7 @@ static int process_api_request(u32 pm_id, u64 *pm_api_arg, u32 *pm_api_ret) · 91 unmodified lines
9292
9393 switch (pm_id) {
9494 case PM_GET_API_VERSION:
95− ret = eemi_ops->get_api_version(&pm_api_version);
95+ ret = zynqmp_pm_get_api_version(&pm_api_version);
9696 sprintf(debugfs_buf, "PM-API Version = %d.%d\n",
9797 pm_api_version >> 16, pm_api_version & 0xffff);
9898 break;
drivers/firmware/xilinx/zynqmp.c+2−2
@@ -219,7 +219,7 @@ static u32 pm_tz_version; · 218 unmodified lines
219219 *
220220 * Return: Returns status, either success or error+reason
221221 */
222−static int zynqmp_pm_get_api_version(u32 *version)
222+int zynqmp_pm_get_api_version(u32 *version)
223223 {
224224 u32 ret_payload[PAYLOAD_ARG_CNT];
225225 int ret;
@@ -237,6 +237,7 @@ static int zynqmp_pm_get_api_version(u32 *version) · 11 unmodified lines
237237
238238 return ret;
239239 }
240+EXPORT_SYMBOL_GPL(zynqmp_pm_get_api_version);
240241
241242 /**
242243 * zynqmp_pm_get_chipid - Get silicon ID registers
@@ -734,7 +735,6 @@ static int zynqmp_pm_aes_engine(const u64 address, u32 *out) · 491 unmodified lines
734735 }
735736
736737 static const struct zynqmp_eemi_ops eemi_ops = {
737− .get_api_version = zynqmp_pm_get_api_version,
738738 .get_chipid = zynqmp_pm_get_chipid,
739739 .query_data = zynqmp_pm_query_data,
740740 .clock_enable = zynqmp_pm_clock_enable,
drivers/soc/xilinx/zynqmp_power.c+2−2
@@ -186,11 +186,11 @@ static int zynqmp_pm_probe(struct platform_device *pdev) · 185 unmodified lines
186186 if (IS_ERR(eemi_ops))
187187 return PTR_ERR(eemi_ops);
188188
189− if (!eemi_ops->get_api_version || !eemi_ops->init_finalize)
189+ if (!eemi_ops->init_finalize)
190190 return -ENXIO;
191191
192192 eemi_ops->init_finalize();
193− eemi_ops->get_api_version(&pm_api_version);
193+ zynqmp_pm_get_api_version(&pm_api_version);
194194
195195 /* Check PM API version number */
196196 if (pm_api_version < ZYNQMP_PM_VERSION)
include/linux/firmware/xlnx-zynqmp.h+5−1
@@ -294,7 +294,6 @@ struct zynqmp_pm_query_data { · 293 unmodified lines
294294 };
295295
296296 struct zynqmp_eemi_ops {
297− int (*get_api_version)(u32 *version);
298297 int (*get_chipid)(u32 *idcode, u32 *version);
299298 int (*fpga_load)(const u64 address, const u32 size, const u32 flags);
300299 int (*fpga_get_status)(u32 *value);
@@ -331,11 +330,16 @@ int zynqmp_pm_invoke_fn(u32 pm_api_id, u32 arg0, u32 arg1, · 30 unmodified lines
331330
332331 #if IS_REACHABLE(CONFIG_ZYNQMP_FIRMWARE)
333332 const struct zynqmp_eemi_ops *zynqmp_pm_get_eemi_ops(void);
333+int zynqmp_pm_get_api_version(u32 *version);
334334 #else
335335 static inline struct zynqmp_eemi_ops *zynqmp_pm_get_eemi_ops(void)
336336 {
337337 return ERR_PTR(-ENODEV);
338338 }
339+static inline int zynqmp_pm_get_api_version(u32 *version)
340+{
341+ return -ENODEV;
342+}
339343 #endif
340344
341345 #endif /* __FIRMWARE_ZYNQMP_H__ */