Bug 1410338

Summary: Atom E3940 (Apollo Lake) Intel HD Graphics 500 graphical resolution only up to 800x600 on RHEL 7.3 x86_64 UEFI mode but legacy mode up to 1024x768
Product: Red Hat Enterprise Linux 7 Reporter: smc_cert
Component: xorg-x11-drv-intelAssignee: Lyude <lyude>
Status: CLOSED NOTABUG QA Contact: Desktop QE <desktop-qa-list>
Severity: high Docs Contact:
Priority: unspecified    
Version: 7.3CC: desktop-qa-list, hwcert-reviewers, lyude, smc_cert, tpelka
Target Milestone: rc   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-03-03 17:45:54 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Xorg.0.log on RHEL 7.3 x86_64 uEFI
none
dmesg add parameter drm.debug=0x6.log none

Description smc_cert 2017-01-05 07:58:16 UTC
Description of problem:
Atom E3940 (Apollo Lake) Intel HD Graphics 500 graphical resolution only up to 800x600 on RHEL 7.3 x86_64 UEFI mode but legacy mode up to 1024x768


The identical SUT got the correct output resolution and video type on Xrandr)
Ubuntu 16.04.1 Desktop (uEFI) (eDP1:1024x768)
Ubuntu 16.04.1 Desktop (uEFI) (HDMI:1920x1080)

RHEL 7.3 x86_64 (legacy) (default: 1024x768)
RHEL 7.3 x86_64 (uEFI) (default: 800x600)
(It shows "default" no matter plug the video connector on eDP1 or HDMI port)



Version-Release number of selected component (if applicable):
RHEL 7.3 x86_64 GA

How reproducible:
xrandr

Steps to Reproduce:
1.xrandr to check the  maximum value.
2.
3.

Actual results:
Current resolution only reach to 800x600

Expected results:
Min resolution should reach to to 1024x768

Additional info:



Xorg.0.log uploaded fyr.

======Modify resolution via Xrandr failed =================================
root@localhost ~]# xrandr 
xrandr: Failed to get size of gamma for output default
Screen 0: minimum 800 x 600, current 800 x 600, maximum 800 x 600
default connected primary 800x600+0+0 0mm x 0mm
   800x600       75.00* 

[root@localhost ~]# gtf 1024 768 60 -x
  # 1024x768 @ 60.00 Hz (GTF) hsync: 47.70 kHz; pclk: 64.11 MHz
  Modeline "1024x768_60.00"  64.11  1024 1080 1184 1344  768 769 772 795  -HSync +Vsync

[root@localhost ~]# xrandr --newmode "1024x768" 64.11  1024 1080 1184 1344  768 769 772 795  -HSync +Vsync
xrandr: Failed to get size of gamma for output default

[root@localhost ~]# xrandr
xrandr: Failed to get size of gamma for output default
Screen 0: minimum 800 x 600, current 800 x 600, maximum 800 x 600
default connected primary 800x600+0+0 0mm x 0mm
   800x600       75.00* 
  1024x768 (0x275) 64.110MHz
        h: width  1024 start 1080 end 1184 total 1344 skew    0 clock  47.70KHz
        v: height  768 start  769 end  772 total  795           clock  60.00Hz

[root@localhost ~]# xrandr --addmode default 1024x768
xrandr: Failed to get size of gamma for output default

[root@localhost ~]# xrandr 
xrandr: Failed to get size of gamma for output default
Screen 0: minimum 800 x 600, current 800 x 600, maximum 1024 x 768
default connected primary 800x600+0+0 0mm x 0mm
   800x600       75.00* 
   1024x768      60.00  

[root@localhost ~]# xrandr --output default --mode 1024x768
xrandr: Failed to get size of gamma for output default
xrandr: Configure crtc 0 failed
[root@localhost ~]# 

[root@localhost ~]# xrandr --verbose
xrandr: Failed to get size of gamma for output default
Screen 0: minimum 800 x 600, current 800 x 600, maximum 1024 x 768
default connected primary 800x600+0+0 (0x26d) normal (normal) 0mm x 0mm
	Identifier: 0x26c
	Timestamp:  3801394
	Subpixel:   unknown
	Clones:    
	CRTC:       0
	CRTCs:      0
	Transform:  1.000000 0.000000 0.000000
	            0.000000 1.000000 0.000000
	            0.000000 0.000000 1.000000
	           filter: 
	_MUTTER_PRESENTATION_OUTPUT: 0 
  800x600 (0x26d) 36.000MHz *current
        h: width   800 start    0 end    0 total  800 skew    0 clock  45.00KHz
        v: height  600 start    0 end    0 total  600           clock  75.00Hz
  1024x768 (0x275) 64.110MHz -HSync +VSync
        h: width  1024 start 1080 end 1184 total 1344 skew    0 clock  47.70KHz
        v: height  768 start  769 end  772 total  795           clock  60.00Hz

[root@localhost ~]# xrandr --output default --mode 1024x768 --crtc 0
\xrandr: Failed to get size of gamma for output default
xrandr: Configure crtc 0 failed

[root@localhost ~]# xrandr -d :0 --output default --mode 1024x768 --crtc 0
xrandr: Failed to get size of gamma for output default
xrandr: Configure crtc 0 failed

=========== iGFx info ==============================================
http://ark.intel.com/products/96485/Intel-Atom-x5-E3940-Processor-2M-Cache-up-to-1_80-GHz?q=e3940
Intel® Atom™ x5-E3940 Processor (2M Cache, up to 1.80 GHz)
Processor Graphics ‡	Intel® HD Graphics 500
Max Resolution (HDMI 1.4)‡	3840x2160 @30Hz
Max Resolution (DP)‡	4096x2160 @60Hz
Max Resolution (eDP - Integrated Flat Panel)‡	3840x2160 @ 60Hz

 
[root@localhost ~]# lspci |grep -i vga
00:02.0 VGA compatible controller: Intel Corporation Device 5a85 (rev 0b)
[root@localhost ~]# lspci -n |grep -i 00:02.0
00:02.0 0300: 8086:5a85 (rev 0b)
[root@localhost ~]# lspci -n -d 8086:5a85 -vvv 
00:02.0 0300: 8086:5a85 (rev 0b) (prog-if 00 [VGA controller])
	Subsystem: 15d9:093c
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0
	Interrupt: pin A routed to IRQ 255
	Region 0: Memory at a0000000 (64-bit, non-prefetchable) [size=16M]
	Region 2: Memory at 80000000 (64-bit, prefetchable) [size=512M]
	Region 4: I/O ports at f000 [size=64]
	Expansion ROM at <unassigned> [disabled]
	Capabilities: [40] Vendor Specific Information: Len=0c <?>
	Capabilities: [70] Express (v2) Root Complex Integrated Endpoint, MSI 00
		DevCap:	MaxPayload 128 bytes, PhantFunc 0
			ExtTag- RBE+
		DevCtl:	Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
			RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop-
			MaxPayload 128 bytes, MaxReadReq 128 bytes
		DevSta:	CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend-
		DevCap2: Completion Timeout: Not Supported, TimeoutDis-, LTR-, OBFF Not Supported
		DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR-, OBFF Disabled
	Capabilities: [ac] MSI: Enable- Count=1/1 Maskable- 64bit-
		Address: 00000000  Data: 0000
	Capabilities: [d0] Power Management version 2
		Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
		Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
	Capabilities: [100 v1] Process Address Space ID (PASID)
		PASIDCap: Exec+ Priv-, Max PASID Width: 14
		PASIDCtl: Enable- Exec- Priv-
	Capabilities: [200 v1] Address Translation Service (ATS)
		ATSCap:	Invalidate Queue Depth: 00
		ATSCtl:	Enable-, Smallest Translation Unit: 00
	Capabilities: [300 v1] Page Request Interface (PRI)
		PRICtl: Enable- Reset-
		PRISta: RF- UPRGI- Stopped-
		Page Request Capacity: 00008000, Page Request Allocation: 00000000
	Kernel modules: i915


model name	: Intel(R) Atom(TM) Processor E3940 @ 1.60GHz


======================================================================

===The identical SUT's output normally on Ubuntu 16.04.1 Destkop (UEFI mode =======

root@lab-Super-Server:/# uname -r
4.4.0-51-generic
root@lab-Super-Server:/# cat /etc/*-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.1 LTS"

root@lab-Super-Server:/etc/X11# lspci |grep -i vga
00:02.0 VGA compatible controller: Intel Corporation Device 5a85 (rev 0b)
root@lab-Super-Server:/etc/X11# lspci -n |grep -i 00:02.0
00:02.0 0300: 8086:5a85 (rev 0b)

root@lab-Super-Server:/etc/X11# lspci -n -d 8086:5a85  -vvv |grep -i modu
	Kernel modules: i915_bpo

root@lab-Super-Server:/# modinfo i915_bpo
filename:       /lib/modules/4.4.0-51-generic/kernel/ubuntu/i915/i915_bpo.ko
license:        GPL and additional rights
description:    Intel Graphics
author:         Intel Corporation



root@lab-Super-Server:~# xrandr                                                                     
Screen 0: minimum 8 x 8, current 2704 x 1050, maximum 32767 x 32767                           
eDP1 connected primary 1024x768+0+282 (normal left inverted right x axis y axis) 0mm x 0mm          
   1024x768      60.00*+                                                                            
   800x600       60.32    56.25                                                                     
   640x480       59.94                                                                              
   512x384       60.00                                                                              
   1280x1024     59.92                                                                              
DP1 disconnected (normal left inverted right x axis y axis)                                         
HDMI1 connected 1680x1050+1024+0 (normal left inverted right x axis y axis) 160mm x 90mm            
   1024x768      60.00 +  75.08    70.07    60.00                                                   
   1920x1080     60.00    59.94                                                                     
   1600x1200     60.00                                                                              
   1680x1050     59.88*                                                                             
   1280x1024     75.02    60.02                                                                     
   1440x900      74.98    59.90                                                                     
   1280x960      60.00                                                                              
   1280x800      59.91                                                                              
   1152x864      59.97                                                                              
   1280x720      60.00    59.94                                                                     
   800x600       75.00    60.32                                                                     
   640x480       75.00    60.00    59.94                                                            
HDMI2 disconnected (normal left inverted right x axis y axis)                                       
VIRTUAL1 disconnected (normal left inverted right x axis y axis)                                    
root@lab-Super-Server:~#                                                                            

== Trimmed info from /var/log/Xorg.0.log =====

[     7.409] (==) Assigned the driver to the xf86ConfigLayout
[     7.409] (II) LoadModule: "intel"
[     7.409] (II) Loading /usr/lib/xorg/modules/drivers/intel_drv.so
[     7.413] (II) Module intel: vendor="X.Org Foundation"
[     7.413]    compiled for 1.18.1, module version = 2.99.917
[     7.413]    Module class: X.Org Video Driver

Comment 1 smc_cert 2017-01-05 07:58:56 UTC
Created attachment 1237537 [details]
Xorg.0.log on RHEL 7.3 x86_64 uEFI

Comment 3 smc_cert 2017-01-17 08:27:20 UTC
Hello,
  Any update for this symptom?

Thanks,
Jass / Supermicro

Comment 4 smc_cert 2017-02-20 00:59:26 UTC
Hello,
  Any update for this symptom?

Thanks,
Jass / Supermicro

Comment 5 Lyude 2017-02-20 14:55:34 UTC
Would you be willing to lend us some of this hardware? I don't think we have any available.

As well, can you also do me a favor: add the parameter "drm.debug=0x6" to your kernel commandline, boot in UEFI mode and get me the output of

dmesg

(just dmesg is required, I don't need any of the other logs just yet)

Comment 6 smc_cert 2017-02-21 10:16:10 UTC
Created attachment 1256056 [details]
dmesg add parameter drm.debug=0x6.log

Comment 7 smc_cert 2017-02-21 10:21:59 UTC
(In reply to Lyude from comment #5)
> Would you be willing to lend us some of this hardware? I don't think we have
> any available.
> 
> As well, can you also do me a favor: add the parameter "drm.debug=0x6" to
> your kernel commandline, boot in UEFI mode and get me the output of
> 
> dmesg
 
Lyude,
  Good Day!
  Please find attached log "dmesg add parameter drm.debug=0x6.log" and is it ok that we setup the SUT which no support IPMI KVM console for you debugging remotely??

Thanks,
Jass / Supermicro 
  
> 
> (just dmesg is required, I don't need any of the other logs just yet)

Comment 8 Lyude 2017-02-21 22:16:07 UTC
(In reply to smc_cert from comment #7)
> (In reply to Lyude from comment #5)
> > Would you be willing to lend us some of this hardware? I don't think we have
> > any available.
> > 
> > As well, can you also do me a favor: add the parameter "drm.debug=0x6" to
> > your kernel commandline, boot in UEFI mode and get me the output of
> > 
> > dmesg
>  
> Lyude,
>   Good Day!
>   Please find attached log "dmesg add parameter drm.debug=0x6.log" and is it
> ok that we setup the SUT which no support IPMI KVM console for you debugging
> remotely??
> 
> Thanks,
> Jass / Supermicro 
>   
> > 
> > (just dmesg is required, I don't need any of the other logs just yet)

This would be just fine. This being said though it looks like this problem might not require any debugging to solve: the chipset this machine uses is apparently broxton, which I believe was (at the time of RHEL7.3) preliminary hardware. As confirmed by your dmesg:

[    3.641027] [drm] This hardware requires preliminary hardware support.
See CONFIG_DRM_I915_PRELIMINARY_HW_SUPPORT, and/or modparam preliminary_hw_support

This means that i915 won't enable itself on that chipset unless you add i915.preliminary_hw_support=1 to the kernel commandline. Can you check if things work somewhat better when you do that?

As for the difference in resolution: I think that's just the firmware having different default resolutions for UEFI vs. BIOS. The resolution just never updates to what it should be after booting since i915 disables itself.

Comment 9 Lyude 2017-02-21 22:16:43 UTC
I've also given a few more details regarding this to your partner manager.

Comment 10 smc_cert 2017-03-03 00:55:02 UTC
(In reply to Lyude from comment #8)
> (In reply to smc_cert from comment #7)
> > (In reply to Lyude from comment #5)
> > > Would you be willing to lend us some of this hardware? I don't think we have
> > > any available.
> > > 
> > > As well, can you also do me a favor: add the parameter "drm.debug=0x6" to
> > > your kernel commandline, boot in UEFI mode and get me the output of
> > > 
> > > dmesg
> >  
> > Lyude,
> >   Good Day!
> >   Please find attached log "dmesg add parameter drm.debug=0x6.log" and is it
> > ok that we setup the SUT which no support IPMI KVM console for you debugging
> > remotely??
> > 
> > Thanks,
> > Jass / Supermicro 
> >   
> > > 
> > > (just dmesg is required, I don't need any of the other logs just yet)
> 
> This would be just fine. This being said though it looks like this problem
> might not require any debugging to solve: the chipset this machine uses is
> apparently broxton, which I believe was (at the time of RHEL7.3) preliminary
> hardware. As confirmed by your dmesg:
> 
> [    3.641027] [drm] This hardware requires preliminary hardware support.
> See CONFIG_DRM_I915_PRELIMINARY_HW_SUPPORT, and/or modparam
> preliminary_hw_support
> 
> This means that i915 won't enable itself on that chipset unless you add
> i915.preliminary_hw_support=1 to the kernel commandline. Can you check if
> things work somewhat better when you do that?
> 
> As for the difference in resolution: I think that's just the firmware having
> different default resolutions for UEFI vs. BIOS. The resolution just never
> updates to what it should be after booting since i915 disables itself.

Lyude,
 Good Day!

"add i915.preliminary_hw_support=1 to the kernel commandline" works for us and no more concern on my side, please close this case. Thanks for support.

Thanks,
Jass / Supermicro