Opened 3 months ago
Last modified 3 months ago
#19041 new bug
intel_extreme: Issues with Atom N4xx's (GMA3150)
Reported by: | bipolar | Owned by: | pulkomandy |
---|---|---|---|
Priority: | normal | Milestone: | Unscheduled |
Component: | Drivers/Graphics/intel_extreme | Version: | R1/beta5 |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Platform: | All |
Description
hrev57937+83, but was the same before, I think all the way back to after hrev51078 fixed #12988 for me (I just kept using the default, working, resolution, only occasionally testing things further).
Issues with the internal display (no external monitor plugged in):
- Internal display is 1024x600, but Screen shows *a lot* of resolutions in the 640x350 to 1920x1200 range.
Limiting it to 640x480, 800x600, 1024x600 would work better, as I'm not sure that these cards can do scaling as more modern ones do (GeminiLake, for example).
FWIW:
- WinXP limits it to 800x600 or 1024x600.
- VoidLinux shows 512x300 (doesn't works), 720x405, 640x480, 864x486, 800x600, 960x540, 1024x576, 1024x600.
- Setting any other resolution than 1024x600 turns screen unusable (see attachment). Thankfully, it resets back properly to working resolution.
- Screen brightness control shows up, but doesn't actually works.
Will provide clean syslog of it:
- booting up
- attempting to set and revert a couple of different resolutions.
- attempting to change brightness.
Work-around for the brightness issue: use the Fn+brightness control keys during BootManager/bootloader.
When booting up with an 1920x1080 monitor connected via VESA:
- Boots OK with resolution 1024x768 (autoselected after booting from using internal panel at 1024x600), albeit the internal panel remains ON, showing garbled output that depends on the resolution used (will attach screenshot).
- Screen preflet shows more limited resolutions (still on the 640x350 to 1920x1080 range), but only a few work correctly.
For resolutions that are:
- < 1024x768 (startup res): screen doesn't gets upscaled to the whole monitor, and garbage remains on-screen.
- > 1024x768: seems like a "virtual screen" extends beyond the limits of the monitor, but visible portions remain the same size as when 1024x768 was used.
FWIW: On Linux, resolutions for the external monitor via VGA are in the 720x400 to 1920x1080 range (latter marked as prefered). WinXP uses 800x600 to 1920x1080 range.
Will provide clean syslog of it:
- booting up
- attempting to set and revert a couple of different resolutions.
Attachments (6)
Change History (8)
by , 3 months ago
Attachment: | listdev.txt added |
---|
by , 3 months ago
Attachment: | syslog-internal-panel-only.txt added |
---|
by , 3 months ago
Attachment: | syslog-external-monitor.txt added |
---|
by , 3 months ago
Attachment: | garbled-output.jpg added |
---|
by , 3 months ago
Attachment: | 640x350.jpg added |
---|
Resolution change to 640x350 for the external monitor.
by , 3 months ago
Attachment: | 1920x1080.jpg added |
---|
Resolution change to 1920x1080 for the external monitor.
comment:1 by , 3 months ago
It seems better to remove this card from the driver, if neither modesetting nor brightness work.
Otherwise, find the corresponding documentation from Intel, and try to implement things as documented there. We have a single intel driver, but the hardware and programming interface can be very different from one generation of cards to another. And if we use the wrong ones, of course, it doesn't work.
For the brightness, I also had some surprises on some machines, which decided to not use the Intel chip brightness control. For example on the ASUS eeePC they implemented an independant solution in the Embedded Controller, wiring it where the PS/2 port would normally be. I found out because someone published the schematics for the machine and I could check there (unfortunately that's not a thing a lot of manufacuters do).
comment:2 by , 3 months ago
Understood. I'll try to see if there's some "generation mismatch" (apparently these cards are more like GMA900/950 than anything newer).
For reference, I've tried booting with the VESA driver:
- For the internal panel only offers 640x480 and 800x600 resolutions, which loop pretty bad compared to the native 1024x600 that intel_extreme driver provides.
- For the external monitor connected via VGA, seems to work well even if the selection of resolutions is not ideal (1920x1080 not available, for example). Changing resolutions work, and the internal panel *does* gets turned OFF.
Using bios_patching true
adds more resolutions, and some of those work OK while using an external monitor, but most do not for the LCD panel (even if 1024x600 finally appears as an option). For the latter, they image tends to appear on the wrong side of the screen, and things like that.
So maybe don't remove these GMA31xx from intel_extreme driver just yet :-) (we just need to not disturb it too much when using the onboard screen :-D)
Attempting to change resolution for the LCD panel.