Я хотел бы использовать внешний дисплей с FreeBSD 10.0 на HP Pavilion g7-2270us. Не важно, зеркально ли это или я должен выбрать один или другой.
Вот симптомы:
- Когда дисплей подключен к порту внешнего дисплея VGA, подключенный дисплей и внешний дисплей активны на экранах BIOS.
- Как только FreeBSD начинает загружаться, внешний VGA-дисплей больше не активен.
- После загрузки ожидаемое fnF4нажатие клавиши для переключения дисплея по умолчанию не оказывает никакого влияния (и не влияет F4само по себе), независимо от состояния «клавиш действия» в BIOS, т. Е. Нужно ли использовать модификатор или нет.
Другие заметки:
- В BIOS нет опций, которые бы соответствовали этой ситуации.
- Графические серверы не установлены, поэтому X / Wayland / etc. не имеет отношения к этому вопросу (например
xrandr
). - Встроенная графика Intel Core i3-3110M поддерживается в версиях ≤ 9.1.
grep
Пинг в pciconf
я нахожу:
vgapci0@pci0:0:2:0: class=0x030000 card=0x1843103c chip=0x01668086 rev=0x09 hdr=0x00
vendor = 'Intel Corporation'
device = '3rd Gen Core processor Graphics Controller'
class = display
subclass = VGA
bar [10] = type Memory, range 64, base 0x52000000, size 4194304, enabled
bar [18] = type Prefetchable Memory, range 64, base 0x80000000, size 268435456, enabled
bar [20] = type I/O Port, range 32, base 0x4000, size 64, enabled
cap 05[90] = MSI supports 1 message
cap 01[d0] = powerspec 2 supports D0 D3 current D0
cap 13[a4] = PCI Advanced Features: FLR TP
и вот еще несколько полезных вещей из dmesg
:
vgapci0: <VGA-compatible display> port 0x4000-0x403f mem 0x52000000-0x523fffff irq 16 at device 2.0 on pci0
agp0: <IvyBridge mobile GT2 IG> on vgapci0
agp0: aperture size is 256M, detected 65532k stolen memory
vgapci0: Boot video device
pci0: <simple comms> at device 22.0 (no driver attached)
isab0: <PCI-ISA bridge> at device 31.0 on pci0
isa0: <ISA bus> on isab0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
Очевидно, vgapci0
это прикрепленный экран. Тогда кажется, что vga0
это виновник, которого мы пытаемся заставить работать. Он находится на isa0
шине, обслуживаемой подключенным к нему isab0
мостом ISA-PCI pci0
. Действительно, копаясь в devinfo
мы находим:
isab0 pnpinfo vendor=0x8086 device=0x1e59 subvendor=0x103c subdevice=0x1843 class=0x060100 at slot=31 function=0 handle=\_SB_.PCI0.LPCB
isa0
sc0
vga0
I/O ports:
0x3c0-0x3df
I/O memory addresses:
0xa0000-0xbffff
что согласуется с вышеизложенным из dmesg
. Это устройство описано pciconf
как таковое:
isab0@pci0:0:31:0: class=0x060100 card=0x1843103c chip=0x1e598086 rev=0x04 hdr=0x00
vendor = 'Intel Corporation'
device = 'HM76 Express Chipset LPC Controller'
class = bridge
subclass = PCI-ISA
cap 09[e0] = vendor (length 12) Intel cap 1 version 0
features: AMT, 4 PCI-e x1 slots
dmidecode
перечисляет рассматриваемый физический порт соединителя:
Handle 0x0012, DMI type 8, 9 bytes
Port Connector Information
Internal Reference Designator: CN5001
Internal Connector Type: None
External Reference Designator: CRT
External Connector Type: DB-15 female
Port Type: Video Port
и стандартная графика 0x0166:
Handle 0x001D, DMI type 41, 11 bytes
Onboard Device
Reference Designation: Intel(R) Graphics 4000
Type: Video
Status: Enabled
Type Instance: 1
Bus Address: 0000:00:02.0
но ничего о мосте PCI-ISA. Так что, возможно, как предполагает Дэвид Кинг , проблема в том, что для устройства ISA VGA не загружается драйвер. Это объясняет, почему мы не видим его как none
запись в pciconf
списке - это не устройство PCI. Чего я не знаю, так это как получить больше информации об этом устройстве, чтобы даже выяснить, какой драйвер использовать, если это проблема под рукой.
dmesg
журнала выглядит, что рассматриваемое устройство - этоvga0: <Generic ISA VGA>...
начало поиска