ALoR HomePage
Linux on Compaq Presario 705
![]() |
|
Important note
Be aware that it does not have an integrated serial
port !! (I found that out after I had bought it...)
(you will need to use a USB protocol converter if you want to
use any serial peripherals).
Core system
There is a bug in the PCI chipset which
causes the machine to lock when using a kernel optimised for Athlon/Duron.
A workaround is included in kernel 2.4.18 and probably in later kernels.
This workaround is enabled if you see the following line in your kernel
log:
Disabling VIA memory write queue: [55] 3c->1c
For some reason, the system hangs on
boot if you enable the local APIC.
Use kernel 2.4.18 and choose "Athlon/Duron/K7 processor family";
disable "Use local APIC on single
processors".
Here is my .config for kernel 2.4.18
and the .config for the 2.5.x development
serie.
There aren't any problem with IRQ routing
neither with vanilla 2.4.x kernel nor with any of the ACPI patches.
00:00.0 Host bridge: VIA
Technologies, Inc. VT8363/8365 [KT133/KM133] (rev 80)
00:01.0 PCI bridge: VIA Technologies, Inc. VT8363/8365
[KT133/KM133 AGP]
00:07.0 ISA bridge: VIA Technologies, Inc. VT82C686
[Apollo Super South] (rev 42)
00:07.1 IDE interface: VIA Technologies, Inc. Bus
Master IDE (rev 06)
00:07.2 USB Controller: VIA Technologies, Inc. USB
(rev 1a)
00:07.4 Bridge: VIA Technologies, Inc. VT82C686 [Apollo
Super ACPI] (rev 40)
00:07.5 Multimedia audio controller: VIA Technologies,
Inc. VT82C686 AC97 Audio Controller (rev 50)
00:09.0 Communication controller: Conexant HSF 56k
HSFi Modem (rev 01)
00:0a.0 CardBus bridge: Texas Instruments PCI1410
PC card Cardbus Controller (rev 01)
00:0b.0 Ethernet controller: Realtek Semiconductor
Co., Ltd. RTL-8139/8139C (rev 10)
01:00.0 VGA compatible controller: S3 Inc.: Unknown
device 8d02 (rev 01)
You can view the more verbose output of
lspci
Processor
-ROOT- [zefiro] on pts/0 >cat /proc/cpuinfo
processor : 0
vendor_id : AuthenticAMD
cpu family : 6
model
: 6
model name : Mobile
AMD Athlon(tm) 4 Processor
stepping
: 2
cpu MHz
: 996.582
cache size : 256 KB
fdiv_bug
: no
hlt_bug
: no
f00f_bug
: no
coma_bug
: no
fpu
: yes
fpu_exception : yes
cpuid level : 1
wp
: yes
flags
: fpu vme de pse tsc msr pae mce cx8 sep mtrr pge mca
: cmov pat pse36 mmx fxsr sse syscall mmxext 3dnowext 3dnow
bogomips
: 1985.74
Power management
The Presario 705 does not have an APM
compatible BIOS. Unless you use ACPI, the fun will run all the time and
the machine will run very hot. I can report success with version 20020404
of the ACPI code available from the ACPI project's
site.
With this patch, all ACPI functionality works with the exception of suspend
and performance management. (Both S3 and S4 suspend states cause a hang
on wakeup; according to Pavel Machek, the problem is understood and being
worked on. The Presario's BIOS doesn't advertise support for S1.)
(The Presario does performance management using AMD's PowerStep interface
and the support for this is in development in the 2.5.x series.)
Apply acpi-2002xxxx-2.4.xx.diff with date >= 2000918 or a previous version but with this kacpid.patch applied, then enable all ACPI options.
-ROOT- [zefiro] on pts/0 >cat /proc/acpi/battery/BAT0/info
present:
yes
design capacity:
53280 mWh
last full capacity: 47315
mWh
battery technology: rechargeable
design voltage:
14800 mV
design capacity warning: 4721 mWh
design capacity low: 0 mWh
capacity granularity 1: 1480 mWh
capacity granularity 2: 1480 mWh
model number:
6000
serial number:
1
battery type:
4
OEM info:
COMPAQ
-ROOT- [zefiro] on pts/0 >cat /proc/acpi/processor/CPU0/info
processor id:
0
acpi id:
1
bus mastering control: no
power management:
yes
throttling control: yes
performance management: no
limit interface:
yes
Supported ACPI state are (S0 S3 S4 S5)
Download the DSDT and the FADT
Software suspend
The swsusp patch appears to work with the Presario, and
partly compensates for the lack of ACPI suspend.
Swsusp can't disable automatically the eth interface, so you have the disable
and enable it manually before and after software suspend.
I use this suspend script.
If you want to try swsusp apply patch-acpi-acpi2002xxxx-swsuspx and select "Software suspend" in the kernel config.
Dual Boot with Windows XP
I've deleted the system rescue partition
that comes with the presario out of the box, resized the NTFS partition
with Partition Magic 7.0 and installed linux in the second partition. So
I have windows on /hda1, linux on /had2 and swap partition on /hda3
If you want to enable the dual boot, here is an example of lilo.conf:
prompt
timeout=50
vga=791
default="linux 2.4.x"
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
message=/boot/message.blue.boot
lba32
image=/boot/vmlinuz-2.5
label="linux 2.5.x"
read-only
root=/dev/hda2
append="hdc=ide-scsi resume=/dev/hda3"
image=/boot/vmlinuz
label="linux 2.4.x"
read-only
root=/dev/hda2
append="hdc=ide-scsi"
other=/dev/hda1
label="Windows XP"
table=/dev/hda
Peripherals
IDE system
Select "Use PCI DMA by default when available" and "VIACXXX chipset support" in your kernel configuration (see the above .config)
-ROOT- [zefiro] on pts/0
>hdparm -Tt /dev/hda
/dev/hda:
Timing buffer-cache reads: 128
MB in 0.85 seconds = 150.59 MB/sec
Timing buffered disk reads: 64 MB in
3.13 seconds = 20.45 MB/sec
The Hard Disk uses UltraDMA/100 as you
can see form :
-ROOT- [zefiro] on pts/0
>hdparm -i /dev/hda
/dev/hda:
Model=HITACHI_DK23CA-20, FwRev=00H1A0J1, SerialNo=1224KP
Config={ HardSect NotMFM HdSw>15uSec Fixed
DTR>10Mbs }
RawCHS=16383/16/63, TrkSize=36477, SectSize=579,
ECCbytes=4
BuffType=DualPortCache, BuffSize=2048kB, MaxMultSect=16,
MultSect=off
CurCHS=16383/16/63, CurSects=16514064, LBA=yes,
LBAsects=39070080
IORDY=yes, tPIO={min:400,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio1 pio2 pio3 pio4
DMA modes: sdma0 sdma1 sdma2 mdma0 mdma1 mdma2
udma0 udma1 udma2 udma3 udma4 *udma5
AdvancedPM=yes: mode=0x80 (128) WriteCache=enabled
Drive Supports : ATA/ATAPI-5 T13 1321D revision
3 : ATA-1 ATA-2 ATA-3 ATA-4 ATA-5
-ROOT- [zefiro] on pts/0
>hdparm -i /dev/hdc
/dev/hdc:
Model=TOSHIBA DVD-ROM SD-R2002, FwRev=1Q35,
SerialNo=
Config={ Fixed Removeable DTR<=5Mbs DTR>10Mbs
nonMagnetic }
RawCHS=0/0/0, TrkSize=0, SectSize=0, ECCbytes=0
BuffType=unknown, BuffSize=2048kB, MaxMultSect=0
(maybe): CurCHS=0/0/0, CurSects=0, LBA=yes,
LBAsects=0
IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio1 pio2 pio3 pio4
DMA modes: mdma0 mdma1 *mdma2
AdvancedPM=no
Drive Supports : ATA/ATAPI-5 T13 1321D revision
3 : ATA-2 ATA-3 ATA-4 ATA-5
PCMCIA
No problem with it. I''ve tested a Cisco
Aironet 353, and it works well. The only issue is that there is only one
slot for PCMCIA cards. I cannot insert the arionet and the GPS module at
the same time...
Choose "Support for hot-pluggable devices", "PCMCIA/CardBus
support" and "CardBus support".
Network
Works fine with the 8139too driver. Choose "RealTek RTL-8139 PCI Fast Ethernet Adapter support".
-ROOT- [zefiro] on pts/0 >lspci -vv -s
00:0b.0
00:0b.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C
(rev 10)
Subsystem: Realtek Semiconductor
Co., Ltd. RT8139
Control: I/O+ Mem+ BusMaster+
SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap+ 66Mhz- UDF-
FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR-
<PERR-
Latency: 64 (8000ns min,
16000ns max)
Interrupt: pin A routed to
IRQ 11
Region 0: I/O ports at 1400
[size=256]
Region 1: Memory at e8010000
(32-bit, non-prefetchable) [size=256]
Capabilities: [50] Power
Management version 2
Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=375mA PME(D0-,D1+,D2+,D3hot+,D3cold+)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
Add to the /etc/modules.conf the following
line:
alias eth0 8139too
Sound
The sound chipset is an AD1886 and is supported
by the ac97_codec.
Version 0.9.0rc5 of the ALSA drivers supports this machine out of the box. Simply
configure them with
./configure --with-cards=via82xx
then edit the /etc/modules.conf and add:
alias char-major-116 snd
options snd cards_limit=1
alias char-major-14 soundcore
alias snd-card-0 snd-via82xx
alias sound-slot-0 snd-card-0
alias sound-slot-1 snd-card-0
alias sound-service-0-0 snd-mixer-oss
alias sound-service-1-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-2 snd-seq-midi
alias sound-service-0-3 snd-pcm-oss
alias sound-service-0-8 snd-seq-oss
alias sound-service-0-12 snd-pcm-oss
If you want to try the development kernel
2.5.x, the ALSA driver are integrated in the kernel tree.
Chose "Sequencer support", all the bool state of "OSS api emulation"
and unter PCI devices "VIA 82C686A/B South Bridge"
USB
USB works correctly and it detects my Logitec
optical mouse. Choose "UHCI support".
Add in your /etc/modules.conf
alias usb-controller usb-uhci
CD-Writer
You need to enable the SCSI-emulation in the kernel and
to pass the "hdc=ide-scsi" directive to the kernel at bootstrap.
To do so edit your lilo.conf and add:
append="hdc=ide-scsi"
Touchpad
It is a Synaptics PS/2 TouchPad. Choose "PS/2 mouse".
Modem
The Conexant HSF modem is a cheap controllerless
and DSP-less thing; however, the CPU is fast enough to make it work
with no noticeable decrease in interactivity.
It is supported under Linux using proprietary (binary-only) drivers
available from Marc
Boucher's site.
FrameBuffer
Framebuffer is working correctly.
You have to select the support for the "VESA VGA graphics console"
because the S3 Savage doesn't have specific support.
To enable the graphical penguin at bootstrap you have to pass the vga=xxx
to the kernel (edit the lilo.conf to do so).
The supported value for the vga parameter are:
resolution vga value
-----------------------
800x600 771
1024x768 791
look at /usr/src/linux/Documentation/fb/vesafb.txt for more
values.
XFree86
The video chipset is a S3 Savage Twister
K. While this chipset is supported by XFree86 since version 4.1.0,
it is not (yet) detected automatically. Manually configuring XFree86
for any Savage chip should give you a working XF86Config. Make sure that
the Device section of your XF86Config looks as follows:
Section "Device"
Identifier "S3 Savage Twister
K" # identifier doesn't care
Driver "savage"
BoardName "Unknown"
Option "VideoRAM" "16384"
# Option "no_accel"
# You may enable this if there are timeouts when starting X
# Option "xaa_benchmark"
EndSection
To get both touch pad and USB mouse work
under X take a look at this section:
Section "ServerLayout"
Identifier "XFree86 Configured"
Screen 0
"Screen0" 0 0
InputDevice "Mouse0" "CorePointer"
InputDevice "Mouse1" "Alwayscore"
InputDevice "Keyboard0"
"CoreKeyboard"
EndSection
Section "InputDevice"
Identifier "Keyboard0"
Driver "keyboard"
Option "XkbLayout"
"us"
EndSection
Section "InputDevice"
Identifier "Mouse1"
Driver "mouse"
Option
"Protocol" "PS/2"
Option
"Device" "/dev/psaux"
Option
"Emulate3Buttons"
EndSection
Download the full XF86Config
The information contained in this document is offered in good faith, but with no guarantee of any kind.
Many information on this page are taken from Juliusz Chroboczek page
Email: alor (at) antifork <dot> org alor (at) users <dot> sf <dot> net
This is my amazon whishlist
GnuPG Key fingerprint = 6B41 2C66 0067 A85D 43CB 4E3E 041A 5874 7D0D 619C