aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/fpga/fpga-mgr.h
diff options
context:
space:
mode:
authorAlan Tull <atull@kernel.org>2017-11-15 15:20:28 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2017-11-28 10:30:38 -0500
commit845089bbf589be75143d0c9fb326d5595c1b5787 (patch)
tree2b7e884e1085de56f9ae7df0ce69b1cabc3bedb5 /include/linux/fpga/fpga-mgr.h
parent84e93f1d4f45a510926cb9225e49a4ccff5dd868 (diff)
fpga: add attribute groups
Make it easy to add attributes to low level FPGA drivers the right way. Add attribute groups pointers to structures that are used when registering a manager, bridge, or group. When the low level driver registers, set the device attribute group. The attributes are created in device_add. Signed-off-by: Alan Tull <atull@kernel.org> Acked-by: Moritz Fischer <mdf@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/linux/fpga/fpga-mgr.h')
-rw-r--r--include/linux/fpga/fpga-mgr.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/fpga/fpga-mgr.h b/include/linux/fpga/fpga-mgr.h
index 4fb706bd9aba..3c6de23aabdf 100644
--- a/include/linux/fpga/fpga-mgr.h
+++ b/include/linux/fpga/fpga-mgr.h
@@ -115,6 +115,7 @@ struct fpga_image_info {
115 * @write_sg: write the scatter list of configuration data to the FPGA 115 * @write_sg: write the scatter list of configuration data to the FPGA
116 * @write_complete: set FPGA to operating state after writing is done 116 * @write_complete: set FPGA to operating state after writing is done
117 * @fpga_remove: optional: Set FPGA into a specific state during driver remove 117 * @fpga_remove: optional: Set FPGA into a specific state during driver remove
118 * @groups: optional attribute groups.
118 * 119 *
119 * fpga_manager_ops are the low level functions implemented by a specific 120 * fpga_manager_ops are the low level functions implemented by a specific
120 * fpga manager driver. The optional ones are tested for NULL before being 121 * fpga manager driver. The optional ones are tested for NULL before being
@@ -131,6 +132,7 @@ struct fpga_manager_ops {
131 int (*write_complete)(struct fpga_manager *mgr, 132 int (*write_complete)(struct fpga_manager *mgr,
132 struct fpga_image_info *info); 133 struct fpga_image_info *info);
133 void (*fpga_remove)(struct fpga_manager *mgr); 134 void (*fpga_remove)(struct fpga_manager *mgr);
135 const struct attribute_group **groups;
134}; 136};
135 137
136/** 138/**