blob: a790bf9b7c461b752250a45d6567d1a0619b7559 [file] [log] [blame]
From f8d3ac0e9280011f41563315eef360504d16c9a6 Mon Sep 17 00:00:00 2001
From: Alan Tull <atull@kernel.org>
Date: Mon, 16 Apr 2018 20:43:37 -0700
Subject: [PATCH 1685/1795] fpga: fpga-region: comment on
fpga_region_program_fpga locking
Add a comment to the header of fpga_region_program_fpga()
regarding locking of the bridges.
Signed-off-by: Alan Tull <atull@kernel.org>
Signed-off-by: Moritz Fischer <mdf@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 093a89d4c21701e61025386a08a2d1ec5d97c805)
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
drivers/fpga/fpga-region.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/drivers/fpga/fpga-region.c b/drivers/fpga/fpga-region.c
index edab2a2e03ef..cb0603e07ff8 100644
--- a/drivers/fpga/fpga-region.c
+++ b/drivers/fpga/fpga-region.c
@@ -95,6 +95,11 @@ static void fpga_region_put(struct fpga_region *region)
* fpga_region_program_fpga - program FPGA
* @region: FPGA region
* Program an FPGA using fpga image info (region->info).
+ * If the region has a get_bridges function, the exclusive reference for the
+ * bridges will be held if programming succeeds. This is intended to prevent
+ * reprogramming the region until the caller considers it safe to do so.
+ * The caller will need to call fpga_bridges_put() before attempting to
+ * reprogram the region.
* Return 0 for success or negative error code.
*/
int fpga_region_program_fpga(struct fpga_region *region)
--
2.19.0