Board.KolibriOS.org

Официальный форум KolibriOS
Текущее время: Ср апр 26, 2017 6:42 pm

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 37 сообщений ]  На страницу Пред. 1 2 3 След.
Автор Сообщение
 Заголовок сообщения: Re: HDA - debug logs
СообщениеДобавлено: Чт мар 13, 2014 10:27 am 
Не в сети
KSoC/GSoC Student

Зарегистрирован: Ср июл 11, 2012 3:17 am
Сообщения: 224
Asper писал(а):
А в BIOS есть какая-то настройка переключения HDA/AC'97 ?

нет, сейчас приложу конфигурацию биоса.

Код:
Insyde H2O Setup Utility Rev. 3.5.

Advanced

  USB BIOS Legacy Support        <Enabled>   Disabled
  HВС Configure As               <IDE>       AHCI
  AC Mode fan always on          <Enabled>   Disabled
  DC Mode fan always on          <Enabled>   Disabled
  VT Support                     <Enabled>   Disabled
  Use XD Capability              <Enabled>   Disabled
 >Internal Devices Configurations
      Azalia                     <Auto>      Disabled  Enabled
      LAN                        <Enabled>   Disabled
      USB Port                   <Enabled>   Disabled
      Blue Touth                 <Enabled>   Disabled
      Web Camera                 <Enabled>   Disabled
      Card Reader                <Enabled>   Disabled
      Wireless LAN (PCIE)        <Enabled>   Disabled
      CD-ROM/DVD-ROM             <Enabled>   Disabled
Boot
  PXE Boot to LAN                <Enabled>   Disabled
 >Devices Boot Prioritet
  ...

Info
  BIOS Version                   DU221
  KBC Version                    R181
  SLP 2.1                        Disabled
  Intel ME Version               7.0.4.1197


Вернуться к началу
 Заголовок сообщения: Re: HDA - debug logs
СообщениеДобавлено: Чт мар 13, 2014 11:49 am 
Не в сети
Аватара пользователя

Зарегистрирован: Пт июн 27, 2008 3:22 pm
Сообщения: 971
Azalia выставь в Enabled


Вернуться к началу
 Заголовок сообщения: Re: HDA - debug logs
СообщениеДобавлено: Чт мар 13, 2014 11:54 am 
Не в сети
KSoC/GSoC Student

Зарегистрирован: Ср июл 11, 2012 3:17 am
Сообщения: 224
Asper писал(а):
Azalia выставь в Enabled

ничего, сейчас логи приложу
Спойлер: Показать
Изображение

Спойлер: Показать
Изображение


Вернуться к началу
 Заголовок сообщения: Re: HDA - debug logs
СообщениеДобавлено: Чт мар 13, 2014 12:21 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Пт июн 27, 2008 3:22 pm
Сообщения: 971
Так, а что lspci -nn говорит?

Надо будет сделать в драйвере принудительную установку HDA режима для таких МП как у тебя. А то я уже думал, что если такие конфигурации и есть то это большая редкость.


Последний раз редактировалось Asper Чт мар 13, 2014 12:27 pm, всего редактировалось 1 раз.

Вернуться к началу
 Заголовок сообщения: Re: HDA - debug logs
СообщениеДобавлено: Чт мар 13, 2014 12:26 pm 
Не в сети
KSoC/GSoC Student

Зарегистрирован: Ср июл 11, 2012 3:17 am
Сообщения: 224
00:1b.0 Audio device [0403]: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller [8086:1c20] (rev 04)
Код:
00:00.0 Host bridge [0600]: Intel Corporation 2nd Generation Core Processor Family DRAM Controller [8086:0104] (rev 09)
00:01.0 PCI bridge [0604]: Intel Corporation Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port [8086:0101] (rev 09)
00:02.0 VGA compatible controller [0300]: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller [8086:0106] (rev 09)
00:16.0 Communication controller [0780]: Intel Corporation 6 Series/C200 Series Chipset Family MEI Controller #1 [8086:1c3a] (rev 04)
00:1a.0 USB controller [0c03]: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 [8086:1c2d] (rev 04)
00:1b.0 Audio device [0403]: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller [8086:1c20] (rev 04)
00:1c.0 PCI bridge [0604]: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 1 [8086:1c10] (rev b4)
00:1c.1 PCI bridge [0604]: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 2 [8086:1c12] (rev b4)
00:1c.3 PCI bridge [0604]: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 4 [8086:1c16] (rev b4)
00:1d.0 USB controller [0c03]: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 [8086:1c26] (rev 04)
00:1f.0 ISA bridge [0601]: Intel Corporation HM65 Express Chipset Family LPC Controller [8086:1c49] (rev 04)
00:1f.2 IDE interface [0101]: Intel Corporation 6 Series/C200 Series Chipset Family 4 port SATA IDE Controller [8086:1c01] (rev 04)
00:1f.3 SMBus [0c05]: Intel Corporation 6 Series/C200 Series Chipset Family SMBus Controller [8086:1c22] (rev 04)
00:1f.5 IDE interface [0101]: Intel Corporation 6 Series/C200 Series Chipset Family 2 port SATA IDE Controller [8086:1c09] (rev 04)
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation Device [10de:0ded] (rev a1)
07:00.0 Network controller [0280]: Realtek Semiconductor Co., Ltd. RTL8188CE 802.11b/g/n WiFi Adapter [10ec:8176] (rev 01)
08:00.0 Ethernet controller [0200]: Atheros Communications Inc. AR8151 v2.0 Gigabit Ethernet [1969:1083] (rev c0)

Код:
00:1b.0 Audio device: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller (rev 04)
00: 86 80 20 1c 06 04 10 00 04 00 03 04 10 00 00 00
10: 04 00 a0 e3 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 2d 15 80 08
30: 00 00 00 00 50 00 00 00 00 00 00 00 0b 01 00 00

Цитата:
Надо будет сделать в драйвере принудительную установку HDA режима для таких МП как у тебя. А то я уже думал, что если такие конфигурации и есть то это большая редкость.

Премного благодарен!!!


Последний раз редактировалось Akyltist Чт мар 13, 2014 12:30 pm, всего редактировалось 1 раз.

Вернуться к началу
 Заголовок сообщения: Re: HDA - debug logs
СообщениеДобавлено: Чт мар 13, 2014 12:30 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Пт июн 27, 2008 3:22 pm
Сообщения: 971
Вобщем ответил в предыдущем сообщении. У тебя на плате есть возможность программного переключения режимов HDA/AC'97. BIOS почему-то настраивает по умолчанию режим AC'97.


Вернуться к началу
 Заголовок сообщения: Re: HDA - debug logs
СообщениеДобавлено: Сб апр 19, 2014 10:59 pm 
Не в сети
Kernel Developer

Зарегистрирован: Вс фев 10, 2013 12:37 pm
Сообщения: 2329
Имеется следующая проблема с совместным использованием одного прерывания контроллером IDE и драйвера HDA. После использования вывода звука, через некоторое время начинают сыпаться непогашенные прерывания. Я не знаю как написан обработчик прерывания для HDA, но похоже он каким то образом забывает, что сам сгенерировал прерывание или это аппартная проблема уже. Поскольку на том же прерывании висит контроллер IDE, то его обработчик начинает бесконечно вызываться и бесконечно же отвергает вызов, поскольку он не инициировал прерывание. Это приводит к полному параличу системы.

Почему я считаю, что проблема не в коде IDE? Я сделал так - создал большой рамдиск на 600 МБ и скопировал на него видеофайл и звуковой файл. Для контроля генерации прерывания я вставил в начало обработчика IDE прерывания вывод на доску отладки. До начала вывода звука все работает штатно. Теперь внимание, следим за руками, я запускаю воспроизведение с большого рамдиска - начинают сыпаться прерывания. Поскольку это не IDE прерывания, то он их отвергает и они соответственно обрабатываются драйвером HDA. Через сколько то запросов происходит какой то глюк и драйвер HDA оставляет свой запрос прерывания не погашенным. В результате общее прерывание продолжает генерироваться, но никто его уже снять не хочет. В случае с воспроизведением с рамдиска перестает работать доступ к жесткому диску, хотя повторный запуск проигрывания с рамдиска отрабатывает нормально, но черное дело уже сделано - доступ к жесткому диску заблокирован.

Раньше я всего этого безобразия не замечал, поскольку у меня на том же канале висел ATAPI привод и все работало в PIO режиме. Теперь же выкрутил ATAPI привод и начал усиленно тестировать DMA. На других 5 моих конфигурациях компьютеров ни один HDA кодек не висит на том же прерывании, что и контролер IDE.

PCIDEV
Вложение:
pcidev_pb_ata.txt [2.38 КБ]
59 скачиваний

Как видно из лога устройства 01018f и 040300 делят между собой прерывание 0xA или 10 (в десятичной системе).

Если никто не захочет помочь, то подскажите хотя бы какую сторону копать?

Если проблема общая, то такая бессмысленная генерации прерываний очень вредная деятельность, замедляющая работу системы.

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Вернуться к началу
 Заголовок сообщения: Re: HDA - debug logs
СообщениеДобавлено: Сб апр 19, 2014 11:28 pm 
Не в сети

Зарегистрирован: Ср май 18, 2005 7:27 pm
Сообщения: 1001
По описанию может быть связано с той проблемой viewtopic.php?f=3&t=2511&start=45#p56645

Цитата:
вначале разделы открываются, некоторые файлы тоже, но потом вдруг все прекращается. Сейчас это произошло после того, как я промотал видео пару раз. Ну там еще картинка\звук рассинхронизировались при этом, но это мелочь))) Если б раздел вообще не открывался, я бы не удивился, а там вначале открывается, а потом вдруг пропадает, значит, что-то не так))


Вернуться к началу
 Заголовок сообщения: Re: HDA - debug logs
СообщениеДобавлено: Сб апр 19, 2014 11:45 pm 
Не в сети
Kernel Developer

Зарегистрирован: Вс фев 10, 2013 12:37 pm
Сообщения: 2329
Wildwest писал(а):
По описанию может быть связано с той проблемой viewtopic.php?f=3&t=2511&start=45#p56645

Цитата:
вначале разделы открываются, некоторые файлы тоже, но потом вдруг все прекращается. Сейчас это произошло после того, как я промотал видео пару раз. Ну там еще картинка\звук рассинхронизировались при этом, но это мелочь))) Если б раздел вообще не открывался, я бы не удивился, а там вначале открывается, а потом вдруг пропадает, значит, что-то не так))

Да, при перемотке проблема проявляется быстрее.

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Вернуться к началу
 Заголовок сообщения: Re: HDA - debug logs
СообщениеДобавлено: Сб апр 19, 2014 11:51 pm 
Не в сети

Зарегистрирован: Ср май 18, 2005 7:27 pm
Сообщения: 1001
Ну тогда надо ждать Asper'a, Serge, Мышку. Как вариант - это может быть проблема конкретной звуковой платы или биоса.


Вернуться к началу
 Заголовок сообщения: Re: HDA - debug logs
СообщениеДобавлено: Вс апр 20, 2014 11:04 pm 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3925
Mario_r4
У меня была похожая история на старой материнке. 8259 плохо работает с расшаренными прерываниями. Попробуй загрузиться в режиме APIC.
Кстати, в обработчиках ошибка. Надо обнулять весь eax. И маскирование прерываний лишнее.
Код:
;--------------------------------------
.exit:
        mov     al, 0
        ret


Вернуться к началу
 Заголовок сообщения: Re: HDA - debug logs
СообщениеДобавлено: Пн апр 21, 2014 12:56 am 
Не в сети
Kernel Developer

Зарегистрирован: Вс фев 10, 2013 12:37 pm
Сообщения: 2329
Serge писал(а):
Попробуй загрузиться в режиме APIC.

То что в случае APIC проблема не проявляется не спасет на конфигурациях без APIC.
Serge писал(а):
И маскирование прерываний лишнее.

Оно не лишнее, по крайней мере потому, что этот обработчик может использоваться более чем одним контроллером IDE. Во всяком случае у меня была проблема с ASUS K72F

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Вернуться к началу
 Заголовок сообщения: Re: HDA - debug logs
СообщениеДобавлено: Пн апр 21, 2014 1:21 am 
Не в сети
Kernel Developer

Зарегистрирован: Вс фев 10, 2013 12:37 pm
Сообщения: 2329
Serge писал(а):
Кстати, в обработчиках ошибка. Надо обнулять весь eax.
Код:
;--------------------------------------
.exit:
        mov     al, 0
        ret

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

Если верить логу SVN для irq.inc, то в этом плане ничего не менялось.

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Вернуться к началу
 Заголовок сообщения: Re: HDA - debug logs
СообщениеДобавлено: Пн апр 21, 2014 1:26 am 
Не в сети
Kernel Developer

Зарегистрирован: Вс фев 10, 2013 12:37 pm
Сообщения: 2329
Serge писал(а):
Попробуй загрузиться в режиме APIC.

Одно я не могу понять уже достаточно давно, если APIC это такая панацея, то почему он все еще не в транке то дефолту? Вернее я понимаю, что ядро его задействует, но вот переопределение прерываний не вызывается по дефолту.

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Вернуться к началу
 Заголовок сообщения: Re: HDA - debug logs
СообщениеДобавлено: Пн апр 21, 2014 1:49 am 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3925
Mario_r4 писал(а):
То что в случае APIC проблема не проявляется не спасет на конфигурациях без APIC.
Если этот проблема железа, ты её так просто не решишь. Для проверки запусти Линукс с опцией noapic.
Mario_r4 писал(а):
Вернее я понимаю, что ядро его задействует, но вот переопределение прерываний не вызывается по дефолту.
Потому что мало-мало нужна поддержка ACPI.
Цитата:
Если верить логу SVN для irq.inc, то в этом плане ничего не менялось.
А когда поменяется, то кто об этом вспомнит ?
Цитата:
Оно не лишнее, по крайней мере потому, что этот обработчик может использоваться более чем одним контроллером IDE
Все обработчики выполняются с уже маскированными прерываниями. Для отладки полезно проверить флаг IF на входе и выходе из обработчика и сигнализировать если прерывания разрешены.


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 37 сообщений ]  На страницу Пред. 1 2 3 След.

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB