Now that you’ve gained some familiarity with
bio structures, let’s dissect a real-world storage driver.
Example 13-1 is the storage driver for Atmel’s AT45D series of DataFlash chips. DataFlash is Atmel’s serial interface for flash memory, employed on the Serial Peripheral Interface (SPI) bus. In short, Example 13-1 is a storage driver for flash memory on the SPI bus.
Take a quick look at this code and try to discern some of its structure. If you don’t understand all of it, don’t worry; an explanation follows.
Example 13-1. at45d.c
#include <sys/param.h> #include <sys/module.h> #include <sys/kernel.h> #include <sys/systm.h> #include <sys/bus.h> #include <sys/conf.h> #include <sys/bio.h> #include <sys/kthread.h> ...