Hi.
I own laptop Lenovo Z51-70. It has both integrated and dedicated graphics card. It's Intel HD 5500 (Broadwell) and AMD Radeon R9 M375 duet. First is of course more energy saving, the second one is more powerful. My goal is to enable second, fastest graphics.
What I tried
I tried fglrx drivers, but it sucked. X'org starts, but it's unusable - even on some light window (without accelerated compositor). When I work on Intel computer is always quiet and cold. On proprietary drivers fan is crazy and everything lags. Maybe other time there will be usable release of Catalyst.
There still is "radeon" kernel module.
When I enable "Switchable graphics" on computer's firmware, lspci says
Code:
04:00.0 Display controller: Advanced Micro Devices, Inc. [AMD/ATI] Venus XTX [Radeon HD 8890M / R9 M275X/M375X] (rev ff)
Also "radeon" module is present and loaded
Code:
[dominik@Arch ~]$ lsmod | grep radeon
radeon 1470464 1
ttm 77824 1 radeon
i2c_algo_bit 16384 2 i915,radeon
drm_kms_helper 106496 2 i915,radeon
drm 286720 14 ttm,i915,drm_kms_helper,radeon
Seems it loaded with no problems and has firmware files needed (or am I wrong?)
Code:
[dominik@Arch ~]$ dmesg | grep radeon
[ 2.647269] [drm] radeon kernel modesetting enabled.
[ 2.656701] radeon 0000:04:00.0: enabling device (0106 -> 0107)
[ 2.674174] radeon 0000:04:00.0: VRAM: 4096M 0x0000000000000000 - 0x00000000FFFFFFFF (4096M used)
[ 2.674178] radeon 0000:04:00.0: GTT: 2048M 0x0000000100000000 - 0x000000017FFFFFFF
[ 2.674255] [drm] radeon: 4096M of VRAM memory ready
[ 2.674256] [drm] radeon: 2048M of GTT memory ready.
[ 2.687065] [drm] radeon: dpm initialized
[ 2.697038] radeon 0000:04:00.0: WB enabled
[ 2.697041] radeon 0000:04:00.0: fence driver on ring 0 use gpu addr 0x0000000100000c00 and cpu addr 0xffff88044a8cac00
[ 2.697042] radeon 0000:04:00.0: fence driver on ring 1 use gpu addr 0x0000000100000c04 and cpu addr 0xffff88044a8cac04
[ 2.697043] radeon 0000:04:00.0: fence driver on ring 2 use gpu addr 0x0000000100000c08 and cpu addr 0xffff88044a8cac08
[ 2.697045] radeon 0000:04:00.0: fence driver on ring 3 use gpu addr 0x0000000100000c0c and cpu addr 0xffff88044a8cac0c
[ 2.697046] radeon 0000:04:00.0: fence driver on ring 4 use gpu addr 0x0000000100000c10 and cpu addr 0xffff88044a8cac10
[ 2.698582] radeon 0000:04:00.0: fence driver on ring 5 use gpu addr 0x0000000000075a18 and cpu addr 0xffffc90002c35a18
[ 2.720825] radeon 0000:04:00.0: fence driver on ring 6 use gpu addr 0x0000000100000c18 and cpu addr 0xffff88044a8cac18
[ 2.720829] radeon 0000:04:00.0: fence driver on ring 7 use gpu addr 0x0000000100000c1c and cpu addr 0xffff88044a8cac1c
[ 2.720834] radeon 0000:04:00.0: radeon: MSI limited to 32-bit
[ 2.720929] radeon 0000:04:00.0: radeon: using MSI.
[ 2.720982] [drm] radeon: irq initialized.
[ 5.288358] radeon 0000:04:00.0: No connectors reported connected with modes
[ 5.290566] radeon 0000:04:00.0: fb1: radeondrmfb frame buffer device
[ 5.290638] [drm] Initialized radeon 2.43.0 20080528 for 0000:04:00.0 on minor 1
[ 12.129043] radeon 0000:04:00.0: WB enabled
[ 12.129046] radeon 0000:04:00.0: fence driver on ring 0 use gpu addr 0x0000000100000c00 and cpu addr 0xffff88044a8cac00
[ 12.129047] radeon 0000:04:00.0: fence driver on ring 1 use gpu addr 0x0000000100000c04 and cpu addr 0xffff88044a8cac04
[ 12.129048] radeon 0000:04:00.0: fence driver on ring 2 use gpu addr 0x0000000100000c08 and cpu addr 0xffff88044a8cac08
[ 12.129050] radeon 0000:04:00.0: fence driver on ring 3 use gpu addr 0x0000000100000c0c and cpu addr 0xffff88044a8cac0c
[ 12.129051] radeon 0000:04:00.0: fence driver on ring 4 use gpu addr 0x0000000100000c10 and cpu addr 0xffff88044a8cac10
[ 12.130606] radeon 0000:04:00.0: fence driver on ring 5 use gpu addr 0x0000000000075a18 and cpu addr 0xffffc90002c35a18
[ 12.150969] radeon 0000:04:00.0: fence driver on ring 6 use gpu addr 0x0000000100000c18 and cpu addr 0xffff88044a8cac18
[ 12.150971] radeon 0000:04:00.0: fence driver on ring 7 use gpu addr 0x0000000100000c1c and cpu addr 0xffff88044a8cac1c
A read a little about vga_switcheroo - as it seem to be kernel mechanism to switch between these GPUs. So I have file
Code:
[root@Arch dominik]# cat /sys/kernel/debug/vgaswitcheroo/switch
0:IGD:+:Pwr:0000:00:02.0
1:DIS: :DynOff:0000:04:00.0
To me it looks like there's possible switch and currently integrated graphics is in use. Just to confirm:
Code:
[root@Arch dominik]# glxinfo | grep -i opengl
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) HD Graphics 5500 (Broadwell GT2)
Ok, so as I read there's no way to switch while running xserver. So I exit this with
and on TTY i login and type
Code:
echo DIS > /sys/kernel/debug/vgaswitcheroo/switch
As result I have only
Code:
vga_switchero: client 0 refused switch
There's nothing more in dmesg.
Couldn't find anything more to try ;(
Currently I'm using ArchLinux. All packages are up to date. My kernel version is 4.4.1-2-ARCH. I tried other distros and kernel versions/configs as well.
Any ideas? Thanks!