Como escrever um driver de dispositivo Linux simples?

Preciso escrever um driver de dispositivo de caracteres SPI Linux para omap4 do zero. Conheço alguns conceitos básicos sobre como escrever drivers de dispositivo. Mas não sei como começar a escrever o driver de dispositivo específico da plataforma do zero.

Eu escrevi alguns drivers básicos e pensei que escrever um driver de dispositivo SPI seria semelhante a ele. Char drivers têm uma estruturafile_operations que contém as funções implementadas no driver.

struct file_operations Fops = {
    .read = device_read,
    .write = device_write,
    .ioctl = device_ioctl,
    .open = device_open,
    .release = device_release,  /* a.k.a. close */
};

Agora estou passandospi-omap2-mcspi.c código como referência para ter uma idéia para começar a desenvolver o driver SPI do zero.

Mas não vejo funções como abrir, ler, escrever etc. Não sei de onde o programa é iniciado.

questionAnswers(4)

yourAnswerToTheQuestion