https://bugs.freedesktop.org/show_bug.cgi?id=58556
--- Comment #7 from Emil Velikov <[email protected]> --- Hi Joanand (In reply to comment #0) > Resolution for kernels < 3.4.9: I made use of gpupwr to disable the discrete > adapter and then loaded nouveau (without any parameters). The system was > "programmed" to use 9400m as it starts. This worked quite fine over long > time. > "Worked" with our without acceleration ? > Temporary resolution for 3.7.1: Use MacOSX to change the default adapter to > the one which is "not" desired. Reboot, load nouveau with noaccel=1 (now > screen gets scrambled), switch to the other device (in my case "echo DIGD > > /sys/kernel/debug/vgaswitcheroo/switch"). Voila you have a readable screen. Did you had the chance to narrow down what caused the change (<3.4.9 vs 3.7.1) ? It may be due to nouveau, vgaswitcheroo and/or other kernel driver (In reply to comment #6) > (In reply to comment #5) > > Great find Matyas > > > > If you're interested in cutting short the sequence you can forcepost the > > card, thus it should have you the suspend/resume trick. Use > > nouveau.config=NvForcePost=1 > > > > Curious if the above will give you acceleration or only a working > > output/monitor > > (ie. try it with and without noaccel=1) > > > > Cheers > > Hi, > On my MBP, if I do not use noaccel=1, then the whole system crashes. > > I have tried NvForcePost=1 with noaccel, the result was a switched off > screen, but system seems to boot. > With accel, screen switches off and crashes. > > Is there any config which would activate accel for 9400 but no accel for > 9600? This would be very helpful for me. > > Thanks. There has been a brief discussion what is the best way to handle this (passing nouveau params to specific card, disabling certain card etc.) although implementation may be far off ;( Meanwhile add a hack for your card by checking the PCI and returning early rather than initialising the card - not sure which location is better nouveau_drm_probe or nouveau_drm_load. Keep in mind to keep is symmetric (ie. handle the case in nouveau_drm_remove/nouveau_drm_unload) Your code will look something similar to if ((pdev->bus == xx) && (pdev->dev == xx) && (pdev->func == xx)) { return 0; // you can also try return -E* } Cheers Emil -- You are receiving this mail because: You are the assignee for the bug.
_______________________________________________ Nouveau mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/nouveau
