public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [RESEND PATCH v3 0/4] fpga: don't use drvdata in common code
@ 2018-03-27 19:59 Alan Tull
  2018-03-27 19:59 ` [RESEND PATCH v3 1/4] fpga: region: don't use drvdata in common fpga code Alan Tull
                   ` (3 more replies)
  0 siblings, 4 replies; 9+ messages in thread
From: Alan Tull @ 2018-03-27 19:59 UTC (permalink / raw)
  To: Moritz Fischer
  Cc: Anatolij Gustschin, Matthew Gerlach, Joel Holdsworth,
	Florian Fainelli, Joshua Clayton, Dinh Nguyen, Alan Tull,
	linux-kernel, linux-fpga

Setting drvdata is fine for DT based devices which have one manager,
bridge, or region device per platform device.  However, PCIe based
devices may have multiple FPGA mgr/bridge/regions under one PCIe
device.  Without these changes, PCIe-based solutions have to create an
extra device for each child mgr/bridge/region to hold drvdata.

Also changing the fpga_*_register/unregister functions to take the
corresponding struct as the only parameter wherever they weren't already.

* int fpga_bridge_register(struct fpga_bridge *br)
* int fpga_mgr_register(struct fpga_manager *mgr)
* int fpga_region_register(struct fpga_region *region)

* void fpga_bridge_unregister(struct fpga_bridge *br)
* void fpga_mgr_unregister(struct fpga_manager *mgr)
* int fpga_region_unregister(struct fpga_region *region)

Changes from v2:
* Drop patch 5 which fixed a DT overlay issue.  The underlying
  issue was fixed in the main DT overlay code.
* Minor code cleanup to make it more obvious that the changes
  were not breaking anything
* Added Moritz' ack on patch 1

Alan Tull (4):
  fpga: region: don't use drvdata in common fpga code
  fpga: manager: don't use drvdata in common fpga code
  fpga: bridge: don't use drvdata in common fpga code
  fpga: region: change fpga_region_register to have one param

 Documentation/fpga/fpga-mgr.txt     | 24 +++++++++++++++------
 Documentation/fpga/fpga-region.txt  |  3 +--
 drivers/fpga/altera-cvp.c           | 18 ++++++++++++----
 drivers/fpga/altera-fpga2sdram.c    | 20 +++++++++++++----
 drivers/fpga/altera-freeze-bridge.c | 18 +++++++++++++---
 drivers/fpga/altera-hps2fpga.c      | 16 +++++++++++---
 drivers/fpga/altera-pr-ip-core.c    | 17 +++++++++++++--
 drivers/fpga/altera-ps-spi.c        | 18 +++++++++++++---
 drivers/fpga/fpga-bridge.c          | 43 ++++++++++++++-----------------------
 drivers/fpga/fpga-mgr.c             | 39 ++++++++++++---------------------
 drivers/fpga/fpga-region.c          |  9 ++++++--
 drivers/fpga/ice40-spi.c            | 20 +++++++++++++----
 drivers/fpga/of-fpga-region.c       |  4 +++-
 drivers/fpga/socfpga-a10.c          | 16 +++++++++++---
 drivers/fpga/socfpga.c              | 18 +++++++++++++---
 drivers/fpga/ts73xx-fpga.c          | 18 +++++++++++++---
 drivers/fpga/xilinx-pr-decoupler.c  | 15 ++++++++++---
 drivers/fpga/xilinx-spi.c           | 18 +++++++++++++---
 drivers/fpga/zynq-fpga.c            | 16 +++++++++++---
 include/linux/fpga/fpga-bridge.h    |  7 +++---
 include/linux/fpga/fpga-mgr.h       |  8 +++----
 include/linux/fpga/fpga-region.h    |  4 +++-
 22 files changed, 256 insertions(+), 113 deletions(-)

-- 
2.14.2

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2018-03-27 21:20 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-03-27 19:59 [RESEND PATCH v3 0/4] fpga: don't use drvdata in common code Alan Tull
2018-03-27 19:59 ` [RESEND PATCH v3 1/4] fpga: region: don't use drvdata in common fpga code Alan Tull
2018-03-27 19:59 ` [RESEND PATCH v3 2/4] fpga: manager: " Alan Tull
2018-03-27 20:11   ` Moritz Fischer
2018-03-27 21:19     ` Alan Tull
2018-03-27 19:59 ` [RESEND PATCH v3 3/4] fpga: bridge: " Alan Tull
2018-03-27 20:10   ` Moritz Fischer
2018-03-27 19:59 ` [RESEND PATCH v3 4/4] fpga: region: change fpga_region_register to have one param Alan Tull
2018-03-27 20:09   ` Moritz Fischer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox