1# SPDX-License-Identifier: GPL-2.0-only 2menuconfig FWCTL 3 tristate "fwctl device firmware access framework" 4 help 5 fwctl provides a userspace API for restricted access to communicate 6 with on-device firmware. The communication channel is intended to 7 support a wide range of lockdown compatible device behaviors including 8 manipulating device FLASH, debugging, and other activities that don't 9 fit neatly into an existing subsystem. 10 11if FWCTL 12 13config RUST_FWCTL_ABSTRACTIONS 14 bool "Rust fwctl abstractions" 15 depends on RUST && FWCTL=y 16 help 17 This enables the Rust abstractions for the fwctl device firmware 18 access framework. It provides safe wrappers around struct fwctl_device 19 and struct fwctl_uctx, allowing Rust drivers to register fwctl devices 20 and implement their control and RPC logic in safe Rust. 21 22 If unsure, say N. 23 24config FWCTL_BNXT 25 tristate "bnxt control fwctl driver" 26 depends on BNXT 27 help 28 BNXT provides interface for the user process to access the debug and 29 configuration registers of the Broadcom NIC hardware family. 30 This will allow configuration and debug tools to work out of the box on 31 mainstream kernel. 32 33 If you don't know what to do here, say N. 34 35config FWCTL_MLX5 36 tristate "mlx5 ConnectX control fwctl driver" 37 depends on MLX5_CORE 38 help 39 MLX5 provides interface for the user process to access the debug and 40 configuration registers of the ConnectX hardware family 41 (NICs, PCI switches and SmartNIC SoCs). 42 This will allow configuration and debug tools to work out of the box on 43 mainstream kernel. 44 45 If you don't know what to do here, say N. 46 47config FWCTL_PDS 48 tristate "AMD/Pensando pds fwctl driver" 49 depends on PDS_CORE 50 help 51 The pds_fwctl driver provides an fwctl interface for a user process 52 to access the debug and configuration information of the AMD/Pensando 53 DSC hardware family. 54 55 If you don't know what to do here, say N. 56endif 57