Розробка драйверу пристрою, Створення INF-файлу - Розробка програми керування PCI пристроєм в операційній системі Windows

Створення INF-файлу

Майстер "DriverWizard", є складовою частиною пакету WinDriver. Це інструмент з графічним інтерфейсом для діагностування та генерування драйверу. Він дозволяє здійснювати читання чи запис в фізичні пристрої за допомогою простого рядка коду. Зручно виконується діагностування обладнання через графічний інтерфейс, що дозволяє перевіряти пам'ять, регістри та переривання. Якщо перевірка задовольняє вимогам розробника, Майстер генерує код драйверу, який містить функції доступу до ресурсів обладнання. Пакет WinDriver містить додаткові матеріали та засоби для створення драйверів на основі поширених наборів мікросхем: PLX 9030, 9050, 9052, 9054, 9056, 9080 and 9656; Altera pci_dev_kit; Xilinx VirtexII and Virtex 5; AMCC S5933Майстер може бути використаний для перевірки присутності вашого пристроюв ПК, та створенні INF файлу.

Майстер зручно використовувати у двох фазах розроблення :

Діагностування обладнання:

Створений пристрій підключіть до комп'ютера, та за допомогою Майстра переконайтесь, що він розпізнається операційною системою, як і очікувалось.

Генерування коду: Код, сгенерований Майстром складається з наступних частин :

Бібліотечні функції

Використовуються для звернення до ресурсів пристрою (пам'яті, портів вводу/виводу, регістрів, переривань )

32- розрядна програма діагностування.

Пристрій діагностується в консольному режимі, програма використовує бібліотечні функції, які згадувались вище. Ця програма може бути використана як основа драйверу, що створюється.

Підтримка проектів

Здійснюється за рахунок завантаження всієї проектної інформації та файлів в середовище розроблення. Майстер також генерує відповідний makefile для ОС Linux

Використання Майстра "DriverWizard"

    1. Перед запуском програми Майстер під'єднайте пристрій до комп'ютера. Якщо немає фізичного пристрою для підключення, можно використати Майстер для генерації коду драйверу віртуального пристрою. 2. Для запуска программи DriverWizard :
      - Виберіть "Пуск | Програми |WinDriver | DriverWizard", або wdwizard утиліту із директорії ...WinDriver/wizard/ Для запуска програми в ОС Windows Vista потрібно мати права адміністратора - Виберіть новий проект, чи відкрийте існуючий.
створення/відкриття проекту

Рис. 1 Створення/відкриття проекту

Драйвер інтерфейс діагностичний програма

Із списку пристроїв, які визначив Майстер можна обрати "Plug-and-Play" карту. Якщо карта не підтримує стандарту "Plug-and-Play", треба обрати ISA пристрій.

вибір plug-and-play карту

Рис. 2 Вибір Plug-and-Play карту

Для генерування коду PCI пристрою, який в даний момент не є під'єднаний до комп'ютера,

Треба обрати " PCI Virtual Device".

У випадку обрання опції "PCI Virtual Device" Майстер дозволить визначити ресурси пристрою. Обравши діапазони для памяті та вводу/виводу, в подальшому можна визначити регістри (run-time registers) часу виконання (зміщення визначається відносно BAR регістрів).

На додаток, можна визначити переривання (IRQ), якщо в подальшому передбачається генерування коду, в якому підтверджується отримання переривання через регістри часу виконання.

Номер переривання та діапазон пам'яті несуттєві, тому що вони визначаються Майстром автоматично коли під'єднується фізичний пристрій.

3. Генерування INF файлу.

Якщо розробляється драйвер для Plug-and-Play пристроїв (PCI/PCI Express/PCMCIA) під управлінням ОС Windows, з метою правильного визначення ресурсів пристрою, та правильної взаємодії з драйвером WinDriver, необхідно встановити INF файл для реєстрації спільної роботи пристрою та WinDriver (windrvr6.sys).

Майстер автоматизує створення INF файлу, та процес його інсталяції.

Для створення та інсталяції INF файлу треба виконати наступні кроки :

1. Натиснути кнопку "Generate. INF file" в діалоговому вікні "Select Your Device"

Майстер відобразить інформацію, яку він визначив для пристрою - ID виробника (vendor ID) та ID пристрою (device ID) , клас пристрою, ім'я виробника та назву пристрою. Клас пристрою, ім'я виробника та назву пристрою можна редагувати.

    2. Коли Майстер використовується в ОС Windows, надається можливість автоматичного встановлення INF файлу. Для цього треба в діалоговому вікні обрати опцію "Automatically Install the INF file" . Якщо автоматичне встановлення не виконається, Майстер видасть повідомлення та надасть інструкції для встановлення в ручному режимі. 3. Натиснути кнпку "Next" 4. Коли інсталяція завершиться оберіть із списку пристроїв відповідний, та відкрийте його.
вікно редагування інформації inf файлу

Рис. 3 Вікно редагування інформації INF файлу.

Якщо доступна опція підтримки переривання, що сигналізує повідомленням (MSI), можна ії використати для створення INF файлу, який підтримує керування перериваннями такого типу, або типу MSI-X (розширений тип). Так опція є опцією по замовчуванню для віртуального PCI-пристрою або пристрою, який підтримує переривання такого типу в ОС Vista.

Для деінсталяції INF файлу пристрою треба обрати пристрій в списку, та натиснути кнопку "Uninstall. INF file". Після цього слід обрати INF файл для вилучення. Після деінсталяції INF файлу, пристрій не буде працювати спільно з драйвером windrvr6.sys, а INF файл буде видалено з відповідної директорії.

Похожие статьи




Розробка драйверу пристрою, Створення INF-файлу - Розробка програми керування PCI пристроєм в операційній системі Windows

Предыдущая | Следующая