Thursday, April 7, 2011

Setting the VESA driver in OpenSolaris ( OpenIndiana )

This is the third time I've run into a Gateway branded board that didn't play nice with UNIX based on the work by SUN Microsystems-- I kind of sort of work for a company that specializes in Gateway hardware so the chances of this happening are a little higher for me than most.

The most simple way I saw to make things work regardless of the system I was working on was to start going down to VESA 1024x768 resolution. I usually use SUN tech for file servers-- plenty for a box that just plain doesn't need a GUI.

Here are the details for this time:

-Gateway 4006259R (Intel, Socket 775, G33 Express Chipset, customized BIOS for Gateway) has deep video issues.

-OpenSolaris (and OpenIndiana) boot to LiveCD CLI

-Login
u: jack
p: jack

-Elevate self to root
su
p: opensolaris
(or p: openindiana)

svcadm enable ssh

-Get the DHCP IP address assigned
ifconfig -a

-Install the OS via ssh from another machine
ssh -X 192.168.1.50 -l jack
p: jack

-Elevate self to root
su
p: opensolaris
(or p: openindiana)

-Start GUI install (CLI install not available)
/bin/gui-install

-Restart the machine

-Login as self over SSH
ssh -X 192.168.1.50 -l brad
p: guess

-Attempt to elevate self to root
su
p: guess

-Root password expired mumbo-jumbo
p: guessagain
confirm p: guessagain

-Check to make sure you have elevated yourself to root
su
p: guessagain

-Get a xorg.conf skeleton to edit
/usr/X11/bin/Xorg -config

-Edit the xorg.conf skeleton
vi /home/brad/xorg.conf.new


-Your xorg.conf allows for the joining of at least one device (video card) with at least one monitor in a screen section
-Those are the parts of this file we are going to focus on
-Add these lines to your new xorg.conf.new file:

Section "Device"
    Identifier "Card0"
    Driver "vesa"
EndSection

-Delete the similar section that was automatically generated

-Get the settings for your monitor
-Make sure the automatically generated settings match closely enough

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "BrandOfMonitor"
    HorizSync       30.0 - 81.0
    VertRefresh     56.0 - 75.0
    Option         "DPMS"
EndSection

-Then we put it all together with a Screen section
-This section happens to conform to the VESA standards
-A VESA setup will work with an overwhelming majority of hardware

Section "Screen"
    Identifier     "Screen0"
    Device         "Card0"
    Monitor        "Monitor0"

    DefaultDepth    24
    SubSection     "Display"
        Viewport  0 0
        Depth       24
        Modes      "1024x768"
    EndSubSection
EndSection

-Write and quit the editor

-Copy your file to /etc/X11/ as xorg.conf

-Log in via SSH -X one last time
-Use the GUI tool to update the system

-Restart your machine

-Pray

-If you don't get the GDM login, you are at least close.
You are welcome.

Enjoy your ZFS based fileserver,
-Brad

2 comments:

  1. I have an Asus EEEPc 1015PE, and it has the Intel Pineview video chipset. When I boot the livecd, it says it is using the "text" driver, and it uses a resolution of 800x600. I'm assuming this is actually the "vesa" driver, though it reports it as "text". The resolution I need is 1024x600, which is the max resolution for the builtin 11.2" LCD. I'm not sure why it "wants" to use 800x600, but I assume it is the default without any tweaking to the xorg.conf file.

    I did install Open Indiana successfully. I compiled and installed the xf86-video-intel 2.9 driver along with the latest stable libdrm as a prereq. I pointed the Modulepath to the correct location, and Xorg still said it didn't detect any video devices. I followed the same set of procedures with NetBSD on the same netbook, which worked with some flaws (mainly in the screen redrawing). xf86-video-intel 2.9 is the highest that will work without the requirement of KMS support in the kernel, or Kernel Mode Switching. I assume some later releases of Open Indiana will have xf86-video-intel at 2.12 or greater, along with KMS support in the kernel. But the latest Open Indiana release still was stuck at XOrg 1.7.7, xf86-video-intel 2.6, and no KMS support.

    Right now, I have FreeBSD 8.2-stable installed on the netbook, and it is using xf86-video-intel 2.9 from ports. It gives me the 1024x600 resolution I need, along with the screen redrawing bug this version has.

    ReplyDelete
  2. Here is the biggest problem, your LCD does not have a valid VESA driver with the right ratio to fit correctly. So, my post will barely help you.

    Getting stuff working can be a lot of hassle, which is why I looked into a more 'cookie cutter' solution for machines that really don't even need a GUI.

    My work email is on my website littered all throughout my blog. I can spend a few minutes looking at your issue, but the current reincarnation of xorgconfig which will often produce a working xorg.conf file once the drivers are loaded is where I would start.

    Here is the sad news, not all hardware runs every distro as nicely as others and the newer the hardware is the less likely you are going to have a nice experience-- which has been my lot and what I have seen myself. More research into the hardware I was purchasing greatly improved my overall experiences with all the *nix I use. It seems that xorgconfig is not going to work for you, but it doesn't hurt to try.

    ReplyDelete

Followers