From: Xu Yilun <yilun.xu@intel.com> To: Conor Dooley <conor.dooley@microchip.com> Cc: linux-fpga@vger.kernel.org, conor@kernel.org, Daire McNamara <daire.mcnamara@microchip.com>, Rob Herring <robh+dt@kernel.org>, Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>, Moritz Fischer <mdf@kernel.org>, Wu Hao <hao.wu@intel.com>, Tom Rix <trix@redhat.com>, linux-riscv@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v2 0/7] PolarFire SoC Auto Update Support Date: Sun, 2 Apr 2023 16:00:34 +0800 [thread overview] Message-ID: <ZCk2IgDjHRUlyD+t@yilunxu-OptiPlex-7050> (raw) In-Reply-To: <20230331071823.956087-1-conor.dooley@microchip.com> On 2023-03-31 at 08:18:16 +0100, Conor Dooley wrote: > Hey all, > > This patchset adds support for the "Auto Update" feature on PolarFire > SoC that allows for writing an FPGA bistream to the SPI flash connected > to the system controller. > On powercycle (or reboot depending on how the firmware implements the > openSBI SRST extension) "Auto Update" will take place, and program the > FPGA with the contents of the SPI flash - provided that that image is > valid and an actual upgrade from that already programmed! > > Unfortunately, this series is not really testable yet - the Engineering > Sample silicon on most dev boards has a bug in the QSPI controller > connected to the system controller's flash and cannot access it. > Pre-production and later silicon has this bug fixed. > > I previously posted an RFC about my approach in this driver, since as a > flash-based FPGA we are somewhat different to the existing > self-reprogramming drivers here. That RFC is here: > https://lore.kernel.org/linux-fpga/20221121225748.124900-1-conor@kernel.org/ > > This series depends on the following fixes: > https://lore.kernel.org/all/d7c3ec51-8493-444a-bdec-2a30b0a15bdc@spud/ Is that series already merged? If yes, just remove this line. If no, either put all of them in one series, or still make this series as RFC until the dependency is resolved. Thanks, Yilun > > The patch adding the driver depends on the soc patches earlier in the > series, so taking both through the same tree makes sense. Depending on > sequencing with the dependencies, me taking it through the soc tree > (with Acks etc of course) may make the most sense. > > Cheers, > Conor. > > Changes in v2: > - per Russ' suggestion, the driver has been switched to using the > firmware-upload API rather than the fpga one > - as a result of that change, the structure of the driver has changed > significantly, although most of that is reshuffling existing code > around > - check if the upgrade is possible in probe and fail if it isn't > - only write the image index if it is not already set > - delete the now unneeded debugfs bits > > CC: Conor Dooley <conor.dooley@microchip.com> > CC: Daire McNamara <daire.mcnamara@microchip.com> > CC: Rob Herring <robh+dt@kernel.org> > CC: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> > CC: Moritz Fischer <mdf@kernel.org> > CC: Wu Hao <hao.wu@intel.com> > CC: Xu Yilun <yilun.xu@intel.com> > CC: Tom Rix <trix@redhat.com> > CC; Russ Weight <russell.h.weight@intel.com> > CC: linux-riscv@lists.infradead.org > CC: devicetree@vger.kernel.org > CC: linux-kernel@vger.kernel.org > CC: linux-fpga@vger.kernel.org > > Conor Dooley (7): > soc: microchip: mpfs: add a prefix to rx_callback() > dt-bindings: soc: microchip: add a property for system controller > flash > soc: microchip: mpfs: enable access to the system controller's flash > soc: microchip: mpfs: print service status in warning message > soc: microchip: mpfs: add auto-update subdev to system controller > fpga: add PolarFire SoC Auto Update support > riscv: dts: microchip: add the mpfs' system controller qspi & > associated flash > > .../microchip,mpfs-sys-controller.yaml | 10 + > .../boot/dts/microchip/mpfs-icicle-kit.dts | 21 + > arch/riscv/boot/dts/microchip/mpfs.dtsi | 24 +- > drivers/fpga/Kconfig | 11 + > drivers/fpga/Makefile | 3 +- > drivers/fpga/microchip-auto-update.c | 494 ++++++++++++++++++ > drivers/soc/microchip/Kconfig | 1 + > drivers/soc/microchip/mpfs-sys-controller.c | 37 +- > include/soc/microchip/mpfs.h | 2 + > 9 files changed, 591 insertions(+), 12 deletions(-) > create mode 100644 drivers/fpga/microchip-auto-update.c > > -- > 2.39.2 >
WARNING: multiple messages have this Message-ID (diff)
From: Xu Yilun <yilun.xu@intel.com> To: Conor Dooley <conor.dooley@microchip.com> Cc: linux-fpga@vger.kernel.org, conor@kernel.org, Daire McNamara <daire.mcnamara@microchip.com>, Rob Herring <robh+dt@kernel.org>, Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>, Moritz Fischer <mdf@kernel.org>, Wu Hao <hao.wu@intel.com>, Tom Rix <trix@redhat.com>, linux-riscv@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v2 0/7] PolarFire SoC Auto Update Support Date: Sun, 2 Apr 2023 16:00:34 +0800 [thread overview] Message-ID: <ZCk2IgDjHRUlyD+t@yilunxu-OptiPlex-7050> (raw) In-Reply-To: <20230331071823.956087-1-conor.dooley@microchip.com> On 2023-03-31 at 08:18:16 +0100, Conor Dooley wrote: > Hey all, > > This patchset adds support for the "Auto Update" feature on PolarFire > SoC that allows for writing an FPGA bistream to the SPI flash connected > to the system controller. > On powercycle (or reboot depending on how the firmware implements the > openSBI SRST extension) "Auto Update" will take place, and program the > FPGA with the contents of the SPI flash - provided that that image is > valid and an actual upgrade from that already programmed! > > Unfortunately, this series is not really testable yet - the Engineering > Sample silicon on most dev boards has a bug in the QSPI controller > connected to the system controller's flash and cannot access it. > Pre-production and later silicon has this bug fixed. > > I previously posted an RFC about my approach in this driver, since as a > flash-based FPGA we are somewhat different to the existing > self-reprogramming drivers here. That RFC is here: > https://lore.kernel.org/linux-fpga/20221121225748.124900-1-conor@kernel.org/ > > This series depends on the following fixes: > https://lore.kernel.org/all/d7c3ec51-8493-444a-bdec-2a30b0a15bdc@spud/ Is that series already merged? If yes, just remove this line. If no, either put all of them in one series, or still make this series as RFC until the dependency is resolved. Thanks, Yilun > > The patch adding the driver depends on the soc patches earlier in the > series, so taking both through the same tree makes sense. Depending on > sequencing with the dependencies, me taking it through the soc tree > (with Acks etc of course) may make the most sense. > > Cheers, > Conor. > > Changes in v2: > - per Russ' suggestion, the driver has been switched to using the > firmware-upload API rather than the fpga one > - as a result of that change, the structure of the driver has changed > significantly, although most of that is reshuffling existing code > around > - check if the upgrade is possible in probe and fail if it isn't > - only write the image index if it is not already set > - delete the now unneeded debugfs bits > > CC: Conor Dooley <conor.dooley@microchip.com> > CC: Daire McNamara <daire.mcnamara@microchip.com> > CC: Rob Herring <robh+dt@kernel.org> > CC: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> > CC: Moritz Fischer <mdf@kernel.org> > CC: Wu Hao <hao.wu@intel.com> > CC: Xu Yilun <yilun.xu@intel.com> > CC: Tom Rix <trix@redhat.com> > CC; Russ Weight <russell.h.weight@intel.com> > CC: linux-riscv@lists.infradead.org > CC: devicetree@vger.kernel.org > CC: linux-kernel@vger.kernel.org > CC: linux-fpga@vger.kernel.org > > Conor Dooley (7): > soc: microchip: mpfs: add a prefix to rx_callback() > dt-bindings: soc: microchip: add a property for system controller > flash > soc: microchip: mpfs: enable access to the system controller's flash > soc: microchip: mpfs: print service status in warning message > soc: microchip: mpfs: add auto-update subdev to system controller > fpga: add PolarFire SoC Auto Update support > riscv: dts: microchip: add the mpfs' system controller qspi & > associated flash > > .../microchip,mpfs-sys-controller.yaml | 10 + > .../boot/dts/microchip/mpfs-icicle-kit.dts | 21 + > arch/riscv/boot/dts/microchip/mpfs.dtsi | 24 +- > drivers/fpga/Kconfig | 11 + > drivers/fpga/Makefile | 3 +- > drivers/fpga/microchip-auto-update.c | 494 ++++++++++++++++++ > drivers/soc/microchip/Kconfig | 1 + > drivers/soc/microchip/mpfs-sys-controller.c | 37 +- > include/soc/microchip/mpfs.h | 2 + > 9 files changed, 591 insertions(+), 12 deletions(-) > create mode 100644 drivers/fpga/microchip-auto-update.c > > -- > 2.39.2 > _______________________________________________ linux-riscv mailing list linux-riscv@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-riscv
next prev parent reply other threads:[~2023-04-02 8:14 UTC|newest] Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top 2023-03-31 7:18 [PATCH v2 0/7] PolarFire SoC Auto Update Support Conor Dooley 2023-03-31 7:18 ` Conor Dooley 2023-03-31 7:18 ` [PATCH v2 1/7] soc: microchip: mpfs: add a prefix to rx_callback() Conor Dooley 2023-03-31 7:18 ` Conor Dooley 2023-03-31 7:18 ` [PATCH v2 2/7] dt-bindings: soc: microchip: add a property for system controller flash Conor Dooley 2023-03-31 7:18 ` Conor Dooley 2023-03-31 7:18 ` [PATCH v2 3/7] soc: microchip: mpfs: enable access to the system controller's flash Conor Dooley 2023-03-31 7:18 ` Conor Dooley 2023-03-31 7:18 ` [PATCH v2 4/7] soc: microchip: mpfs: print service status in warning message Conor Dooley 2023-03-31 7:18 ` Conor Dooley 2023-03-31 7:18 ` [PATCH v2 5/7] soc: microchip: mpfs: add auto-update subdev to system controller Conor Dooley 2023-03-31 7:18 ` Conor Dooley 2023-03-31 7:18 ` [PATCH v2 6/7] fpga: add PolarFire SoC Auto Update support Conor Dooley 2023-03-31 7:18 ` Conor Dooley 2023-04-02 10:57 ` Xu Yilun 2023-04-02 10:57 ` Xu Yilun 2023-04-11 11:51 ` Conor Dooley 2023-04-11 11:51 ` Conor Dooley 2023-04-14 12:40 ` Xu Yilun 2023-04-14 12:40 ` Xu Yilun 2023-03-31 7:18 ` [PATCH v2 7/7] riscv: dts: microchip: add the mpfs' system controller qspi & associated flash Conor Dooley 2023-03-31 7:18 ` Conor Dooley 2023-04-02 8:00 ` Xu Yilun [this message] 2023-04-02 8:00 ` [PATCH v2 0/7] PolarFire SoC Auto Update Support Xu Yilun 2023-04-02 8:23 ` Conor Dooley 2023-04-02 8:23 ` Conor Dooley 2023-04-03 19:34 ` (subset) " Conor Dooley 2023-04-03 19:34 ` Conor Dooley
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=ZCk2IgDjHRUlyD+t@yilunxu-OptiPlex-7050 \ --to=yilun.xu@intel.com \ --cc=conor.dooley@microchip.com \ --cc=conor@kernel.org \ --cc=daire.mcnamara@microchip.com \ --cc=devicetree@vger.kernel.org \ --cc=hao.wu@intel.com \ --cc=krzysztof.kozlowski+dt@linaro.org \ --cc=linux-fpga@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-riscv@lists.infradead.org \ --cc=mdf@kernel.org \ --cc=robh+dt@kernel.org \ --cc=trix@redhat.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.