| Summary: | Mageia 8 not detecting dual head video INTEL / NVIDIA on HP OMEN Laptop. | ||
|---|---|---|---|
| Product: | Mageia | Reporter: | Ezequiel Partida <ezequiel_partida> |
| Component: | RPM Packages | Assignee: | Kernel and Drivers maintainers <kernel> |
| Status: | RESOLVED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | Normal | CC: | davidwhodgins, ghibomgx |
| Version: | 8 | ||
| Target Milestone: | --- | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Source RPM: | CVE: | ||
| Status comment: | |||
| Attachments: |
parsed version of supported-gpus.json
false-positive pci-ids to be removed from pcitable.x86_64 revised pcitables for nvidia390 revised pcitable for nvidia-current (460.32) revised pcitables for nvidia340 (retired) false positive for driver 340 |
||
|
Description
Ezequiel Partida
2021-01-02 09:39:50 CET
What's the output of (as root) "lspcidrake -v|grep Card"? Assignee:
bugsquad =>
kernel Hello Dave $lspcidrake -v|grep Card Card:Intel 810 and later: Intel Corporation|UHD Graphics [DISPLAY_VGA] (vendor:8086 device:9bc4 subv:103c subd:878c) (rev: 05) $lspcidrake -v | grep DISPLAY Card:Intel 810 and later: Intel Corporation|UHD Graphics [DISPLAY_VGA] (vendor:8086 device:9bc4 subv:103c subd:878c) (rev: 05) nouveau : NVIDIA Corporation|TU117M [GeForce GTX 1650 Ti Mobile] [DISPLAY_VGA] (vendor:10de device:1f95 subv:103c subd:878c) (rev: a1) Still nothing on this Dave?.. Regards I'm leader of the qa team. The bug is assigned to the team that handles the kernel etc. I just asked for the pci output as I know from prior experience, that the info would be asked for when I saw the bug report. looks like ldetect-lst is not properly updated to match what nvidia-current driver supports... Will take a look tomorrow.. Thomas, looks like README of the 460.32.03 driver lists at least 22 cards with "device:1f95", of the kind "GeForce GTX 1650 Ti with Max-Q Design", but merge2pcitable (i.e NVIDIA_CARD="NVIDIA GeForce 635 series and later" ldetect-lst/convert/merge2pcitable.pl nvidia_readme README.txt ldetect-lst/lst/pcitable.x86_64 > lst/pcitable.x86_64.new) which was used to extract the ids, doesn't catch any of them, but only those related to id=10de (which aren't listed any for the "GeForce GTX 1650 Ti with Max-Q Design"). Probably something to fix in merge2pcitable.pl script. In the future could more robust to extract the ids from the supported-gpus.json instead of the README file. CC:
(none) =>
ghibomgx it actually had missed several ids. the missing ids are now in ldetect-lst-0.6.18-1.mga8 currently buillding Thanks. How did you get the fixed list with missing IDs? I.e? https://gitweb.mageia.org/software/ldetect-lst/commit/?id=0b5844c6773a47e193355ea9f69061f7df59d29f Were at this point the IDs from nvidia-390.xx need a review too? (In reply to Giuseppe Ghibò from comment #8) > Thanks. How did you get the fixed list with missing IDs? I.e? > https://gitweb.mageia.org/software/ldetect-lst/commit/ > ?id=0b5844c6773a47e193355ea9f69061f7df59d29f usually I diff the README between driver versions to spot anything that the extract script misses. This time I did a manual review with some help of cut/tr/sort and some manual adaptions > > Were at this point the IDs from nvidia-390.xx need a review too? just did, and switched over several gpus from nvidia340 to nvidia390 and added the missing ones in ldetect-lst-0.6.19-1.mga8 according to the nvidia README in 390.141 driver so now we should be back in full sync Thanks for the manual review. I just spotted some "false positive", i.e. in particular there are listed cards with pci-ids as the card name, e.g. we have ids, 0xa600, and 0x3090 or 0x3080, which were generated by some previous merge2pcitable.pl run (most of them problably under my run, sorry). merge2pcitable.pl probably needs a fix or a replacement, at least for nvidia part.
In particular, for instance, the pci-ids 0x3090, apparently should have been for the RTX 3090, which indeed has pci-ids "0x2204", and also there isn't really any card listed with 0x3090 as pci-id.
False positives shouldn't hurt anyway, as probably are referring to some card whose pci-ids with that particular vendor doesn't exist, but anyway better to cleanup.
I tried to parse the provided "supported-gpus.json", with the following command:
cat supported-gpus.json | jq -r '.chips[] | {devid,subdevid,subvendorid,name,legacybranch} | @text' > supported-gpus-parsed-subs.txt
The cards for nvidia-current are listed with "legacybranch":null, cards for nvidia390, are listed with "legacybranch":"390.xx", and cards with "legacybranch":"340.xx" for the nvidia340.
I haven't spotted any false negative (at least for nvidia-current), which means no cards are missed.
I attach the result for a quick parsed supported-gpus.json. And an initial result of pcitable.x86_64.toremove.txt, containing the list of false positive cards or not supported anymore for (sample|random double-checking with the README.txt doesn't show them too).
Created attachment 12202 [details]
parsed version of supported-gpus.json
Created attachment 12203 [details]
false-positive pci-ids to be removed from pcitable.x86_64
Hi Thomas, I include here my revised and cleaned list of pcitables for nvidia390 and nvidia-current driver (340 is no longer needed since I read in ML you just retired) for including in ldetect-lst. Outside these lists should be removed, as with wrong ids (such as the 0x3090 case I told yesterday) or not supported anymore. Some card overlaps between the driver series, which means that you can use either one driver or the other; it was currently already so right now, AFAIK XFdrake choose automatically the highest rank driver, but nevertheless manually you can choose one or another and getting it working. E.g. card with devid 1195, which corresponds to Geforce GTX 660, can be used with either one driver or the other. Created attachment 12208 [details]
revised pcitables for nvidia390
Created attachment 12209 [details]
revised pcitable for nvidia-current (460.32)
Created attachment 12210 [details]
revised pcitables for nvidia340 (retired)
Thomas, I've reviewed the new list about current ldetect-lst 0.6.20. It seems still containing some glitch for card belonging to old 340 driver, i.e. card listed as "Card:NVIDIA GeForce 8100 to GeForce 415", which now should be redirected to nouveau. It seems list still suffers from many false-positive cards derived from the merge2pcitable.pl bug. Just as an example, looking in lst/pcitable, we have: 0x10de 0x9300 "Card:NVIDIA GeForce 8100 to GeForce 415" 0x10de 0x9400 "Card:NVIDIA GeForce 8100 to GeForce 415" if we look in README.txt from nvidia-340.108, those cards aren't listed, i.e. there aren't any card with pci-ids 0x9300 or 0x9400. I think those cards should be removed from the list (you may refer to the attached pcitable.340.txt modulo the cards you already redirected to driver 390). I attach the list of current false positives for 340 which results in current pcitable. There is also one typo, the card listed as, which is a "GeForce 8200M G": 0x10de 0x0845 "Card:NVIDIA GeForce 6100 to GeForce 7950" should belong to: 0x10de 0x0845 "Card:NVIDIA GeForce 8100 to GeForce 415" as is on a family beyond 7950. Created attachment 12211 [details]
false positive for driver 340
(In reply to Giuseppe Ghibò from comment #11) > Created attachment 12202 [details] > parsed version of supported-gpus.json Hello Giuseppe. Does this means I won´t be able to use MGA8 with my GeForce GTX 1650 TI? XFDrake installs ¨Nouveau¨ and not ¨nvidia¨ 460.32.. This version is the one listed at the NVIDIA site tha supposely is compatible with GeForce GTX 1650- Regards Ezequiel Partida (ZekeMX) AFAIK, it should be fixed with latest ldetect-lst 0.6.26-1.mga8 (which sync with nvidia 460.39, so update to use 460.39 not 460.32). XFdrake prioritize to free drivers (nouveau) anyway, you have to choose Cards -> Nvidia -> "Geforce 635 series and later" if you want to use the NVidia proprietary drivers. lspcidrake -v | grep "3D" what shows now? Ah, I forgot that it's a laptop with Optimus, I thought it was a desktop 1650 Ti. So update to latest cauldron packages, configure in XFdrake your Intel card anyway, remove any bumblebee, install mageia-prime package, run mageia-prime-install and reboot. It should switch Xorg to nvidia. When using XFdrake, if I choose Configure only card *NVIDIA Corporation|TU117M [GeForce GTX 1650 Ti Mobile] (PCI:1:0:0) XFdrake chooses NVIDIA Propietary driver 460.67 (Not nouveau) If I select to use Nvidia 635 Series or later (as explained by Giuseppe), the problem is that I only get Plasma 5 on my external monitor and text on my internal laptop screen (No DE). Running /usr/bin/nvidia-settings does detect my NVIDIA drivers. If I choose to configure all heads independently, It does detect both intel and Nvidia GPUs but using nouveau, it would be great if XFdrake could give me the option to choose the second video card with option to use Nouveau or propietary. I did change it manualy fron Nouveau to Nvidia on xorg.conf after I installed the propietary 460.67 drivers and it works great. Now I get plasma 5 on both internal and external screens. This works now.. I will mark it as resolved Resolution:
(none) =>
FIXED |