Linux ドライバー実装者の API ガイド¶
カーネルにはデバイスドライバーの開発者を補助するための幅広いインターフェイスが備わっています。このドキュメントではそれらインターフェイスのうち一部のまとまったものだけ紹介しています。これから更に良いものになることを期待します。存在するサブセクションは以下の通りです。
目次
- Driver Model
- Driver Basics
- Device drivers infrastructure
- Early Userspace
- CPU and Device Power Management
- The Common Clk Framework
- Bus-Independent Device Accesses
- Device connections
- Buffer Sharing and Synchronization
- デバイスリンク
- Component Helper for Aggregate Drivers
- Message-based devices
- サウンドデバイス
- フレームバッファライブラリ
- Voltage and current regulator API
- Industrial I/O
- Input サブシステム
- Linux USB API
- The Linux-USB Host Side API
- USB Gadget API for Linux
- USB Anchors
- USB bulk streams
- USB core callbacks
- USB DMA
- USB Request Block (URB)
- Power Management for USB
- USB hotplugging
- USB device persistence during system suspend
- USB Error codes
- Writing USB Device Drivers
- Synopsys DesignWare Core SuperSpeed USB 3.0 Controller
- Writing a MUSB Glue Layer
- USB Type-C connector class
- API for USB Type-C Alternate Mode drivers
- USB3 debug port
- Firewire (IEEE 1394) driver Interface Guide
- The Linux PCI driver implementer's API guide
- Serial Peripheral Interface (SPI)
- I2C と SMBus サブシステム
- IPMB Driver for a Satellite MC
- I3C subsystem
- GENERIC SYSTEM INTERCONNECT SUBSYSTEM
- High Speed Synchronous Serial Interface (HSI)
- Error Detection And Correction (EDAC) デバイス
- SCSI Interfaces Guide
- libATA 開発者ガイド
- target and iSCSI Interfaces Guide
- MTD NAND Driver Programming Interface
- パラレルポートデバイス
- 16x50 UART ドライバー
- 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 デバイスドライバー
- Linux 802.11 ドライバー開発者ガイド
- The Userspace I/O HOWTO
- Linux ファームウェア API
- PINCTRL (PIN CONTROL) サブシステム
- Top-level interface
- Pin groups
- Pin configuration
- Interaction with the GPIO subsystem
- PINMUX interfaces
- What is pinmuxing?
- Pinmux conventions
- Pinmux drivers
- Pin control interaction with the GPIO subsystem
- GPIO mode pitfalls
- Board/machine configuration
- Complex mappings
- Pin control requests from drivers
- Drivers needing both pin control and GPIOs
- System pin control hogging
- Runtime pinmuxing
- General Purpose Input/Output (GPIO)
- RAID
- Miscellaneous Devices
- Near Field Communication
- DMAEngine ドキュメント
- Linux カーネル SLIMbus サポート
- SoundWire ドキュメント
- Thermal
- FPGA サブシステム
- ACPI Support
- Kernel driver lp855x
- A driver for a selfmade cheap BT8xx based PCI GPIO-card (bt8xxgpio)
- Kernel Connector
- Console Drivers
- Dell Systems Management Base Driver
- Usage of the new open sourced rbu (Remote BIOS Update) driver
- EDID
- EISA bus support
- IPMB Driver for a Satellite MC
- ISA Drivers
- ISA Plug & Play support by Jaroslav Kysela <perex@suse.cz>
- Generic Counter Interface
- pblk: Physical Block Device Target
- 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
- Intel MID PTI
- Pulse Width Modulation (PWM) interface
- rfkill - RF kill switch support
- Support for Serial devices
- SM501 Driver
- Msc Keyboard Scan Expansion/GPIO Expansion device
- Linux Switchtec Support
- Sync File API Guide
- VFIO Mediated devices
- VFIO - "Virtual Function I/O"
- Xilinx FPGA
- Xillybus driver for generic FPGA interface
- Writing Device Drivers for Zorro Devices