G.E.M. logo

Debian Sarge 3.1.r2 in a Samsung X20 Laptop

Written by Curro Pérez Bernal.

Disk Partitioning

Dual boot system. WinXP + Debian Sarge.
Windows XP NTFS partition resized with PartitionMagic after disk defragmentation.

Partition scheme:

  • 15.7Gb -> WinXP
  • 13.7Gb -> /
  • 2.0Gb -> /var
  • 1.0Gb -> /tmp
  • 1.0Gb -> /swap
  • 26.0Gb -> /home
Back

Boot Process and base install

 Boot with linux26 option (kernel 2.6.8) with Debian Sarge r2 and select customary options. No problem with basic installation apart from the fact that the DHCP was not detected and it was necessary to provide the dhcp server name. The b44 module seems to cause some trouble and either the kernel should be upgraded to version 2.6.X with X≥15 or install the driver provided by the company. I compiled and installed the driver from BROADCOM following the instructions downloaded with the code, and moved the b44.ko module from their location to another directry (keep a backup, do not remove it). The resulting module bcm4400 makes the ethernet card work more smoothly. For more info you can visit this page.

 Standard basic configuration and no package selected. After package upgrade, edit the /etc/apt/source.list file to include non-free and contrib categories.

deb ftp://ftp.de.debian.org/debian sarge main contrib non-free deb-src ftp://ftp.de.debian.org/debian sarge main contrib non-free deb http://security.debian.org/ sarge/updates main contrib non-free deb ftp://ftp.de.debian.org/debian-non-US/ /sarge/non-US main contrib non-free

 In the present case the package selection was forced to the packages in file pack_samsung_X20 with:

dpkg --set-selections < pack_samsung_X20

 This is a selection tuned for my needings that takes approx 3.5G space in root partition. Using aptitude or dselect tune the selection and update/upgrade/install. The only dependency problem regards package discover1 which I upgraded to discover2. During the package configuration the default options can be safely assumed. Do not stop when prompted during kernel installation.

Back

X11

Xwindows works from the onset. You can find here a XF86Config-4 file sample generated with the help of Knoppix.

Back

Sound

Configured with alsaconf, the card i8x0 is detected from the onset and no problem found.

Back

Information of interest

uname output

taffey:~# uname -a
Linux taffey 2.6.8-3-686 #1 Thu Feb 9 07:39:48 UTC 2006 i686 GNU/Linux

cpuinfo output

taffey:~# cat /proc/cpuinfo 
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 13
model name      : Intel(R) Pentium(R) M processor 1.60GHz
stepping        : 8
cpu MHz         : 1596.198
cache size      : 2048 KB
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 2
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca \
cmov pat clflush dts acpi mmx fxsr sse sse2 ss tm pbe nx tm2 est
bogomips        : 3153.92

lspci output


taffey:~# lspci
0000:00:00.0 Host bridge: Intel Corp. Mobile Memory Controller Hub (rev 03)
0000:00:02.0 VGA compatible controller: Intel Corp. Mobile Graphics Controller (rev 03)
0000:00:02.1 Display controller: Intel Corp. Mobile Graphics Controller (rev 03)
0000:00:1c.0 PCI bridge: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Exp
ress Port 1 (rev 03)
0000:00:1d.0 USB Controller: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (rev 03)
0000:00:1d.1 USB Controller: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (rev 03)
0000:00:1d.2 USB Controller: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (rev 03)
0000:00:1d.3 USB Controller: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (rev 03)
0000:00:1d.7 USB Controller: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB
2 EHCI Controller (rev 03)
0000:00:1e.0 PCI bridge: Intel Corp. 82801 PCI Bridge (rev d3)
0000:00:1e.2 Multimedia audio controller: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (rev 03)
0000:00:1e.3 Modem: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Modem Controller (rev 03)
0000:00:1f.0 ISA bridge: Intel Corp. 82801FBM (ICH6M) LPC Interface Bridge (rev 03)
0000:00:1f.1 IDE interface: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) IDE Controller (rev 03)
0000:00:1f.3 SMBus: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (rev 03)
0000:06:05.0 Ethernet controller: Broadcom Corporation BCM4401-B0 100Base-TX (rev 02)
0000:06:07.0 Network controller: Intel Corp.: Unknown device 4223 (rev 05)
0000:06:09.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev b3)
0000:06:09.1 FireWire (IEEE 1394): Ricoh Co Ltd R5C552 IEEE 1394 Controller (rev 08)
0000:06:09.2 0805: Ricoh Co Ltd: Unknown device 0822 (rev 17)
0000:06:09.3 System peripheral: Ricoh Co Ltd: Unknown device 0592 (rev 08)
taffey:~#
 

Back

WiFi

  Install the ipw2200-source package and follow instructions in the file /usr/share/doc/ipw2200-source/README.Debian. Check that the package kernel-headers-2.6.X corresponding to your active kernel is installed and the untar the file and compile the driver 'a la Debian way', which is by far the easiest option:
taffey:/usr/src# tar xzvf ipw2200-source.tar.gz 
    .
    .
    .
modules/ipw2200/debian/po/ja.po
modules/ipw2200/debian/po/it.po
modules/ipw2200/debian/po/POTFILES.in
taffey:/usr/src#
taffey:/usr/src# module-assistant a-i ipw2200               
Reading Package Lists... Done
Building Dependency Tree... Done
ipw2200-source is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Updated infos about 1 packages
Extracting the package tarball, /usr/src/ipw2200-source.tar.gz
Done with /usr/src/ipw2200-modules-2.6.8-3-686_1.0.3-1+2.6.8-16sarge2_i386.deb .
Selecting previously deselected package ipw2200-modules-2.6.8-3-686.
(Reading database ... 103235 files and directories currently installed.)
Unpacking ipw2200-modules-2.6.8-3-686 (from .../ipw2200-modules-2.6.8-3-686_1.0.3-1+2.6.8-16sarge2_i386.deb) ...
Setting up ipw2200-modules-2.6.8-3-686 (1.0.3-1+2.6.8-16sarge2) ...

  The package is already installed and you can use the resulting deb package with dpkg -i to install it in other machines. The last step concerns the card firmware. You only have to copy several files in your system, follow the instructions you can find in http://ipw2200.sourceforge.net/firmware.php. Finally charge the module (modprobe ipw2200) and prepare an interfaces file according to your network environment.

  In case you installed the 2.6.15 kernel the procedure is somewhat different. Install the appropriate headers supplied by the Etch packages linux-headers-2.6.15-1, linux-headers-2.6.15-1-686 and linux-headers-2.6-686.[Not finished]

Back

Bluetooth

In the present point I will describe how to prepare the bluetooth device in the laptop to make use of a Nokia 6000 cell phone as a modem to connect to internet.

The first step consists in installing the packages bluez-utils libbluetooth1 bluez-pin bluez-firmware. Once the packages are installed see if you can detect the cell phone (named Currix in this example) and communicate with it requesting the available info:

taffey:~# hcitool scan
Scanning ...
        00:00:XX:XX:XX:XX       kokoro-0
        00:0E:XX:XX:XX:XX       Currix
taffey:~# l2ping 00:0E:XX:XX:XX:XX
Ping: 00:0E:XX:XX:XX:XX from 00:13:77:12:06:A4 (data size 20) ...
0 bytes from 00:0E:XX:XX:XX:XX id 0 time 34.96ms
0 bytes from 00:0E:XX:XX:XX:XX id 1 time 36.72ms
0 bytes from 00:0E:XX:XX:XX:XX id 2 time 19.74ms
0 bytes from 00:0E:XX:XX:XX:XX id 3 time 16.75ms
0 bytes from 00:0E:XX:XX:XX:XX id 4 time 17.76ms
0 bytes from 00:0E:XX:XX:XX:XX id 5 time 16.77ms
0 bytes from 00:0E:XX:XX:XX:XX id 6 time 16.78ms
7 sent, 7 received, 0% loss
taffey:~#  hcitool info 00:0E:XX:XX:XX:XX 
Requesting information ...
        BD Address:  00:0E:XX:XX:XX:XX
        Device Name: Currix
        LMP Version: 1.1 (0x1) LMP Subversion: 0x248
        Manufacturer: Nokia Mobile Phones (1)
        Features: 0xbf 0x28 0x21 0x00 0x00 0x00 0x00 0x00
                <3-slot packets> <5-slot packets>   
                    
                  

The next step is to stablish a connection with the phone. Be aware that once the command rfcomm is executed the phone will prompt you for a four--digit access password and then you will have to introduce the same password in the computer when asked to do so.

taffey:~#  rfcomm connect 0 00:0E:XX:XX:XX:XX
Connected /dev/rfcomm0 to 00:0E:XX:XX:XX:XX on channel 1
Press CTRL-C for hangup

If it is the first time you connect to the phone you have to create the configuratiopn files for the ppp conection. So you have to create the files /etc/ppp/peers/gprs and /etc/ppp/chat-gprs with the following content:

/etc/ppp/peers/gprs
/dev/rfcomm0 57600 
connect '/usr/sbin/chat -v -f /etc/ppp/chat-gprs'
noauth
defaultroute
debug
/etc/ppp/peers/gprs
TIMEOUT         5
ECHO            ON
ABORT           '\nBUSY\r'
ABORT           '\nERROR\r'
ABORT           '\nNO ANSWER\r'
ABORT           '\nNO CARRIER\r'
ABORT           '\nNO DIALTONE\r'
ABORT           '\nRINGING\r\n\r\nRINGING\r'
''              \rAT
TIMEOUT         12
OK              ATE1
OK              'AT+cgdcont=1,"IP","airtelnet.es"'
OK              ATD*99***1#

Next you launch the connection. Notice the little G that will appear on the upper left corner of the cell phone screen, once the connection is launched. You then have an active connection to internet.

taffey:~# pppd call gprs
taffey:~# ifconfig 
lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:153 errors:0 dropped:0 overruns:0 frame:0
          TX packets:153 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:32976 (32.2 KiB)  TX bytes:32976 (32.2 KiB)

ppp0      Link encap:Point-to-Point Protocol  
          inet addr:62.87.48.205  P-t-P:10.6.6.6  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:4 errors:1 dropped:0 overruns:0 frame:0
          TX packets:5 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3 
          RX bytes:40 (40.0 b)  TX bytes:61 (61.0 b)

To stop the communication it should suffice to issue the following command, though not always respond to it:

taffey:~# /etc/ppp/ip-down

Sometimes I have to switch off the Bluetooth in the phone in order to disconnect it completely. This is something to check...

Some links:

Back

Memory Card Reader

Not yet.

Back

Linux On Laptops