#include <spi.h>
Collaboration diagram for spi_driver:

Public Attributes | |
| char | name [32] |
| unsigned int | flags |
| int(* | attach_adapter )(struct spi_adapter *) |
| void(* | detach_client )(struct spi_client *) |
| int(* | command )(struct spi_client *client, unsigned int cmd, void *arg) |
| spi_ops * | ops |
| module * | owner |
| list_head | drivers |
| void(* | inc_use )(struct spi_client *client) |
| void(* | dec_use )(struct spi_client *client) |
struct spi_driver
|
|
Notifies the driver that a new bus has appeared. This routine can be used by the driver to test if the bus meets its conditions & seek for the presence of the chip(s) it supports. If found, it registers the client(s) that are on the bus to the spi admin. via spi_attach_client. |
|
|
a ioctl like command that can be used to perform specific functions with the device. |
|
|
Notifies the driver that the client has finished with its services, and any memory that it allocated for this client should be cleaned up. In addition the chip should be shut down. |
|
|
These two are mainly used for bookkeeping & dynamic unloading of kernel modules. inc_use tells the driver that a client is being used by another module & that it should increase its ref. counter. dec_use is the inverse operation. NB: Make sure you have no circular dependencies, or else you get a deadlock when trying to unload the modules. You should use the i2c_{inc,dec}_use_client functions instead of calling this function directly. |
|
|
This name is used to uniquely identify the driver. It should be the same as the module name. |
|
|
Possible operations on the driver. |
|
|
Module structure, if any. |
1.3.6