Customers have been asking for EMGD support for emenlow. The current psb graphics support is becoming a little long in the tooth, so it may be a nice idea to kill 2 birds with one stone and do a replacement of the current with EMGD.
I tried creating emenlow-emgd machine configuring graphics bits similar to crownbay. I am seeing these issue with my effort: [3287692.913] (II) Loading /usr/lib/xorg/modules/input/mouse_drv.so [3287692.920] (II) Module mouse: vendor="X.Org Foundation" [3287692.920] compiled for 1.7.99.2, module version = 1.7.2 [3287692.920] Module class: X.Org XInput Driver [3287692.920] ABI class: X.Org XInput driver, version 8.0 [3287692.920] (EE) module ABI major version (8) doesn't match the server's version (11) [3287692.920] (II) UnloadModule: "mouse" [3287692.920] (II) Unloading /usr/lib/xorg/modules/input/mouse_drv.so [3287692.920] (EE) Failed to load module "mouse" (module requirement mismatch, 0) [3287692.920] (II) LoadModule: "kbd" [3287692.920] (II) Loading /usr/lib/xorg/modules/input/kbd_drv.so [3287692.928] (II) Module kbd: vendor="X.Org Foundation" [3287692.928] compiled for 1.7.99.2, module version = 1.6.1 [3287692.928] Module class: X.Org XInput Driver [3287692.928] ABI class: X.Org XInput driver, version 8.0 [3287692.928] (EE) module ABI major version (8) doesn't match the server's version (11) [3287692.928] (II) UnloadModule: "kbd" [3287692.928] (II) Unloading /usr/lib/xorg/modules/input/kbd_drv.so [3287692.928] (EE) Failed to load module "kbd" (module requirement mismatch, 0) [3287692.928] (II) EMGD: Intel(R) Embedded Media and Graphics Driver version 1.10.2209 for: Intel US15W Class [3287692.928] (--) using VT number 3 [3287693.020] (==) EMGD(0): RGB weight 888 [3287693.020] (==) EMGD(0): Default visual is TrueColor [3287693.020] drmOpenDevice: node name is /dev/dri/card0 [3287693.024] drmOpenDevice: open result is -1, (No such device or address) [3287693.027] drmOpenDevice: open result is -1, (No such device or address) [3287693.028] drmOpenDevice: Open failed [3287693.030] [drm] failed to load kernel module "emgd" [3287693.030] (II) EMGD(0): Graphics hardware initialization failed. [3287693.030] (II) EMGD(0): The cause was a failure to connect with the DRM during PreInit(). [3287693.030] (II) EMGD(0): Cannot open a connection with the DRM [3287693.030] (II) UnloadModule: "emgd" [3287693.030] (EE) Screen(s) found, but none have a usable configuration. [3287693.030] Fatal server error: [3287693.030] no screens found [3287693.030]
I made some progress on this bug, but finally got blocked because the monitor screen did not show any output even though there were no errors reported by kernel or X for the emgd driver. Here are the branches I was working on. These are not clean and shows work in progress. * meta-intel: http://git.yoctoproject.org/cgit/cgit.cgi/meta-intel-contrib/commit/?h=nitin/emenlow%2bemgd * meta branch for linux-yocto-3.2 http://git.yoctoproject.org/cgit/cgit.cgi/linux-yocto-2.6.37-contrib/log/?h=nitin/linux-yocto-3.2/meta * standard/default/emenlow branch for linux-yocto-3.2 http://git.yoctoproject.org/cgit/cgit.cgi/linux-yocto-2.6.37-contrib/commit/?h=nitin/linux-yocto-3.2/emenlow As I am getting into monitor related issues, passing this to Tom to take it further. Nitin
Starting fresh, I created the following branches (these do the kernel machine branch updates differently and update recipe space as well): linux-yocto-3.2 standard/default/emenlow: http://git.yoctoproject.org/cgit/cgit.cgi/linux-yocto-2.6.37-contrib/log/?h=tzanussi/emenlow-emgd-standard-default-emenlow linux-yocto-3.2 meta: http://git.yoctoproject.org/cgit/cgit.cgi/linux-yocto-2.6.37-contrib/log/?h=tzanussi/emenlow-emgd-meta meta-intel: http://git.yoctoproject.org/cgit/cgit.cgi/meta-intel/log/?h=tzanussi/emenlow-emgd These also showed some problem with the display settings, which a little tweaking was unable to fix, so more investigation/tweaking is in order at this point.
Marking accepted as we appear nearly complete here :-)
What is the current status of this?
Nitin now has working EMGD support for emenlow, so we could replace the current psb graphics support with it, but then we wouldn't have any non-commercial graphics support i.e. a -noemgd version like the other BSPs that support EMGD. We could rename the current BSP as the -noemgd version like the others, but there's also another option that should soon be available (https://bugzilla.yoctoproject.org/show_bug.cgi?id=3208 Enable GMA500 for -noemgd meta-intel BSPs) for the -noemgd option. Give that, it makes sense to me to move this to 1.4. If we want it for 1.3, the simplest thing to do would be to rename the current as -noemgd and add the emgd support for 'emenlow'.
(In reply to comment #6) > Nitin now has working EMGD support for emenlow, so we could replace the > current psb graphics support with it, but then we wouldn't have any > non-commercial graphics support i.e. a -noemgd version like the other BSPs > that support EMGD. > > We could rename the current BSP as the -noemgd version like the others, but > there's also another option that should soon be available > (https://bugzilla.yoctoproject.org/show_bug.cgi?id=3208 Enable GMA500 for > -noemgd meta-intel BSPs) for the -noemgd option. Doesn't the current BSP have "commercial" components in the form of the Poulsbo driver so is isn't really a "noemgd" option? I like the idea of enabling the open source GMA500 work FWIW. > Give that, it makes sense to me to move this to 1.4. If we want it for 1.3, > the simplest thing to do would be to rename the current as -noemgd and add > the emgd support for 'emenlow'. I'm happy enough with this in 1.4, the "99% complete" status in the whiteboard is a little misleading though. It doesn't sound like there is too much work to complete this bug though.
(In reply to comment #7) > (In reply to comment #6) > > Nitin now has working EMGD support for emenlow, so we could replace the > > current psb graphics support with it, but then we wouldn't have any > > non-commercial graphics support i.e. a -noemgd version like the other BSPs > > that support EMGD. > > > > We could rename the current BSP as the -noemgd version like the others, but > > there's also another option that should soon be available > > (https://bugzilla.yoctoproject.org/show_bug.cgi?id=3208 Enable GMA500 for > > -noemgd meta-intel BSPs) for the -noemgd option. > > Doesn't the current BSP have "commercial" components in the form of the > Poulsbo driver so is isn't really a "noemgd" option? > I believe the only 'commercial' component is the 3d support, which could be removed and still provide 2d graphics support. The xserver-psb and psb video driver are GPL and the kernel code of course is GPL, so as far as the basic graphical support goes, it would be valid -noemgd. As opposed to EMGD where the EMGD driver is closed userspace. That's as I recall - if it's important we can thoroughly analyze it if we want to claim it as -noemgd. > I like the idea of enabling the open source GMA500 work FWIW. > So do I - getting that working will be coming soon. > > Give that, it makes sense to me to move this to 1.4. If we want it for 1.3, > > the simplest thing to do would be to rename the current as -noemgd and add > > the emgd support for 'emenlow'. > > I'm happy enough with this in 1.4, the "99% complete" status in the > whiteboard is a little misleading though. It doesn't sound like there is too > much work to complete this bug though. It's actually 100% complete as far as functionality goes, it just needs to be incorporated into the BSP, which we haven't done yet partly due to questions like the above. Mainly, though, I don't like the idea of removing something that works just fine and switching to EMGD which may cause complaints from users for license reasons. If we want to to do that we should at least provide a -noemgd version, even if it's just VESA, which is exactly what we had for fishriver and could easily bring to emenlow. Maybe what we should do for 1.3 then is remove the 3d support from the existing BSP (assuming it makes it actually non-commercial) and move it to a -noemgd version and then add the emgd version as 'emenlow'. I'll let Nitin decide - we have discussed this recently but never came to closure on it - now would be a good time to decide.
The Emenlow BSP is using EMGD for graphics now.
Verified in master: 3ae1a4ba972cfc17ff3f2fda632da8ecc3414885