Ok i cant find /sys/kernel/debug/vgaswitcheroo/switch in my Arch linux. how can i add this option to my Arch kernel?
i have another questions about Arch:
i am beginner in Arch linux how can i make Arch better distribution for use in my laptop?which desktop runs better on Arch( Kde or GNOME3)?after installing Kde which software i should install?
tnx
You need to mount the debugfs filesystem: https://wiki.archlinux.org/index.php/Bu … switcheroo
]]>Here is the output of sensors:
acpitz-virtual-0
Adapter: Virtual device
temp1: +81.0°C (crit = +99.0°C)
temp2: +74.0°C (crit = +126.0°C)
k10temp-pci-00c3
Adapter: PCI adapter
temp1: +77.4°C (high = +70.0°C)
This is while running eclipse and some other things. Normally the temp1 is around 72
I have an ATi Radeon HD3200 in my laptop...
I have added the "pcie_aspm=force" to my kernel line in grub. To note, my laptop also runs fairly hot under Ubuntu, but not this hot.
Any ideas or suggestions?
thanks!
]]>tah_206207 wrote:Ok i cant find /sys/kernel/debug/vgaswitcheroo/switch in my Arch linux. how can i add this option to my Arch kernel?
I found the problem. We need to load the debugfs filesystem. Best way to do it is to add the following to /etc/fstab:
debugfs /sys/kernel/debug debugfs 0 0
and then run 'mount debugfs' as root, or just reboot your computer.
tah_206207 wrote:i have another questions about Arch:
i am beginner in Arch linux how can i make Arch better distribution for use in my laptop?which desktop runs better on Arch( Kde or GNOME3)?after installing Kde which software i should install?
tnxIt's really up to you. There is a page on the wiki: https://wiki.archlinux.org/index.php/Laptop but it mostly just talks about power management. I suppose that's because there isn't much difference between a laptop and a desktop except the power aspect.
Ok thanks for your help
my Arch run as cool as Ubuntu.
thanks
Ok i cant find /sys/kernel/debug/vgaswitcheroo/switch in my Arch linux. how can i add this option to my Arch kernel?
I found the problem. We need to load the debugfs filesystem. Best way to do it is to add the following to /etc/fstab:
debugfs /sys/kernel/debug debugfs 0 0
and then run 'mount debugfs' as root, or just reboot your computer.
i have another questions about Arch:
i am beginner in Arch linux how can i make Arch better distribution for use in my laptop?which desktop runs better on Arch( Kde or GNOME3)?after installing Kde which software i should install?
tnx
It's really up to you. There is a page on the wiki: https://wiki.archlinux.org/index.php/Laptop but it mostly just talks about power management. I suppose that's because there isn't much difference between a laptop and a desktop except the power aspect.
]]>Perhaps you would be best served if you used xfce4 which is much smaller in footprint....not a GB install like kde4 and a simpler Desktop.........
It instaklls from pacman......
While it may make a very very slight difference to use xfce4 (bearing in mind it may even make it worse depending on how the developers programmed each desktop environment), compared with the power saving of turning off the unused video chipset and the other hardware tweaks, it's basically none-existant.
As an aside, vgaswitcheroo is missing for me too (I have both i915 and radeon modules loaded by using the blacklist and then rc.local trick). Haven't been able to work out why yet. Might have to use acpi_call instead.
]]>It instaklls from pacman......
]]>I don't think your radeon card is turned off and probably it heats up CPU. Are you sure you have file /sys/kernel/debug/vgaswitcheroo/switch and it's set to OFF. Check with
#cat /sys/kernel/debug/vgaswitcheroo/switch
# In order to enable or disable this script just change the execution
# bits.Have you set your rc.local as executable?
Also you can try changing first line in rc.local
#!/bin/sh -e
to
#!/bin/bash
Ok i cant find /sys/kernel/debug/vgaswitcheroo/switch in my Arch linux. how can i add this option to my Arch kernel?
i have another questions about Arch:
i am beginner in Arch linux how can i make Arch better distribution for use in my laptop?which desktop runs better on Arch( Kde or GNOME3)?after installing Kde which software i should install?
tnx
#cat /sys/kernel/debug/vgaswitcheroo/switch
# In order to enable or disable this script just change the execution
# bits.
Have you set your rc.local as executable?
Also you can try changing first line in rc.local
#!/bin/sh -e
to
#!/bin/bash
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#
### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
set have_grubenv=true
load_env
fi
set default="0"
if [ "${prev_saved_entry}" ]; then
set saved_entry="${prev_saved_entry}"
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi
function savedefault {
if [ -z "${boot_once}" ]; then
saved_entry="${chosen}"
save_env saved_entry
fi
}
function recordfail {
set recordfail=1
if [ -n "${have_grubenv}" ]; then if [ -z "${boot_once}" ]; then save_env recordfail; fi; fi
}
function load_video {
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
}
insmod part_msdos
insmod ext2
set root='(/dev/sda,msdos10)'
search --no-floppy --fs-uuid --set=root bf4233aa-ee92-484c-95e8-1de52145c6db
if loadfont /usr/share/grub/unicode.pf2 ; then
set gfxmode=auto
load_video
insmod gfxterm
fi
terminal_output gfxterm
insmod part_msdos
insmod ext2
set root='(/dev/sda,msdos10)'
search --no-floppy --fs-uuid --set=root bf4233aa-ee92-484c-95e8-1de52145c6db
set locale_dir=($root)/boot/grub/locale
set lang=en_US
insmod gettext
if [ "${recordfail}" = 1 ]; then
set timeout=-1
else
set timeout=10
fi
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
if background_color 44,0,30; then
clear
fi
### END /etc/grub.d/05_debian_theme ###
### BEGIN /etc/grub.d/10_linux ###
if [ ${recordfail} != 1 ]; then
if [ -e ${prefix}/gfxblacklist.txt ]; then
if hwmatch ${prefix}/gfxblacklist.txt 3; then
if [ ${match} = 0 ]; then
set linux_gfx_mode=keep
else
set linux_gfx_mode=text
fi
else
set linux_gfx_mode=text
fi
else
set linux_gfx_mode=keep
fi
else
set linux_gfx_mode=text
fi
export linux_gfx_mode
if [ "$linux_gfx_mode" != "text" ]; then load_video; fi
menuentry 'Ubuntu, with Linux 2.6.38-8-generic' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
set gfxpayload=$linux_gfx_mode
insmod part_msdos
insmod ext2
set root='(/dev/sda,msdos10)'
search --no-floppy --fs-uuid --set=root bf4233aa-ee92-484c-95e8-1de52145c6db
linux /boot/vmlinuz-2.6.38-8-generic root=UUID=bf4233aa-ee92-484c-95e8-1de52145c6db ro quiet splash pcie_aspm=force vt.handoff=7
initrd /boot/initrd.img-2.6.38-8-generic
}
menuentry 'Ubuntu, with Linux 2.6.38-8-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
set gfxpayload=$linux_gfx_mode
insmod part_msdos
insmod ext2
set root='(/dev/sda,msdos10)'
search --no-floppy --fs-uuid --set=root bf4233aa-ee92-484c-95e8-1de52145c6db
echo 'Loading Linux 2.6.38-8-generic ...'
linux /boot/vmlinuz-2.6.38-8-generic root=UUID=bf4233aa-ee92-484c-95e8-1de52145c6db ro single
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-2.6.38-8-generic
}
### END /etc/grub.d/10_linux ###
### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###
### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
insmod part_msdos
insmod ext2
set root='(/dev/sda,msdos10)'
search --no-floppy --fs-uuid --set=root bf4233aa-ee92-484c-95e8-1de52145c6db
linux16 /boot/memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
insmod part_msdos
insmod ext2
set root='(/dev/sda,msdos10)'
search --no-floppy --fs-uuid --set=root bf4233aa-ee92-484c-95e8-1de52145c6db
linux16 /boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###
### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Windows 7 (loader) (on /dev/sda1)" --class windows --class os {
insmod part_msdos
insmod ntfs
set root='(/dev/sda,msdos1)'
search --no-floppy --fs-uuid --set=root F2D88782D8874437
chainloader +1
}
menuentry "Windows Recovery Environment (loader) (on /dev/sda5)" --class windows --class os {
insmod part_msdos
insmod ntfs
set root='(/dev/sda,msdos6)'
search --no-floppy --fs-uuid --set=root 8826C3C826C3B58A
drivemap -s (hd0) ${root}
chainloader +1
}
menuentry "Arch Linux (on /dev/sda8)" --class gnu-linux --class gnu --class os {
insmod part_msdos
insmod ext2
set root='(/dev/sda,msdos9)'
search --no-floppy --fs-uuid --set=root 377dbf15-cc6c-4a64-89b0-7028de3d6a8a
linux /boot/vmlinuz26 root=/dev/sda8 ro pcie_aspm=force
initrd /boot/kernel26.img
}
menuentry "Arch Linux Fallback (on /dev/sda8)" --class gnu-linux --class gnu --class os {
insmod part_msdos
insmod ext2
set root='(/dev/sda,msdos9)'
search --no-floppy --fs-uuid --set=root 377dbf15-cc6c-4a64-89b0-7028de3d6a8a
linux /boot/vmlinuz26 root=/dev/sda8 ro pcie_aspm=force
initrd /boot/kernel26-fallback.img
}
### END /etc/grub.d/30_os-prober ###
### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###
### BEGIN /etc/grub.d/41_custom ###
if [ -f $prefix/custom.cfg ]; then
source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###
outpu of dmesg|grep -i aspm in Arch linux
dmesg|grep -i aspm
[ 0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz26 root=/dev/sda8 ro pcie_aspm=force
[ 0.000000] Kernel command line: BOOT_IMAGE=/boot/vmlinuz26 root=/dev/sda8 ro pcie_aspm=force
[ 0.000000] PCIe ASPM is forcedly enabled
[ 1.499181] ACPI FADT declares the system doesn't support PCIe ASPM, so disable it
[ 1.681419] Unable to assume _OSC PCIe control. Disabling ASPM
my rc.conf file in Arch
#
# /etc/rc.conf - Main Configuration for Arch Linux
#
# -----------------------------------------------------------------------
# LOCALIZATION
# -----------------------------------------------------------------------
#
# LOCALE: available languages can be listed with the 'locale -a' command
# HARDWARECLOCK: set to "UTC" or "localtime", any other value will result
# in the hardware clock being left untouched (useful for virtualization)
# TIMEZONE: timezones are found in /usr/share/zoneinfo
# KEYMAP: keymaps are found in /usr/share/kbd/keymaps
# CONSOLEFONT: found in /usr/share/kbd/consolefonts (only needed for non-US)
# CONSOLEMAP: found in /usr/share/kbd/consoletrans
# USECOLOR: use ANSI color sequences in startup messages
#
LOCALE="en_US.UTF-8"
HARDWARECLOCK="localtime"
TIMEZONE="Asia/Tehran"
KEYMAP="us"
CONSOLEFONT=
CONSOLEMAP=
USECOLOR="yes"
# -----------------------------------------------------------------------
# HARDWARE
# -----------------------------------------------------------------------
#
# MOD_AUTOLOAD: Allow autoloading of modules at boot and when needed
# MOD_BLACKLIST: Prevent udev from loading these modules
# MODULES: Modules to load at boot-up. Prefix with a ! to blacklist.
#
# NOTE: Use of 'MOD_BLACKLIST' is deprecated. Please use ! in the MODULES array.
#
MOD_AUTOLOAD="yes"
#MOD_BLACKLIST=() #deprecated
MODULES=(soundcore coretemp acpi-cpufreq cpufreq_ondemand cpufreq_powersave cpufreq_conservative)
# Scan for LVM volume groups at startup, required if you use LVM
USELVM="no"
# -----------------------------------------------------------------------
# NETWORKING
# -----------------------------------------------------------------------
#
# HOSTNAME: Hostname of machine. Should also be put in /etc/hosts
#
HOSTNAME="Hp"
# Use 'ifconfig -a' or 'ls /sys/class/net/' to see all available interfaces.
#
# Interfaces to start at boot-up (in this order)
# Declare each interface then list in INTERFACES
# - prefix an entry in INTERFACES with a ! to disable it
# - no hyphens in your interface names - Bash doesn't like it
#
# DHCP: Set your interface to "dhcp" (eth0="dhcp")
# Wireless: See network profiles below
#
#Static IP example
#eth0="eth0 192.168.0.2 netmask 255.255.255.0 broadcast 192.168.0.255"
eth0="dhcp"
INTERFACES=(eth0 wlan0)
# Routes to start at boot-up (in this order)
# Declare each route then list in ROUTES
# - prefix an entry in ROUTES with a ! to disable it
#
gateway="default gw 192.168.0.1"
ROUTES=(!gateway)
# Enable these network profiles at boot-up. These are only useful
# if you happen to need multiple network configurations (ie, laptop users)
# - set to 'menu' to present a menu during boot-up (dialog package required)
# - prefix an entry with a ! to disable it
#
# Network profiles are found in /etc/network.d
#
# This now requires the netcfg package
#
#NETWORKS=(main)
# -----------------------------------------------------------------------
# DAEMONS
# -----------------------------------------------------------------------
#
# Daemons to start at boot-up (in this order)
# - prefix a daemon with a ! to disable it
# - prefix a daemon with a @ to start it up in the background
#
DAEMONS=(syslog-ng dbus @networkmanager @netfs @crond @kdm @laptop-mode)
cpufreq in Arch
#
# Configuration file for Laptop Mode Tools module cpufreq.
#
# For more information, consult the laptop-mode.conf(8) manual page.
#
###############################################################################
# CPU frequency scaling and throttling
# ------------------------------------
#
# Laptop mode tools can automatically adjust your kernel CPU frequency
# settings. This includes upper and lower limits and scaling governors.
# There is also support for CPU throttling, on systems that don't support
# frequency scaling.
#
# This feature only works on 2.6 kernels.
#
#
# IMPORTANT: In versions 1.36 and earlier, these settings were included in the
# main laptop-mode.conf configuration file. If they are still present, they
# overrule the settings in this file. To fix this, simply delete the settings
# from the main config file.
#
###############################################################################
# Enable debug mode for this module
# Set to 1 if you want to debug this module
DEBUG=0
#
# Should laptop mode tools control the CPU frequency settings?
#
# Set to 0 to disable
CONTROL_CPU_FREQUENCY=1
#
# Legal values are "slowest" for the slowest speed that your
# CPU is able to operate at, "fastest" for the fastest speed,
# "medium" for some value in the middle, or any value listed in
# /sys/devices/system/cpu/cpu*/cpufreq/scaling_available_frequencies.
# The "governor" can be any governor installed on your system, this usually
# includes "ondemand", "conservative", and "performance". The
# "IGNORE_NICE_LOAD" setting specifies that background programs that have
# a low priority ("nice level") should not cause the CPU frequency to
# be increased. (You generally want this to be enabled in battery mode.)
#
BATT_CPU_MAXFREQ=fastest
BATT_CPU_MINFREQ=slowest
BATT_CPU_GOVERNOR=ondemand
BATT_CPU_IGNORE_NICE_LOAD=1
LM_AC_CPU_MAXFREQ=fastest
LM_AC_CPU_MINFREQ=slowest
LM_AC_CPU_GOVERNOR=ondemand
LM_AC_CPU_IGNORE_NICE_LOAD=1
NOLM_AC_CPU_MAXFREQ=fastest
NOLM_AC_CPU_MINFREQ=slowest
NOLM_AC_CPU_GOVERNOR=ondemand
NOLM_AC_CPU_IGNORE_NICE_LOAD=0
#
# Should laptop mode tools control the CPU throttling? This is only useful
# on processors that don't have frequency scaling.
# (Only works when you have /proc/acpi/processor/CPU*/throttling.)
#
# This is only useful on older P4 processors that do not support frequency
# scaling. On such processors, this is the only way to reduce power consumption
# but at the cost of higher performance penalty.
#
# Enable this only if you have a processor that does not support frequency scaling
# On most new processors, you might want to disable it.
#
# Set to 0 to disable.
CONTROL_CPU_THROTTLING=0
#
# Legal values are "maximum" for the maximum (slowest) throttling level,
# "minimum" for minimum (fastest) throttling level, "medium" for a value
# somewhere in the middle (this is usually 50% for P4s), or any value listed
# in /proc/acpi/processor/CPU*/throttling. Be careful when using "maximum":
# this may be _very_ slow (in fact, with P4s it slows down the processor
# by a factor 8).
#
BATT_CPU_THROTTLING=medium
LM_AC_CPU_THROTTLING=medium
NOLM_AC_CPU_THROTTLING=minimum
this is my Ubuntu rc.local file and my Arch's rc.local file
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
modprobe radeon
echo OFF > /sys/kernel/debug/vgaswitcheroo/switch
exit 0
And my laptop temperatures!
sudo sensors
Password:
coretemp-isa-0000
Adapter: ISA adapter
Core 0: +62.0°C (high = +86.0°C, crit = +100.0°C)
coretemp-isa-0002
Adapter: ISA adapter
Core 1: +61.0°C (high = +86.0°C, crit = +100.0°C)
coretemp-isa-0004
Adapter: ISA adapter
Core 2: +62.0°C (high = +86.0°C, crit = +100.0°C)
coretemp-isa-0006
Adapter: ISA adapter
Core 3: +62.0°C (high = +86.0°C, crit = +100.0°C)
acpitz-virtual-0
Adapter: Virtual device
temp1: +61.0°C (crit = +99.0°C)
radeon-pci-0100
Adapter: PCI adapter
temp1: +69.0°C
please help me to make Arch like Ubuntu and enjoy from it.
thanks.
00:00.0 Host bridge: Advanced Micro Devices [AMD] RS880 Host Bridge
00:01.0 PCI bridge: Advanced Micro Devices [AMD] RS780/RS880 PCI to PCI bridge (int gfx)
00:02.0 PCI bridge: Advanced Micro Devices [AMD] RS780 PCI to PCI bridge (ext gfx port 0)
00:05.0 PCI bridge: Advanced Micro Devices [AMD] RS780 PCI to PCI bridge (PCIE port 1)
00:06.0 PCI bridge: Advanced Micro Devices [AMD] RS780 PCI to PCI bridge (PCIE port 2)
00:11.0 SATA controller: ATI Technologies Inc SB7x0/SB8x0/SB9x0 SATA Controller [AHCI mode]
00:12.0 USB Controller: ATI Technologies Inc SB7x0/SB8x0/SB9x0 USB OHCI0 Controller
00:12.2 USB Controller: ATI Technologies Inc SB7x0/SB8x0/SB9x0 USB EHCI Controller
00:13.0 USB Controller: ATI Technologies Inc SB7x0/SB8x0/SB9x0 USB OHCI0 Controller
00:13.2 USB Controller: ATI Technologies Inc SB7x0/SB8x0/SB9x0 USB EHCI Controller
00:14.0 SMBus: ATI Technologies Inc SBx00 SMBus Controller (rev 42)
00:14.2 Audio device: ATI Technologies Inc SBx00 Azalia (Intel HDA) (rev 40)
00:14.3 ISA bridge: ATI Technologies Inc SB7x0/SB8x0/SB9x0 LPC host controller (rev 40)
00:14.4 PCI bridge: ATI Technologies Inc SBx00 PCI to PCI Bridge (rev 40)
00:14.5 USB Controller: ATI Technologies Inc SB7x0/SB8x0/SB9x0 USB OHCI2 Controller
00:16.0 USB Controller: ATI Technologies Inc SB7x0/SB8x0/SB9x0 USB OHCI0 Controller
00:16.2 USB Controller: ATI Technologies Inc SB7x0/SB8x0/SB9x0 USB EHCI Controller
00:18.0 Host bridge: Advanced Micro Devices [AMD] Family 10h Processor HyperTransport Configuration
00:18.1 Host bridge: Advanced Micro Devices [AMD] Family 10h Processor Address Map
00:18.2 Host bridge: Advanced Micro Devices [AMD] Family 10h Processor DRAM Controller
00:18.3 Host bridge: Advanced Micro Devices [AMD] Family 10h Processor Miscellaneous Control
00:18.4 Host bridge: Advanced Micro Devices [AMD] Family 10h Processor Link Control
01:05.0 VGA compatible controller: ATI Technologies Inc M880G [Mobility Radeon HD 4200]
02:00.0 VGA compatible controller: ATI Technologies Inc Manhattan [Mobility Radeon HD 5000 Series]
02:00.1 Audio device: ATI Technologies Inc Manhattan HDMI Audio [Mobility Radeon HD 5000 Series]
03:00.0 Network controller: Broadcom Corporation BCM4313 802.11b/g/n Wireless LAN Controller (rev 01)
04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 03)
The output for dmesg|grep -i aspm is just 1 line as follows
[ 0.517481] Unable to assume _OSC PCIe control. Disabling ASPM
Now as it can be seen from lspci both my graphic card are radeon cards should I be using
# echo OFF > /sys/kernel/debug/vgaswitcheroo/switch
which card will it switch off. I see that all the hybrid card discussion on wiki and forum is about integrated intel vga and ATI Radeon PCI vga.
Also would using pcie_aspm=force have any effect.
]]>