APIC

Internal structure and you change requests/suggestions
  • mike.dld wrote:kernel/trunk/core/conf_lib.inc м?
    Оно вызывается только при загрузке с жёсткого диска без рамдиска в варианте SPraid'а.
    Ушёл к умным, знающим и культурным людям.
  • патч Ghost'a стал конфликтовать с репозиторием где-то между 1020 и 1030 ревизиями. Можно его актуализированным?
    И мы уже давно не пешки,
    Мы пули, мы орлы, и решки!
    Война ютит бинарный код,
    Умри, или иди вперед!
  • Новый патч
    Attachments
    1067.zip (10.37 KiB)
    1067 patch
    Downloaded 288 times
  • Какой статус этого патча? Годится / нужно исправлять / нужно выбросить и написать заново?
    Интересуюсь в плане начатия работы над драйверами USB-контроллеров с правильного подхода, как все просят (то есть, сделать сначала APIC).
  • Учитывая что прошло два года - вероятнее всего нужно пилить.
  • А почему (в своё время) работы были остановлены и этот патч так и не попал в транк? Какие у него недостатки?
  • Если читать тему, то вероятно потому что:
    Serge wrote:Ghost
    Если APIC будет включён по умолчанию PCI драйверы не смогут работать
  • Mario wrote:Если читать тему, то вероятно потому что Если APIC будет включён по умолчанию PCI драйверы не смогут работать
    Но в Винде же как-то работает и то, и другое одновременно, если я не ошибаюсь?
  • Тут очевидно дело не в самом принципе, а в том что именно в Колибри возникнут проблемы - Винда сама развешивает устройства по прерываниям.
  • Mario wrote:Тут очевидно дело не в самом принципе, а в том что именно в Колибри возникнут проблемы - Винда сама развешивает устройства по прерываниям.
    Получается тупик - USB нормально не реализовать без APIC (ты сам сказал), а APIC нормально не реализовать в Колибри?
  • Почему не реализовать? Я же говорю - Колибри не умеет сама развешивать устройства. Все еще ориентирована на BIOS. А BIOS обычно удовлетворяется 16-древними прерываниями. Этот патч просто включает использование контроллера APIC (конечно если я не ошибаюсь, так как код смотреть руки не дошли). Нужно дописать развешивающую часть.
  • При переходе в APIC режим меняются линии IRQ. Новые номера можно получить через ACPI. Потом надо пропатчить номер линии в конфигурационном пространстве PCI. После этого можно загружать драйверы PCI устройств.
    Определение ресурсов через ACPI уже сделано, но ACPICA слишком толстая чтобы держать её всё время в ядре и особой необходимости в этом пока нет. Поэтому я думаю генерировать файл с ресурсами устройств и использовать его. Это должно работать пока конфигурация не меняется. В особо тяжелых случаях, если не удаётся пронумеровать всё через ACPI, файл можно сделать вручную. Патч от Ghost-а я добавил в ветку kolibri-acpi.
  • Serge wrote:При переходе в APIC режим меняются линии IRQ. Новые номера можно получить через ACPI. Потом надо пропатчить номер линии в конфигурационном пространстве PCI. После этого можно загружать драйверы PCI устройств.
    Определение ресурсов через ACPI уже сделано, но ACPICA слишком толстая чтобы держать её всё время в ядре и особой необходимости в этом пока нет. Поэтому я думаю генерировать файл с ресурсами устройств и использовать его. Это должно работать пока конфигурация не меняется. В особо тяжелых случаях, если не удаётся пронумеровать всё через ACPI, файл можно сделать вручную. Патч от Ghost-а я добавил в ветку kolibri-acpi.
    А если нет ACPI, как в eBox? Тогда нужно делать по-другому? Хотя, судя по PCIDEV, в eBox все устройства получают и так IRQ<16.
  • yogev_ezra

    Это надо смотреть в Win или Линукс. Биос всегда стартует в PIC режиме для совместимости с DOS. Номер линии в конфигурационном пространстве записывается Биос (кстати не всегда) и на работу оборудования не влияет, только чтобы программисту было проще. Линукс после загрузки патчит эти номера в зависимости от режима PIC/APIC.

    А APIC в eBox есть ?
  • Who is online

    Users browsing this forum: No registered users and 12 guests