UEFI & NVIDIA Issues and my experience so far

Introduction

Yes, this will be as long as a blog post, because: 1- i have a hard time being concise, 2- i want to help people with the same problems find an answer, if we manage to.

Issues

  1. Machine won’t boot if installed over UEFI
  2. Nvidia known bug (Ghost Display)

Machine Specs

Asus K46CM
Processor: Intel® Core™ i7-3517U CPU @ 1.90GHz × 4
RAM: 8gb DDR3
Storage: 1tb HDD
iGPU: Intel HD Something?
dGPU: GeForce GT 635M/PCIe/SSE2

1. UEFI Problems

My machine is native uefi, i had previously Ubuntu (17.04 i think), Windows 10 and the latest Linux Mint, all installed over UEFI, without any problems.
When i boot up (on USB UEFI option) and install the latest Endless OS to date, it will all go smoothly until the reboot. It would go straight to bios, without it detecting any bootable partition on the HDD.
I went back to the live usb of Endless and ran Disks. There was no bootable partition marked, there was 3 partitions if i recall.
I went all over the internet trying to solve this, but since i have only one machine, i had to go back to the live usb to do some more research. Then i just gave up and installed it MBR way, no problems.

2. Nvidia’s ghost display

The bug is: The system show a non-existent “Unkown Display” on a VGA port, and at boot uses it as primary, preventing me from using the OS. This is a known bug, i don’t know if it is related to drivers, hardware or the kernel.
The workaround i found to this was, using the keyboard shortcut to switch multiple video modes, BUT since i put a password on my user’s login, the shortcut won’t work until you are on desktop. The other workaround to this was, to keep plugin in and out a hdmi tv, until the system “decides” to set the laptop screen as the primary so i can login. After this, i can disable the unkown display on video settings.

Possible solutions:

  1. Nvidia’s Driver: Some people on the web said that new drivers would get rid of this problem. I read that Endless installs automatically the latest driver, but the display still here so far and i found no way of knowing if there is a nvidia driver installed at all, must be a noobish problem but well. And as far as i know, Endless doesn’t allow us to install driver packages outside of system standards, please correct me if i am wrong.
  2. Disabling the ghost port on GRUB: I tried to edit the grub entries at boot and at the ostree-1-eos.conf, without any luck, i will describe this procedure furthermore. Many people solved the problem on other distros, but i won’t work on Endless, maybe it is my fault, but that’s why i’m here, to find out.

I will explain somethings i did to try and diagnose the problem and some web urls to where i researched.

xrandr command

output:

  • VGA-0 connected (normal left inverted right x axis y axis)
  • LVDS-1-1 connected 1366x768+0+0 (normal left inverted right x axis y axis) 309mm x 174mm

VGA-0 is supposedly a ghost port.
There is also VGA-1-1, HDMI-1-1 and DP-1-1.

Terminal command to display connected video ports on the pc:

for p in /sys/class/drm//status; do con=${p%/status}; echo -n "${con#/card?-}: "; cat $p; done

Output:

  • DP-1: disconnected
  • HDMI-A-1: disconnected
  • LVDS-1: connected
  • VGA-1: disconnected
  • VGA-2: connected

The VGA-2 port shows “connected” usually, and “unknown” when i use the grub disable command without any practical effects on the system’s behavior (that i noticed). The expected result would be for the “Unknown Display” disappear from the video settings.

GRUB Command

  1. Temporary command:
    I used the “hold shift and press e” method to edit the boot commands, and added: “VGA-0:d” to the end of the “linux” line.
  2. Definitive command:
    I edited the ostree-*-eos.conf file on /boot/loader/entries/ and added the same command.
    (On the forum people reference it as ostree-eos-*.conf but my file had the number between the words for some reason, must be an OS version mispelling or something.)

Results:
Nothing at all. :expressionless:

After some research, people said that xrandr mispells the port names sometimes, a bug maybe. Then i found that command that lists all ports and its names.

  1. Using VGA-2 instead of 0:

the “list ports” command changes VGA-2 from connected to unknown, but the system behaved exactly the same as far as i can tell. And i saw a few people saying that this command solved their problem on other distros.

Other Useful(?) Information

ls /sys/class/drm command

Output:

card0 card0-HDMI-A-1 card0-VGA-1 card1-VGA-2 renderD129
card0-DP-1 card0-LVDS-1 card1 renderD128 version

lspci command

Output:

  • 01:00.0 VGA compatible controller: NVIDIA Corporation GF108M [GeForce GT 635M] (rev a1)
  • 00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)

BOTTOMLINE:

  1. Should stay on MBR or try to solve the UEFI problemas? I would have any drawbacks, issues or risks by being lazy and staying on MBR? :joy:
  2. Help me solve the NVIDIA problem please. :sweat_smile:
  3. I’m loving Endless OS, i all in to the premise of the company, i like the way the system was design and built (ostree+flatpak), i was afraid of being compromised as a “poweruser” by using a more closed system, but i believe the benefits excess what i would lose, and in the near future it will be BIG. :heart_eyes:
  4. I’m Brazilian and i keep typing “problema” or “problemas” all the time. :face_with_raised_eyebrow:

Some research i did

"Sorry, new users can post only 2 links"
But i had 3 more :frowning:

DISCLAIMER

I’m aware that different distros use different internal “components” for it functions and solutions may or may not work equally.

@Daniel @jprvita Could help?

Thanks for your feedback!

The UEFI problem is weird. We could potentially go deeper into the problem, but that would probably result in your computer being unusable for a good while as we go back and forth on these forums. That said, the first thing I would do is check that you are running the latest BIOS version though. UEFI was somewhat new at the time when your computer was originally released, which may explain why the BIOS is behaving oddly here, and there’s a small possibility that they fixed it in a later BIOS update.

But really under these circumstances, if your computer is working in MBR mode then I’d just stick with that.

For the ghost display problem, you said that you added the VGA-0:d parameter, but if that’s the case then you missed the video= prefix, and as you then pointed out you probably want to use VGA-2 instead. So the parameter would be video=VGA-2:d.

It sounds like you’ve found a way to make the machine usable anyway so that you can run terminal commands, so I suggest you put the video=VGA-2:d parameter in place, then boot up and share a diagnostic log:

After we figure out how to workaround the issue, with a couple more tests from your side we should be able to proceed to fix this in the official Linux releases and have this problem avoided on all Linux distros going forward (Endless & others).

Greetings,

Thank you for the quick response.

That actually was a mispelling from my part, i did put the right command on the grub as: “video=VGA-2:d”.

And here is the diagnostics you asked for.

eos-diagnostic-190225_091422_UTC-0300.txt (7.6 MB)

That’s rather interesting. Can you open terminal and run the following command:
xrandr --listproviders
and paste the output here.

There you go.

Output:
Providers: number : 2
Provider 0: id: 0x2df cap: 0x1, Source Output crtcs: 2 outputs: 1 associated providers: 1 name:NVIDIA-0
Provider 1: id: 0x46 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 3 outputs: 4 associated providers: 1 name:modesetting

Hello guys, i’m back.

Is anybody out there able to help me?

I just stayed about one hour trying to log in to my account without success because of the video bug. And i have some spare work to do, if i don’t manage to solve this, i’ll have to go back to Mint or Ubuntu, but i don’t want to… I’m loving endless os…

Thank you all in advance…

–==–

EDIT:

I found 2 rather obvious workarounds…

1- enter through the shared account and remove my password

2- enter through the shared account and set auto-login on (better)

it is a temporary solution, at least i can work now… :joy:

@Leo Update to Endless OS 3.5.7 by App Center