Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp927079pxb; Tue, 9 Feb 2021 16:59:19 -0800 (PST) X-Google-Smtp-Source: ABdhPJxPDpJZlN6/bbvJkNUukmkNKpxwNhQ/llZv+VTsVLWOKqHWFI6JZkk+nLNwzY4Uf/VqKTvd X-Received: by 2002:a50:fe86:: with SMTP id d6mr857807edt.80.1612918759467; Tue, 09 Feb 2021 16:59:19 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1612918759; cv=none; d=google.com; s=arc-20160816; b=DkMpbck8jSyThJw4Ly+spgtdSH8iv0jgDGR7PB0DtHRz09Qt3au3lI9zeg7+nGXRYQ eBArACE+BdOXOYMA3Bog6y2ZJGIDNvgbXk3Hrk8bq+tjC59b7Z8uW+yMWP3LprJdfOWn cgDGj7RkwpBuYLkdDKbGVN72SQFmCSHua+8+wZ58cpmDUE8VFfchNkSGKFegP8/64LUv T/yMSWrRVsmtX9Cis/YW/p7gxSuVpAwbmBM3jPSxWR87CqGfPlwmumgbCokyrDKFTKgx MQ1MIk8Q459EMsneVCx9fzXk8/ChejLFzR3uoX8j/MlHtx41uxEwoT4MAKpJkOVPJ+om TR1Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:references:in-reply-to:message-id:date:subject :cc:to:from:ironport-sdr:ironport-sdr; bh=F45e6Jynjjl2rdAftHAGLrslQVI/yB3EFyIz7Whx/bA=; b=NsNKaG0AKmQ8CkgdK7hk8yC96ZZNc7j0uuApv/0Ti16xfxCoDjEynIvUhOHTUZvV9k Hnl1GDE4o80acx5B47p+DLF0oZFr6+2wDSXhnU3EgKSVFoU3Q8TL/6bs+644Vd8/vOQk 8Dwt29qf3Xaflfm+SEH4PsrDMIF0udOfjm27ZzNmRr/GcXEm3tXrDdFWzFsTwdz7D170 XbpJpOqdeeFOgvVYNKRXfMJfCUIn0nFw6FWmJ73/+fDoCJTAEqDg4SdteBy4n7YSffPA Fw8p/fb950T2Yu8BpbgTgvKzazhFjwSONwLyC4p1zhDStx2CW73lkJXSVH+JO30Cq5Eg qe0Q== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id e22si348916edu.9.2021.02.09.16.58.55; Tue, 09 Feb 2021 16:59:19 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233588AbhBJA57 (ORCPT + 99 others); Tue, 9 Feb 2021 19:57:59 -0500 Received: from mga02.intel.com ([134.134.136.20]:46319 "EHLO mga02.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233862AbhBIWJA (ORCPT ); Tue, 9 Feb 2021 17:09:00 -0500 IronPort-SDR: zDvy7pULJjHNGe8P82SiOjTSuacS0b8RTypss7GG5fu7E8rVCCBdMOctw+dGrhZ/S+QdFDmbvC 8SLQ7TnmuG6A== X-IronPort-AV: E=McAfee;i="6000,8403,9890"; a="169094285" X-IronPort-AV: E=Sophos;i="5.81,166,1610438400"; d="scan'208";a="169094285" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Feb 2021 14:02:10 -0800 IronPort-SDR: cbHoHuIJEvgDx0sqEVNrN17jCP0tUGGQGeRJf6P+XPjmpjulXvgffbTbB0myrTFllRAtTbufVx DOGXHI7DKDDg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.81,166,1610438400"; d="scan'208";a="361959972" Received: from marshy.an.intel.com ([10.122.105.143]) by orsmga006.jf.intel.com with ESMTP; 09 Feb 2021 14:02:09 -0800 From: richard.gong@linux.intel.com To: mdf@kernel.org, trix@redhat.com, gregkh@linuxfoundation.org, linux-fpga@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Richard Gong Subject: [PATCHv5 4/7] fpga: fpga-mgr: add FPGA_MGR_BITSTREAM_AUTHENTICATE flag Date: Tue, 9 Feb 2021 16:20:30 -0600 Message-Id: <1612909233-13867-5-git-send-email-richard.gong@linux.intel.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1612909233-13867-1-git-send-email-richard.gong@linux.intel.com> References: <1612909233-13867-1-git-send-email-richard.gong@linux.intel.com> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Richard Gong Add FPGA_MGR_BITSTREAM_AUTHENTICATE flag for FPGA bitstream authentication, which makes sure a signed bitstream has valid signatures. Except for the actual configuration of the device, the authentication works the same way as FPGA configuration does. If the authentication passes, the bitstream will be programmed into QSPI flash and will be expected to boot without issues. Signed-off-by: Richard Gong --- v5: no change v4: s/FPGA_MGR_BITSTREM_AUTHENTICATION/FPGA_MGR_BITSTREAM_AUTHENTICATE v3: no change v2: align all FPGA_MGR_* flags update the commit messages --- include/linux/fpga/fpga-mgr.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/include/linux/fpga/fpga-mgr.h b/include/linux/fpga/fpga-mgr.h index 2bc3030..a81b3a7 100644 --- a/include/linux/fpga/fpga-mgr.h +++ b/include/linux/fpga/fpga-mgr.h @@ -67,12 +67,15 @@ enum fpga_mgr_states { * %FPGA_MGR_BITSTREAM_LSB_FIRST: SPI bitstream bit order is LSB first * * %FPGA_MGR_COMPRESSED_BITSTREAM: FPGA bitstream is compressed + * + * %FPGA_MGR_BITSTREAM_AUTHENTICATE: do FPGA bitstream authentication only */ #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) #define FPGA_MGR_COMPRESSED_BITSTREAM BIT(4) +#define FPGA_MGR_BITSTREAM_AUTHENTICATE BIT(5) /** * struct fpga_image_info - information specific to a FPGA image -- 2.7.4