public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Chee, Tien Fong <tien.fong.chee@intel.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 1/6] ARM: socfpga: Description on FPGA bitstream type and file name for Arria 10
Date: Fri, 4 Jan 2019 00:46:16 +0000	[thread overview]
Message-ID: <1546562775.10624.4.camel@intel.com> (raw)
In-Reply-To: <c96485fb-e273-fee7-7798-20d4c9d15713@denx.de>

On Thu, 2019-01-03 at 21:14 +0100, Marek Vasut wrote:
> On 1/3/19 8:28 AM, Chee, Tien Fong wrote:
> > 
> > On Thu, 2019-01-03 at 06:27 +0100, Marek Vasut wrote:
> > > 
> > > On 1/3/19 6:07 AM, Chee, Tien Fong wrote:
> > > > 
> > > > 
> > > > On Tue, 2019-01-01 at 21:27 +0100, Marek Vasut wrote:
> > > > > 
> > > > > 
> > > > > On 1/1/19 4:10 AM, Chee, Tien Fong wrote:
> > > > > > 
> > > > > > 
> > > > > > 
> > > > > > On Sun, 2018-12-30 at 16:46 +0100, Marek Vasut wrote:
> > > > > > > 
> > > > > > > 
> > > > > > > 
> > > > > > > On 12/30/18 9:13 AM, tien.fong.chee at intel.com wrote:
> > > > > > > > 
> > > > > > > > 
> > > > > > > > 
> > > > > > > > 
> > > > > > > > From: Tien Fong Chee <tien.fong.chee@intel.com>
> > > > > > > > 
> > > > > > > > This patch adds description on properties about file
> > > > > > > > name
> > > > > > > > used
> > > > > > > > for
> > > > > > > > both
> > > > > > > > peripheral bitstream and core bitstream.
> > > > > > > > 
> > > > > > > > Signed-off-by: Tien Fong Chee <tien.fong.chee@intel.com
> > > > > > > > >
> > > > > > > > ---
> > > > > > > >  .../fpga/altera-socfpga-a10-fpga-
> > > > > > > > mgr.txt           |   21
> > > > > > > > ++++++++++++++++++++
> > > > > > > >  1 files changed, 21 insertions(+), 0 deletions(-)
> > > > > > > > 
> > > > > > > > diff --git a/doc/device-tree-bindings/fpga/altera-
> > > > > > > > socfpga-
> > > > > > > > a10-
> > > > > > > > fpga-
> > > > > > > > mgr.txt b/doc/device-tree-bindings/fpga/altera-socfpga-
> > > > > > > > a10-
> > > > > > > > fpga-
> > > > > > > > mgr.txt
> > > > > > > > index 2fd8e7a..4552edc 100644
> > > > > > > > --- a/doc/device-tree-bindings/fpga/altera-socfpga-a10-
> > > > > > > > fpga-
> > > > > > > > mgr.txt
> > > > > > > > +++ b/doc/device-tree-bindings/fpga/altera-socfpga-a10-
> > > > > > > > fpga-
> > > > > > > > mgr.txt
> > > > > > > > @@ -7,13 +7,34 @@ Required properties:
> > > > > > > >                 - The second index is for writing FPGA
> > > > > > > > configuration data.
> > > > > > > >  - resets     : Phandle and reset specifier for the
> > > > > > > > device's
> > > > > > > > reset.
> > > > > > > >  - clocks     : Clocks used by the device.
> > > > > > > > +- altr,bitstream : File name for FPGA peripheral raw
> > > > > > > > binary
> > > > > > > > which
> > > > > > > > is used
> > > > > > > > +		   to initialize FPGA IOs, PLL, IO48
> > > > > > > > and
> > > > > > > > DDR.
> > > > > > > > +		   or
> > > > > > > > +		   File name for full RBF, consist of
> > > > > > > > periph
> > > > > > > > RBF
> > > > > > > > and core RBF
> > > > > > > > +- altr,bitstream-core : File name for core RBF which
> > > > > > > > contains
> > > > > > > > FPGA
> > > > > > > > design
> > > > > > > > +			which is used to program FPGA
> > > > > > > > CRAM
> > > > > > > > and
> > > > > > > > ERAM.
> > > > > > > >  
> > > > > > > >  Example:
> > > > > > > >  
> > > > > > > > +- Examples for booting with early IO release, enter
> > > > > > > > early
> > > > > > > > user
> > > > > > > > mode(periph RBF):
> > > > > > > > +
> > > > > > > > +	fpga_mgr: fpga-mgr at ffd03000 {
> > > > > > > > +		compatible = "altr,socfpga-a10-fpga-
> > > > > > > > mgr";
> > > > > > > > +		reg = <0xffd03000 0x100
> > > > > > > > +		       0xffcfe400 0x20>;
> > > > > > > > +		clocks = <&l4_mp_clk>;
> > > > > > > > +		resets = <&rst FPGAMGR_RESET>;
> > > > > > > > +		altr,bitstream =
> > > > > > > > "ghrd_10as066n2.periph.rbf.mkimage";
> > > > > > > > +		altr,bitstream-core =
> > > > > > > > "ghrd_10as066n2.core.rbf.mkimage";
> > > > > > > What is this .mkimage format about ? Is that uImage ?
> > > > > > > Since
> > > > > > > it's
> > > > > > > two
> > > > > > > files, it could probably be bundled into fitImage instead
> > > > > > > ?
> > > > > > > 
> > > > > > What is this .mkimage format about ? Is that uImage ?
> > > > > > mkimage -A arm -T firmware -C none -O u-boot -a 0 -e 0 -n
> > > > > > \"RBF\"
> > > > > > -d
> > > > > >  ghrd_10as066n2.periph.rbf
> > > > > > ghrd_10as066n2.periph.rbf.mkimage.
> > > > > > Yeah, this is uImage. The reason of using it for appending
> > > > > > the
> > > > > > header
> > > > > > contains file size and CRC checksum to the
> > > > > > ghrd_10as066n2.periph.rbf.
> > > > > > These both file size and CRC checksum are required in
> > > > > > socfpga
> > > > > > loadfs
> > > > > > driver.
> > > > > CRC32 is real weak. fitImage supports all kinds of more
> > > > > fitting
> > > > > checksum
> > > > > algorithms and more.
> > > > Okay.
> > > > > 
> > > > > 
> > > > > 
> > > > > > 
> > > > > > 
> > > > > > 
> > > > > > Since it's two> files, it could probably be bundled into
> > > > > > fitImage
> > > > > > instead ?
> > > > > > I assume you are saying the series fitImage implementation
> > > > > > patches
> > > > > > as i
> > > > > > had previously submitted which contains U-Boot, and FPGA
> > > > > > core
> > > > > > bitstream
> > > > > > in fitImage.
> > > > > No, just bundle the bitstream in a fitImage if it's multiple
> > > > > files
> > > > > and
> > > > > if it makes sense.
> > > > I need to explore 1st what's already supported in mainstream
> > > > for
> > > > loading bitstream in a fitImage. That's would be good if you
> > > > have
> > > > ideas
> > > > and details of implementation to share out.
> > > > > 
> > > > > 
> > > > > 
> > > > > > 
> > > > > > 
> > > > > > 
> > > > > > core bitstream can be bundled into fitImage, with the file
> > > > > > name as ghrd_10as066n2.core.rbf, without mkimage, so this
> > > > > > bitstream
> > > > > > would be loadded into DDR with function fpga load instead
> > > > > > of
> > > > > > fpga
> > > > > > loadfs. ghrd_10as066n2.periph.rbf.mkimage is separate file
> > > > > > required
> > > > > > for
> > > > > > getting DDR up 1st before loading fitImage.
> > > > > Does that mean you only need to load one of the files (you
> > > > > can do
> > > > > that
> > > > > with fitImage too) ? But then, what's the point of specifying
> > > > > both in
> > > > > the DT if only one is needed ?
> > > > Here is the description of the flow based on the previous
> > > > submitted
> > > > series patches for setting up the DDR with
> > > > periph.rbf.mkimage(standalone file), then followed by the
> > > > core.rbf
> > > > in
> > > > fitImage loading into DDR for programming user design into
> > > > FPGA.
> > > > The
> > > > implementation of loading core.rbf in fitImage into DDR is
> > > > already
> > > > supported in the common code, and programming into FPGA through
> > > > a
> > > > function called fpga load(which requires DDR get up running
> > > > 1st).
> > > So the core.rbf is optional ? I think you can try looking at
> > > mkimage
> > > -E
> > > , which would allow you to do partial image loading in SPL.
> > 1. Is it mkimage -e, which -e==> set entry point to 'ep' (hex)?
> No, it is -E => place data outside of the FIT structure
Yes, i found it in mkimage.c
> 
> > 
> > 2. What you means with partial loading? partial loading for
> > periph.rbf
> > or core.rbf or both rbfs?
> That you can only load the relevant image from the fitImage, not the
> entire fitImage, which lets you load the core bitstream in SPL.
So, you want 2 files periph.rbf.mkimage, and fitImage(contains
core.rbf) or both periph.rbf and core.rbf in one fitImage?
> 
> > 
> > 3. Is this partial loading come from common code or already
> > supported?
> Loading subsets of fitImage is supported in SPL, see mkimage -E
> above.
Okay, i will explore.
> 

  reply	other threads:[~2019-01-04  0:46 UTC|newest]

Thread overview: 47+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-12-30  8:13 [U-Boot] [PATCH 0/6] Add support for loading FPGA bitstream tien.fong.chee at intel.com
2018-12-30  8:13 ` [U-Boot] [PATCH 1/6] ARM: socfpga: Description on FPGA bitstream type and file name for Arria 10 tien.fong.chee at intel.com
2018-12-30 15:46   ` Marek Vasut
2019-01-01  3:10     ` Chee, Tien Fong
2019-01-01 20:27       ` Marek Vasut
2019-01-03  5:07         ` Chee, Tien Fong
2019-01-03  5:27           ` Marek Vasut
2019-01-03  5:41             ` Chee, Tien Fong
2019-01-03  7:28             ` Chee, Tien Fong
2019-01-03 20:14               ` Marek Vasut
2019-01-04  0:46                 ` Chee, Tien Fong [this message]
2019-01-04  2:10                   ` Marek Vasut
2019-01-04  2:22                     ` Chee, Tien Fong
2019-01-04  2:24                       ` Marek Vasut
2019-01-04  3:10                         ` Chee, Tien Fong
2018-12-30  8:13 ` [U-Boot] [PATCH 2/6] ARM: socfpga: Add FPGA drivers for Arria 10 FPGA bitstream loading tien.fong.chee at intel.com
2018-12-30 15:45   ` Marek Vasut
2019-01-01  3:28     ` Chee, Tien Fong
2019-01-01 20:27       ` Marek Vasut
2019-01-03  4:51         ` Chee, Tien Fong
2018-12-30  8:13 ` [U-Boot] [PATCH 3/6] ARM: socfpga: Add the configuration for FPGA SoCFPGA A10 SoCDK tien.fong.chee at intel.com
2018-12-30 15:47   ` Marek Vasut
2019-01-01  3:32     ` Chee, Tien Fong
2019-01-01 20:29       ` Marek Vasut
2019-01-03  5:36         ` Chee, Tien Fong
2019-01-03 20:15           ` Marek Vasut
2019-01-04  0:40             ` Chee, Tien Fong
2019-01-15  8:16             ` Chee, Tien Fong
2019-01-15 11:34               ` Marek Vasut
2018-12-30  8:13 ` [U-Boot] [PATCH 4/6] ARM: dts: socfpga: Add missing SDMMC reset tien.fong.chee at intel.com
2018-12-30 15:48   ` Marek Vasut
2018-12-30  8:13 ` [U-Boot] [PATCH 5/6] spl : socfpga: Implement fpga bitstream loading with socfpga loadfs tien.fong.chee at intel.com
2018-12-30 15:51   ` Marek Vasut
2019-01-01  3:39     ` Chee, Tien Fong
2019-01-01 20:31       ` Marek Vasut
2019-01-03  5:32         ` Chee, Tien Fong
2018-12-30  8:13 ` [U-Boot] [PATCH 6/6] ARM: socfpga: Synchronize the configuration for A10 SoCDK tien.fong.chee at intel.com
2018-12-30 15:54   ` Marek Vasut
2019-01-01  3:51     ` Chee, Tien Fong
2019-01-01 20:35       ` Marek Vasut
2019-01-02  8:50         ` Chee, Tien Fong
2019-01-02 14:20           ` Marek Vasut
2018-12-30 15:44 ` [U-Boot] [PATCH 0/6] Add support for loading FPGA bitstream Marek Vasut
2019-01-01  2:52   ` Chee, Tien Fong
2019-01-01 20:36     ` Marek Vasut
2019-01-03  5:33       ` Chee, Tien Fong
2019-01-03 20:16         ` Marek Vasut

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=1546562775.10624.4.camel@intel.com \
    --to=tien.fong.chee@intel.com \
    --cc=u-boot@lists.denx.de \
    /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