{"id":2244,"date":"2022-08-30T15:23:15","date_gmt":"2022-08-30T15:23:15","guid":{"rendered":"https:\/\/unknownerror.org\/index.php\/2014\/01\/05\/amd-gpu-but-display-on-intel-integrated-graphics-collection-of-common-programming-errors\/"},"modified":"2022-08-30T15:23:15","modified_gmt":"2022-08-30T15:23:15","slug":"amd-gpu-but-display-on-intel-integrated-graphics-collection-of-common-programming-errors","status":"publish","type":"post","link":"https:\/\/unknownerror.org\/index.php\/2022\/08\/30\/amd-gpu-but-display-on-intel-integrated-graphics-collection-of-common-programming-errors\/","title":{"rendered":"amd gpu but display on intel integrated graphics-Collection of common programming errors"},"content":{"rendered":"<p>On my Ubuntu 12.04 I connected my monitor to the onboard intel graphics. I&#8217;d like to use my ati radeon 6770 for opencl tasks (e.g. bitcoin mining).<\/p>\n<p>So far I couldn&#8217;t figure out how to get the ati driver working. When calling &#8220;aticonfig &#8211;initial -f&#8221; it always writes a new xorg.conf that ignores the intel graphics. At boot time it works only when I attached the monitor to the ati card.<\/p>\n<p>So I manually tampered with the xorg.conf and got this:<\/p>\n<pre><code>Section \"ServerLayout\"\n    Identifier     \"Default Monitor\"\n    Screen      0  \"myscreen\" 0 0\n    Screen      1  \"deadscreen\" RightOf \"myscreen\"\nEndSection\n\nSection \"Module\"\nEndSection\n\nSection \"Monitor\"\n    Identifier \"Default Monitor\"\n    Option \"VendorName\" \"Monitor Vendor\"\n    Option \"ModelName\" \"Monitor Name\"\n    Option \"DPMS\" \"true\"\nEndSection\n\nSection \"Monitor\"\n    Identifier \"null Monitor\"\n    Option         \"Enable\" \"false\"\nEndSection\n\nSection \"Device\"\n    Identifier \"Intel Integrated Graphics\"\n    Driver     \"intel\"\n    BusID      \"PCI:0:2:0\"\n    Screen 0\nEndSection\n\nSection \"Device\"\n    Identifier  \"aticonfig-Device[0]-0\"\n    Driver      \"fglrx\"\n    BusID       \"PCI:1:0:0\"\n    Screen 1\nEndSection\n\nSection \"Screen\"\n    Identifier \"myscreen\"\n    Device     \"Intel Integrated Graphics\"\n    Monitor    \"Default Monitor\"\n    DefaultDepth     24\n    SubSection \"Display\"\n        Viewport   0 0\n        Depth     24\n    EndSubSection\nEndSection\n\nSection \"Screen\"\n    Identifier \"deadscreen\"\n    Device     \"aticonfig-Device[0]-0\"\n    Monitor    \"null Monitor\"\n    DefaultDepth     24\n    SubSection \"Display\"\n        Viewport   0 0\n        Depth     24\n    EndSubSection\nEndSection\n<\/code><\/pre>\n<p>I think this might be the right way since I see that X tries to start both drivers in \/var\/log\/Xorg.0.log. However the fglrx driver seems crash (end of xorg.0.log):<\/p>\n<pre><code>Backtrace:\n[     6.625] 0: \/usr\/bin\/X (xorg_backtrace+0x26) [0x7fb5cd41b846]\n[     6.625] 1: \/usr\/bin\/X (0x7fb5cd293000+0x18c6ea) [0x7fb5cd41f6ea]\n[     6.625] 2: \/lib\/x86_64-linux-gnu\/libpthread.so.0 (0x7fb5cc5b9000+0xfcb0) [0x7fb5cc5c8cb0]\n[     6.625] 3: \/usr\/lib\/x86_64-linux-gnu\/xorg\/extra-modules\/extra-modules.dpkg-tmp\/modules\/drivers\/fglrx_drv.so (xdl_xs111_atiddxGetGPUMapInfo+0x1b1) [0x7fb5c88e16b1]\n[     6.625] 4: \/usr\/lib\/x86_64-linux-gnu\/xorg\/extra-modules\/extra-modules.dpkg-tmp\/modules\/drivers\/fglrx_drv.so (atiddxGetGPUMapInfo+0xd) [0x7fb5c87bcc0d]\n[     6.625] 5: \/usr\/lib\/x86_64-linux-gnu\/xorg\/extra-modules\/extra-modules.dpkg-tmp\/modules\/extensions\/libglx.so (0x7fb5ca12d000+0x1ab29) [0x7fb5ca147b29]\n[     6.625] 6: \/usr\/lib\/x86_64-linux-gnu\/xorg\/extra-modules\/extra-modules.dpkg-tmp\/modules\/extensions\/libglx.so (0x7fb5ca12d000+0x1cf8c) [0x7fb5ca149f8c]\n[     6.625] 7: \/usr\/lib\/x86_64-linux-gnu\/xorg\/extra-modules\/extra-modules.dpkg-tmp\/modules\/extensions\/libglx.so (0x7fb5ca12d000+0x1ee55) [0x7fb5ca14be55]\n[     6.626] 8: \/usr\/bin\/X (InitExtensions+0x99) [0x7fb5cd350069]\n[     6.626] 9: \/usr\/bin\/X (0x7fb5cd293000+0x3d605) [0x7fb5cd2d0605]\n[     6.626] 10: \/lib\/x86_64-linux-gnu\/libc.so.6 (__libc_start_main+0xed) [0x7fb5cb44e76d]\n[     6.626] 11: \/usr\/bin\/X (0x7fb5cd293000+0x3daad) [0x7fb5cd2d0aad]\n[     6.626] Segmentation fault at address 0x14\n[     6.626] \nCaught signal 11 (Segmentation fault). Server aborting\n[     6.626] \n<\/code><\/pre>\n<p>I&#8217;d be very happy if someone can give me a hint on how to configure my ATI card while using the integrated graphics for display.<\/p>\n<h2>Update<\/h2>\n<p>I used most of jjhughes57 config and successfully booted the X server on intel (keyboard layout is changed though, funnily).<\/p>\n<p>Unfortunately the 2nd X server (fglrx) doesn&#8217;t fully start. It shuts itself down right after starting&gt;<\/p>\n<pre><code>[     6.265] (II) fglrx(0): Restoring Recent Mode via PCS is not supported in RANDR 1.2 capable environments\n[     6.296] (II) UnloadModule: \"mouse\"\n[     6.296] (II) Unloading mouse\n[     6.296] (II) UnloadModule: \"kbd\"\n[     6.296] (II) Unloading kbd\n[     6.298] (II) fglrx(0): Shutdown CMMQS\n[     6.298] (II) fglrx(0): [uki] removed 1 reserved context for kernel\n[     6.298] (II) fglrx(0): [uki] unmapping 8192 bytes of SAREA 0x2000 at 0x7fbef8209000\n[     6.337] (II) fglrx(0): Interrupt handler Shutdown.\n[     6.470]  ddxSigGiveUp: Closing log\n[     6.470] Server terminated successfully (0). Closing log file.\n<\/code><\/pre>\n<p>Thanks for any hints what is wrong here.<\/p>\n<h2>Solution<\/h2>\n<p>In my case the solution was quite simple. Mainly the xorg.conf (from jjhughes57) brought me on the right track. The remaining issues could be fixed in \/etc\/lightdm\/lightdm.conf. My final version is:<\/p>\n<pre><code>[LightDM]\nseats=Seat:0 Seat:1\n\n[SeatDefaults]\nautologin-user-timeout=0\nautologin-session=lightdm-autologin\ngreeter-session=lightdm-gtk-greeter\n\n\n[Seat: 0]\nxserver-layout=seat0\nxserver-command=\/usr\/bin\/X :0 -auth \/var\/run\/lightdm\/root\/:0 -nolisten tcp vt7 -sharevts -novtswitch\nautologin-guest=false\nautologin-user=fx\nautologin-user-timeout=0\nautologin-session=lightdm-autologin\nuser-session=ubuntu\n\n[Seat: 1]\nxserver-layout=seat1\nxserver-command=\/usr\/bin\/X :1 -auth \/var\/run\/lightdm\/root\/:1 -nolisten tcp vt8 -sharevts -novtswitch\nautologin-guest=true\nuser-session=ubuntu\n<\/code><\/pre>\n<p>One problem was that &#8220;\/usr\/share\/xgreeters\/lightdm-gtk-greeter.desktop&#8221; was missing. After properly installing lightdm-gtk-greeter again the second X-server came up successfully. Now the following requirements need to be fulfilled:<\/p>\n<ol>\n<li>X needs to accept connections on :1 (assuming that :1 is your<\/li>\n<li>fglrx-display) your user needs permission to open X-clients on :1<\/li>\n<\/ol>\n<p>Actually I first tried with autologin-guest=false which doesn&#8217;t work. With autologin-guest=true and a running user session (as a guest user) you need to disable X access control (that&#8217;s the easiest at least). E.g.: on display :0 as root:<\/p>\n<pre><code># su - guest-6ht0hq\nguest-6ht0hq$ echo $DISPLAY\n:0.0\nguest-6ht0hq$ export DISPLAY=:1\nguest-6ht0hq$ xhost +\naccess control disabled, clients can connect from any host\nguest-6ht0hq$\n<\/code><\/pre>\n<p>Now on another terminal (as root):<\/p>\n<pre><code># DISPLAY=:1.0 aticonfig --adapter=0 --od-getclocks\nAdapter 0 - AMD Radeon HD 6700 Series \n                            Core (MHz)    Memory (MHz)\n           Current Clocks :    850           1000\n             Current Peak :    850           1000\n  Configurable Peak Range : [500-970]     [1000-1430]\n                 GPU load :    0%\n#\n<\/code><\/pre>\n<ol>\n<li>\n<p>So I am really close to solving this issue. The basic Idead i had was a multi seat session. This allows the ATI card to have its own X session and the Intel display to have its own X session.<\/p>\n<ol>\n<li>Make sure PCIE is the default display for the system but that your onboard GPU is enabled in your system BIOS<\/li>\n<li>Modify our \/etc\/X11\/xorg.conf to look like this&#8230;<\/li>\n<\/ol>\n<pre><code>\nSection \"ServerLayout\"\n        Identifier     \"seat0\"\n        Screen      0  \"My screen 1\" 0 0\n        Option      \"Clone\" \"off\"\n        Option      \"AutoAddDevices\" \"off\"\n        Option      \"DisableModInDev\" \"true\"\n        Option      \"SingleCard\" \"on\"   # use this to simplfied isolatedevice option\n        Option      \"AllowEmptyInput\"       \"true\"\nEndSection\n\nSection \"ServerLayout\"\n        Identifier     \"seat1\"\n        Screen         \"aticonfig-Screen[0]-0\" 0 0\n        Option      \"Clone\" \"off\"\n        Option      \"AutoAddDevices\" \"off\"\n        Option      \"DisableModInDev\" \"true\"\n        Option      \"SingleCard\" \"on\"   # use this to simplfied isolatedevice option\n        Option      \"AllowEmptyInput\"       \"true\"\nEndSection\n\nSection \"Module\"\nEndSection\n\nSection \"InputClass\"\n    Identifier      \"Ignore Streamzap IR\"\n    MatchProduct    \"Streamzap\"\n    MatchIsKeyboard \"yes\"\n    Option      \"Ignore\" \"true\"\nEndSection\n\nSection \"Monitor\"\n    Identifier   \"aticonfig-Monitor[0]-0\"\n    Option      \"VendorName\" \"ATI Proprietary Driver\"\n    Option      \"ModelName\" \"Generic Autodetecting Monitor\"\n    Option      \"DPMS\" \"true\"\nEndSection\n\nSection \"Device\"\n    Identifier  \"aticonfig-Device[0]-0\"\n    Driver      \"fglrx\"\n    Option      \"Capabilities\" \"0x00000800\"\n    BusID       \"PCI:1:0:0\"\nEndSection\n\nSection \"Screen\"\n    Identifier \"aticonfig-Screen[0]-0\"\n    Device     \"aticonfig-Device[0]-0\"\n    Monitor    \"aticonfig-Monitor[0]-0\"\n    DefaultDepth     24\n    SubSection \"Display\"\n        Viewport   0 0\n        Depth     24\n    EndSubSection\nEndSection\n\nSection \"Monitor\"\n        Identifier   \"My monitor 1\"\nEndSection\n\nSection \"Device\"\n        Identifier  \"Sandybridge\"\n        Driver      \"intel\"\n        BusID       \"PCI:0:2:0\"\nEndSection\n\nSection \"Screen\"\n        Identifier \"My screen 1\"\n        Device     \"Sandybridge\"\n        Monitor    \"My monitor 1\"\n        DefaultDepth     24\n        SubSection \"Display\"\n                Depth     24\n                Modes    \"1280x720\"\n        EndSubSection\nEndSection\n<\/code><\/pre>\n<ol>\n<li>Last I had to edit \/etc\/lightdm\/lightdm.conf<\/li>\n<\/ol>\n<pre><code>\n\n\n[LightDM]\nseats=Seat:0 Seat:1\n\n[SeatDefaults]\nautologin-user-timeout=0\nautologin-session=lightdm-autologin\ngreeter-session=lightdm-gtk-greeter\n\n\n[Seat: 0]\nxserver-layout=seat0\nxserver-command=\/usr\/bin\/X :0 -auth \/var\/run\/lightdm\/root\/:0 -nolisten tcp vt7 -sharevts -novtswitch\nautologin-guest=false\nautologin-user=joe\nautologin-user-timeout=0\nautologin-session=lightdm-autologin\ngreeter-session=lightdm-gtk-greeter\nuser-session=mythbuntu\n\n[Seat: 1]\nxserver-layout=seat1\nxserver-command=\/usr\/bin\/X :1 -auth \/var\/run\/lightdm\/root\/:1 -nolisten tcp vt8 -sharevts -novtswitch\n<\/code><\/pre>\n<p>I now have both monitors starting up. I am having an issue getting<\/p>\n<pre><code>\nsudo aticonfig --adapter=0 --od-getclocks\n<\/code><\/pre>\n<p>to work&#8230; but this will get you past your current error.<\/p>\n<\/li>\n<li>\n<p>You either need to connect a monitor to the card or connect a dummy plug. Otherwise, the card plays dead. If your monitor has two connections, you can just connect one of them to the card and not use that input.<\/p>\n<\/li>\n<\/ol>\n<p id=\"rop\"><small>Originally posted 2014-01-05 09:32:00. <\/small><\/p>","protected":false},"excerpt":{"rendered":"<p>On my Ubuntu 12.04 I connected my monitor to the onboard intel graphics. I&#8217;d like to use my ati radeon 6770 for opencl tasks (e.g. bitcoin mining). So far I couldn&#8217;t figure out how to get the ati driver working. When calling &#8220;aticonfig &#8211;initial -f&#8221; it always writes a new xorg.conf that ignores the intel [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-2244","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/posts\/2244","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/comments?post=2244"}],"version-history":[{"count":0,"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/posts\/2244\/revisions"}],"wp:attachment":[{"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/media?parent=2244"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/categories?post=2244"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/tags?post=2244"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}