-
-
Notifications
You must be signed in to change notification settings - Fork 56
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
Improve eGPU detection #48
Comments
Fixes hertg#48 Most GPUs register as "VGA compatible controller" in lspci. Adding this string to the regex search eliminates false positives for other devices that use the same PCI-E BusID, such as non-VGA devices connected via non-eGPU docks.
And how about saving the configured pid and vid, and (optionally) searching for those? It would improve my user experience, when my eGPU box is connected sometimes directly sometimes though a TB3 dock. |
@xabolcs I've actually thought about the idea to register identifiers of the GPUs, rather than just the PCI-BUSID. This would also create the possibility to use multiple external GPUs with different configurations in the future. But this would probably require to integrate |
I meant exactly that! Saving PCI vendor and device codes (see
In the above example, the question is about eGPUs, not about their connection! 😉 In my use case |
I must have missed the But I might still look into the Just out of curiosity: Did you specifically authorize your eGPU or did you turn off the Thunderbolt Security completely to make egpu-switcher work? |
Because I edited my comment. 😅
Sure, I authorized it ... but only once: I authorized on Windows 10, and Ubuntu 18.04 worked at first try. |
And you didn't experience any timing issues? Did you enable the Pre-Boot ACL by any chance? But that's a different issue I need to look into. Would be great if I could get it to work reliably even on the |
No timing issues here. I don't know what Pre-Boot ACL means to you, but my TB3 BIOS settings are:
As I don't know what (and how to setup) the shared key is in this TB3 context, I'm using "User Authorization". |
Pre-Boot ACL stands for "Pre-Boot Access Control List", which essentially allows TB devices to connect before the OS is booted (useful if you want to use your docked keyboard when entering the passphrase for your device decryption and such). Therefore the eGPU will be connected much earlier in the boot-process than when Pre-Boot ACL is disabled. As for the But I need to look deeper into that anyway, would be cool if egpu-switcher worked on devices that disable Pre-Boot ACL and set TB Security to |
I tried "Secure Connect" and it breaks my plug and play dual-boot environment, as the Windows 10 and Ubuntu 18.04 use different keys! 🙃 Rolling back to "User Authorization" |
There shouldn't be much of a difference between a dual-boot computer and using two entirely different computers, right? It should be possible to connect a device via Did you also disable the Pre-Boot ACL? Because setting TB Security to You could have a look at what happens if you change to |
Will test it later. I don't want to disable Pre-Boot ACL ( I don't know whats happening in Anyway, as I need pre-boot stuff due to my use case, the |
In my use case, the bus ID of the egpu is different (off by 1) when it's plugged in pre-boot ( |
Currently, the eGPU detection is solely based on the PCI ID, and there are no further checks about the connected device.
This can cause false-positives in the eGPU detection method, if another device (ie. a normal Thunderbolt 3 Docking Station) is connected instead of the eGPU.
I'm using my notebook at home with an eGPU, and at my workplace with a TB3 Docking Station.
When booting up the system at work, it falsely detects it as the eGPU, since its USB Controller gets connected on the same BUS-ID as my eGPU at home. This causes the display-manager to throw an error and requires the following manual steps on another tty on every bootup.
The text was updated successfully, but these errors were encountered: