From patchwork Thu May 25 17:29:06 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Joshua Clayton X-Patchwork-Id: 9748787 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id B7E2C60209 for ; Thu, 25 May 2017 17:29:56 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 9DFEB26247 for ; Thu, 25 May 2017 17:29:56 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 929D927B81; Thu, 25 May 2017 17:29:56 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=2.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED,DKIM_VALID,FREEMAIL_FROM autolearn=ham version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [65.50.211.133]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 3A25626247 for ; Thu, 25 May 2017 17:29:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:MIME-Version:Cc:List-Subscribe: List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id:References: In-Reply-To:Message-Id:Date:Subject:To:From:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Owner; bh=whlPNwGk2iJRwZxSsyOhLDVYL8ct/8EerN4G4mQJFDc=; b=YK2ehu3KSa8rZKhoIEouoLdW+B amSckuCcUgGtXqAZjewTa1YrgHqdxjIgqO6YG2Z9ohYH7GM12I6ZSj1e/TGbD/Bg3WZKIX/OAoAAM jcmtKU2o7EAWJdnxqxoAodW4n6Hh3AicKVmRDN5mJesrnnLRe3cw0NMAbB6g4S2faVSoqhzP87Pj2 QJpphDd7NqdK3d8USXNHuPzjeuheR48PazlvahXhXEI4BvVr2ide4SxPKWXdMHqk91Su8ZqVj/ioi dXNOoVLbYOLm7+3xqIVFP2IqQCDMx+285D47A9VUhCl9y6LtpJHe3/HsvBJ5dverYDzlhj/NMoFK+ abFG/QHA==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.87 #1 (Red Hat Linux)) id 1dDwaA-0005AH-8X; Thu, 25 May 2017 17:29:54 +0000 Received: from mail-pf0-x244.google.com ([2607:f8b0:400e:c00::244]) by bombadil.infradead.org with esmtps (Exim 4.87 #1 (Red Hat Linux)) id 1dDwZv-0004uZ-G7 for linux-arm-kernel@lists.infradead.org; Thu, 25 May 2017 17:29:41 +0000 Received: by mail-pf0-x244.google.com with SMTP id f27so40554780pfe.0 for ; Thu, 25 May 2017 10:29:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=++FZVz5d0Y9O0E8UP6VZcztD64HmC0vTEcskqTnkdYg=; b=bTReWpEyH7eTym4jJ+P6Z86EMDKPl0DmlXz4r4TG6Iupk3i7zys560rq7xelDOcQx/ Ur91NokMh0U9W7XFxsi4MpueyBjaGJlH+pDDoCLOh3caZxZSh8pMpKWUlY9mzdpqshkH PUdC7I9iZ/VJqWt0y8pt/XHX60kpMx/rJPZ2MUrjlMroQXi4OPyLuJd+rjl2yUOQksAX JjJVCpnKSD/mzO/LjbXuUd4A07Bsvx5+8TFI3lJ8AxI+GHAGOueYpwmoXCpcV3KXcpKf 9R+YNFCh/p6j+tp8BpnqEO6OGJkhs9yyaMLQUfK9esTsGON4Vpr3iGPi2y9q7UJp+y7k KU3g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=++FZVz5d0Y9O0E8UP6VZcztD64HmC0vTEcskqTnkdYg=; b=oXSLHJXpIrwS8Lr/JnJs4/XqEx2zaMXlOgXp2r7XP0QWvlE1Anyb+gYM/ZrehMdrJF ycAv7kMKIXOy+aH5TVUyR3xherTSsoQQEpoEFeIQF3cviOLUzP4IRwNGCQUlNTq5d/yG SCwqSiteqln9CrfWZaztzGdDPsUT42ZRasWD74VObUBl9nhTOAHjK8CwYp0ATcr8Aaeo zRfbe4f5VIYs+eqbZ1FBOp8Kp2p0QlfChmmbIHC/icAiz+TZZdrUcoLo7apT7LUaVcir Pt1I0dI6KfddD/SMkldrBhzcDp2OQ7nt47Tb9nFkFh6RCP56YwY2ki1UGmVWIJdE3VX9 LW9Q== X-Gm-Message-State: AODbwcBAaCIzPWTp0XJYgLmSdwcUW98WYUMOVQS4mkNh5JSYQ/jgwxQs CcKZ5Eo8+UEwMA== X-Received: by 10.84.238.203 with SMTP id l11mr51576053pln.17.1495733360336; Thu, 25 May 2017 10:29:20 -0700 (PDT) Received: from localhost.localdomain (68-185-59-186.static.knwc.wa.charter.com. [68.185.59.186]) by smtp.gmail.com with ESMTPSA id b72sm16579738pfj.36.2017.05.25.10.29.18 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 25 May 2017 10:29:19 -0700 (PDT) From: Joshua Clayton To: Alan Tull , Moritz Fischer , Anatolij Gustschin , Bastian Stender , Shawn Guo , Joshua Clayton Subject: [PATCH v11 1/6] fpga: Add flag to indicate SPI bitstream is bit-reversed Date: Thu, 25 May 2017 10:29:06 -0700 Message-Id: <20170525172911.11467-2-stillcompiling@gmail.com> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20170525172911.11467-1-stillcompiling@gmail.com> References: <20170525172911.11467-1-stillcompiling@gmail.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20170525_102939_586715_D1804F91 X-CRM114-Status: GOOD ( 12.51 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Mark Rutland , devicetree@vger.kernel.org, linux-fpga@vger.kernel.org, Russell King , linux-kernel@vger.kernel.org, Rob Herring , Sascha Hauer , Fabio Estevam , linux-arm-kernel@lists.infradead.org MIME-Version: 1.0 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP From: Anatolij Gustschin 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 Signed-off-by: Joshua Clayton --- 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