LKML Archive on lore.kernel.org
 help / color / Atom feed
From: Alan Tull <atull@kernel.org>
To: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: linux-kernel@vger.kernel.org, linux-fpga@vger.kernel.org,
	Moritz Fischer <moritz.fischer@ettus.com>,
	delicious.quinoa@gmail.com, Anatolij Gustschin <agust@denx.de>,
	Joshua Clayton <stillcompiling@gmail.com>,
	Alan Tull <atull@kernel.org>
Subject: [PATCH 04/10] fpga: Add flag to indicate SPI bitstream is bit-reversed
Date: Mon,  5 Jun 2017 14:07:35 -0500
Message-ID: <20170605190741.10508-5-atull@kernel.org> (raw)
In-Reply-To: <20170605190741.10508-1-atull@kernel.org>

From: Anatolij Gustschin <agust@denx.de>

Add a flag that is passed to the write_init() callback,
indicating that the SPI bitstream starts with LSB first.
SPI controllers usually send data with MSB first. If an
FPGA expects bitstream data as LSB first, the data must
be reversed either by the SPI controller or by the driver.

Alternatively the bitstream could be prepared as bit-reversed
to avoid the bit-swapping while sending. This flag indicates
such bit-reversed SPI bitstream. The low-level driver will
deal with the flag and perform bit-reversing if needed.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Signed-off-by: Joshua Clayton <stillcompiling@gmail.com>
Signed-off-by: Alan Tull <atull@kernel.org>
---
 include/linux/fpga/fpga-mgr.h | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/include/linux/fpga/fpga-mgr.h b/include/linux/fpga/fpga-mgr.h
index b4ac24c4411d..01c348ca38b7 100644
--- a/include/linux/fpga/fpga-mgr.h
+++ b/include/linux/fpga/fpga-mgr.h
@@ -67,10 +67,12 @@ enum fpga_mgr_states {
  * FPGA Manager flags
  * FPGA_MGR_PARTIAL_RECONFIG: do partial reconfiguration if supported
  * FPGA_MGR_EXTERNAL_CONFIG: FPGA has been configured prior to Linux booting
+ * FPGA_MGR_BITSTREAM_LSB_FIRST: SPI bitstream bit order is LSB first
  */
 #define FPGA_MGR_PARTIAL_RECONFIG	BIT(0)
 #define FPGA_MGR_EXTERNAL_CONFIG	BIT(1)
 #define FPGA_MGR_ENCRYPTED_BITSTREAM	BIT(2)
+#define FPGA_MGR_BITSTREAM_LSB_FIRST	BIT(3)
 
 /**
  * struct fpga_image_info - information specific to a FPGA image
-- 
2.11.0

  parent reply index

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-06-05 19:07 [PATCH 00/10] patches for fpga Alan Tull
2017-06-05 19:07 ` [PATCH 01/10] dt-bindings: fpga: Add bindings document for Xilinx LogiCore PR Decoupler Alan Tull
2017-06-05 19:07 ` [PATCH 02/10] Make FPGA a menuconfig to ease disabling it all Alan Tull
2017-06-05 19:07 ` [PATCH 03/10] fpga: allow to compile-test Altera FPGA bridge drivers Alan Tull
2017-06-06 13:45   ` kbuild test robot
2017-06-09  9:49   ` Greg Kroah-Hartman
2017-06-09 13:44     ` Tobias Klauser
2017-06-10  3:55       ` Alan Tull
2017-06-05 19:07 ` Alan Tull [this message]
2017-06-05 19:07 ` [PATCH 05/10] doc: dt: document altera-passive-serial binding Alan Tull
2017-06-05 19:07 ` [PATCH 06/10] fpga manager: Add altera-ps-spi driver for Altera FPGAs Alan Tull
2017-06-09  9:51   ` Greg Kroah-Hartman
2017-06-09 13:18     ` Anatolij Gustschin
2017-06-09 22:07       ` stillcompiling
2017-06-10 14:43     ` Alan Tull
2017-06-05 19:07 ` [PATCH 07/10] ARM: dts: imx6q-evi: support altera-ps-spi Alan Tull
2017-06-05 19:07 ` [PATCH 08/10] lib: add bitrev8x4() Alan Tull
2017-06-05 19:07 ` [PATCH 09/10] fpga-manager: altera-ps-spi: use bitrev8x4 Alan Tull
2017-06-05 19:07 ` [PATCH 10/10] of: Add vendor prefix for Lattice Semiconductor Alan Tull

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=20170605190741.10508-5-atull@kernel.org \
    --to=atull@kernel.org \
    --cc=agust@denx.de \
    --cc=delicious.quinoa@gmail.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-fpga@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=moritz.fischer@ettus.com \
    --cc=stillcompiling@gmail.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

LKML Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/lkml/0 lkml/git/0.git
	git clone --mirror https://lore.kernel.org/lkml/1 lkml/git/1.git
	git clone --mirror https://lore.kernel.org/lkml/2 lkml/git/2.git
	git clone --mirror https://lore.kernel.org/lkml/3 lkml/git/3.git
	git clone --mirror https://lore.kernel.org/lkml/4 lkml/git/4.git
	git clone --mirror https://lore.kernel.org/lkml/5 lkml/git/5.git
	git clone --mirror https://lore.kernel.org/lkml/6 lkml/git/6.git
	git clone --mirror https://lore.kernel.org/lkml/7 lkml/git/7.git
	git clone --mirror https://lore.kernel.org/lkml/8 lkml/git/8.git
	git clone --mirror https://lore.kernel.org/lkml/9 lkml/git/9.git
	git clone --mirror https://lore.kernel.org/lkml/10 lkml/git/10.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 lkml lkml/ https://lore.kernel.org/lkml \
		linux-kernel@vger.kernel.org
	public-inbox-index lkml

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-kernel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git