Драйвер “parlelport”: инициализация модуля

Предыдущая  Содержание  Следующая V*D*V

Предыдущая функция memory_init нуждается в модификации - меняется выделение оперативной памяти для резервирования адреса памяти параллельный порта (0x378). Чтобы его получить, используем функцию для проверки доступности области памяти (check_region) и функцию для резервирования области памяти для этого устройства (request_region). Обе имеют в качестве аргументов базовый адрес региона памяти и его размер. Функция request_region также принимает строку, которая определяет модуль.

 

<parlelport modified init module> =

 

/* Регистрация порта */

port = check_region(0x378, 1);

if (port) {

    printk("<1>parlelport: cannot reserve 0x378\n");

    result = port;

    goto fail;

}

request_region(0x378, 1, "parlelport");

Предыдущая  Содержание  Следующая