Bug 690963

Summary: [RV710] External video port doesn't work on Dell Studio 1558
Product: [Fedora] Fedora Reporter: Steevithak <steevithak>
Component: xorg-x11-drv-evdevAssignee: Peter Hutterer <peter.hutterer>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 14CC: mcepl, xgl-maint
Target Milestone: ---Keywords: Reopened, Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-08-16 21:33:22 UTC Type: ---
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
none
dmesg output
none
messages log
none
output of xev while pressing fn+f1 none

Description Steevithak 2011-03-26 00:23:59 UTC
Description of problem:
Using the function+F1 key combo to switch between the laptop display panel and the external video port on a Dell Studio 1558 running Redhat Fedora 14 has no effect. There is no signal on the external port. 

I'm not certain if the bug is in the ATI driver or the keyboard driver.

Version-Release number of selected component (if applicable):
xorg-x11-drv-ati-6.13.1-0.4.20100705git37b348059.fc14.x86_64

How reproducible:
Always

Steps to Reproduce:
1. Connect external monitor
2. Press FN+F1
3.
  
Actual results:
No signal is emitted by video port and nothing is displayed on the external monitor

Expected results:
The video should switch between the laptop LCD panel and external monitor.

Additional info:

My Dell Inspiron Studio 1558 packing list shows:
512MB ATI Mobility Radeon HD 4570 

lspci shows:
ATI Technologies Inc M92 [Mobility Radeon HD 4500 Series]

If other hardware information is needed, I'm happy to supply it.

Comment 1 Matěj Cepl 2011-03-26 21:45:42 UTC
Thanks for the bug report.  We have reviewed the information you have provided above, and there is some additional information we require that will be helpful in our diagnosis of this issue.

Please add drm.debug=0x04 to the kernel command line, restart computer, and attach

* your X server config file (/etc/X11/xorg.conf, if available),
* X server log file (/var/log/Xorg.*.log),
* output of command xev when pressing function+F1,
* output of the dmesg command, and
* system log (/var/log/messages)

to the bug report as individual uncompressed file attachments using the bugzilla file attachment link above.

We will review this issue again once you've had a chance to attach this information.

Thanks in advance.

Comment 2 Steevithak 2011-03-27 02:28:39 UTC
Created attachment 487978 [details]
Xorg.0.log

Comment 3 Steevithak 2011-03-27 02:29:46 UTC
Created attachment 487979 [details]
dmesg output

Comment 4 Steevithak 2011-03-27 02:33:13 UTC
Created attachment 487980 [details]
messages log

Comment 5 Steevithak 2011-03-27 02:34:40 UTC
Created attachment 487981 [details]
output of xev while pressing fn+f1

Comment 6 Steevithak 2011-03-27 02:35:33 UTC
There is no /etc/X11/xorg.conf but I've attached the other four files.

Comment 7 Matěj Cepl 2011-04-07 22:35:06 UTC
Following the information on https://fedoraproject.org/wiki/Xorg/Input_Triage_Algorithm can I ask you to provide us with the output of evtest against /dev/input/....

I don't see Fn+F1 in this record of xev, so that I would like to see what goes into Xorg that it gives us these results (these are all keyboard events, rest is from mouse):

KeyPress event, serial 32, synthetic NO, window 0x4e00001,
    root 0x10c, subw 0x0, time 4779269, (492,-138), root:(498,376),
    state 0x0, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyPress event, serial 35, synthetic NO, window 0x4e00001,
    root 0x10c, subw 0x0, time 4779272, (492,-138), root:(498,376),
    state 0x40, keycode 33 (keysym 0x70, p), same_screen YES,
    XLookupString gives 1 bytes: (70) "p"
    XmbLookupString gives 1 bytes: (70) "p"
    XFilterEvent returns: False

KeyRelease event, serial 35, synthetic NO, window 0x4e00001,
    root 0x10c, subw 0x0, time 4779520, (492,-138), root:(498,376),
    state 0x40, keycode 33 (keysym 0x70, p), same_screen YES,
    XLookupString gives 1 bytes: (70) "p"
    XFilterEvent returns: False

KeyRelease event, serial 35, synthetic NO, window 0x4e00001,
    root 0x10c, subw 0x0, time 4779628, (492,-138), root:(498,376),
    state 0x40, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

Thank you in advance

Comment 8 Steevithak 2011-04-08 16:24:32 UTC
Ok, I'm not certain this is what you want but I've installed evtest and here's what happens when I run evtest:

# evtest
No device specified, trying to scan all of /dev/input/event*
Available devices:
/dev/input/event0:	Power Button
/dev/input/event1:	Sleep Button
/dev/input/event10:	HDA Intel Mic at Ext Left Jack
/dev/input/event11:	HDA Intel HP Out at Ext Left Jack
/dev/input/event12:	HDA Intel HP Out at Ext Left Jack
/dev/input/event2:	Lid Switch
/dev/input/event3:	Power Button
/dev/input/event4:	AT Translated Set 2 keyboard
/dev/input/event5:	SynPS/2 Synaptics TouchPad
/dev/input/event6:	Dell Dell USB Optical Mouse
/dev/input/event7:	Video Bus
/dev/input/event8:	Dell WMI hotkeys
/dev/input/event9:	Laptop_Integrated_Webcam_2M
Select the device event number [0-12]: 

Since the problem is keyboard related, I'm guessing "/dev/input/event4" is the correct selection? Here's what that produces:

Input driver version is 1.0.0
Input device ID: bus 0x11 vendor 0x1 product 0x1 version 0xab41
Input device name: "AT Translated Set 2 keyboard"
Supported events:
  Event type 0 (Sync)
  Event type 1 (Key)
    Event code 1 (Esc)
    Event code 2 (1)
    Event code 3 (2)
    Event code 4 (3)
    Event code 5 (4)
    Event code 6 (5)
    Event code 7 (6)
    Event code 8 (7)
    Event code 9 (8)
    Event code 10 (9)
    Event code 11 (0)
    Event code 12 (Minus)
    Event code 13 (Equal)
    Event code 14 (Backspace)
    Event code 15 (Tab)
    Event code 16 (Q)
    Event code 17 (W)
    Event code 18 (E)
    Event code 19 (R)
    Event code 20 (T)
    Event code 21 (Y)
    Event code 22 (U)
    Event code 23 (I)
    Event code 24 (O)
    Event code 25 (P)
    Event code 26 (LeftBrace)
    Event code 27 (RightBrace)
    Event code 28 (Enter)
    Event code 29 (LeftControl)
    Event code 30 (A)
    Event code 31 (S)
    Event code 32 (D)
    Event code 33 (F)
    Event code 34 (G)
    Event code 35 (H)
    Event code 36 (J)
    Event code 37 (K)
    Event code 38 (L)
    Event code 39 (Semicolon)
    Event code 40 (Apostrophe)
    Event code 41 (Grave)
    Event code 42 (LeftShift)
    Event code 43 (BackSlash)
    Event code 44 (Z)
    Event code 45 (X)
    Event code 46 (C)
    Event code 47 (V)
    Event code 48 (B)
    Event code 49 (N)
    Event code 50 (M)
    Event code 51 (Comma)
    Event code 52 (Dot)
    Event code 53 (Slash)
    Event code 54 (RightShift)
    Event code 55 (KPAsterisk)
    Event code 56 (LeftAlt)
    Event code 57 (Space)
    Event code 58 (CapsLock)
    Event code 59 (F1)
    Event code 60 (F2)
    Event code 61 (F3)
    Event code 62 (F4)
    Event code 63 (F5)
    Event code 64 (F6)
    Event code 65 (F7)
    Event code 66 (F8)
    Event code 67 (F9)
    Event code 68 (F10)
    Event code 69 (NumLock)
    Event code 70 (ScrollLock)
    Event code 71 (KP7)
    Event code 72 (KP8)
    Event code 73 (KP9)
    Event code 74 (KPMinus)
    Event code 75 (KP4)
    Event code 76 (KP5)
    Event code 77 (KP6)
    Event code 78 (KPPlus)
    Event code 79 (KP1)
    Event code 80 (KP2)
    Event code 81 (KP3)
    Event code 82 (KP0)
    Event code 83 (KPDot)
    Event code 85 (Zenkaku/Hankaku)
    Event code 86 (102nd)
    Event code 87 (F11)
    Event code 88 (F12)
    Event code 89 (RO)
    Event code 90 (Katakana)
    Event code 91 (HIRAGANA)
    Event code 92 (Henkan)
    Event code 93 (Katakana/Hiragana)
    Event code 94 (Muhenkan)
    Event code 95 (KPJpComma)
    Event code 96 (KPEnter)
    Event code 97 (RightCtrl)
    Event code 98 (KPSlash)
    Event code 99 (SysRq)
    Event code 100 (RightAlt)
    Event code 102 (Home)
    Event code 103 (Up)
    Event code 104 (PageUp)
    Event code 105 (Left)
    Event code 106 (Right)
    Event code 107 (End)
    Event code 108 (Down)
    Event code 109 (PageDown)
    Event code 110 (Insert)
    Event code 111 (Delete)
    Event code 112 (Macro)
    Event code 113 (Mute)
    Event code 114 (VolumeDown)
    Event code 115 (VolumeUp)
    Event code 116 (Power)
    Event code 117 (KPEqual)
    Event code 118 (KPPlusMinus)
    Event code 119 (Pause)
    Event code 121 (KPComma)
    Event code 122 (Hanguel)
    Event code 123 (Hanja)
    Event code 124 (Yen)
    Event code 125 (LeftMeta)
    Event code 126 (RightMeta)
    Event code 127 (Compose)
    Event code 128 (Stop)
    Event code 140 (Calc)
    Event code 141 (Setup)
    Event code 142 (Sleep)
    Event code 143 (WakeUp)
    Event code 148 (Prog1)
    Event code 152 (Screen Lock)
    Event code 155 (Mail)
    Event code 156 (Bookmarks)
    Event code 157 (Computer)
    Event code 158 (Back)
    Event code 159 (Forward)
    Event code 162 (EjectCloseCD)
    Event code 163 (NextSong)
    Event code 164 (PlayPause)
    Event code 165 (PreviousSong)
    Event code 166 (StopCD)
    Event code 172 (HomePage)
    Event code 173 (Refresh)
    Event code 183 (F13)
    Event code 184 (F14)
    Event code 185 (F15)
    Event code 191 (F21)
    Event code 193 (F23)
    Event code 205 (Suspend)
    Event code 212 (Camera)
    Event code 215 (Email)
    Event code 217 (Search)
    Event code 224 (Brightness down)
    Event code 225 (Brightness up)
    Event code 226 (Media)
    Event code 227 (Switch Video Mode)
    Event code 236 (Battery)
    Event code 238 (WLAN)
  Event type 4 (Misc)
    Event code 4 (ScanCode)
  Event type 17 (LED)
    Event code 0 (NumLock)
    Event code 1 (CapsLock)
    Event code 2 (ScrollLock)
  Event type 20 (Repeat)
Testing ... (interrupt to exit)
Event: time 1302279530.653312, type 4 (Misc), code 4 (ScanCode), value 1c
Event: time 1302279530.653325, type 1 (Key), code 28 (Enter), value 0
Event: time 1302279530.653326, -------------- Report Sync ------------

So at this point, if I press FN+F1 to switch the screen output, here's what I see:

Event: time 1302279610.131572, type 4 (Misc), code 4 (ScanCode), value db
Event: time 1302279610.131584, type 1 (Key), code 125 (LeftMeta), value 1
Event: time 1302279610.131587, -------------- Report Sync ------------
Event: time 1302279610.134734, type 4 (Misc), code 4 (ScanCode), value 19
Event: time 1302279610.134742, type 1 (Key), code 25 (P), value 1
Event: time 1302279610.134744, -------------- Report Sync ------------
Event: time 1302279610.263611, type 4 (Misc), code 4 (ScanCode), value 19
Event: time 1302279610.263622, type 1 (Key), code 25 (P), value 0
Event: time 1302279610.263623, -------------- Report Sync ------------
Event: time 1302279610.276451, type 4 (Misc), code 4 (ScanCode), value db
Event: time 1302279610.276463, type 1 (Key), code 125 (LeftMeta), value 0
Event: time 1302279610.276466, -------------- Report Sync ------------


If this isn't what you need, let me know and I'll take another shot at it.

Comment 9 Matěj Cepl 2011-04-08 20:23:48 UTC
> If this isn't what you need, let me know and I'll take another shot at it.

That's exactly what we need. Thank you.

Peter, do I understand this correctly that we are getting completely different keycodes here? (Alt+P)?

Comment 10 Peter Hutterer 2012-06-26 06:09:18 UTC
This bug was filed against Fedora 14 which is now EOL. Please re-open this bug if you still experience this issue with one of the currently suppported versions of Fedora. Don't forget to update the version field if you do so.

Comment 11 Steevithak 2012-06-27 20:53:27 UTC
I'm running Fedora 16 now and the bug is still present but partially fixed. I still can't switch to the external port by using the normal FN+F1 key combination - that key combo alone has no effect. However, I've discovered through trial-and-error that FN+F1+F1 works. That is:

I hold down the FN key while depressing and releasing the F1 key twice. Each time I complete that entire key stroke cycle, the mode changes once. So FN+F1+F1 switches to external. FN+F1+F1 again switches to the both. Again and it switches back to the LCD only, etc.  

So, the UI is still broken but at least the underlying functionality appears to be working now, so perhaps fixing the keyboard input will be relatively easy.

Comment 12 Fedora End Of Life 2012-08-16 21:33:24 UTC
This message is a notice that Fedora 14 is now at end of life. Fedora 
has stopped maintaining and issuing updates for Fedora 14. It is 
Fedora's policy to close all bug reports from releases that are no 
longer maintained.  At this time, all open bugs with a Fedora 'version'
of '14' have been closed as WONTFIX.

(Please note: Our normal process is to give advanced warning of this 
occurring, but we forgot to do that. A thousand apologies.)

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, feel free to reopen 
this bug and simply change the 'version' to a later Fedora version.

Bug Reporter: Thank you for reporting this issue and we are sorry that 
we were unable to fix it before Fedora 14 reached end of life. If you 
would still like to see this bug fixed and are able to reproduce it 
against a later version of Fedora, you are encouraged to click on 
"Clone This Bug" (top right of this page) and open it against that 
version of Fedora.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events.  Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

The process we are following is described here: 
http://fedoraproject.org/wiki/BugZappers/HouseKeeping