ACPI 30k + прерывания в секунду

Успех!

После многих часов слепо обманывания с помощью xorg.conf и xrandr я нашел решение, которое работает.

Проблема заключается в следующем:

Драйвер Nvidia настаивает на использовании данных EDID с дисплея, а не на любом, установленном xrandr или в xorg.conf. По какой-то причине драйвер Nvidia не смог прочитать данные EDID с моего проектора.

Таким образом, решение состоит в том, чтобы обеспечить переопределение EDID. Я не смог найти его для своего конкретного дисплея, но я смог найти его для другого проектора 720p. Он работает!

После получения файла EDID и помещения его в место, он установлен в файле xorg.conf, добавив строку, подобную этой, в раздел «Screen» xorg.conf:

Option         "CustomEDID" "CRT-0:/path/to/edid.bin"

Здесь «CRT-0» - это то, где проектор подключен: к порту VGA.

Еще одно дополнительное осложнение состоит в том, что я не смог найти бинарный EDID-файл. Вместо этого, выполнив поиск файла «720p EDID», я нашел некоторые .INF-файлы, содержащие информацию EDID, извлеченную некоторой программой Windows. Это файлы формата .ini. Они содержат фактическую информацию EDID в блоке, который выглядит так:

[OVERRIDDEN-EDID_AddReg]
;Base EDID
HKR,EDID_OVERRIDE,"0",0x01,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x3D,0xCB,0x81,0x07,0x00,0x00,0x00,0x0
0,0x00,0x11,0x01,0x03,0x80,0x6E,0x3E,0x78,0x0A,0xEE,0x91,0xA3,0x54,0x4C,0x99,0x26,0x0F,0x50,0x54,0x20,0x0
0,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x1D,0x00,0x7
2,0x51,0xD0,0x1E,0x20,0x6E,0x28,0x55,0x00,0x53,0x6F,0x42,0x00,0x00,0x1E,0x01,0x1D,0x80,0x18,0x71,0x1C,0x1
6,0x20,0x58,0x2C,0x25,0x00,0x53,0x6F,0x42,0x00,0x00,0x9E,0x00,0x00,0x00,0xFC,0x00,0x54,0x58,0x2D,0x53,0x5
2,0x38,0x30,0x35,0x0A,0x20,0x20,0x20,0x20,0x00,0x00,0x00,0xFD,0x00,0x3B,0x3D,0x1E,0x2E,0x08,0x00,0x0A,0x2
0,0x20,0x20,0x20,0x20,0x20,0x01,0x5A

Чтобы превратить это в двоичный файл, я написал следующий крошечный скрипт Python:

#!/usr/bin/python

# first item was 0x01

s = "0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x3D,0xCB,0x81,0x07,0x00,0x00,0x00,0x00,0x00,0x11,0x01,0x03,0x80,0x6E,0x3E,0x78,0x0A,0xEE,0x91,0xA3,0x54,0x4C,0x99,0x26,0x0F,0x50,0x54,0x20,0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x1D,0x00,0x72,0x51,0xD0,0x1E,0x20,0x6E,0x28,0x55,0x00,0x53,0x6F,0x42,0x00,0x00,0x1E,0x01,0x1D,0x80,0x18,0x71,0x1C,0x16,0x20,0x58,0x2C,0x25,0x00,0x53,0x6F,0x42,0x00,0x00,0x9E,0x00,0x00,0x00,0xFC,0x00,0x54,0x58,0x2D,0x53,0x52,0x38,0x30,0x35,0x0A,0x20,0x20,0x20,0x20,0x00,0x00,0x00,0xFD,0x00,0x3B,0x3D,0x1E,0x2E,0x08,0x00,0x0A,0x20,0x20,0x20,0x20,0x20,0x20,0x01,0x5A"

s = "".join(map(lambda x : chr(int(x, 16)), s.split(",")))

f = open("edid.bin", "w")
f.write(s)
f.close()

Обратите внимание, что вам нужно удалить первые три поля из строки в .inf-файле: «HKR, EDID_OVERRIDE,« 0 », 0x01».

Чтобы убедиться, что результирующий файл EDID действителен, я использовал parse-edid (часть пакета read-edid):

tobin@thinktop:~/pathname/$ parse-edid edid.bin
parse-edid: parse-edid version 2.0.0
parse-edid: EDID checksum passed.

    # EDID version 1 revision 3
Section "Monitor"
    # Block type: 2:0 3:fc
    Identifier "TX-SR805"
    VendorName "ONK"
    ModelName "TX-SR805"
    # Block type: 2:0 3:fc
    # Block type: 2:0 3:fd
    HorizSync 30-46
    VertRefresh 59-61
    # Max dot clock (video bandwidth) 80 MHz
    # DPMS capabilities: Active off:no  Suspend:no  Standby:no

    Mode    "1280x720"  # vfreq 60.000Hz, hfreq 45.000kHz
        DotClock    74.250000
        HTimings    1280 1390 1430 1650
        VTimings    720 725 730 750
        Flags   "+HSync" "+VSync"
    EndMode
    Mode    "1920x540"  # vfreq 60.053Hz, hfreq 33.750kHz
        DotClock    74.250000
        HTimings    1920 2008 2052 2200
        VTimings    540 542 547 562
        Flags   "Interlace" "+HSync" "+VSync"
    EndMode
    # Block type: 2:0 3:fc
    # Block type: 2:0 3:fd
EndSection

Таким образом, он оказался действительным. Действительно, после перезагрузки X-сервера я смог войти в настройки Ubuntu Display и нажать «Detect Displays». Он видит мой поддельный дисплей «ONKYO Corporation 50» и счастливо управляет его на 1280x720. Требуется еще один X-сброс, чтобы все работало.

... И поэтому мы любим Linux. (-: [ ! d16]

4
задан 8 August 2011 в 16:16

21 ответ

Причина, по-видимому, связана с BIOS. Что-то изменило BIOS ... что вызвало эту проблему. Исправлено путем повторного отображения последнего образа BIOS с сайта поддержки Lenovo под Windows.

Я заметил, что в Windows произошла такая же проблема с прерываниями, что и процессор, который произошел из ACPI.sys

Единственное, что я установил до этого, это fglrx 11.7 update ... IDK, если это имеет к этому отношение, но это единственное, что я установил.

2
ответ дан 25 May 2018 в 19:26

Причина, по-видимому, связана с BIOS. Что-то изменило BIOS ... что вызвало эту проблему. Исправлено путем повторного отображения последнего образа BIOS с сайта поддержки Lenovo под Windows.

Я заметил, что в Windows произошла такая же проблема с прерываниями, что и процессор, который произошел из ACPI.sys

Единственное, что я установил до этого, это fglrx 11.7 update ... IDK, если это имеет к этому отношение, но это единственное, что я установил.

2
ответ дан 25 July 2018 в 21:29

причина, видимо, кроется в BIOS. Что-то изменилось в BIOS... что вызвало эту проблему. Фиксируется через перепрошить последней версии BIOS с сайта поддержки компании Lenovo под Windows.

я заметил, когда Windows была такая же проблема прерываний берет много ЦП, которые произошли, происходят из ACPI.sys

единственное, что я установил до этого произошло обновление fglrx от 11.7... ИДК, если это было ничего общего с ним, но это единственное, что я установил.

2
ответ дан 31 July 2018 в 13:04

Причина, по-видимому, связана с BIOS. Что-то изменило BIOS ... что вызвало эту проблему. Исправлено путем повторного отображения последнего образа BIOS с сайта поддержки Lenovo под Windows.

Я заметил, что в Windows произошла такая же проблема с прерываниями, что и процессор, который произошел из ACPI.sys

Единственное, что я установил до этого, это fglrx 11.7 update ... IDK, если это имеет к этому отношение, но это единственное, что я установил.

2
ответ дан 2 August 2018 в 03:07

Причина, по-видимому, связана с BIOS. Что-то изменило BIOS ... что вызвало эту проблему. Исправлено путем повторного отображения последнего образа BIOS с сайта поддержки Lenovo под Windows.

Я заметил, что в Windows произошла такая же проблема с прерываниями, что и процессор, который произошел из ACPI.sys

Единственное, что я установил до этого, это fglrx 11.7 update ... IDK, если это имеет к этому отношение, но это единственное, что я установил.

2
ответ дан 4 August 2018 в 18:59

Причина, по-видимому, связана с BIOS. Что-то изменило BIOS ... что вызвало эту проблему. Исправлено путем повторного отображения последнего образа BIOS с сайта поддержки Lenovo под Windows.

Я заметил, что в Windows произошла такая же проблема с прерываниями, что и процессор, который произошел из ACPI.sys

Единственное, что я установил до этого, это fglrx 11.7 update ... IDK, если это имеет к этому отношение, но это единственное, что я установил.

2
ответ дан 6 August 2018 в 03:20

Причина, по-видимому, связана с BIOS. Что-то изменило BIOS ... что вызвало эту проблему. Исправлено путем повторного отображения последнего образа BIOS с сайта поддержки Lenovo под Windows.

Я заметил, что в Windows произошла такая же проблема с прерываниями, что и многие процессоры, которые произошли из ACPI.sys

Единственное, что я установил до этого, было fglrx 11.7 update ... IDK, если это имеет к этому отношение, но это единственное, что я установил.

2
ответ дан 7 August 2018 в 21:04

Попробуйте выгрузить модуль ibm_acpi (источник)

0
ответ дан 25 May 2018 в 19:26

Вы можете попробовать загрузочные параметры Linux acpi=noirq, иногда я нахожу, что у меня такая же проблема. Я не знаю, почему, когда я добавил эти параметры, не более acpi прерывает.

0
ответ дан 25 May 2018 в 19:26

Вы можете попробовать загрузочные параметры Linux acpi=noirq, иногда я нахожу, что у меня такая же проблема. Я не знаю, почему, когда я добавил эти параметры, не более acpi прерывает.

0
ответ дан 25 July 2018 в 21:29

Попробуйте выгрузить модуль ibm_acpi (источник)

0
ответ дан 25 July 2018 в 21:29

Вы могли бы попробовать Linux загрузочные параметры acpi=noirq, иногда я нахожу у меня такая же проблема я не знаю, почему, когда я добавил эти параметры, не больше acpi прерываниями.

0
ответ дан 31 July 2018 в 13:04

попробуйте выгрузки модуля ibm_acpi (Источник)

0
ответ дан 31 July 2018 в 13:04

Вы можете попробовать загрузочные параметры Linux acpi=noirq, иногда я нахожу, что у меня такая же проблема. Я не знаю, почему, когда я добавил эти параметры, не более acpi прерывает.

0
ответ дан 2 August 2018 в 03:07

Попробуйте выгрузить модуль ibm_acpi (источник)

0
ответ дан 2 August 2018 в 03:07

Вы могли бы попробовать Linux загрузочные параметры acpi=noirq, иногда я нахожу у меня такая же проблема я не знаю, почему, когда я добавил эти параметры, не больше acpi прерываниями.

0
ответ дан 4 August 2018 в 18:59

Попробуйте выгрузить модуль ibm_acpi (источник)

0
ответ дан 4 August 2018 в 18:59

Вы можете попробовать загрузочные параметры Linux acpi=noirq, иногда я нахожу, что у меня такая же проблема. Я не знаю, почему, когда я добавил эти параметры, не более acpi прерывает.

0
ответ дан 6 August 2018 в 03:20

Попробуйте выгрузить модуль ibm_acpi (источник)

0
ответ дан 6 August 2018 в 03:20

Вы можете попробовать загрузочные параметры Linux acpi=noirq, иногда я нахожу, что у меня такая же проблема. Я не знаю, почему, когда я добавил эти параметры, не более acpi прерывает.

0
ответ дан 7 August 2018 в 21:04

Попробуйте выгрузить модуль ibm_acpi (источник)

0
ответ дан 7 August 2018 в 21:04

Другие вопросы по тегам:

Похожие вопросы: