From: Jason Gunthorpe <jgunthorpe@obsidianresearch.com>
To: Moritz Fischer <moritz.fischer@ettus.com>
Cc: mark.rutland@arm.com, linux-doc@vger.kernel.org,
rubini@gnudd.com,
Pantelis Antoniou <pantelis.antoniou@konsulko.com>,
hpa@zytor.com, s.trumtrar@pengutronix.de,
devel@driverdev.osuosl.org, sameo@linux.intel.com,
Nicolas Pitre <nico@linaro.org>,
iws@ovro.caltech.edu, Michal Simek <michal.simek@xilinx.com>,
kyle.teske@ni.com, Grant Likely <grant.likely@linaro.org>,
David Brown <davidb@codeaurora.org>,
Linus Walleij <linus.walleij@linaro.org>,
cesarb@cesarb.net, devicetree@vger.kernel.org,
jason@lakedaemon.net, pawel.moll@arm.com,
ijc+devicetree@hellion.org.uk,
Alan Tull <atull@opensource.altera.com>,
Kumar Gala <galak@codeaurora.org>,
broonie@kernel.org, Philip Balister <philip@balister.org>,
Petr Cvek <petr.cvek@tul.cz>,
akpm@linux-foundation.org, Michal Simek <monstr@monstr.eu>,
Greg KH <gregkh@linuxfoundation.org>,
yvanderv@opensource.altera.com, linux-kernel@vger.kerne
Subject: Re: [PATCH v9 6/7] staging: add simple-fpga-bus
Date: Thu, 23 Jul 2015 16:15:10 -0600 [thread overview]
Message-ID: <20150723221510.GA16971@obsidianresearch.com> (raw)
In-Reply-To: <CAAtXAHd_Dz2bWhZu4Bf5c-meQZTCFiUPX0i-gWZnLVc644wARw@mail.gmail.com>
On Thu, Jul 23, 2015 at 02:55:52PM -0700, Moritz Fischer wrote:
> Hi Alan,
>
> I saw that your socfpga driver doesn't support the partial reconfig
> use case (not a big deal).
> What I currently do for Zynq is if I'm doing a non-partial reconfig is
> that I disable input
> level shifters and assert *all* resets while reprogramming in my FPGA
> manager .write_init() and .write_complete().
I do this as well, but it is a bit more complex.. FPGA specific code
has to run around and ensure all DMA is shut off, then we need to make
sure no CPU issued AXI transactions can happen, then we can tear down
the FPGA side.
If the FPGA is torn down while an AXI op is inprogress things go
sideways, we have to work to prevent that :)
This happens almost for free, I use DT and the device model to
disconnect the drivers. The drivers are careful to synchronously fence
off in-progress DMA. Then drop the DT nodes associated with the
FPGA, finally the actual FPGA cells can be reset.
> In a partial reconfiguration situation, would I have separate
> simple-fpga buses for each of the parts that I swap out, each with
> it's own reset and bitfile attached?
I'd think of partial reconfiguration as another nested FPGA. The
resets and so forth could be attached to soft controllers in the
unswappable part of the FPGA.
DT nodes have to surround it in some way...
Jason
next prev parent reply other threads:[~2015-07-23 22:15 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-17 15:51 [PATCH v9 0/7] FPGA Manager Framework and Simple FPGA Bus atull
2015-07-17 15:51 ` [PATCH v9 1/7] staging: usage documentation for FPGA manager core atull
2015-07-23 6:38 ` Pavel Machek
2015-07-17 15:51 ` [PATCH v9 2/7] staging: usage documentation for simple fpga bus atull
2015-07-23 6:43 ` Pavel Machek
2015-07-17 15:51 ` [PATCH v9 3/7] staging: add bindings document " atull
2015-07-17 19:49 ` Steffen Trumtrar
2015-07-17 21:21 ` Jason Gunthorpe
2015-07-17 21:22 ` atull
2015-07-23 7:31 ` Steffen Trumtrar
2015-07-23 6:46 ` Pavel Machek
2015-07-17 15:51 ` [PATCH v9 4/7] staging: fpga manager: add sysfs interface document atull
2015-07-24 8:18 ` Pavel Machek
2015-07-24 12:39 ` atull
2015-07-24 12:43 ` Pavel Machek
2015-07-17 15:51 ` [PATCH v9 5/7] staging: fpga manager core atull
2015-07-17 17:27 ` Randy Dunlap
2015-07-17 18:25 ` atull
2015-07-22 21:47 ` Moritz Fischer
2015-07-23 16:28 ` atull
2015-07-17 15:51 ` [PATCH v9 6/7] staging: add simple-fpga-bus atull
2015-07-23 21:55 ` Moritz Fischer
2015-07-23 22:15 ` Jason Gunthorpe [this message]
2015-07-24 3:42 ` atull
2015-07-17 15:51 ` [PATCH v9 7/7] staging: fpga manager: add driver for socfpga fpga manager atull
2015-07-17 21:06 ` Moritz Fischer
2015-07-17 21:42 ` atull
2015-07-17 17:25 ` [PATCH v9 0/7] FPGA Manager Framework and Simple FPGA Bus Jason Gunthorpe
2015-07-17 18:09 ` atull
2015-07-22 20:32 ` atull
2015-07-22 21:11 ` Jason Gunthorpe
2015-07-22 21:39 ` atull
2015-07-23 4:12 ` Greg KH
2015-07-23 16:37 ` atull
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20150723221510.GA16971@obsidianresearch.com \
--to=jgunthorpe@obsidianresearch.com \
--cc=akpm@linux-foundation.org \
--cc=atull@opensource.altera.com \
--cc=broonie@kernel.org \
--cc=cesarb@cesarb.net \
--cc=davidb@codeaurora.org \
--cc=devel@driverdev.osuosl.org \
--cc=devicetree@vger.kernel.org \
--cc=galak@codeaurora.org \
--cc=grant.likely@linaro.org \
--cc=gregkh@linuxfoundation.org \
--cc=hpa@zytor.com \
--cc=ijc+devicetree@hellion.org.uk \
--cc=iws@ovro.caltech.edu \
--cc=jason@lakedaemon.net \
--cc=kyle.teske@ni.com \
--cc=linus.walleij@linaro.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kerne \
--cc=mark.rutland@arm.com \
--cc=michal.simek@xilinx.com \
--cc=monstr@monstr.eu \
--cc=moritz.fischer@ettus.com \
--cc=nico@linaro.org \
--cc=pantelis.antoniou@konsulko.com \
--cc=pawel.moll@arm.com \
--cc=petr.cvek@tul.cz \
--cc=philip@balister.org \
--cc=rubini@gnudd.com \
--cc=s.trumtrar@pengutronix.de \
--cc=sameo@linux.intel.com \
--cc=yvanderv@opensource.altera.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).