1.. SPDX-License-Identifier: GPL-2.0 2 3========================= 4LeapRAID Driver for Linux 5========================= 6 7Introduction 8============ 9 10LeapRAID is a storage RAID controller driver developed by LeapIO Tech Inc. The 11controller targets enterprise storage, cloud infrastructure, high performance 12computing (HPC), and AI workloads. 13 14It provides high-performance storage virtualization over PCI Express Gen4 15and supports both SAS and SATA HDDs and SSDs. It offers both Host Bus Adapter 16and RAID modes to meet diverse deployment requirements. 17 18Supported devices 19================= 20 21- LeapHBA-8200C 22 23Features 24======== 25- PCIe Gen4 x8 host interface 26- Support for SAS and SATA devices 27- RAID levels: 0, 1, 10, 5, 50, 6, 60 28- Advanced error handling and end-to-end data integrity 29 30LeapRAID specific host attributes 31================================= 32 33:: 34 35 /sys/class/scsi_host/host*/fw_queue_depth 36 /sys/class/scsi_host/host*/host_sas_address 37 /sys/class/scsi_host/host*/board_name 38 39The host "fw_queue_depth" read-only attribute shows the firmware queue 40depth of the host. 41 42The host "host_sas_address" read-only attribute shows the SAS address 43of the host. 44 45The host "board_name" read-only attribute shows the board name reported 46by manufacturing page 0. 47 48LeapRAID specific disk attributes 49================================= 50 51:: 52 53 /sys/class/scsi_disk/host:bus:target:lun/device/sas_device_handle 54 /sys/class/scsi_disk/host:bus:target:lun/device/ncq_cmd_prio_enable 55 56The read-only attribute "sas_device_handle" represents the disk's device 57handle, which is a unique identifier maintained by the firmware. 58 59This attribute "ncq_cmd_prio_enable" controls NCQ command priority. A value 60of 0 disables NCQ priority handling for RT-priority I/O. Writing 1 enables 61NCQ priority handling when the device reports support for the feature through 62VPD page 0x89. Unsupported devices keep the effective state at 0. 63 64LeapRAID module parameters 65========================== 66 67The following module parameters can be configured at driver load time to 68control driver behavior and tuning options. 69 701. open_pcie_trace 71------------------ 72 73This parameter controls whether PCIe transaction tracing is enabled in the 74driver. When set to 1, PCIe trace collection is enabled by default, allowing 75detailed tracing of PCIe operations for debugging and performance analysis. 76Setting it to 0 disables the trace functionality to reduce overhead in 77production environments. 78 792. enable_mp 80------------ 81 82This parameter enables or disables multipath support for target devices. 83When set to 1, multipath functionality is enabled (default), allowing 84multiple paths to be established. Setting it to 0 disables multipath 85handling. 86 873. max_msix_vectors 88------------------- 89 90This parameter sets the upper limit on the number of MSI-X interrupt 91vectors that the driver will request during initialization. The default 92value of -1 allows the driver to use all available vectors as provided 93by the device. Setting a positive integer restricts the number of vectors. 94 954. poll_queues 96-------------- 97 98This parameter specifies the number of I/O queues to be used when operating 99in io_uring poll mode. The default value is 0. 100 101File Location 102============= 103The driver source is located at: 104 105``drivers/scsi/leapraid/`` 106 107.. note:: 108 109 This document is intended for kernel developers and system 110 integrators who need to build, test, and deploy the LeapRAID driver. 111