You are not logged in.

#1 2012-07-03 23:32:12

iqmaster
Member
Registered: 2012-04-17
Posts: 8

Intel PowerVR GMA 3600/3650 linux driver released!

Greetings,

Intel finally released the official Linux GMA 3600/3650 driver.

Anyone has one can test it on their machine and give their feed back.

Download Center

Release notes

http://downloadmirror.intel.com/21519/e … enotes.pdf

The driver is intened for fedora. If someone can make it work on arch would be awesome.


Thanks

Last edited by iqmaster (2012-07-03 23:56:18)

Offline

#2 2012-08-08 17:44:37

axs
Member
Registered: 2009-01-23
Posts: 71
Website

Re: Intel PowerVR GMA 3600/3650 linux driver released!

Ok, I managed to make it work in Arch.
Kinda.

Here's what I have now:

+ kernel module loads, modesetting works
+ brightness control works, hurray!
+ X module loads, X server starts and apparently works well in 2D
+ suspend/resume works
- glxgears show a blank window while complaining about PVRDRIMakeCurrentGC/GLMakeCurrentGC failure
- mplayer -vo vaapi crashes X; SIGSEGV at address 0, stack dump doesn't show anything immediately useful

So basically the only improvement over the mainline kernel driver is brightness control.

Aside from that, the bundle is a major PIA to install in Arch.

The (GPLed, unless I'm mistaken) kernel driver is incompatible with the recent ttm_backend / ttm_tt merge, so it can't be built with linux-3.5.x/3.4.x. Maybe also 3.3.x, I'm not sure yet. The rest doesn't work without the kernel driver.
The changes needed seem to be relatively simple, but I'm not familiar with the DRM things at all, so I got stuck around memory management code.
Dunno, maybe I'll try to push it further, or maybe not. Maybe I'll have to wait till somebody with a better knowledge will start working on it.

The closed-source userspace part is compiled for xorg 1.11 and linked to libudev.so.0. How nice of them.

My final configuration was: linux-3.2.13-1-ARCH, xorg-server-1.11.4 (w/ relevant xf86-* modules) and libudev.0.13.1 from udev-182, with the rest being current up-to-date Arch system. I think I'll upload PKGBUILDs to AUR later

Last edited by axs (2012-08-09 10:30:11)

Offline

#3 2012-08-09 01:25:10

DoctorSamulus
Member
Registered: 2010-11-04
Posts: 53

Re: Intel PowerVR GMA 3600/3650 linux driver released!

Oh my god you're awesome! I actually just went out yesterday and bought this great 189$ netbook that has this GPU. I was sad when I found out the graphic support was essentially nothing, I've been running monsterwm + netbook-kernel + vesa which is actually surprisingly usable, I can even watch my 720p Black Dynamites with framedrop and the performance is still pretty good. Is there anything I can do to help test it / work on it?

Offline

#4 2012-08-09 11:26:29

axs
Member
Registered: 2009-01-23
Posts: 71
Website

Re: Intel PowerVR GMA 3600/3650 linux driver released!

Ok, re-checked the guidelines, no way this is going to AUR. Not yet, at least.
Let's keep it in this thread until it's clear what to do about the whole thing.

The packages are here: ftp://109.254.56.47/cedarview/
Not listed there is xorg-server-1.11.x and relevant xf86-input packages; I got mine from http://arm.konnichi.com/2012/01/05/extra/os/i686/

How to build the packages

Build and install linux32, linux32-headers. That's repacks of older mainline Arch packages from arm.konnichi.com, so it won't take much time.
Build and install libudev0.
Build cedarview.
Optionally: remove linux32-headers

How to use the packages

0. Make sure the system boots into text console, not X!
(initdefault:3 / whatever systemd equivalent of init 3 is)

1. Install xorg-server-1.11.x and matching xf86-input-{evdev,synaptics}, xf86-video-fbdev.
If possible, try to start it to make sure it works. You'll probably need to install libudev0 at this point.

2. Set up the kernel. Install linux32, run

    depmod 3.2.13-1-ARCH
    mkinitcpio -p linux32

to build initrd image (linux32 doesn't do it during installation) and update bootloader configuration to use /boot/vmlinuz-linux32 and /boot/initramfs-linux32.img
Reboot with linux32 to make sure it works.
It is not necessary to install linux32-headers unless you're rebuilding cedarview-kernel.

3. Install cedarview-kernel, cedarview-userspace, cedarview-libwsbm, cedarview-vaapi.
With the new kernel, run

    depmod 3.2.13-1-ARCH
    modprobe cedarview_gfx

If everything goes well, the console should change resolution to native.
Start X, make sure it works, examine /var/log/Xorg.0.log to make sure pvr driver is loaded.
Should be something like this:

[  1061.031] (II) pvr: Driver for PowerVR chipsets: PowerVR SGX
(...)
[  1061.124] (II) Loading /usr/lib/xorg/modules/drivers/pvr_drv.so
(...)
[  1061.311] (II) pvr(0): source head @cdv-meego_1.2.0-rc19.4-1-g31af076
[  1061.311] (II) pvr(0): Creating default Display subsection in Screen section
	"Default Screen Section" for depth/fbbpp 24/32
(...)
[  1061.311] (**) pvr(0): Option "FlipChain" "On"
[  1061.312] (**) pvr(0): Option "SoftEXA" "Off"
[  1061.312] (**) pvr(0): Option "DRIDisableVSync" "False"
(...)
[  1061.746] (II) pvr(0): [DRI2] Setup complete
[  1061.746] (II) pvr(0): [DRI2]   DRI driver: pvr

4. Boot-time initialization. Add

    MODULES=(cedarview_gfx)

to /etc/mkinitcpio.d/linux32.preset and rebuild the initrd:

    mkinitcpio -p linux32

Reboot to make sure the module is loaded during boot.

Setting backlight brightness

echo 100000 > /sys/class/backlight/psb_intel_backlight/brightness

The driver uses huge values, ~1000 times what i915 has. The max in my case was ~1,700,000.
ACPI backlight (/sys/class/backlight/acpi_video0) may be there too, but just like with i915 it will probably provide 10 to 15 levels with really high minimum.

Using fbdev

To run X with fbdev driver, delete /etc/X11/xorg.conf.d/cdv-psb.conf or rename it to cdv-psb.conf.tmp
Note that with cdv-psb.conf in place, the module will be loaded even with mainline 3.4 kernel, fail to init (because of incompatible drm backend) and crash X, preventing fbdev from starting.

HighMem patch

I skipped kernel-ttm-clear-high.patch, since it should only be relevant for netbooks with more than 4G ram and it complicates things.

Last edited by axs (2012-08-09 11:38:22)

Offline

#5 2012-08-09 11:31:19

axs
Member
Registered: 2009-01-23
Posts: 71
Website

Re: Intel PowerVR GMA 3600/3650 linux driver released!

Oh, also: DoctorSamulus, there's absolutely no need to use vesa. With mailline Arch kernel, gma500 drm module and fbdev X module should give you native resolution and properly working X. I'm not sure about kernel-netbook but it's 3.4 too, so I guess it's the same. Btw, thanks for reference, I think I'll need to check that.
The only critical problem with gma500 is its missing backlight control.

Last edited by axs (2012-08-09 11:39:07)

Offline

#6 2012-08-09 23:11:05

DoctorSamulus
Member
Registered: 2010-11-04
Posts: 53

Re: Intel PowerVR GMA 3600/3650 linux driver released!

I setup the drivers from the cedarview repo and its working AWESOME now. mplayer-vaapi crashes on my netbook as well but I don't think I need it. I can already see the improvement with just mplayer2, 1080p plays flawlessly *_*.  I do have two problems now though,  text in rxvt renders painfully slow (but just rxvt, xterm / aterm are fine, I'd rather use urxvtd though because mem usage) and my trackpad isn't working now atm, I only use my trackpad for minetest anyway though. I'm pretty sure the trackpad issue is just a mismatched xorg-server package version & xf86-input-synaptics version though.

EDIT: It looks like the issue isn't just limited to urxvt. I think it has something to do with xft font rendering in general..

Last edited by DoctorSamulus (2012-08-09 23:40:35)

Offline

#7 2012-08-12 03:57:03

DoctorSamulus
Member
Registered: 2010-11-04
Posts: 53

Re: Intel PowerVR GMA 3600/3650 linux driver released!

Info Bump! I found a repo that may be of use: https://github.com/thomas001/cdv

Offline

#8 2012-08-13 10:36:30

axs
Member
Registered: 2009-01-23
Posts: 71
Website

Re: Intel PowerVR GMA 3600/3650 linux driver released!

Cool, that looks promising.
I see changes to ttm_backend_func in imgv/psb_buffer.c, that's the place where I got stuck.

Offline

#9 2012-08-14 11:47:10

ShadowPrince
Member
From: Ukraine
Registered: 2012-03-28
Posts: 41

Re: Intel PowerVR GMA 3600/3650 linux driver released!

Thanks to axs, installed driver from him.
Results: X starts, driver loads, xrandr see my external monitor.
Bad: glxgears shows only black screen, super meat boy (linux) dont start (segmentation fault in pvr driver), X process occupies near 30-40 (up to 80) % of cpu (by htop), envirounment works much slower than with fbdev.
Currently unusable for me.

Offline

#10 2012-08-14 11:51:29

ShadowPrince
Member
From: Ukraine
Registered: 2012-03-28
Posts: 41

Re: Intel PowerVR GMA 3600/3650 linux driver released!

Also, with fbdev driver I find solution for controling backlight:

setpci -s 00:02.0 F4.B=XX

Where XX is number from 0 to FF.

Offline

#11 2012-08-14 20:06:55

axs
Member
Registered: 2009-01-23
Posts: 71
Website

Re: Intel PowerVR GMA 3600/3650 linux driver released!

Patched kernel module by thomas001 for linux-3.5.1 (aka testing/linux) uploaded to ftp://109.254.56.47/cedarview/
I don't have the hardware at hand right now, so please somebody try it and report results.
Userspace parts remain the same.

Commit messages on github indicate there's already 1.0.2 bundle somewhere, but I haven't seen it yet.

Offline

#12 2012-08-15 07:55:52

ShadowPrince
Member
From: Ukraine
Registered: 2012-03-28
Posts: 41

Re: Intel PowerVR GMA 3600/3650 linux driver released!

axs wrote:

Patched kernel module by thomas001 for linux-3.5.1 (aka testing/linux) uploaded to ftp://109.254.56.47/cedarview/
I don't have the hardware at hand right now, so please somebody try it and report results.
Userspace parts remain the same.

Commit messages on github indicate there's already 1.0.2 bundle somewhere, but I haven't seen it yet.

Strange, but after installing 3.5 and doing all steps again, 3.5 kernel says that there is no module named cedarview_gfx:

FATAL: Module cedarview_gfx not found.

Without reinstalling package, 3.2 says, that everything allright.
My actions:
1. Installing testing/linux
2. Installing new cedarview-kernel
3. depmod 3.5.1-1-ARCH
4. modprobe (fail)

Offline

#13 2012-08-17 18:48:01

axs
Member
Registered: 2009-01-23
Posts: 71
Website

Re: Intel PowerVR GMA 3600/3650 linux driver released!

Oh, sorry, my bad, put it to /lib/modules/linux-3.5.1-1-ARCH instead of /lib/modules/3.5.1-1-ARCH.
Package updated, should work now.

Last edited by axs (2012-08-17 18:48:20)

Offline

#14 2012-08-18 00:37:54

DoctorSamulus
Member
Registered: 2010-11-04
Posts: 53

Re: Intel PowerVR GMA 3600/3650 linux driver released!

Hey your server is down. I can't download the packages from it. Is there any way to get this to work on the most current version of xorg-server? My touchpad doesn't work at all with the downgraded synpatics. Nevermind! Touchpad works on 3.5 awesome! I just need the new cedarview-userspace so I can use the pvr driver now.

Last edited by DoctorSamulus (2012-08-18 00:46:01)

Offline

#15 2012-08-18 09:02:04

dnaeon
Member
From: Sofia
Registered: 2012-08-18
Posts: 3
Website

Re: Intel PowerVR GMA 3600/3650 linux driver released!

axs wrote:

Patched kernel module by thomas001 for linux-3.5.1 (aka testing/linux) uploaded to ftp://109.254.56.47/cedarview/
I don't have the hardware at hand right now, so please somebody try it and report results.
Userspace parts remain the same.

Commit messages on github indicate there's already 1.0.2 bundle somewhere, but I haven't seen it yet.

Hello,

The above mentioned link is not available.

axs, if you need a place to host the files I can provide you with some space on my server.

I have a few questions regarding the driver:

- Do i need xorg-server-1.11 or can use the latest version?
- Does HDMI/VGA ports work using this driver?

Thanks for your work on this, axs.

Offline

#16 2012-08-18 13:04:29

ShadowPrince
Member
From: Ukraine
Registered: 2012-03-28
Posts: 41

Re: Intel PowerVR GMA 3600/3650 linux driver released!

VGA works correctly, dont test HDMI. Cant say about new xorg, by the way - packages still have dependencies on old xorg.
Packages here - http://rghost.ru/39856793, kernel module with *tomas* in filename should work with 3.5, but need to fix in https://bbs.archlinux.org/viewtopic.php … 6#p1147856 way.

Offline

#17 2012-08-18 15:56:18

axs
Member
Registered: 2009-01-23
Posts: 71
Website

Re: Intel PowerVR GMA 3600/3650 linux driver released!

The server is back online. ISP issues, and I only noticed it something like an hour ago.

dnaeon: Binary X drivers have X ABI version 1.11, and current xorg-server-1.13 won't load any driver with ABI version other than 1.13.
You can try skipping this check by adding

Section "ServerFlags"
     Option "IgnoreABI" "true"
EndSection

to xorg.conf, chances are it will work. I haven't tried it yet.

Feel free to mirror the repository, it would be nice to have a backup of some sort in case my server goes down.
I'll try to keep it online in any case, but it's not a super reliable installation, just a puny home server.
On the downside, if 109.254.56.47 is down so most likely am I.

Offline

#18 2012-08-18 17:31:14

axs
Member
Registered: 2009-01-23
Posts: 71
Website

Re: Intel PowerVR GMA 3600/3650 linux driver released!

Update: IgnoreABI is not an option, xorg-server-1.12 crashes. So looks like for now it's limited to xorg-server-1.11.

Offline

#19 2012-08-18 18:26:25

dnaeon
Member
From: Sofia
Registered: 2012-08-18
Posts: 3
Website

Re: Intel PowerVR GMA 3600/3650 linux driver released!

Hello,

axs: I've sent you account details where you can mirror the repository in case you need a backup solution.

Thanks for your work on this.

Let me know if you have any questions.

Regards,
Marin

Offline

#20 2012-08-18 19:07:32

DoctorSamulus
Member
Registered: 2010-11-04
Posts: 53

Re: Intel PowerVR GMA 3600/3650 linux driver released!

I can't get kernel-thomas to work with kernel 3.5, everytime I run mkinitcpio -p linux32 it generates the 3.2 driver.

Offline

#21 2012-08-18 23:52:45

ewaller
Administrator
From: Pasadena, CA
Registered: 2009-07-13
Posts: 19,740

Re: Intel PowerVR GMA 3600/3650 linux driver released!

axs wrote:

Ok, re-checked the guidelines, no way this is going to AUR. Not yet, at least.
Let's keep it in this thread until it's clear what to do about the whole thing..

Well, okay.  But PKGBUILDs are a really good(TM) thing.  This thread is full of some great stuff and is building some traction.  Might I suggest that someone make a PKGBUILD for this and place it in this thread, on Dropbox, a pastebin, or a git/Hg hosting service (a la bitbucket) until such time you are ready for an AUR project?

Otherwise, when this hits the AUR, or a TU pickes it up and moves it to community, we won't be telling people here how to "unbreak" their systems.


Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
Sometimes it is the people no one can imagine anything of who do the things no one can imagine. -- Alan Turing
---
How to Ask Questions the Smart Way

Online

#22 2012-08-19 09:34:21

dnaeon
Member
From: Sofia
Registered: 2012-08-18
Posts: 3
Website

Re: Intel PowerVR GMA 3600/3650 linux driver released!

ShadowPrince wrote:

VGA works correctly, dont test HDMI. Cant say about new xorg, by the way - packages still have dependencies on old xorg.
Packages here - http://rghost.ru/39856793, kernel module with *tomas* in filename should work with 3.5, but need to fix in https://bbs.archlinux.org/viewtopic.php … 6#p1147856 way.

Thanks for the links.

Any chance of having 64bit packages?

I'm running a 64bit Arch on my D270, should I use the packages from the above links or wait for 64bit packages?

Thanks,
Marin

Offline

#23 2012-08-19 09:50:10

axs
Member
Registered: 2009-01-23
Posts: 71
Website

Re: Intel PowerVR GMA 3600/3650 linux driver released!

DoctorSamulus: linux-3.5 is a regular arch kernel, its preset is just "linux", not "linux32".
So it should be mkinitcpio -p linux.
And make sure you're booting /boot/vmlinuz-linux, not /boot/vmlinuz-linux32.

ewaller: PKGBUILDs are in ftp://109.254.56.47/cedarview/PKGBUILD , and have been there since Aug 9.
I update them each time I update the packages.

The main reason it's not in AUR is that linux32 and possibly udev0 violate AUR policy ("no packages from official repos").
With testing/linux working it's becoming less of an issue, but it still requires selective downgrading shoddy library tweaks (libudev0) and right now there's no way to avoid this.

Last edited by axs (2012-08-19 09:52:49)

Offline

#24 2012-08-19 10:02:34

axs
Member
Registered: 2009-01-23
Posts: 71
Website

Re: Intel PowerVR GMA 3600/3650 linux driver released!

dnaeon: as far as I understand the upstream package is 32-bit only.
You can try building the kernel module for x86_64 (add x86_64 to arch= in PKGBUILD), but these's hardly any point doing this since X won't be able to use it anyway.

Offline

#25 2012-08-19 10:26:59

axs
Member
Registered: 2009-01-23
Posts: 71
Website

Re: Intel PowerVR GMA 3600/3650 linux driver released!

And the packages are also available now from http://users.unix-heaven.org/~axs/cedarview/
Thanks dnaeon!

Offline

Board footer

Powered by FluxBB