GMA3150 Failure (Atom D525 / Foxconn D52S)

Hi Everyone!

I have some PCs with Foxconn D52S Mobo, with an Integrated Intel Atom D525 and GMA3150, when I try to start EndlessOS from SSD or Flash Drive in both my screen stays stucked on Wallpaper and does not complete the boot process.

An interesting thing, something like these happens in other Linux distributions, seaching on the Internet I found this topic that may be related to the problem in my machines, such as config “i915.modeset = -1 i915.panel_ignore_lid = -1”

[Complete Thread in:]

I have 8 of those PCs and really like to use EndlessOS in them: slight_smile:

PS.: I Have another variant of this Pineview Atom 525 from Pegatron with the same Issue :slight_smile: …that caracterizes an Video/Chipset incompatibility

When I saw this before, it was exactly as described in the forum thread - the video BIOS says that there is an internal display, so Endless is displaying the setup wizard there, and your real display is being treated as secondary.

You can try the suggestion made there. You need to access the GRUB bootloader:

When you are in grub, navigate the menu until you get to the Endless OS option, but do not press Enter as described there, instead press ‘e’. Then use the arrow keys to navigate to the line that starts with linux or linuxefi. At the end of the line, carefully add the parameter: i915.modeset=0

If that doesn’t work, or if you have any doubts, take a couple of photos of the screen contents as you go through this so that we can double check the procedure.

1 Like

Thank you Daniel!

Parcially solved the problem… like on LiveUSB or Installed HDD now I can access the OS!
But, I only can display in 1024x768 or 800x600, and I only have 16:9 displays…

1 Like

Great. The results you have there are expected, since you’re effectively disabling the graphics driver. But we can now find a better workaround & solution.

After installing the OS, boot up without adding the special parameter. You will likely reach a textured grey screen (because the login screen is being shown on the other display, which does not actually exist).

At this point press Ctrl+Alt+F2 and you should reach a textual login screen. Log in with your username and password. At the shell prompt, run: ls /sys/class/drm/ and note the resultant text that appears.

I think one of the items listed there should be card0-LVDS-1. If you don’t see that, just stop at this point and let me know what the results of the above command are.

Otherwise, proceed to run the reboot command, and go back into grub and press ‘e’ to edit the boot entry as described above. But this time do not add i915.modeset=0, instead, carefully add the following parameter exactly as written:


Now you should boot into Endless, the real display should be active & primary, and you should be able to change resolutions as normal.

You’ll probably have to manually add this parameter on every boot, but if you can confirm it’s working then I will show you how to make the parameter change permanent.

Also, if this works please make a diagnostic log from each affected computer model:

If you share the diagnostic logs here I can then modify the Linux kernel so that you do not need to add the special parameter in a future software update.

1 Like

Is exactly the LVDS problem :

Boot the computer holding SHIFT, when you are in grub, select Endless OS option, press ‘e’. Then use the arrow keys to navigate to the line that starts with linux. At the end of the line, add the parameter:


I insert this into Grub and works perfectly the video output! But, how telled before not saved as default boot option, just pending how to do this… I searched about this but doesn’t find any tutorial that fits in my case

Good! To make this change more permanent, open the Terminal app.

Run cd /boot/loader/entries
Run ls to see the files in that directory, you will see 1 or more files named such as ostree-eos-1.conf
For each of the files you can see there, open it in the nano text editor, e.g:
sudo nano ostree-eos-1.conf

Use the arrow keys to navigate to the end of the line that starts with options, carefully add the new parameter video=LVDS-1:d
To save and exit, press: Ctrl+O enter Ctrl+X

Please also provide the diagnostic logs mentioned above for each of the computer models that you have found to be affected by this bug. I will then submit a fix to Linux so that you do not need the special parameter in future (and also other Linux distributions would pick up this fix in due course).

1 Like

The system still working perfectly!
I stayed a time out of office, follow below the diagnostics from my 2 boards models :
eos-diagnostic-foxconn.txt (466,8 KB)
eos-diagnostic-pcware.txt (481,3 KB)

Thanks for the update!
Just before I send a Linux change to make this fix “automatic” on these 2 systems, I noticed that in newer Linux versions there is already a new fix that may or may not already take effect on your boards.

Ideally you should test this before I continue. The easiest way to try it would be to try another Linux distro that already has Linux 4.19 or newer. For example the latest Ubuntu “disco” test version ( If you have time, please boot this up (live boot OK - no need to install) and see if the system believes there is still an external LVDS panel or not.

Ooops -that disco link is still using Linux 4.18. Odd. Will try to find another live linux distro that has 4.19 ready…

Sorry that I never got back to you on this one.

If you are still interested in having this bug fixed in the official Linux kernel for all Linux distros, please could you test the latest Endless version (3.6.0) and confirm if the bug still exists - on both of the platforms you mentioned earlier. There was a recent graphics driver change that may have fixed it. However if it didn’t help, then I’ll proceed to submit a workaround based on the info you already provided.

Thanks by rembember this question @Daniel!

I have tested today, and now works perfectly!
Interesting, the newer release (3.6.0) makes the same “old machine” (Atom D525) faster than before :slight_smile: