Новые драйвера для ATI Radeon.

Drivers for various video cards
  • Атауальпа
    А сколько устройств сидит на irq 11 ?
  • Оглашаю весь список :)
    Attachments
    PCIDEV.TXT (3.56 KiB)
    Downloaded 194 times
  • После установки режима можно пользоваться тачпадом и клавиатурой, не трогая мышь. Но если тронуть мышь, происходит зависание.
  • Атауальпа
    usb мышь подключена к open host контроллеру ?
    Скорее всего ошибка в обработчике прерывания ati, но я её пока не нашел.
    Если пользоваться тачпадом курсор по экрану перемещается ?
  • Serge:
    Перемещается.
    А как проверить, к какому контроллеру подключено? Это беспроводная мышь Logicfox, подключается к USB.
  • Атауальпа
    А у тебя там только open host и ehci. Значит open host.
    Я не знаю генерирует ли контроллер прерывание на событие от мыши. Если да, то ошибка в драйвере видео.
  • Генерирует. USB-обработчики пропускают дальше в цепочку прерывания, вызванные не контроллером. Судя по тому, что друг другу они не мешают, эта часть работает.
    Сделаем мир лучше!
  • CleverMouse
    Извиняюсь за оффтоп.
    А как сделать, чтобы пропускал и другой код? У меня код для SATA IDE DMA на одной конфигурации работает, но при этом USB отваливается уже после первого обращения к диску (оба контроллера задействуют одно прерывание). Как разрулить пока не понял.
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • Обработчик прерывания должен учитывать, что прерывание может прийти откуда угодно, и не пытаться обрабатывать прерывание до того, как целевое устройство ответило "да" на вопрос "это ты сгенерировало прерывание?"

    В принципе ещё нужно возвращать из обработчика ненулевое значение в eax, если прерывание обработано, и нулевое, если прерывание чужое, но прямо сейчас от нарушения этого правила ничего не сломается - irq_serv.main в любом случае проходит по всей цепочке.
    Сделаем мир лучше!
  • CleverMouse
    Спасибо за информацию. Значит ошибка в видеодрайвере.

    Проходить по всей цепочке всё равно надо. Активные прерывания могут быть от нескольких устройств сразу. Возвращаемое значение тоже важно. В идеале ядро должно блокировать линию в случае большого количества необработанных irq. Это 100% проблемы с железом и неработоспособность системы. Колибри пока только считает такие прерывания. В линуксе включается режим эмуляции. Ядро периодически вызывает обработчики, получается работа в режиме опроса.
  • Mario_r4 wrote:У меня код для SATA IDE DMA на одной конфигурации работает, но при этом USB отваливается уже после первого обращения к диску (оба контроллера задействуют одно прерывание). Как разрулить пока не понял.
    Опять же оффтоп, но переключиться на APIC не пробовал? Это может быть и железной проблемой PIC-контроллера.
    Сделаем мир лучше!
  • CleverMouse wrote:Опять же оффтоп, но переключиться на APIC не пробовал? Это может быть и железной проблемой PIC-контроллера.
    Нет, не пробовал. Там довольно заметный кусок кода нужно менять. Я получаю все данные в RM, а надо переводить получение в PM процессора.
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • Mario_r4
    У тебя же Интел платформа, то есть там UHCI контроллер ?
  • Serge wrote:Mario_r4
    У тебя же Интел платформа, то есть там UHCI контроллер ?
    Нет, проблема с отваливанием USB происходит на AMD 770 чипсете.
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • Who is online

    Users browsing this forum: No registered users and 4 guests