tl; dr, я хотів би використовувати зовнішній дисплей з FreeBSD 10.0 на HP Pavilion g7-2270us. Не байдуже, чи це дзеркальне відображення чи мені доведеться вибрати те чи інше.
Ось симптоми:
- Коли дисплей підключено до зовнішнього порту VGA, на приєднаному дисплеї і зовнішній дисплей активні на екранах BIOS.
- Як тільки FreeBSD починає завантажуватися, зовнішній VGA-дисплей більше не працює.
- Після завантаження очікуване fnF4натискання клавіші для перемикання дисплея за замовчуванням не має ефекту (ані F4поодинці), незалежно від стану "клавіш дії" в BIOS, тобто потрібно використовувати модифікатор чи ні.
Інші примітки:
- У BIOS немає варіантів, які були б відповідні для даної ситуації.
- Не встановлено графічних серверів, тому X / Wayland / тощо. не має відношення до цього питання (наприклад
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>...
починає шукати там