[PATCH 6/7] fpga: wrap the fpga_remove() op

From: trix
Date: Mon Jun 07 2021 - 13:24:48 EST


From: Tom Rix <trix@xxxxxxxxxx>

The board is not required to provide a fpga_remove() op.
Add a wrapper consistent with the other op wrappers.
Move op check to wrapper.

Signed-off-by: Tom Rix <trix@xxxxxxxxxx>
---
drivers/fpga/fpga-mgr.c | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/drivers/fpga/fpga-mgr.c b/drivers/fpga/fpga-mgr.c
index d06752be9c6e..84808c7ca440 100644
--- a/drivers/fpga/fpga-mgr.c
+++ b/drivers/fpga/fpga-mgr.c
@@ -731,6 +731,12 @@ int fpga_mgr_register(struct fpga_manager *mgr)
}
EXPORT_SYMBOL_GPL(fpga_mgr_register);

+static void fpga_mgr_fpga_remove(struct fpga_manager *mgr)
+{
+ if (mgr->mops && mgr->mops->fpga_remove)
+ mgr->mops->fpga_remove(mgr);
+}
+
/**
* fpga_mgr_unregister - unregister a FPGA manager
* @mgr: fpga manager struct
@@ -745,8 +751,7 @@ void fpga_mgr_unregister(struct fpga_manager *mgr)
* If the low level driver provides a method for putting fpga into
* a desired state upon unregister, do it.
*/
- if (mgr->mops->fpga_remove)
- mgr->mops->fpga_remove(mgr);
+ fpga_mgr_fpga_remove(mgr);

device_unregister(&mgr->dev);
}
--
2.26.3