How To: Get Your AMD Graphics, Sound & Other Drivers to Work in Linux on Your Laptop

Get Your AMD Graphics, Sound & Other Drivers to Work in Linux on Your Laptop

With the purchase of my latest computer, installing Linux turned into a nightmare from Hell. The graphics drivers are probably the biggest issue that anyone with a newer computer will run into when installing Linux. AMD and NVIDIA are the dominant ones on the market, both of which have awful support.

Not only do graphics give us trouble, but anyone with a switchable power laptop (when you can use just AC without battery, with the battery plugged in), HDMI, audio in and out, or anyone with any kind of wonky hardware will be likely scared off from the computer and from Linux until the end of time.

From first hand experience, and a fiery, passionate love for Linux, I almost found myself running scared until I hacked together these lovely fixes that we will be going over today. As far as I know, I'm the only person on the planet running an Alienware M18x without any hardware issues under Linux with AMD graphics cards, because only failed documention exists.

Let's look at the issues that we will encounter, depending on which graphics driver the system is using.

Requirements

  • Linux
  • A laptop with any of the issues described below (Alienware, AsusG7x, Vaio, etc)

Common Issues with New Hardware & How to Fix Them

Audio

Alsa does not work

When you have alsa id configured properly, yet still your computer produces no sound, it's because the computer incorrectly probes the hardware. This is likely caused by HDMI in and out on newer laptops. In order to fix this, we need to force the device in alsa.conf.

  1. Edit the alsa.conf file.
        sudo nano /etc/modprobe.d/alsa.conf
  2. Add specified hardware information to the configuration file.
    options snd-pcsp index=-2
    alias snd-card-0 snd-hda-intel
    alias sound-slot-0 snd-hda-intel
    options snd-hda-intel model=alienware (change depending on brand)
    options snd-hda-intel enable_msi=1

Motherboard speaker beeps

When using auto-completion, or backspacing in a program, your motherboard speaker beeps. This is loud, and annoying, and even if the module is removed and the channel is muted, you will still hear beeps. Here is a work-around.

  1. Edit your modprobe.conf file.
        sudo nano /etc/modprobe.d/modprobe.conf
  2. Add this line to make it not load the module on boot.
        blacklist pcspkr
  3. Open up alsa and mute the beep channel by pressing "M".
        alsamixer

Video

Opensource drivers for AMD

This driver makes the GPU(s) at an extremely high load by default, using much more power and shortening the life of your hardware. It also has terrible colors and 3d rendering when compared to the proprietary catalyst drivers.

  1. Mount the debugfs.
        sudo mount -t debugfs none /sys/kernel/debug   
  2. Append this line to /etc/fstab.
        debugfs /sys/kernel/debug debugfs defaults 0 0
  3. Look at your current clock speeds and load on your GPU.
        cat /sys/kernel/debug/dri/0/radeon_pm_info
  4. Now, echo a low power value as root user to the card(s):
        echo low > /sys/class/drm/card0/device/power_profile
    And if you have two cards:
        echo low > /sys/class/drm/card1/device/power_profile
  5. These two lines can be added to the end of /etc/rc.local for a permanent change. Simply change "low" to "high" or "mid" for different power levels.

Proprietary drivers for AMD

The proprietary drivers seem to work better in nearly every area, except you may notice that it's become rather impossible to watch videos on your media player, or recieve video on Skype. This is due to a driver bug with the xv video driver. To fix it, we just need to change which driver our media playback program is using. I use mplayer in this example.

  1. Open up mplayer.
  2. Click Options > Preferences > Video.
  3. Click the dropdown with xv currently selected, and change it to literally any other one. I use gl.How to Get Your AMD Graphics, Sound & Other Drivers to Work in Linux on Your Laptop

If you've got any more hardware issues or fixes, post them below or to the community corkboard! Let's get our funky hardware tearing it up in Linux.

Be a Part of Null Byte!

Image via kevinelkins

3 Comments

Hey! I was just wondering if you had a guide on how to get the most battery life out of having arch on your laptop? I can currently get about 2.5 hours but I've heard of people getting 5+ hours on the same laptop. Also what's the battery life like on your Alienware? Thanks!

It depends on a lot of stuff, really. What desktop environment you are using plays a big role, along with screen brightness.

On my Alienware, since the Catalyst drivers on Linux are a bit wonky, when my discrete GFX are enabled, I get 2 hours battery life. When I'm using onboard graphics, I could run my computer for 8 hours, easily, as long as I don't do anything to processor-intensive.

I'm just running Awesome WM as my 'desktop environment' and the screen brightness is at its lowest. I've tried adding some scripts or whatever but those don't seem to work. Maybe it's just my laptop battery? I would love to get something close to 8 hours but don't know if that's going to happen!

Share Your Thoughts

  • Hot
  • Latest