kolibrios/data/common/drivers/acpi
Kirill Lipatov (Leency) 55f9b7ebf1 acpi/apic install some improvements and fixes
git-svn-id: svn://kolibrios.org@8916 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-06-21 23:10:49 +00:00
..
acpi devman/acpi.asm: run acpi.dll from its folder 2021-06-21 21:19:09 +00:00
acpi.dll add acpi/apic to drvinst 2021-06-21 22:51:35 +00:00
install.kex acpi/apic install some improvements and fixes 2021-06-21 23:10:49 +00:00
readme.txt add acpi/apic to drvinst 2021-06-21 22:51:35 +00:00

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

================================ ENG ================================

Current driver installation is semi-manual. 
To turn on APIC you have to:

1) Run Installer (install.kex)
2) Wait 3 seconds and get sure that there is a message about succesfull
   file generation /rd/1/drivers/devices.dat
3) Make kernel restart (MENU -> END -> HOME key)
4) Check that kernel and drivers are working well.
5) Save kolibri.img. Now each time you boot APIC would be turned on automatically.

================================ RUS ================================

Установка драйвера делается в частично ручном режиме, о чём дальше.
Чтобы включить APIC надо:

1) Запустить установщик (install.kex)
2) Подождать 3 секунды и убедиться, что показалось сообщение
   об успешной генерации /rd/1/drivers/devices.dat
3) Сделать рестарт ядра (Меню -> Завершение работы -> Ядро)
4) Проверить работу ядра и драйверов
5) Сохранить образ. Теперь APIC будет включаться при каждой загрузке ядра.

Детали реализации.

Ядро в процессе инициализации, ещё до переключения в режим страничной адресации, читает таблицы ACPI и определяет базовые адреса IOAPIC и Local APIC. На втором этапе функция APIC_init проверяет базовые адреса и загружает файл devices.dat. Если файл загружен успешно, ядро настраивает IOAPIC и Local APIC, переключает обработку прерываний в режим APIC и патчит номера линий IRQ в конфигурационном пространстве PCI значениями из devices.dat.

Подробнее https://board.kolibrios.org/viewtopic.php?f=1&t=1195&hilit=devices.dat&start=105#p37822