Home / Sistemi operativi & mobile / Linux / Sospensione su Archlinux con Dell Inspiron e nVidia
Mattepuffo

Sospensione su Archlinux con Dell Inspiron e nVidia

Sospensione su Archlinux con Dell Inspiron e nVidia

Quando ho installato Archlinux su questo portatile ho avuto grossi problemi con la sospensione, sicuramente derivanti dalla scehda video.

Dopo tantissimi tentativi sono riuscito a risolvere e adesso mi godo Arch senza nessuna problema :D!!

Andiamo con ordine.

Prima di tutto vi posto la configurazione del pc in questione:

-Computer-
Processor        : 2x Intel(R) Core(TM)2 CPU         T7200  @ 2.00GHz
Memory        : 2062MB (419MB used)
Operating System        : Arch Linux
User Name        : matte (matte)
Date/Time        : mar 14 set 2010 11:47:46 CEST
-Display-
Resolution        : 1440x900 pixels
OpenGL Renderer        : GeForce Go 7900 GS/PCI/SSE2
X11 Vendor        : The X.Org Foundation
-Multimedia-
Audio Adapter        : HDA-Intel - HDA Intel

-Version-
Kernel        : Linux 2.6.35-ARCH (i686)
Compiled        : #1 SMP PREEMPT Fri Aug 27 16:22:18 UTC 2010
C Library        : GNU C Library version 2.12.1 (stable)
Default C Compiler        : GNU C Compiler version 4.5.1 (GCC)
Distribution        : Arch Linux

-Processors-
Intel(R) Core(TM)2 CPU         T7200  @ 2.00GHz        : 1995,00MHz
Intel(R) Core(TM)2 CPU         T7200  @ 2.00GHz        : 1995,00MHz

Total Memory        : 2062720 kB

Vi ho riportato solo quelle essenziali...

 

Il problema era che usando pm-suspend (integrato in Arch) ogni volta che volevo fare il resume o il pc si riavviava o lo schermo rimaneva nero.

Per me che uso molto la sospensione era una bella seccatura.

Ho trovato però un'alternativa: s2ram!!

Per installarlo su Arch seguite questi passaggi.

1- installiamo il pacchetto uswsusp:

# pacman -Sy uswsusp

2- editiamo il file /etc/suspend.conf per specificare il device da "riesumare":

resume device = /dev/sdXY

3- editiamo il file /etc/mkinitcpio.conf per aggiungere il resume hook:

HOOKS="base udev autodetect pata scsi sata resume filesystems"

4- costruiamo il ramdisk:

# mkinitcpio -p kernel26

A questo punto vediamo se la macchina è riconosciuta con s2ram -n:

# s2ram -n
Machine matched entry 124:
sys_vendor   = 'Dell Inc.'
sys_product  = 'MP061 *'
sys_version  = ''
bios_version = ''
Fixes: 0x0  
This machine can be identified by:
sys_vendor   = "Dell Inc."
sys_product  = "MP061                           "
sys_version  = ""
bios_version = "A09"
See http://suspend.sf.net/s2ram-support.html for details.

If you report a problem, please include the complete output above.

Teoricamente basterebbe usare il comando s2ram.

Nella verità manco per niente!!

s2ram ha molte opzioni e per vederle tutte basta un:

# s2ram -h
Usage: s2ram [options]
-h, --help        this text.
-V, --version                version information
-n, --test        test if the machine is in the database.
-i, --identify    prints a string that identifies the machine.
--nofbsuspend        do not suspend the framebuffer (debugging only!).
--force        force suspending, even on unknown machines.

The following options are only available with --force:
--vbe_save        save VBE state before suspending and restore after resume.
--vbe_post        VBE POST the graphics card after resume.
--vbe_mode        get VBE mode before suspend and set it after resume.
--radeontool        turn off the backlight on radeons before suspending.
--pci_save        save the PCI config space for the VGA card.
--acpi_sleep <acpi_sleep>    set the acpi_sleep parameter before suspend
1=s3_bios, 2=s3_mode, 3=both

Da provare ci sono le seuenti varianti:

s2ram -f -a 1
s2ram -f -a 2
s2ram -f -a 3
s2ram -f -p -m
s2ram -f -p -s
s2ram -f -m
s2ram -f -s
s2ram -f -p
s2ram -f -a 1 -m
s2ram -f -a 1 -s

Quale di queste è quella giusta in questo caso??

Ebbene. dopo svariati tentativi e riavvii, quando mi stavo per arrendere ho trovato quella giusta:

s2ram -f -p -s

Da quanto ho capito questa variante forza qualcosa nel monitor o nella scheda video.

Ma poco importa.

Per avere altre notizie su s2ram:

http://wiki.archlinux.org/index.php/Suspend_to_RAM

http://tr.opensuse.org/S2ram