From: Pantelis Antoniou <pantelis.antoniou@konsulko.com> To: Jason Gunthorpe <jgunthorpe@obsidianresearch.com> Cc: One Thousand Gnomes <gnomes@lxorguk.ukuu.org.uk>, atull <atull@opensource.altera.com>, Greg Kroah-Hartman <gregkh@linuxfoundation.org>, Pavel Machek <pavel@denx.de>, hpa@zytor.com, Michal Simek <monstr@monstr.eu>, Michal Simek <michal.simek@xilinx.com>, Randy Dunlap <rdunlap@infradead.org>, Linux Kernel Mailing List <linux-kernel@vger.kernel.org>, devicetree@vger.kernel.org, robh+dt@kernel.org, Grant Likely <grant.likely@linaro.org>, iws@ovro.caltech.edu, linux-doc@vger.kernel.org, Mark Brown <broonie@kernel.org>, philip@balister.org, rubini@gnudd.com, Steffen Trumtrar <s.trumtrar@pengutronix.de>, jason@lakedaemon.net, kyle.teske@ni.com, nico@linaro.org, Felipe Balbi <balbi@ti.com>, m.chehab@samsung.com, davidb@codeaurora.org, Rob Landley <rob@landley.net>, davem@davemloft.net, cesarb@cesarb.net, sameo@linux.intel.com, Andrew Morton <akpm@linux-foundation.org>, Linus Walleij <linus.walleij@linaro.org>, pawel.moll@arm.com, mark.rutland@arm.com, ijc+devicetree@hellion.org.uk, galak@codeaurora.org, devel@driverdev.osuosl.org, Alan Tull <delicious.quinoa@gmail.com>, dinguyen@opensource.altera.com, yvanderv@opensource.altera.com Subject: Re: [PATCH v8 2/4] fpga manager: add sysfs interface document Date: Wed, 21 Jan 2015 22:32:23 +0200 [thread overview] Message-ID: <7E60D554-8660-4CDB-BF68-D39DD29039BE@konsulko.com> (raw) In-Reply-To: <20150121202700.GB4942@obsidianresearch.com> Hi Jason, > On Jan 21, 2015, at 22:27 , Jason Gunthorpe <jgunthorpe@obsidianresearch.com> wrote: > > On Wed, Jan 21, 2015 at 06:33:12PM +0200, Pantelis Antoniou wrote: >> Hi Alan, >> >>> On Jan 21, 2015, at 18:01 , One Thousand Gnomes <gnomes@lxorguk.ukuu.org.uk> wrote: >>> >>> On Thu, 15 Jan 2015 22:54:46 +0200 >>> Pantelis Antoniou <pantelis.antoniou@konsulko.com> wrote: >>> >>>> Hi Alan, >>>> >>>>> On Jan 15, 2015, at 22:45 , One Thousand Gnomes <gnomes@lxorguk.ukuu.org.uk> wrote: >>>>> >>>>> On Thu, 15 Jan 2015 11:47:26 -0700 >>>>> Jason Gunthorpe <jgunthorpe@obsidianresearch.com> wrote: >>>>>> It is a novel idea, my concern would be that embedding the FPGA in the >>>>>> DT makes it permanent unswappable kernel memory. >>>>>> Not having the kernel hold the FPGA is best for many uses. >>>>> >>>>> If you have a filesysytem before the FPGA is set up then it belongs in >>>>> the file system. As you presumably loaded the kernel from somewhere there >>>>> ought to be a file system (even an initrd). >>>>> >>>> >>>> Request firmware does not imply keeping it around. You can always re-request >>>> when reloading (although there’s a nasty big of caching that needs to be >>>> resolved with the firmware loader). >>> >>> Which comes down to the same thing. Unless you can prove that there is a >>> path to recover the firmware file that does not have any dependancies >>> upon the firmware executing (and those can be subtle and horrid at times) >>> you need to keep it around for suspend/resume at least and potentially >>> any unexpected error/reset. >>> >> >> In that case the only safe place to put it is in the kernel image itself, which >> is something the firmware loader already supports. > > My point is that the current firmware layer is overly cautious and > FPGAs are very big. My current project on small Xilinx device has a > 10MB programming file. The biggest Xilinx device today has a max > bitfile size around 122MB. > > So keeping that much memory pinned in the kernel when I can prove it > is uncessary for my system (either because there is no suspend/resume > possibility, or because I know the CPU can always access the > filesytem) is very undesirable. > > Other systems might have to take the ram hit. > > Since it seems like the kernel has no way to know, we probably have > have a way to tell it not to cache the bitfile. > The firmware loader was not originally meant to handle these cases, but I’m sure it’s not an insurmountable obstacle. > Jason Regards — Pantelis
WARNING: multiple messages have this Message-ID (diff)
From: Pantelis Antoniou <pantelis.antoniou@konsulko.com> To: Jason Gunthorpe <jgunthorpe@obsidianresearch.com> Cc: One Thousand Gnomes <gnomes@lxorguk.ukuu.org.uk>, atull <atull@opensource.altera.com>, Greg Kroah-Hartman <gregkh@linuxfoundation.org>, Pavel Machek <pavel@denx.de>, hpa@zytor.com, Michal Simek <monstr@monstr.eu>, Michal Simek <michal.simek@xilinx.com>, Randy Dunlap <rdunlap@infradead.org>, Linux Kernel Mailing List <linux-kernel@vger.kernel.org>, devicetree@vger.kernel.org, robh+dt@kernel.org, Grant Likely <grant.likely@linaro.org>, iws@ovro.caltech.edu, linux-doc@vger.kernel.org, Mark Brown <broonie@kernel.org>, philip@balister.org, rubini@gnudd.com, Steffen Trumtrar <s.trumtrar@pengutronix.de>, jason@lakedaemon.net, kyle.teske@ni.com, nico@linaro.org, Felipe Balbi <balbi@ti.com>, m.chehab@samsung.com, davidb@codeaurora.org, Rob Landley <rob@landley.net>, davem@davemloft.net, cesarb@cesarb.net, sameo@linux.intel.com, Andrew Morton <akpm@linux-foundation.org>Linu Subject: Re: [PATCH v8 2/4] fpga manager: add sysfs interface document Date: Wed, 21 Jan 2015 22:32:23 +0200 [thread overview] Message-ID: <7E60D554-8660-4CDB-BF68-D39DD29039BE@konsulko.com> (raw) In-Reply-To: <20150121202700.GB4942@obsidianresearch.com> Hi Jason, > On Jan 21, 2015, at 22:27 , Jason Gunthorpe <jgunthorpe@obsidianresearch.com> wrote: > > On Wed, Jan 21, 2015 at 06:33:12PM +0200, Pantelis Antoniou wrote: >> Hi Alan, >> >>> On Jan 21, 2015, at 18:01 , One Thousand Gnomes <gnomes@lxorguk.ukuu.org.uk> wrote: >>> >>> On Thu, 15 Jan 2015 22:54:46 +0200 >>> Pantelis Antoniou <pantelis.antoniou@konsulko.com> wrote: >>> >>>> Hi Alan, >>>> >>>>> On Jan 15, 2015, at 22:45 , One Thousand Gnomes <gnomes@lxorguk.ukuu.org.uk> wrote: >>>>> >>>>> On Thu, 15 Jan 2015 11:47:26 -0700 >>>>> Jason Gunthorpe <jgunthorpe@obsidianresearch.com> wrote: >>>>>> It is a novel idea, my concern would be that embedding the FPGA in the >>>>>> DT makes it permanent unswappable kernel memory. >>>>>> Not having the kernel hold the FPGA is best for many uses. >>>>> >>>>> If you have a filesysytem before the FPGA is set up then it belongs in >>>>> the file system. As you presumably loaded the kernel from somewhere there >>>>> ought to be a file system (even an initrd). >>>>> >>>> >>>> Request firmware does not imply keeping it around. You can always re-request >>>> when reloading (although there’s a nasty big of caching that needs to be >>>> resolved with the firmware loader). >>> >>> Which comes down to the same thing. Unless you can prove that there is a >>> path to recover the firmware file that does not have any dependancies >>> upon the firmware executing (and those can be subtle and horrid at times) >>> you need to keep it around for suspend/resume at least and potentially >>> any unexpected error/reset. >>> >> >> In that case the only safe place to put it is in the kernel image itself, which >> is something the firmware loader already supports. > > My point is that the current firmware layer is overly cautious and > FPGAs are very big. My current project on small Xilinx device has a > 10MB programming file. The biggest Xilinx device today has a max > bitfile size around 122MB. > > So keeping that much memory pinned in the kernel when I can prove it > is uncessary for my system (either because there is no suspend/resume > possibility, or because I know the CPU can always access the > filesytem) is very undesirable. > > Other systems might have to take the ram hit. > > Since it seems like the kernel has no way to know, we probably have > have a way to tell it not to cache the bitfile. > The firmware loader was not originally meant to handle these cases, but I’m sure it’s not an insurmountable obstacle. > Jason Regards — Pantelis
next prev parent reply other threads:[~2015-01-21 20:32 UTC|newest] Thread overview: 128+ messages / expand[flat|nested] mbox.gz Atom feed top 2015-01-06 20:13 [PATCH v8 0/4] FPGA Manager Framework atull 2015-01-06 20:13 ` atull 2015-01-06 20:13 ` [PATCH v8 1/4] doc: add bindings document for altera fpga manager atull 2015-01-06 20:13 ` atull 2015-01-06 22:05 ` Rob Herring 2015-01-06 22:05 ` Rob Herring 2015-01-06 22:34 ` atull 2015-01-06 22:34 ` atull 2015-01-09 15:50 ` Rob Herring 2015-01-09 15:50 ` Rob Herring 2015-01-09 18:58 ` atull 2015-01-09 18:58 ` atull 2015-01-06 20:13 ` [PATCH v8 2/4] fpga manager: add sysfs interface document atull 2015-01-06 20:13 ` atull 2015-01-07 8:48 ` Pavel Machek 2015-01-07 8:48 ` Pavel Machek 2015-01-09 19:14 ` atull 2015-01-09 19:14 ` atull 2015-01-09 20:56 ` Pavel Machek 2015-01-09 20:56 ` Pavel Machek 2015-01-10 8:10 ` Pantelis Antoniou 2015-01-10 8:10 ` Pantelis Antoniou 2015-01-10 15:11 ` Pavel Machek 2015-01-10 15:11 ` Pavel Machek 2015-01-11 16:29 ` atull 2015-01-11 16:29 ` atull 2015-01-12 8:45 ` Pavel Machek 2015-01-12 8:45 ` Pavel Machek 2015-01-12 13:48 ` Michal Simek 2015-01-12 13:48 ` Michal Simek 2015-01-13 7:28 ` Pavel Machek 2015-01-13 7:28 ` Pavel Machek 2015-01-13 7:40 ` Pantelis Antoniou 2015-01-13 7:40 ` Pantelis Antoniou 2015-01-13 7:56 ` Pavel Machek 2015-01-13 7:56 ` Pavel Machek 2015-01-13 17:27 ` atull 2015-01-13 17:27 ` atull 2015-01-12 16:05 ` Rob Herring 2015-01-12 16:05 ` Rob Herring 2015-01-12 16:26 ` Mark Brown 2015-01-12 16:26 ` Mark Brown 2015-01-12 18:06 ` Jason Gunthorpe 2015-01-12 18:06 ` Jason Gunthorpe 2015-01-13 16:21 ` One Thousand Gnomes 2015-01-13 16:21 ` One Thousand Gnomes 2015-01-15 21:52 ` Pavel Machek 2015-01-15 21:52 ` Pavel Machek 2015-01-12 21:01 ` One Thousand Gnomes 2015-01-12 21:01 ` One Thousand Gnomes 2015-01-12 21:43 ` Jason Gunthorpe 2015-01-12 21:43 ` Jason Gunthorpe 2015-01-13 16:28 ` One Thousand Gnomes 2015-01-13 16:28 ` One Thousand Gnomes 2015-01-13 17:26 ` Pantelis Antoniou 2015-01-13 17:26 ` Pantelis Antoniou 2015-01-13 19:44 ` atull 2015-01-13 19:44 ` atull 2015-01-14 15:58 ` One Thousand Gnomes 2015-01-14 15:58 ` One Thousand Gnomes 2015-01-13 20:00 ` Jason Gunthorpe 2015-01-13 20:00 ` Jason Gunthorpe 2015-01-13 21:37 ` atull 2015-01-13 21:37 ` atull 2015-01-13 22:24 ` Jason Gunthorpe 2015-01-13 22:24 ` Jason Gunthorpe 2015-01-14 16:06 ` One Thousand Gnomes 2015-01-14 16:06 ` One Thousand Gnomes 2015-01-14 18:12 ` Jason Gunthorpe 2015-01-14 18:12 ` Jason Gunthorpe 2015-01-14 19:01 ` Pantelis Antoniou 2015-01-14 19:01 ` Pantelis Antoniou 2015-01-15 11:36 ` One Thousand Gnomes 2015-01-15 11:36 ` One Thousand Gnomes 2015-01-15 11:44 ` Mark Brown 2015-01-15 11:44 ` Mark Brown 2015-01-15 16:34 ` atull 2015-01-15 16:34 ` atull 2015-01-15 18:47 ` Jason Gunthorpe 2015-01-15 18:47 ` Jason Gunthorpe 2015-01-15 20:45 ` One Thousand Gnomes 2015-01-15 20:45 ` One Thousand Gnomes 2015-01-15 20:54 ` Pantelis Antoniou 2015-01-15 20:54 ` Pantelis Antoniou 2015-01-21 16:01 ` One Thousand Gnomes 2015-01-21 16:01 ` One Thousand Gnomes 2015-01-21 16:33 ` Pantelis Antoniou 2015-01-21 16:33 ` Pantelis Antoniou 2015-01-21 20:27 ` Jason Gunthorpe 2015-01-21 20:27 ` Jason Gunthorpe 2015-01-21 20:32 ` Pantelis Antoniou [this message] 2015-01-21 20:32 ` Pantelis Antoniou 2015-02-15 22:40 ` Pavel Machek 2015-02-15 22:40 ` Pavel Machek 2015-02-17 17:07 ` Rob Landley 2015-02-17 17:07 ` Rob Landley 2015-02-17 19:17 ` Pavel Machek 2015-02-17 19:17 ` Pavel Machek 2015-02-19 12:46 ` Michal Simek 2015-02-19 12:46 ` Michal Simek 2015-02-21 6:31 ` atull 2015-02-21 6:31 ` atull 2015-02-17 18:12 ` Jason Gunthorpe 2015-02-17 18:12 ` Jason Gunthorpe 2015-01-15 21:42 ` Jason Gunthorpe 2015-01-15 21:42 ` Jason Gunthorpe 2015-01-17 21:11 ` Pavel Machek 2015-01-17 21:11 ` Pavel Machek 2015-01-06 20:13 ` [PATCH v8 3/4] staging: fpga manager: framework core atull 2015-01-06 20:13 ` atull 2015-01-06 20:13 ` [PATCH v8 4/4] staging: fpga manager: add driver for socfpga fpga manager atull 2015-01-06 20:13 ` atull 2015-01-10 18:11 ` [PATCH v8 0/4] FPGA Manager Framework Konrad Zapalowicz 2015-01-10 18:11 ` Konrad Zapalowicz 2015-01-11 16:08 ` atull 2015-01-11 16:08 ` atull 2015-01-11 16:24 ` Konrad Zapalowicz 2015-01-11 16:24 ` Konrad Zapalowicz 2015-01-11 19:52 ` Pavel Machek 2015-01-11 19:52 ` Pavel Machek 2015-01-11 20:58 ` Konrad Zapalowicz 2015-01-11 20:58 ` Konrad Zapalowicz 2015-01-11 21:31 ` Pavel Machek 2015-01-11 21:31 ` Pavel Machek 2015-01-12 13:50 ` Michal Simek 2015-01-12 13:50 ` Michal Simek 2015-01-12 14:06 ` Dan Carpenter 2015-01-12 14:06 ` Dan Carpenter
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=7E60D554-8660-4CDB-BF68-D39DD29039BE@konsulko.com \ --to=pantelis.antoniou@konsulko.com \ --cc=akpm@linux-foundation.org \ --cc=atull@opensource.altera.com \ --cc=balbi@ti.com \ --cc=broonie@kernel.org \ --cc=cesarb@cesarb.net \ --cc=davem@davemloft.net \ --cc=davidb@codeaurora.org \ --cc=delicious.quinoa@gmail.com \ --cc=devel@driverdev.osuosl.org \ --cc=devicetree@vger.kernel.org \ --cc=dinguyen@opensource.altera.com \ --cc=galak@codeaurora.org \ --cc=gnomes@lxorguk.ukuu.org.uk \ --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=jgunthorpe@obsidianresearch.com \ --cc=kyle.teske@ni.com \ --cc=linus.walleij@linaro.org \ --cc=linux-doc@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=m.chehab@samsung.com \ --cc=mark.rutland@arm.com \ --cc=michal.simek@xilinx.com \ --cc=monstr@monstr.eu \ --cc=nico@linaro.org \ --cc=pavel@denx.de \ --cc=pawel.moll@arm.com \ --cc=philip@balister.org \ --cc=rdunlap@infradead.org \ --cc=rob@landley.net \ --cc=robh+dt@kernel.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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.