I2C/SMBus Subsystem¶

Introduction¶

  • Introduction to I2C and SMBus
  • The I2C Protocol
  • The SMBus Protocol
  • How to instantiate I2C devices
  • I2C Bus Drivers
  • I2C muxes and complex topologies
  • Kernel driver i2c-mux-gpio
  • Linux I2C Sysfs

Writing device drivers¶

  • Implementing I2C device drivers
  • Implementing I2C device drivers in userspace
  • Linux I2C and DMA
  • I2C/SMBUS Fault Codes
  • I2C/SMBus Functionality

Debugging¶

  • Linux I2C fault injection
  • i2c-stub

Slave I2C¶

  • Linux I2C slave interface description
  • Linux I2C slave EEPROM backend
  • Linux I2C slave testunit backend

Advanced topics¶

  • I2C Ten-bit Addresses

Legacy documentation¶

  • I2C device driver binding control from user-space in old kernels

The Linux Kernel

Navigation

  • The Linux kernel user’s and administrator’s guide
  • Kernel Build System
  • The Linux kernel firmware guide
  • Open Firmware and Devicetree
  • The Linux kernel user-space API guide
  • Working with the kernel development community
  • Development tools for the kernel
  • How to write kernel documentation
  • Kernel Hacking Guides
  • Linux Tracing Technologies
  • Kernel Maintainer Handbook
  • fault-injection
  • Kernel Livepatching
  • The Linux driver implementer’s API guide
  • Core API Documentation
  • locking
  • Accounting
  • Block
  • cdrom
  • Linux CPUFreq - CPU frequency and voltage scaling code in the Linux(TM) kernel
  • Integrated Drive Electronics (IDE)
  • Frame Buffer
  • fpga
  • Human Interface Devices (HID)
  • I2C/SMBus Subsystem
    • Introduction
    • Writing device drivers
    • Debugging
    • Slave I2C
    • Advanced topics
    • Legacy documentation
  • Industrial I/O
  • ISDN
  • InfiniBand
  • LEDs
  • NetLabel
  • Linux Networking Documentation
  • pcmcia
  • Power Management
  • TCM Virtual Device
  • timers
  • Serial Peripheral Interface (SPI)
  • 1-Wire Subsystem
  • Linux Watchdog Support
  • Linux Virtualization Support
  • The Linux Input Documentation
  • Linux Hardware Monitoring
  • Linux GPU Driver Developer’s Guide
  • Security Documentation
  • Linux Sound Subsystem Documentation
  • Linux Kernel Crypto API
  • Filesystems in the Linux kernel
  • Linux Memory Management Documentation
  • BPF Documentation
  • USB support
  • Linux PCI Bus Subsystem
  • Linux SCSI Subsystem
  • Assorted Miscellaneous Devices Documentation
  • Linux Scheduler
  • MHI
  • Assembler Annotations
  • CPU Architectures
  • Unsorted Documentation
  • Atomic Types
  • Atomic bitops
  • Memory Barriers
  • General notification mechanism
  • Translations

Related Topics

  • Documentation overview
    • Previous: AMD Sensor Fusion Hub
    • Next: Introduction to I2C and SMBus

Quick search

©The kernel development community. | Powered by Sphinx 3.4.3 & Alabaster 0.7.12 | Page source