Linux Device Drivers - Communicating with Hardware

Linux Device Drivers – Communicating with Hardware

Description

What you will learn in this course:

  • Two modes of communication with hardware – IO Mapped IO and Memory Mapped IO
  • Kernel Drivers/Modules for IO Mapped IO – Speaker, RTC, Keyboard
  • Kernel Drivers/Modules for Memory Mapped IO – Hardware Random Generator, GPIO, UART
  • Accessing IO Mapped IO and Memory Mapped IO from user space
  • PCI and SMBIOS

API’s/Macros/Structures

  • inb, outb, inw, outw, inl, outl
  • inb_p, outb_p, inw_p, outw_p, inl_p, outl_p
  • struct resource, request_region, release_region
  • ioperm, iopl, geteuid
  • request_mem_region, release_mem_region, ioremap, iounmap, ioread8, ioread16, ioread32, iowrite8, iowrite16, iowrite32
  • ioport_map, ioport_unmap,mmap

Files:

/dev/port, /dev/mem, /proc/iomem, /proc/ioports

Commands

  • hwclock
  • date
  • showkey
  • hexdump
  • strings
  • dd
  • lspci
  • biosdecode
  • dmidecode

Leave a Reply