lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Tue, 30 Jun 2020 10:26:19 -0700
From:   Randy Dunlap <rdunlap@...radead.org>
To:     trix@...hat.com, hao.wu@...el.com, mdf@...nel.org, corbet@....net
Cc:     linux-fpga@...r.kernel.org, linux-doc@...r.kernel.org,
        linux-kernel@...r.kernel.org
Subject: Re: [RFC 1/1] fpga: dfl: RFC PCI config

On 6/30/20 10:16 AM, trix@...hat.com wrote:
> From: Tom Rix <trix@...hat.com>
> 
> Create some top level configs the map to dfl pci cards.
> 
> Autoselect the parts of fpga that are needed to run these cards
> as well as the other subsystem configs to the card's subdevices.
> 
> Signed-off-by: Tom Rix <trix@...hat.com>
> ---
>  Documentation/fpga/dfl.rst | 33 +++++++++++++++++++++++++++++++++
>  drivers/fpga/Kconfig       | 28 ++++++++++++++++++++++++++++
>  2 files changed, 61 insertions(+)
> 
> diff --git a/Documentation/fpga/dfl.rst b/Documentation/fpga/dfl.rst
> index d7648d7c7eee..3a872bc8e3d3 100644
> --- a/Documentation/fpga/dfl.rst
> +++ b/Documentation/fpga/dfl.rst
> @@ -500,6 +500,39 @@ Developer only needs to provide a sub feature driver with matched feature id.
>  FME Partial Reconfiguration Sub Feature driver (see drivers/fpga/dfl-fme-pr.c)
>  could be a reference.
>  
> +Kernel configuration
> +====================
> +
> +While it is possible to manually setup a configuration to match your device,
> +there are some top level configurations that collect configuations for

                                                        configurations

> +some reference pci cards.  Below descibes these configuration as well as

                  PCI               describes

> +what other kernel configs are needed for proper configuration.
> +
> +FPGA_DFL_PAC10
> +Intel Arria 10 GX PCI card, PCI id 0X09C4
> +Depends on
> +  SPI_ALTERA
> +  MFD_INTEL_M10_BMC
> +  MFD_INTEL_M10_BMC_SECURE
> +  SENSORS_INTEL_M10_BMC_HWMON
> +
> +FPGA_DFL_D5005
> +Intel Stratix 10, D5005 PCI card, PCI id 0X0B2B
> +Depends on
> +  SPI_ALTERA
> +  MFD_INTEL_M10_BMC
> +  MFD_INTEL_M10_BMC_SECURE
> +  SENSORS_INTEL_M10_BMC_HWMON
> +  INTEL_S10_PHY
> +
> +FPGA_DFL_N3000
> +Intel Network Accelerator, N3000 PCI card, PCI id 0X0B30
> +Depends on
> +  SPI_ALTERA
> +  MFD_INTEL_M10_BMC
> +  MFD_INTEL_M10_BMC_SECURE
> +  SENSORS_INTEL_M10_BMC_HWMON
> +  INTEL_LL_10G_MAC
>  
>  Open discussion
>  ===============
> diff --git a/drivers/fpga/Kconfig b/drivers/fpga/Kconfig
> index 9d53bd9094e2..b657de20bc98 100644
> --- a/drivers/fpga/Kconfig
> +++ b/drivers/fpga/Kconfig
> @@ -138,6 +138,34 @@ config OF_FPGA_REGION
>  	  Support for loading FPGA images by applying a Device Tree
>  	  overlay.
>  
> +config FPGA_DFL_PAC10
> +	tristate "Intel Arria 10 GX PCI card"
> +	select SPI_ALTERA

above kconfig symbol:
	depends on SPI_MASTER

> +	select MFD_INTEL_M10_BMC
> +	select MFD_INTEL_M10_BMC_SECURE
> +	select SENSORS_INTEL_M10_BMC_HWMON

I haven't tested this, but in general it's not safe to select something like
SENSORS* or HWMON* unless you first check that CONFIG_HWMON is enabled.
Otherwise this would usually cause kconfig warning(s).

But don't add things like
	select HWMON
	select SPI
	select SPI_MASTER

because we don't enable subsystems (like HWMON or SPI) just inside one
driver's kconfig entry.
The driver(s) should instead depend on HWMON, SPI, SPI_MASTER etc.

> +	select FPGA_DFL
> +	select FPGA_DFL_FME
> +	select FPGA_DFL_FME_MGR
> +	select FPGA_DFL_FME_BRIDGE
> +	select FPGA_DFL_FME_REGION
> +	select FPGA_DFL_AFU
> +	select FPGA_DFL_SPI_ALTERA
> +	select FPGA_DFL_PCI
> +	select IFPGA_SEC_MGR
> +
> +config FPGA_DFL_D5005
> +	tristate "Intel Stratix 10, D5005 PCI card"
> +	select FPGA_DFL_PAC10
> +	select INTEL_S10_PHY
> +	select FPGA_DFl_HSSI
> +
> +config FPGA_DFL_N3000
> +	tristate "Intel Network Accelerator, N3000 PCI card"
> +	select FPGA_DFL_PAC10
> +	select INTEL_LL_10G_MAC
> +	select FPGA_DFL_N3000_NIOS
> +
>  config FPGA_DFL
>  	tristate "FPGA Device Feature List (DFL) support"
>  	select FPGA_BRIDGE
> 


-- 
~Randy

Powered by blists - more mailing lists