Wednesday, April 11, 2012

Acer Aspire 5755G - 08 - Kernel - tuxonice-sources

Hibernation brings some advantages to a Laptop.
It doesn't shutdown the hole system and boots it completely again, but writes a ram image to a swap partition or swap file.
That image will be recovered when the laptop is switched on again which results into a faster boot up.

I've chosen the TuxOnIce kernel for that reason: navi lia # eix tuxonice-sources [I] sys-kernel/tuxonice-sources Available versions: (2.6.38-r1) 2.6.38-r1!b!s (3.0.17-r1) 3.0.17-r1!b!s (3.0.20) (~)3.0.20!b!s (3.0.22) (~)3.0.22!b!s (3.0.24) (~)3.0.24!b!s (3.0.26) (~)3.0.26!b!s {{build deblob symlink}} Installed versions: 3.0.26(3.0.26)!b!s(12:54:11 04/04/12)(-build -symlink) Homepage: http://dev.gentoo.org/~mpagano/genpatches/ http://www.tuxonice.net Description: TuxOnIce + Gentoo patchset sources navi lia # emerge tuxonice-sources

I'm using Pappys kernel seeds as a basic config for years so I've also got tuxonice sources which are matching my kernel version: cd /usr/src/linux wget http://kernel-seeds.org/seeds/64_bit/tuxonice/3.0.26-tuxonice-x86_64-08.config -o .config

I don't use genkernel because I like the full control over my kernel and which drivers are built as static or module. make menuconfig

My kernel is almost only static and only a few drivers are built as modules. But I'll mark those drivers which can be built as modules. They will be indicated with <*/m>.

I'm listing only those settings here which I've altered from the pappy seeds.

General setup:
The only change in general setup is adding my default hostname, the name of my I've set in /etc/conf.d/hostname to the kernel config. General setup ---> (navi) Default hostname

Enable loadable module support:
No changes here.

Enable the block layer:
Also no changes.

Processor type and features:
Main setup for CPU support. Here are several changes to fit the kernel to core i7. Processor type and features ---> Processor family (Core 2/newer Xeon) ---> [*] Machine Check / overheating reporting [*] Intel MCE features <*> /dev/cpu/microcode - microcode support [*] Intel microcode patch loading support

Power management and ACPI options:
Hibernation with TuxOnIce will be covered in a later chapter, so let's just set up ACPI for now. The module for the dock is optional. If you got a docking station, enable it. More settings and special drivers will be part of a later chapter. I haven't figured out the best options yet. Power management and ACPI options ---> [*] Run-time PM core functionality [*] ACPI (Advanced Configuration and Power Interface) Support ---> [ ] Deprecated /proc/acpi files [ ] Deprecated power /proc/acpi directories <*/m> AC Adapter <*/m> Battery <*/m> Fan <*/m> Smart Battery System <*/m> Allow ACPI methods to be inserted/replaced at run time CPU Frequency scaling ---> Default CPUFreq governor (ondemand) ---> <*/m> 'powersave' governor <*/m> 'userspace' governor for userspace frequency scaling <*/m> 'ondemand' cpufreq policy governor <*/m> 'conservative' cpufreq governor [*] Cpuidle Driver for Intel Processors Memory power savings ---> <*> Intel chipset idle memory power saving driver

Bus options (PCI etc.):
My Aspire hasn't any PCMCIA so I've disabled it. Bus options (PCI etc.) ---> < > PCCard (PCMCIA/CardBus) support --->

Executable file formats / Emulations:
No changes

Networking support:
I've enabled IPv6, but it's optional. Most router don't support it yet anyway. You can build it also as module for the case you want to play with it. I've also built in the cfg80211 stack. It's the 'new' main stack for wireless support and needed for the WIFI card. [*] Networking support ---> Networking options ---> <*/m> The IPv6 protocol ---> [*] Wireless ---> <*/m> cfg80211 - wireless configuration API <*/m> Generic IEEE 802.11 Networking Stack (mac80211)

Device Drivers:
The section for all the drivers we need for our hardware. Many changes here. Hardware Monitoring support will be covered in a later chapter about ACPI and power management. Device Drivers ---> <*> Serial ATA and Parallel ATA drivers ---> <*> AHCI SATA support [*] ATA SFF support [*] ATA BMDMA support <*> Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support [*] Network device support ---> [*] Ethernet (1000 Mbit) ---> [*/m] Broadcom Tigon3 support [*] Wireless LAN ---> <*/m> Intel Wireless WiFi Next Gen AGN - Wireless-N/Advanced-N/Ultimate-N (iwlagn) # BEGIN Android tethering; optional USB Network Adapters ---> [*/m] Multi-purpose USB Networking Framework -*/m- CDC Ethernet support (smart devices such as cable modems) [*/m] CDC EEM support [*/m] Host for RNDIS and ActiveSync devices (EXPERIMENTAL) [*/m] Simple USB Network Links (CDC Ethernet subset) [*] Embedded ARM Linux links (iPaq, ...) # END Android tethering; optional Input device support ---> {*} Sparse keymap support library # BEGIN touchpad [*] Mice ---> <*> PS/2 mouse [*] Elantech PS/2 protocol extension # END touchpad [ ] Joysticks/Gamepads ---> [ ] Tablets ---> [ ] Touchscreens ---> [ ] Miscellaneous devices ---> Character devices ---> <*> Hardware Random Number Generator Core support <*/m> Intel HW Random Number Generator support [*] Watchdog Timer Support ---> <*/m> Intel TCO Timer/Watchdog [*/m] Multimedia support ---> # BEGIN Acer Crystal Eye Webcam <*/m> Video For Linux < > Remote Controller adapters ---> [*] Video capture adapters ---> [*] V4L USB devices ---> <*/m> USB Video Class (UVC) [*] UVC input events device support < > GSPCA based webcams ---> [ ] Radio Adapters ---> # END Acer Crystal Eye Webcam Graphics support ---> # BEGIN Integrated Intel and Hybrid Graphic Support <*> /dev/agpgart (AGP Support) ---> <*> Intel 440LX/BX/GX, I8xx and E7x05 chipset support [*] Laptop Hybrid Graphics - GPU switching support <*> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) ---> <*> Intel 8xx/9xx/G3x/G4x/HD Graphics [*] Enable modesetting on intel by default # END Integrated Intel and Hybrid Graphic Support # Leave this enabled if you want some fancy bootlogo [ ] Bootup logo ---> <*/m> Sound card support ---> <*/m> Advanced Linux Sound Architecture ---> # BEGIN Modules which are needed by Jack <*/m> Sequencer support <*/m> HR-timer backend support [*] Use HR-timer as default sequencer timer # END Modules which are needed by Jack [ ] Generic sound devices ---> [*] PCI sound devices ---> # BEGIN Intel HDA <*/m> Intel HD Audio ---> [*] Build Realtek HD-audio codec support [*] Build HDMI/DisplayPort HD-audio codec support END Intel HDA [ ] USB sound devices ---> [*] USB support ---> <*/m> xHCI HCD (USB 3.0) support (EXPERIMENTAL) <m> USB Printer support <*/m> MMC/SD/SDIO card support ---> # BEGIN SD-Cardreader <*/m> SDHCI support on PCI bus <*/m> SDHCI support on the platform specific bus # END SD-Cardreader [*] Staging drivers ---> <*/m> Intel Management Engine Interface (Intel MEI) [*] X86 Platform Specific Device Drivers ---> <*/m> Acer WMI Laptop Extras <*/m> WMI <*/m> Intel Intelligent Power Sharin <*/m> WMI support for MXM Laptop Graphics

File systems:
Drivers of your root partition must be built into the kernel and not as module, or your kernel won't be able to mount root. File systems ---> Ext3 journalling file system support The Extended 4 (ext4) filesystem < > Reiserfs support <*> Btrfs filesystem (EXPERIMENTAL) Unstable disk format DOS/FAT/NT Filesystems ---> MSDOS fs support VFAT (Windows-95) fs support NTFS file system support [*] NTFS write support [*] Network File Systems ---> NFS client support NFS server support CIFS support (advanced network filesystem, SMBFS successor)

Partition Types:
The Aspire has a pretty old and limited BIOS. We just need support for MSDOS partition tables. Partition Types ---> [*] PC BIOS (MSDOS partition tables) support


Well, that's it. Exit menuconfig and save your new configuration.

Make sure /boot is mounted for the next steps.
Now we need to compile and install the kernel. make make modules_install cp arch/x86_64/boot/bzImage /boot/vmlinuz-3.0.26-tuxonice

We need to intall the iwlagn firmware for the wireless card in the last step: emerge iwl6005-ucode

1 comment:

  1. Hey, thanks for the kernel config! I couldn't find the MXM WMI option myself :)

    ReplyDelete