fpga: bridge: change api, don't use drvdata
authorAlan Tull <atull@kernel.org>
Wed, 16 May 2018 23:49:56 +0000 (18:49 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 25 May 2018 16:23:55 +0000 (18:23 +0200)
commit371cd1b1fdabb33603340559049e46dfeae45b1e
tree0d1f187b9e48378b7f0b2b83b31f322f7435da17
parent7085e2a94f7df5f419e3cfb2fe809ce6564e9629
fpga: bridge: change api, don't use drvdata

Change fpga_bridge_register to not set drvdata.  This is to support
the case where a PCIe device can have more than one bridge.

Add API functions to create/free the fpga bridge struct. Change
fpga_bridge_register/unregister to take FPGA bridge struct as
the only parameter.

  struct fpga_bridge
  *fpga_bridge_create(struct device *dev, const char *name,
                      const struct fpga_bridge_ops *br_ops,
                      void *priv);
  void fpga_bridge_free(struct fpga_bridge *br);
  int fpga_bridge_register(struct fpga_bridge *br);
  void fpga_bridge_unregister(struct fpga_bridge *br);

Update the drivers that call fpga_bridge_register with the new API.

Signed-off-by: Alan Tull <atull@kernel.org>
Reported-by: Jiuyue Ma <majiuyue@huawei.com>
Signed-off-by: Moritz Fischer <mdf@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/fpga/altera-fpga2sdram.c
drivers/fpga/altera-freeze-bridge.c
drivers/fpga/altera-hps2fpga.c
drivers/fpga/fpga-bridge.c
drivers/fpga/xilinx-pr-decoupler.c
include/linux/fpga/fpga-bridge.h