HARDWARE Gentoo on Dell Inspiron 9300

From Gentoo Linux Wiki

Jump to: navigation, search
This article is part of the Hardware series.
Laptops TV Tuner Cards Wireless Servers Storage Other Hardware Motherboards Related

Contents

[edit] Dell Inspiron 9300

This article is based on experiences with the LiveCD 2005.1 release, and following the Gentoo Handbook.

Note: This entry is a work in progress.

[edit] Using the LiveCD

Need to disable framebuffer to enable the network card, by loading the gentoo-nofb kernel. <--proven to be false. Framebuffer console and network card work harmoniously. Bear in mind that in the livecd environment for 2006.0 (unsure for 2005.1), net.eth0 is the firewire and net.eth1 is the Broadcom Ethernet Card.

[edit] Installation Notes

ifconfig -a revealed that eth0 was the firewire port and the Broadcom Corporation BCM4401-BO 100Base-TX was mapped to eth1. Solution was to:

Code: Setup eth1
cd /etc/init.d
ln -s net.lo net.eth1
rc-update add net.eth1 default
rc-update del net.eth0
net.eth1 start

[edit] Network

Configuration of the Intel Pro/Wireless 2200BG wireless card has two options:

* use the builtin kernel driver (this works only for kernel version >=2.6.14);
* use the net-wireless/ipw2200 package

Tried the kernel driver (2.6.14) but didn't have any success, so I tried net-wireless/ipw2200 package and this worked. I installed net-wireless/wpa_supplicant following the Gentoo Wireless Networking guide.

For anyone who wants to try the kernel drivers, stumbling block was this error "ioctl[IPW_IOCTL_WPA_SUPPLICANT]: Operation not supported". Also you need to match the firmware and driver versions

[edit] X11 Installation

Need to follow the HARDWARE Synaptics Touchpad to make the touch pad work. Nice to note that it recognised the 1920x1200 screen!

[edit] Sound (ALSA)

No guides are necessary, the sound should work by default if you compile the Intel AC97 support into the kernel. (Using the gentoo-sources, or vserver sources, but I do believe vanilla, love, hardened, mm and suspend all work with it as well.)

[edit] Bluetooth Support

Need to follow the Gentoo Linux Bluetooth Guide. Chose to emerge firmware drivers

[edit] Keyboard / Multimedia Keys under X11

[edit] Introduction

First you have to determine if the keyboard model of the Inspiron 9300 is allready completely supported by your gentoo system. If the keyboard is allready fully supported it is easy to make the multimedia buttons to work. Otherwise you will have to add some stuff to some config files before you can use the multimedia keys.

Note: Though it is easy to use the multimedia keys of the keyboard under Linux, I think it is not possible to use the "blue" Function-Keys (Fn + Standby, CRT/LCD, ...).

[edit] Check if the multimedia keys are allready supported

Note:
 
If you have installed ''<=xorg-x11-6.x'', make sure 
that the following symlink exists ''/etc/X11/xkb -> /usr/lib/X11/xkb/''. 

If you have installed ''>=xorg-x11-7.x'', make sure
 that the following symlink exists ''/etc/X11/xkb -> /usr/share/X11/xkb/''. 

I think this symlinks are not mandatory, but they make things a lot easier.
  

If you have installed >=xorg-x11-7.0-r1 it is likely, that the multimedia keys of the Dell Inspiron 9300 are allready supported. To definitely check if the Inspiron 9300 keyboard model is supported, open the file /etc/X11/xkb/symbols.dir and look if the section xkb_symbols "inspiron" has at least the following entries:

File: /etc/X11/xkb/symbols.dir
  
// Laptop/notebook Dell Inspiron 8xxx
partial alphanumeric_keys
xkb_symbols "inspiron" {
    <...>
    key <I10>   {       [ XF86AudioPrev         ]       };
    key <I19>   {       [ XF86AudioNext         ]       };
    key <I20>   {       [ XF86AudioMute         ]       };
    <...>
    key <I22>   {       [ XF86AudioPlay, XF86AudioPause ] };
    key <I24>   {       [ XF86AudioStop         ]       };
    key <I2E>   {       [ XF86AudioLowerVolume  ]       };
    key <I30>   {       [ XF86AudioRaiseVolume  ]       };
    <...>
};
  


If the file has at least this entries proceed with Tell the X Server to use the appropriate keyboard model, otherwise go to Define a new keyboard model

[edit] Define a new keyboard model

If a keyboard model is not completely supported, there are different solutions to make all of it's keys to work. One way is to use a ~/.Xmodmap file. If you want more info how this works, take a look at HOWTO_Use_Multimedia_Keys. The drawback when using an ~/.Xmodmap file is, that each time the X server gets started, the program xmodmap has to load the ~/.Xmodmap file. Another solution is to define a completely new keyboard model yourself. That's what we are going to do now.

The following guide is from Ruurd Pels post on the Planet KDE blog.

With the help of the program xev you can find out which key, generates which keycode, when pressed. xev is basically an event listener. The multimedia keys on the Dell Inspiron 9300 yield the following keycodes:

pressed key keycode
mute 160
lowerVolume 174
raiseVolume 176
play/pause 162
previous 144
next 153
stop 164


The next step is to read the file /etc/X11/xkb/keycodes/xfree86 in the basic section and find out which symbol to use for which keycode. In this excerpt of the file, the keycode 49 has the symbol <TLDE> for instance.

File: /etc/X11/xkb/keycodes/xfree86
  
<...>
xkb_keycodes "basic" {

    minimum= 8;
    maximum= 255;

    <TLDE> =  49;
    <AE01> =  10;
    <..>
    indicator 1 = "Caps Lock";
    indicator 2 = "Num Lock";
    indicator 3 = "Scroll Lock";

    alias <ALGR> = <RALT>;
};
<...>
  


After you have found all of the desired keycode to symbol mappings in the file, you see, that the multimedia keys of the Dell Inspiron 9300 yield the following symbols (pressed key -> keycode -> symbol):

pressed key keycode symbol
previous 144 <I10>
next 153 <I19>
mute 160 <I20>
play/pause 162 <I22>
stop 164 <I24>
lowerVolume 174 <I2E>
raiseVolume 176 <I30>


Then we use the symbols we retrieved to alter the file /etc/X11/xkb/symbols/inet:

File: /etc/X11/xkb/symbols/inet
  
partial alphanumeric_keys
xkb_symbols "inspiron_9300" {
    name[Group1]= "Laptop/notebook Dell Inspiron 9300";

    key <I10>   {       [ XF86AudioPrev         ]       };
    key <I19>   {       [ XF86AudioNext         ]       };
    key <I20>   {       [ XF86AudioMute         ]       };
    key <I22>   {       [ XF86AudioPlay, XF86AudioPause ] };
    key <I24>   {       [ XF86AudioStop         ]       };
    key <I2E>   {       [ XF86AudioLowerVolume  ]       };
    key <I30>   {       [ XF86AudioRaiseVolume  ]       };
};
  


After that add the following line in the specified file:

File: /etc/X11/xkb/symbols.dir
  
<...>
--p----- a------- inet(inspiron_9300)
<...>
  


Another neccessary configuration entry:

File: /etc/X11/xkb/rules/xorg.lst
  
<...>
! model
  inspiron_9300 Laptop/notebook Dell Inspiron 9300
<...>
! layout
<...>
  


Add inspiron_9300. Don't forget the blackslash at the end of the line before inspiron_9300!

File: /etc/X11/xkb/rules/xorg
  
! $inetkbds = airkey acpi scorpius azonaRF2300 \
              <...>
              sven symplon toshiba_s3000 trust trustda yahoo \
              inspiron_9300

! $specialkbds = ibm_space_saver
<...>
  


Another configuration entry:

File: /etc/X11/xkb/rules/xorg.xml
 
<...>
<xkbConfigRegistry>
  <modelList>
    <model>
    <...>
      <configItem>
        <name>inspiron_9300</name>
        <description>Laptop/notebook Dell Inspiron 9300</description>
      </configItem>
    </model>
    <...>
  </modelList>
</xkbConfigRegistry>
  

[edit] Tell the X Server to use the appropriate keyboard model

Modify the keyboard section in xorg.conf to use the inspiron, or your new inspiron_9300 keyboard model:

File: /etc/X11/xorg.conf
 
Section "InputDevice"

        Identifier      "internal_keyboard"
        Driver          "kbd"

        # /etc/X11/xkb/rules/xorg.lst lists model, layout, variant and option
        Option "XkbModel"       "<inspiron|inspiron_9300>"
        <...>

EndSection
  


Then restart X. From that moment on, you're able to use the softkeys in Amarok or other programs that let you modify keyboard shortcuts.

[edit] Screen

if you have an screen with 1900x1200 resolution, then add following to your Monitor Section in /etc/X11/xorg.conf

File: /etc/X11/xorg.conf
   

<...>

Section "Monitor"
    Identifier     "Monitor0"
    DisplaySize     330 210
#       DisplaySize     344.5 222.5
    HorizSync   28-110
    VertRefresh 43-90
    Option              "DPMS"
    Modeline "1920x1200" 162 1920 1984 2176 2480 1200 1201 1204 1250 +hsync +vsync
EndSection

<...>

Section "Device"
    Identifier  "GF6800"
    Driver      "nvidia"
    Option      "NoLogo" "1"
    Option      "FlatPanelProperties"   "aspect-scaled"
    Option      "UseEdidFreqs"          "on"
    Option      "IgnoreEDID" "true"
    Option      "NoDCC" "true"
EndSection

<...>

Section "Screen"
        Identifier      "Panel"
        Device          "NVidia GeForce 6800"
        Monitor         "DELL Panel WUXGA"
        DefaultDepth    24
        SubSection "Display"
                Depth           24
                Modes           "1920x1200" "1600x1200" "1680x1050" "1280x1024" "1024x768" "800x600" "640x480"
        EndSubSection
EndSection

<...>


or for 1600x1050 Modells add this Modeline "1680x1050" 147.1 1680 1784 1968 2256 1050 1051 1054 1087

Personal tools