Получение DVI работать через Lenovo USB Port Replicator в 12,10: Нестабильность и то, чтобы заставлять это использовать xorg.conf файл

Установка:

Компьютером является Lenovo Thinkpad SL500 с помощью выполнения Репликатора USB-порта LiveCD для Ubuntu 12.10.

Компьютер имеет вложение USB для портирования репликатора. Репликатор порта имеет DVI к преобразователю HDMI и присоединениям с помощью HDMI к ТВ Bravia Sony

Начальный признак:

Все функции репликатора порта (аудио, USB-порты, порт LAN) работают кроме видео. В dmesg получите следующую ошибку:

[drm:drm_edid_block_valid] *ERROR* EDID checksum is invalid, remainder is `<num>`

usb 2-4.1: DVI-I-1: EDID invalid.

Текущее состояние:

Никакая проблема, получающая EDID, но много катастрофических отказов и, не может только заставить это использовать экран displaylink частично даже если, вызвав его (больше деталей: посмотрите РЕДАКТИРОВАНИЕ 3).

Текущее заключение:

Так, после записанного времени мои заключения:

  1. это не Plug and Play
  2. это, вероятно, могло работать, но я все еще пропускаю что-то
  3. это не очень стабильно

Все еще приветствовал бы любой вход от любого, который проходит это.

Сначала поиск и устранение неисправностей:

Поиск и устранение неисправностей до настоящего времени:

  1. При использовании Windows Vista внешний монитор работает через репликатор USB-порта
  2. При включении внешнего монитора непосредственно в порт HDMI, это хорошо работает
  3. При включении другого ноутбука (lenovo thinkpad x61t), который запускает Ubuntu 12.10 исходно, получите ту же ошибку. Отметьте все тестирование, которое имеет дело с загрузкой пакетов, и компиляция были сделаны с этим ноутбуком, так как это работает 12.10 исходно.

От вышеупомянутого:

  • без проблем с внешним монитором (так как это работает с помощью HDMI и через репликатор порта с окнами),
  • без проблем с одним компьютером (то же поведение на другом компьютере)
  • без проблем с видеокартой (так как это работает с помощью HDMI и через репликатор порта с окнами),
  • без проблем с репликатором порта (так как это работает с окнами),

Кажется, связан конкретно с распознаванием DVI через репликатор USB-порта с Ubuntu.

Кто-либо заставил видео работать через репликатор USB-порта? Если так, какая конфигурация требуется?

Это - последняя вещь, я должен заставить работу убеждать мою жену переключаться от Windows до Ubuntu на ее компьютере. Я был так близок!

EDIT1: второй поиск и устранение неисправностей

Попытка использовать xf86-displaylink-0.3 драйвер. Существует много сообщений на этом здесь и в другом месте. К сожалению, я получаю ошибку компиляции, которая согласно некоторым сайтам происходит из-за обновления Xorg. Кто-либо столкнулся с фиксацией? Кажется, что загрузка этого драйвера может быть шагом, я должен закончить ошибку выше и на следующем шаге того, чтобы заставлять это работать.

Вот ошибка:

make  all-recursive
make[1]: Entering directory `/home/rob/xf86-video-displaylink'
Making all in src
make[2]: Entering directory `/home/rob/xf86-video-displaylink/src'
/bin/bash ../libtool --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I..    -fvisibility=hidden -I/usr/include/pixman-1 -I/usr/include/libdrm -I/usr/include/xorg -I/usr/include/X11/dri   -g -O2 -MT displaylink.lo -MD -MP -MF .deps/displaylink.Tpo -c -o displaylink.lo displaylink.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -fvisibility=hidden -I/usr/include/pixman-1 -I/usr/include/libdrm -I/usr/include/xorg -I/usr/include/X11/dri -g -O2 -MT displaylink.lo -MD -MP -MF .deps/displaylink.Tpo -c displaylink.c  -fPIC -DPIC -o .libs/displaylink.o
displaylink.c: In function ‘DisplayLinkFreeRec’:
displaylink.c:165:2: warning: ‘Xfree’ is deprecated (declared at /usr/include/xorg/os.h:234) [-Wdeprecated-declarations]
displaylink.c: In function ‘DisplayLinkProbe’:
displaylink.c:204:10: warning: assignment discards ‘const’ qualifier from pointer target type [enabled by default]
displaylink.c:226:28: warning: assignment from incompatible pointer type [enabled by default]
displaylink.c:237:2: warning: ‘Xfree’ is deprecated (declared at /usr/include/xorg/os.h:234) [-Wdeprecated-declarations]
displaylink.c: In function ‘DisplayLinkPreInit’:
displaylink.c:285:7: error: ‘struct _ScrnInfoRec’ has no member named ‘racMemFlags’
displaylink.c:285:23: error: ‘RAC_FB’ undeclared (first use in this function)
displaylink.c:285:23: note: each undeclared identifier is reported only once for each function it appears in
displaylink.c:285:32: error: ‘RAC_COLORMAP’ undeclared (first use in this function)
displaylink.c:285:47: error: ‘RAC_CURSOR’ undeclared (first use in this function)
displaylink.c:285:60: error: ‘RAC_VIEWPORT’ undeclared (first use in this function)
displaylink.c:287:7: error: ‘struct _ScrnInfoRec’ has no member named ‘racIoFlags’
displaylink.c:290:2: warning: passing argument 3 of ‘fbdevHWInit’ discards ‘const’ qualifier from pointer target type [enabled by default]
In file included from displaylink.c:52:0:
/usr/include/xorg/fbdevhw.h:21:23: note: expected ‘char *’ but argument is of type ‘const char *’
displaylink.c:351:2: warning: ‘Xalloc’ is deprecated (declared at /usr/include/xorg/os.h:215) [-Wdeprecated-declarations]
displaylink.c: In function ‘DisplayLinkScreenInit’:
displaylink.c:474:2: warning: passing argument 1 of ‘fbdevHWAdjustFrame’ makes pointer from integer without a cast [enabled by default]
In file included from displaylink.c:52:0:
/usr/include/xorg/fbdevhw.h:50:23: note: expected ‘ScrnInfoPtr’ but argument is of type ‘int’
displaylink.c:474:2: error: too many arguments to function ‘fbdevHWAdjustFrame’
In file included from displaylink.c:52:0:
/usr/include/xorg/fbdevhw.h:50:23: note: declared here
displaylink.c:554:23: warning: assignment from incompatible pointer type [enabled by default]
displaylink.c: In function ‘DisplayLinkCloseScreen’:
displaylink.c:575:2: warning: passing argument 1 of ‘pScreen->CloseScreen’ makes pointer from integer without a cast [enabled by default]
displaylink.c:575:2: note: expected ‘ScreenPtr’ but argument is of type ‘int’
displaylink.c:575:2: error: too many arguments to function ‘pScreen->CloseScreen’
make[2]: *** [displaylink.lo] Error 1
make[2]: Leaving directory `/home/rob/xf86-video-displaylink/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/rob/xf86-video-displaylink'
make: *** [all] Error 2

EDIT2: Третий поиск и устранение неисправностей:

Мне удалось добраться до зеленого экрана. Я должен был изменить оператор возврата функции DisplayLinkCloseScreen прокомментируйте включать оператор для fbdevhw.h в исходном коде.

Оператор возврата теперь:

    return pScreen->CloseScreen;

Это установило драйвер успешно. (Предупреждение: Я не Разработчик программного обеспечения.)

Однако после создания xorg.conf вид файла под xorg.conf.d, Я все еще неудачен в том, чтобы заставлять монитор displaylink функционировать. displaylink распознан, но затем удален (как замечено из журнала).

Вот текущий файл конфигурации Xorg, который имел несколько тонких изменений:

Section "Device"
    Identifier  "Configured Video Device"
    Driver      "intel"
    BusID       "PCI:00:02:0"
EndSection

Section "Monitor"
    Identifier  "Configured Monitor"
EndSection

Section "Screen"
    Identifier  "Default Screen"
    Monitor     "Configured Monitor"
    Device      "Configured Video Device"
EndSection

#################################################

Section "ServerLayout"
        Identifier      "Server Layout"          
        Screen  1       "Default Screen" 0 0
        Screen  0       "DisplayLinkScreen" rightof "Default Screen"
    Option          "Xinerama" "on"
    Option      "Clone" "off"
EndSection

#################################################

Section "Files"
        ModulePath      "/usr/lib/xorg/modules"
        ModulePath      "/usr/local/lib/xorg/modules"
    ModulePath  "/usr/local/lib/xorg/modules/drivers"
EndSection

############### DisplayLink Stuff
###############                                                                 

Section "Device"
        Identifier      "DisplayLinkDevice"
        driver          "displaylink"
        Option  "fbdev" "/dev/fb1"
    Option "ModeValidation" "NoEdidModes"
EndSection

Section "Monitor"
        Identifier      "DisplayLinkMonitor"
    Option   "ExactModeTimingsDVI" "TRUE"
    HorizSync 15.0 - 70.0
    VertRefresh 58.0 - 62.0
    Modeline     "1024x768" 65.00 1024 1048 1184 1344 768 771 777 806 -h
sync -vsync
EndSection

Section "Screen"
        Identifier      "DisplayLinkScreen"
    Device          "DisplayLinkDevice"
        Monitor         "DisplayLinkMonitor"
        SubSection "Display"
                Depth   16
        Modes   "1024x768"
        EndSubSection
EndSection

Вот часть в Xorg.0.log, где это, кажется, моему неопытному глазу отступление displaylink:

[    33.383] (II) LoadModule: "displaylink"
[    33.436] (II) Loading /usr/local/lib/xorg/modules/drivers/displaylink_drv.so
[    33.444] (II) Module displaylink: vendor="X.Org Foundation"
[    33.445] (II) DL: driver for : displaylink
[    33.445] (WW) Falling back to old probe method for displaylink
[    33.484] (II) UnloadModule: "displaylink"
[    33.484] (II) Unloading displaylink

Следующий сайт был полезен в получении туда, где я в настоящее время: http://mulchman.org/blog/?p=90

Какие-либо идеи?

EDIT3: четвертый поиск и устранение неисправностей

Хорошо, после намного большего количества работы и намного более перемещающийся (существует слишком много людей, пробующих это для предоставления кредита; к сожалению, ни у кого, что я нашел, не было хорошего чистого ответа для 12,10), я понял несколько вещей:

  1. экран не должен быть зеленым. Это будет зелено с udlfb (который помещен в черный список исходно в 12,10), и не покажет цвета с udl в 12,10.

  2. должны не обязательно загрузить любые модули за пределами 12,10. На самом деле, если Вы делаете, как показано выше, это вызывает проблемы в 12,10, так как API изменился для xorg 1.13, и Вы получаете много проблем компиляции

  3. при попытке изменить предыдущие модули для работы в 12,10 я закончил тем, что получил отказы сегментации в Xorg

  4. использование собственных 12,10 возможностей, не являются ли с udl или udlfb Plug and Play

  5. Я могу заставить внешний монитор работать с помощью udl или udlfb в тестовой установке, где я вызываю использование xorg.conf файла путем выполнения a startx -- :2 -config <name of xorg.conf file>. Однако:

    • это часто приводит к катастрофическим отказам Xorg
    • когда это не делает я могу только заставить монитор displaylink работать и терять мой монитор ноутбука на :2; также, я не получаю Единицу на мониторе displaylink
    • Я могу только заставить это использовать монитор displaylink с startx команда; иначе это не видит, что displaylink контролирует, ни использует его несмотря на присутствие того же conf файла в /etc/X11/xconf.d.
3
задан 9 April 2013 в 21:37

0 ответов

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

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