LinuxQuestions.org
View the Most Wanted LQ Wiki articles.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices



Reply
 
Search this Thread
Old 06-12-2011, 09:45 PM   #1
GreyBeard
LQ Newbie
 
Registered: Oct 2003
Location: Taxachusetts, USA
Distribution: Slackware
Posts: 26

Rep: Reputation: 0
Slackware 13.37 doesn't determine monitor size correctly


I have a display problem since updating to Slackware 13.37. Everything was fine on Slackware 13.1, but when I switched to 13.37 some piece of software came up with the wrong monitor size. I have a 1600x900 LCD monitor but the X screen came up as 1024x768 with blackness on either side of it. Under Slackware 13.1 the X screen came up as 1600x900 as it should without any prompting from me; I didn't even have an Xorg.conf file. I tried using the Xorg.conf file which was needed and work for older Slackwares, eg 12.*, but it didn't work. (Saying it didn't work is a gross understatement! That old Xorg.conf completely screwed up mouse, keyboard, and monitor; the screen was flashing and nothing worked. The only way to get control back was to SSH into the machine from my laptop and reboot. Killing the X server via that SSH console did NOT the flashing or get me back to my console login; only reboot worked.)

I find I can get the screen to be the right size manually by going through KDE's "System Settings" --> "Display and Monitor" --> "Size & Orientation", then disabling "LVDS1" and setting VGA1 to 1600x900. The size of my odd-sized monitor is being correctly detected for the "Auto" choice. Upon reboot LVDS1 stays disabled but VGA1 reverts to 1024x768 so I have to do this each time.

I've done some search of the on-line literature regarding the error messages I am seeing in the boot log. As near as I can tell the relevant error and other messages are:

[ error message from dmesg ]

fb: conflicting fb hw usage inteldrmfb vs VESA VGA - removing generic driver

[ consequences from /var/log/messages ]

vesafb: framebuffer at 0xd0000000, mapped to 0xf8080000, using 1536k, \
total 8128k
vesafb: mode is 1024x768x8, linelength=1024, pages=9
vesafb: scrolling: redraw
vesafb: Pseudocolor: size=8:8:8:8, shift=0:0:0:0
fb0: VESA VGA frame buffer device
ERST: Table is not found!

People are suggesting changing all kinds of things to alleviate the side effects of the "conflicting" error message above, even modifying GRUB parameters (which won't work for me since I use LILO).

So, I have a manual work around which I must do each time I log in. Does someone know how I can get X or KDE to force 1600x900 upon start (while Linux/X/whoever find and fix the problem) or does someone know of a real fix?

Thanks in advance,
Jeff B.
 
Old 06-12-2011, 10:00 PM   #2
jefro
Guru
 
Registered: Mar 2008
Posts: 11,942

Rep: Reputation: 1481Reputation: 1481Reputation: 1481Reputation: 1481Reputation: 1481Reputation: 1481Reputation: 1481Reputation: 1481Reputation: 1481Reputation: 1481
"fb: conflicting fb hw usage inteldrmfb vs VESA VGA - removing generic driver"

I agree. Why not get the correct driver?

See if this helps any too. http://www.linuxquestions.org/questi...driver-879488/

Last edited by jefro; 06-12-2011 at 10:07 PM.
 
Old 06-13-2011, 05:31 AM   #3
adamk75
Senior Member
 
Registered: May 2006
Posts: 3,091

Rep: Reputation: 397Reputation: 397Reputation: 397Reputation: 397
I doubt the conflicting message is the source of any resolution problems under X. The generic vesa framebuffer driver is able to hand over control to the DRM KMS drivers such as inteldrm. You can confirm if the problem is the conflict or not by disabling the vesa framebuffer driver by passing "vga=normal" to the kernel. Since it's a kernel option, it works if you are using grub or lilo. Just add that vga=normal to the append line in /etc/lilo.conf and rerun lilo. Try that and let us know if it solves your resolution problem.

Adam
 
Old 06-14-2011, 02:42 PM   #4
GreyBeard
LQ Newbie
 
Registered: Oct 2003
Location: Taxachusetts, USA
Distribution: Slackware
Posts: 26

Original Poster
Rep: Reputation: 0
To adamk75:
-----------

As per your suggestion I tried passing vga=normal to the boot by adding it to the append line in lilo.conf. Lilo itself rejected it:

root@atomik 0 PID=2219> lilo
Fatal: APPEND or LITERAL may not contain "vga="

Then I tried putting vga=normal into lilo.conf as its own line as the man page suggested. That did nothing so problem not solved.


More info:
----------

Let me ask a different question: I put this query in the Slackware forum since the problem showed up for me with Slack 13.37. so I thought someone here might have seen it before me and had a solution handy. However I suspect the problem is not really a Slackware problem. After all Slackware is only a collection of programs and data. Here is some additional information I've gotten:


1. This is NOT a KDE problem. When I boot up with XFCE the screen is also too narrow just as it is in KDE.


2. In looking at the /var/log/Xorg.0.log file it is clear that X recognizes that my monitor on VGA1 has several modes

[ 1694.617] (II) intel(0): Printing probed modes for output VGA1
[ 1694.617] (II) intel(0): Modeline "1600x900"x60.0 ...
[ 1694.617] (II) intel(0): Modeline "1280x1024"x60.0 ...
[ 1694.617] (II) intel(0): Modeline "1152x864"x75.0 ...
[ 1694.617] (II) intel(0): Modeline "1024x768"x75.1 ...
[ 1694.617] (II) intel(0): Modeline "1024x768"x60.0 ...
...

and that my video output (no monitor, not even a connector) on LVDS1 also has several modes

[ 1694.548] (II) intel(0): Printing probed modes for output LVDS1
[ 1694.548] (II) intel(0): Modeline "1280x800"x58.1 ...
[ 1694.548] (II) intel(0): Modeline "1024x768"x60.0 ...
...

Xorg.log then goes on to say:

[ 1694.617] (II) intel(0): Output LVDS1 connected
[ 1694.617] (II) intel(0): Output VGA1 connected

So, given that X (falsely) thinks that LVDS1 is connected it then apparently tries to use the highest resolution mode it has in common with the two outputs (Using fuzzy aspect match for initial modes) namely "1024x768"x60.0.

[ 1694.617] (II) intel(0): Using fuzzy aspect match for initial modes
[ 1694.617] (II) intel(0): Output LVDS1 using initial mode 1024x768
[ 1694.617] (II) intel(0): Output VGA1 using initial mode 1024x768


3. Note that I did not change my hardware when upgrading to Slackware 13.37, and this was all working with my previous Slackware, so this is a software or data issue.


So does anyone have any idea WHERE code may have changed which would cause screen resolution to be screwed up, i.e. TO WHOM do I go to ask this question?


ALTERNATIVELY, is there some way I can (1) force X to ignore LVDS1 or (2) get KDE to automagically do the manual workarounds?

Thanks in advance,
Jeff B.

Last edited by GreyBeard; 06-14-2011 at 02:44 PM. Reason: Added a Thanks at the bottom.
 
Old 06-14-2011, 03:05 PM   #5
adamk75
Senior Member
 
Registered: May 2006
Posts: 3,091

Rep: Reputation: 397Reputation: 397Reputation: 397Reputation: 397
OK, sorry, the 'vga =' is actually in /etc/lilo.conf by default. You just need to adjust the value to normal. That'll teach me to respond to someone first thing in the morning :-)

I think we can get VGA1 to use the correct resolution by default. Try creating an xorg.conf file that contains just these few lines:

Code:
Section "Monitor"
        Identifier "VGA1"
        Option "PreferredMode" "1600x900"
EndSection
Disabling LVDS1 is trickier. I've never tried this, but supposedly you can pass this line to the kernel (via the append line in /etc/lilo.conf):

Code:
video=LVDS-1:d
You can confirm the port name for KMS by checking the symlinks listed in /sys/class/drm/
 
Old 06-14-2011, 09:09 PM   #6
allend
Senior Member
 
Registered: Oct 2003
Location: Melbourne
Distribution: Slackware-current
Posts: 3,485

Rep: Reputation: 856Reputation: 856Reputation: 856Reputation: 856Reputation: 856Reputation: 856Reputation: 856
Quote:
is there some way I can (1) force X to ignore LVDS1
In your /etc/X11/xorg.conf, you could try adding a Monitor section for the nonexistent LVDS1 that uses Ignore option and then add that to your Device section.
Code:
Section "Device"
    Identifier     "Device0"
    ...
    Screen          0
    Option         "Monitor-LVDS1" "MonitorOff"
    ...
EndSection

Section "Monitor"
    Identifier     "MonitorOff"
    Option         "Ignore" "true"
EndSection
As 'man xorg.conf' states, this is useful if the hardware reports the presence of outputs that don't exist.
 
Old 07-23-2011, 10:56 PM   #7
GreyBeard
LQ Newbie
 
Registered: Oct 2003
Location: Taxachusetts, USA
Distribution: Slackware
Posts: 26

Original Poster
Rep: Reputation: 0
Unhappy Work-around found.

I spoke too soon. Work-around not found.

Last edited by GreyBeard; 07-23-2011 at 11:22 PM. Reason: A mistake was made and I'd rather delete this post altogether.
 
  


Reply

Tags
screen resolution, slackware 13.37


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
[SOLVED] Wicd won't install correctly/run correctly (64-bit Slackware 13) bgraybr Slackware 3 04-01-2010 07:57 PM
Determine Physical RAM size skistner Linux - Hardware 18 02-22-2010 01:57 PM
how to determine block size when using dd kav Linux - Software 2 12-22-2007 08:16 PM
Determine a function's stack size. koodoo Programming 9 06-11-2007 12:40 PM
how to determine if pcmcia service is loaded correctly glorsplitz Linux - Hardware 1 09-24-2005 04:32 PM


All times are GMT -5. The time now is 09:34 PM.

Main Menu
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration