Xorg - Intel HD Graphics - intel driver not working

Multiple problems on PC-BSD 10.1.1 using an Acer E5-511 laptop with an Intel N3530 SoC. Previous discussion on PC-BSD forums.

1. I have "Intel HD Graphics" on-chip video. VESA works. When testing another driver through the Xorg configuration wizard, neither of the intel or the intel-3d drivers work.

This appears to be a xorg.conf file created by the Xorg configuration wizard:
http://pastebin.com/gJffU4Q2

A post from 2011 says that "X-window can't get 1366x768 resolution with Intel HD Graphics of i3." I believe that might be my screen resolution. Is this still a problem with Xorg?


2. I do not have an xorg.conf file. Xorg -configure fails with the error:

Code:
Number of created screens does not match number of detected devices.

The pastebin linked above shows one screen, one monitor, and one device for each driver intel, fbdev, and vesa.

dbus and hald are enabled on boot.

According to someone on the gentoo forums, "X -configure does not work with KMS." This might explain the immediate cause but not the entire cause. According to the Intel GPU page, KMS is a modesetting method used by newer Intel drivers.


3. The Xorg configuration wizard does not list any monitor or video card. These fields are greyed out.


4. The Intel GPU page suggests turning on hw.dri.debug. I do not have hw.dri.* in sysctl.

Code:
sysctl: unknown oid 'hw.dri.debug': No such file or directory

I have the dri package installed. The i915kms, drm, and drm2 kernel modules are loaded.


5. The framebuffer module fails with the error:

Code:
[   140.729] (EE) LoadModule: Module fbdevhw does not have a fbdevhwModuleData data object.
-----

Settings:

malfunctioning xorg.conf (repeated from above).
It may be notable that nothing about the monitor is detected.

pciconf -lvb
Code:
vgapci0@pci0:0:2:0:     class=0x030000 card=0x09051025 chip=0x0f318086 rev=0x0e hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'ValleyView Gen7'
    class      = display
    subclass   = VGA
    bar   [10] = type Memory, range 32, base 0x90000000, size 4194304, enabled
    bar   [18] = type Prefetchable Memory, range 32, base 0x80000000, size 268435456, enabled
    bar   [20] = type I/O Port, range 32, base 0x2050, size 8, enabled
lspci -vv
Code:
00:02.0 VGA compatible controller: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Graphics & Display (rev 0e) (prog-if 00 [VGA controller])
        Subsystem: Acer Incorporated [ALI] Device 0905
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
        Latency: 0
        Interrupt: pin A routed to IRQ 16
        Region 0: Memory at 90000000 (32-bit, non-prefetchable)
        Region 2: Memory at 80000000 (32-bit, prefetchable)
        Region 4: I/O ports at 2050
        Capabilities: [d0] Power Management version 2
                Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
        Capabilities: [90] MSI: Enable- Count=1/1 Maskable- 64bit-
                Address: 00000000  Data: 0000
        Capabilities: [b0] Vendor Specific Information: Len=07 <?>
The Intel driver is supposed to support HD Graphics:
Code:
[   139.058] (II) intel: Driver for Intel(R) Integrated Graphics Chipsets:
        i810, i810-dc100, i810e, i815, i830M, 845G, 854, 852GM/855GM, 865G,
        915G, E7221 (i915), 915GM, 945G, 945GM, 945GME, Pineview GM,
        Pineview G, 965G, G35, 965Q, 946GZ, 965GM, 965GME/GLE, G33, Q35, Q33,
        GM45, 4 Series, G45/G43, Q45/Q43, G41, B43, HD Graphics,
        ...
What other utilities are available to diagnose this issue?

Is there any way to tell what the intel driver is trying to do and why it is not working?
 
1. I have "Intel HD Graphics" on-chip video. VESA works. When testing another driver through the Xorg configuration wizard, neither of the intel or the intel-3d drivers work.

No idea what the wizard or "intel-3d" drivers are. We do not have those in FreeBSD, they might be PC-BSD specific.

A post from 2011 says that "X-window can't get 1366x768 resolution with Intel HD Graphics of i3." I believe that might be my screen resolution. Is this still a problem with Xorg?

No. There is more than one problem here. It starts with Intel making the absolute worst choices to name their video circuitry. Next, it was not a problem with the Intel driver, but the vesa driver that is used as a fall-back when the intel driver does not support the video chipset. vesa cannot be counted on to support anything over 1024x768, although it does on some systems.

2. I do not have an xorg.conf file. Xorg -configure fails with the error:

Code:
Number of created screens does not match number of detected devices.

This is due to multiple video devices (intel and vesa) being found for the same monitor.

The pastebin linked above shows one screen, one monitor, and one device for each driver intel, fbdev, and vesa.

Don't use fbdev.

According to someone on the gentoo forums, "X -configure does not work with KMS."

I don't know about Gentoo, but that is not correct on FreeBSD. X -configure continues to mean "please produce an unnecessary configuration file filled with unnecessary defaults that would have been autodetected anyway.".

3. The Xorg configuration wizard does not list any monitor or video card. These fields are greyed out.

No idea, that is not a FreeBSD thing. But monitors are detected

4. The Intel GPU page suggests turning on hw.dri.debug. I do not have hw.dri.* in sysctl.

Code:
sysctl: unknown oid 'hw.dri.debug': No such file or directory

I have the dri package installed. The i915kms, drm, and drm2 kernel modules are loaded.

It does not apply unless a DRI-capable driver is used. vesa is not going to provide it.

5. The framebuffer module fails with the error:

I am not aware of the framebuffer driver being usable on FreeBSD.

Is there any way to tell what the intel driver is trying to do and why it is not working?

/var/log/Xorg.0.log, usually. For now, I would recommend removing any existing xorg.conf and creating /usr/local/etc/X11/xorg.conf containing nothing but a Device section with the appropriate driver:
Code:
Section "Device"
        Device "intel"
EndSection

If that does not work, try vesa for the device instead.
 
The drm driver from compiling into the kernel from source seems to be broken. This might be related to your problem. But the driver does work when its not compiled into the kernel, it otherwise loads as a module automatically.

I commented it out, and the drm specific driver that depends on it, then rebuilt it, or used the generic kernel
/usr/src/sys/amd64/conf/CUSTOM
Code:
#device  drm
 
Code:
Section "Device"
        Device "intel"
EndSection
You mean Driver "intel". And it also complains there must be "Identifier" string.
As in:
Code:
Section "Device"
       Identifier "card0"
       Driver "intel"
EndSection

Maybe the Tangaroa forgot to install x11-drivers/xf86-video-intel? I just copiedd my 11-CURRENT installation from my desktop over to laptop. I imagined it would be enough to just kldload i915kms.ko & friends. I honestly looked up every HOWTO on KMS and all that, and never ever did it make any mentioning of the need to install a separate x11 driver to make it work. Sure, it should be obvious, but after all that messing around with KMS it left me an impression that somehow it would work in a different way from, say , nVidia drivers.
 
I'll provide some input.
I've tried installs of x11/xorg vs x11/xorg-minimal. xorg-minimal works with some windowmanagers, and a few that work aren't functional as they should be. Once I build full xorg on top of the minimal, this problem goes away.

Another difference is, with xorg-minimal I can tab between different virtual consoles. When I build the full port on top of it, the ability goes away. Assuming it worked with the vesa driver, but it's not easy to do with the ati driver. I've read about how to fix the ability to tab between virtual windows, and I've tried it before (implicitly disabling fb or syscons). I haven't gotten that ability to work, so that's how I run it, but there are maybe combinations I haven't tried. The updates change often, and I'm not sure what is the consistent way, since it has changed before.

Of course the difference in the case I described is selecting which dependencies.
 
If you want anything depending on X to work without problems, install x11/xorg. "Minimal" in this case means "I enjoy debugging X dependencies."

Yes, X installs a lot of packages. They are not very large, it's just a number.
 
Are you asking if xorg-minimal breaks X Windows? It may break some functionality/features, but it doesn't damage anything.

Minimal works with the vesa driver. If you click on x11/xorg-minimal it shows a vesa dependency.
 
I have used the information above to configure Xorg/xfce4 on an old HP ProDesk 600 G2 with a Intel HD Graphics 530 running FreeBSD 12.2.

I used pkg to install both x11-drivers/xf86-video-intel and graphics/drm-kmod and made the rc.conf and boot module tweaks recommended in the pkg install output. Also added user to group video. Very satisfied with the result.
 
Last edited:
Back
Top