Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

bbswitch finds 2 discrete graphic cards on laptop with and processor #197

Open
QbieShay opened this issue Apr 4, 2020 · 4 comments
Open

Comments

@QbieShay
Copy link

QbieShay commented Apr 4, 2020

I have an asus TUF 505 laptop with a Ryzen7h and an nvidia 1660ti.

I followed all the instructions on using nvidia-xrun, but i see this with dmesg:

[    3.185160] bbswitch: Found discrete VGA device 0000:01:00.0: \_SB_.PCI0.GPP0.PEGP
[    3.185165] bbswitch: Found discrete VGA device 0000:05:00.0: \_SB_.PCI0.GP17.VGA_

lspci output:

01:00.0 VGA compatible controller: NVIDIA Corporation TU116M [GeForce GTX 1660 Ti Mobile] (rev a1)
05:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Picasso (rev c1)

this clicks perfectly with the output when i run bumblebee:

[  376.858693] [ERROR]No integrated video card found, quitting.

OS: 5.5.13-arch2-1

This is as far as i came with my laptop. If anyone knows how to solve this, I'll be immensely grateful.

@sukanka
Copy link

sukanka commented Apr 13, 2020

See this issue, #187 (comment)
I was experiencing the same problem. And I make a package in aur named bbswitch-ati-git to fix this and compilation error on Linux 5.6.

@QbieShay
Copy link
Author

Hi @sukanka. Thank you so much for sharing your fix!
Unfortunately it doesn't work for me, I have the same issue with bumblebeed saying I don't have an integrated card :(

@sukanka
Copy link

sukanka commented Apr 15, 2020

Hi @QbieShay , I guess your problem is also because of

bbswitch/bbswitch.c

Lines 421 to 430 in 0c38f97

if (pdev->vendor == PCI_VENDOR_ID_INTEL) {
igd_handle = handle;
pr_info("Found integrated VGA device %s: %s\n",
dev_name(&pdev->dev), (char *)buf.pointer);
} else {
dis_dev = pdev;
dis_handle = handle;
pr_info("Found discrete VGA device %s: %s\n",
dev_name(&pdev->dev), (char *)buf.pointer);
}

but your vendor is neither PCI_VENDOR_ID_INTEL nor PCI_VENDOR_ID_ATI, so my fix also fails.
Maybe you can try to print your vendor and then modify that line.

@QbieShay QbieShay changed the title bbswitch finds 2 discrete graphic cards on archlinux bbswitch finds 2 discrete graphic cards on laptop with and processor May 12, 2020
@bomiyr
Copy link

bomiyr commented Nov 20, 2021

I have pretty the same issue with two "discrete" GPUs. My hardware: Lenovo Legion 5, CPU AMD 4800H with AMD Renoir graphics + GeForce GTX 1660 Ti Mobile. OS openSUSE Tumbleweed.

I downloaded the code, applied the fix with adding condition || pdev->vendor == PCI_VENDOR_ID_ATI and compiled. After that I was able to load my version of bbswitch. And still I was not able to make it work, even more - it has really scary behavior. Right after I disable nvidia GPU all fans started spinning at 100%, and then after several dozens of seconds laptop just powered off. Maybe it has some hardware protection or something similar that treat disabled GPU as something wrong, I don't know

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants