kolibrios/data/common/drivers/acpi
Kirill Lipatov (Leency) 0698439542 devman/acpi.asm: run acpi.dll from its folder
git-svn-id: svn://kolibrios.org@8911 a494cfbc-eb01-0410-851d-a64ba20cac60
2021-06-21 21:19:09 +00:00
..
acpi devman/acpi.asm: run acpi.dll from its folder 2021-06-21 21:19:09 +00:00
acpi.dll upload acpi_devman and wallpapper home_light.png 2021-06-21 11:37:50 +00:00
install.kex devman/acpi.asm: run acpi.dll from its folder 2021-06-21 21:19:09 +00:00
readme.txt upload acpi_devman and wallpapper home_light.png 2021-06-21 11:37:50 +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.

ВНИМАНИЕ! Простой запуск программы "acpi" из папки drivers/acpi ничего не даст.
Установка делается в ручном режиме, о чём дальше.

Чтобы включить APIC надо:
1) Очистить 120 Кб на рамдиске /rd/1
2) Скопировать файлы нумератор устройств (acpi и acpi.dll из папки /kolibrios/drivers/acpi/) в /rd/1/drivers
3) Запустить /rd/1/drivers/acpi
4) Убедиться, что папке /rd/1/drivers присутсвует файл devices.dat
5) Сделать рестарт ядра
6) Проверить работу ядра и драйверов
7) Удалить нумератор устройств и сохранить образ. Теперь 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