fpga: region: change api, add fpga_region_create/free
authorAlan Tull <atull@kernel.org>
Wed, 16 May 2018 23:49:57 +0000 (18:49 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 25 May 2018 16:23:56 +0000 (18:23 +0200)
commit9f368977b4589e2fe0b9d3a4cbaf11ff6a58ecf5
tree7b2e8d00ea068aa78dc308bb9d7c8cd4d55017bf
parent371cd1b1fdabb33603340559049e46dfeae45b1e
fpga: region: change api, add fpga_region_create/free

Add fpga_region_create/free API functions.

Change fpga_region_register to take FPGA region struct as the only
parameter.  Change fpga_region_unregister to return void.

  struct fpga_region *fpga_region_create(struct device *dev,
                        struct fpga_manager *mgr,
                        int (*get_bridges)(struct fpga_region *));
  void fpga_region_free(struct fpga_region *region);
  int fpga_region_register(struct fpga_region *region);
  void fpga_region_unregister(struct fpga_region *region);

Remove groups storage from struct fpga_region, it's not
needed.  Callers can just "region->dev.groups = groups;"
after calling fpga_region_create.

Update the drivers that call fpga_region_register with the new API.

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>
Documentation/fpga/fpga-region.txt
drivers/fpga/fpga-region.c
drivers/fpga/of-fpga-region.c
include/linux/fpga/fpga-region.h