The Linux Kernel
6.1.115
A guide to the Kernel Development Process
Submitting patches: the essential guide to getting your code into the kernel
Code of conduct
Kernel Maintainer Handbook
All development-process docs
Core API Documentation
The Linux driver implementer’s API guide
Driver Model
Driver Basics
Device drivers infrastructure
ioctl based interfaces
Early Userspace
CPU and Device Power Management
The Common Clk Framework
Bus-Independent Device Accesses
Buffer Sharing and Synchronization
Device links
Component Helper for Aggregate Drivers
Message-based devices
InfiniBand and Remote DMA (RDMA) Interfaces
Managing Ownership of the Framebuffer Aperture
Frame Buffer Library
Voltage and current regulator API
Reset controller API
Industrial I/O
Input Subsystem
Linux USB API
Firewire (IEEE 1394) driver Interface Guide
The Linux PCI driver implementer’s API guide
Compute Express Link
Serial Peripheral Interface (SPI)
I
2
C and SMBus Subsystem
IPMB Driver for a Satellite MC
The Linux IPMI Driver
I3C subsystem
Generic System Interconnect Subsystem
Device Frequency Scaling
High Speed Synchronous Serial Interface (HSI)
Error Detection And Correction (EDAC) Devices
SCSI Interfaces Guide
libATA Developer’s Guide
target and iSCSI Interfaces Guide
The Common Mailbox Framework
MTD NAND Driver Programming Interface
Parallel Port Devices
16x50 UART Driver
Pulse-Width Modulation (PWM)
Intel(R) Management Engine Interface (Intel(R) MEI)
Memory Technology Device (MTD)
MMC/SD/SDIO card support
Non-Volatile Memory Device (NVDIMM)
W1: Dallas’ 1-wire bus
The Linux RapidIO Subsystem
Writing s390 channel device drivers
VME Device Drivers
Linux 802.11 Driver Developer’s Guide
The Userspace I/O HOWTO
Linux Firmware API
PINCTRL (PIN CONTROL) subsystem
General Purpose Input/Output (GPIO)
RAID
Media subsystem kernel internal API
Miscellaneous Devices
Near Field Communication
DMAEngine documentation
Linux kernel SLIMbus support
SoundWire Documentation
Thermal
FPGA Subsystem
Introduction
FPGA Manager
FPGA Bridge
FPGA Region
In-kernel API for FPGA Programming
ACPI Support
Auxiliary Bus
Kernel driver lp855x
Kernel Connector
Console Drivers
Dell Systems Management Base Driver
EISA bus support
ISA Drivers
ISA Plug & Play support by Jaroslav Kysela <perex@suse.cz>
The io_mapping functions
Ordering I/O writes to memory-mapped addresses
Generic Counter Interface
Memory Controller drivers
MEN Chameleon Bus
NTB Drivers
NVMEM Subsystem
PARPORT interface documentation
PPS - Pulse Per Second
PTP hardware clock infrastructure for Linux
Generic PHY Framework
Pulse Width Modulation (PWM) interface
PLDM Firmware Flash Update Library
Overview of the
pldmfw
library
rfkill - RF kill switch support
Support for Serial devices
SM501 Driver
Surface System Aggregator Module (SSAM)
Linux Switchtec Support
Sync File API Guide
TTY
VFIO Mediated devices
VFIO - “Virtual Function I/O”
Acceptance criteria for vfio-pci device specific driver variants
Xilinx FPGA
Xillybus driver for generic FPGA interface
Writing Device Drivers for Zorro Devices
The Linux Hardware Timestamping Engine (HTE)
Kernel subsystem documentation
Locking in the kernel
Linux kernel licensing rules
How to write kernel documentation
Development tools for the kernel
Kernel Testing Guide
Kernel Hacking Guides
Linux Tracing Technologies
fault-injection
Kernel Livepatching
Rust
The Linux kernel user’s and administrator’s guide
The kernel build system
Reporting issues
User-space tools
The Linux kernel user-space API guide
The Linux kernel firmware guide
Open Firmware and Devicetree
CPU Architectures
Unsorted Documentation
Translations
The Linux Kernel
The Linux driver implementer’s API guide
FPGA Subsystem
View page source
FPGA Subsystem
¶
Author
:
Alan Tull
Introduction
FPGA Manager
FPGA Bridge
FPGA Region
FPGA Manager
Overview
How to support a new FPGA device
API for implementing a new FPGA Manager driver
FPGA Bridge
API to implement a new FPGA bridge
FPGA Region
Overview
How to add a new FPGA region
API to add a new FPGA region
In-kernel API for FPGA Programming
Overview
How to program an FPGA using a region
API for programming an FPGA