These two commits did not change anything that would cause the driver nolonger working.
I do have one note though: If on the latter version you did use the newer accelerant, but -not- the kernel driver you’d get into trouble, because the size of the shared_info memory was changed…
Of course that goes for all newer versions. Did you try a clean install of the latest nightly for instance?
Hi, I have a small update in the ticket. The driver is updated in git so as soon as the nightlies are back up it can be easily tested. Just before the latest update in git the refreshrate was not programmed to something other the default modelines provided, so the driver was not listening to the screenprefs panel for this.
That’s fixed now…
If you want you can test the driver I just added to the ticket (x64). This contains mods not yet committed even, still testing here. Will place it in git after that.
Update: all OK, tested on G45 (gen4) and IvyBridge (gen7 graphics).
Update again: see hrev55517 in git. This is as is attached to the ticket (same version).
No, i don’t think so but I’m not sure about that. Anyhow currently screen connected detection and dpms off are incompatible. Can be fixed by keeping some extra shared-info. I’ll have a second look at that at some point indeed.
Starting with https://git.haiku-os.org/haiku/tag/?h=hrev55608 the intel_extreme driver gained more support for later generation 7, generation 8 and generation 9 graphics cards, specifically for the DDI interface that these chipsets contain.
These ports are the only ones scanned now (plus the analog port if it exists) as they seem responsibe for all digital output kinds: Displaypanel (DP), HDMI and DVI.
On desktop systems where on generation 9 or later there are still analog VGA connectors, it’s signals are generated with the help of an on-board external active converter: DP to VGA, connected to the eDP chipset output (on laptops these are used for the internal panel, eDP = embedded DP). The connection between the two is a real DP connection, which means for now, as we don’t yet have support for DP style DDC/EDID channels, screens on the analog connection are not yet found. If it’s the only connected screen, output will probably work though.
Please note that you cannot yet set other resolutions than the boot resolution. What does work is:
Next up I’ll try to complete setting resolution on these systems, I guess after that more generation 8 and 9 ID’s can be set active in the driver. Though I guess for the CPU memory interface people will have to report the chip IDs on their systems, so they can be added to the GART Intel driver: that works together with the gfx driver for memory access.
If you are going to test the update, be sure to send some feedback…
Doesn’t look like it, but I can’t exactly locate all intel docs: ‘command reference registers’ should contain the registers for modesetting, but there’s no DDI to be found in this series, so it works differently here, or the docs are incomplete.
The ID is also not in the intel_extreme driver. I guess you could try adding it for a test but I don’t expect much at this point.
Update:
so this goes for the entire ‘line’ of Cherryview/Braswell (Gen8LP architecture).
Apollo Lake though (Gen9LP architecture) -does- have DDI interfaces, so looks like this might work.
I think that my device 8086:0166 is not in intel_gart.cpp, but to add it, I need to understand what the display_id in the struct is.
Intel gfx driver lists it as: IvyBridge Mobile GT2 but the line for it in intel_gart is:
{0x0154, 0x0166, INTEL_MODEL_IVBGM, “IvyBridge Mobile GT2”},
where the first value is the value that should match 0166.
So I probably need to add a similar line with a display_id (second value) or this line has wrong values as second value is 0x0166…