IMac Troubleshooting

From FreekiWiki
Revision as of 11:48, 2 January 2013 by Scellef (talk | contribs) (→‎iMac G4 17" (PowerMac 6,3): Detailed steps for known issues)
Jump to navigation Jump to search

iMac 24" (7,1)

No Sound (Ubuntu 10.04)

Out of box, sound won't be coming out of the speakers, regardless of how much meddling you attempt in alsamixer. Here's the audio device and driver in use:

   oem@freekbox:~$ lspci -k | grep -i -A2 audio
   00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 03)
           Kernel driver in use: HDA Intel
           Kernel modules: snd-hda-intel

In order to fix this, create a file under /etc/modprobe.d/options and enter the following:

   options snd-hda-intel model=imac24

and reboot the system. Prepare to be blown away by Ubuntu's awful drum sound.

iMac 20" (7,1)

No Wireless (Ubuntu 10.04)

Unfortunately, the Broadcom wireless card included with this model doesn't not have a suitable driver for Lucid's kernel (2.6.32). Broadcom's proprietary STA driver works only intermittently at best, and frequently breaks when kernel patches are pushed out. In order to enable the STA driver, when possible, enter the following in a terminal:

   oem@freekbox:~$ sudo jockey-text -e kmod:wl

If you get any guff, you're probably out of luck. Attempts at troubleshooting have included: manually blacklisting alternative drivers and installing STA package; Downloading the driver from Broadcom's website and compiling from source, repeating steps above; backporting newer kernels (Oneiric's 3.0 kernel) into Lucid, repeating steps above. Booting from live environments of both Oneiric and Precise have shown that wireless does indeed "just work" with newer releases.

iMac G4 17" (PowerMac 6,3)

List of issues so far encountered
  • Sound doesn't work, no sound cards recognized (fixt)
  • Compositing issue prevents windows from rendering inbottom half of screen (fixt)
  • Wireless (fixt)
  • No flash (fixt... ish)
  • Unable to read DVD-Video even w/ URE+VLC installed
  • Won't render large bodies of anti-aliased font (seen in terminal, firefox, etc) (fixt)
  • Second display detected (fixt)

Will lay out steps taken on each of these issues soon. In the meantime, need to spend more time investigating the nouveau driver to see if tweaking its various settings will address the performance/rendering issues still encountered. Also, video-codecs.

God willing, the G5's will be much kinder.

No wireless

These models use a BCM4306 wireless card, which is a known troublemaker. However, the b43 driver has vastly improved over the last couple of years and should support this chip without issue. We'll just need to add the appropriate repository. Run the following in a terminal:

 sudo -i
 cat << EOF >> /etc/apt/sources.list.d/b43.list
 deb http://ports.ubuntu.com/ubuntu-ports/ precise multiverse
 deb-src http://ports.ubuntu.com/ubuntu-ports/ precise multiverse
 EOF
 apt-get update && apt-get purge -y bcmwl-kernel-source broadcom-sta-common broadcom-sta-source
 apt-get install b43-fwcutter firmware-b43-installer 

And reboot the system.

No sound

If you hear a chime when booting the system, but sound won't work in Xubuntu, then we'll have to load some additional modules. Before doing so, you won't even be able to load alsamixer.

In order to get sound working, append the following to /etc/modules:

 snd-powermac
 snd_aoa_i2sbus
 snd_aoa_fabric_layout
 snd_aoa_codec_tas

And reboot the computer. Once you're logged back in, open alsamixer in a terminal and unmute/increase the volume in the appropriate channels.

Graphics/Performance Issues

These models come with an nVidia GeForce FX Go5200 video card built in, which is unfortunately not well supported with recent revisions of the nouveau driver. Symptoms encountered include:

  • General lag, high system load, etc.,
  • Windows rendering slowly,
  • Bodies of text of being cut off,
  • Windows disappearing in the bottom half of the screen.

There are two steps to take to address all of the above. The first is disabling compositing in the window manager, which will help to reduce some of the system load. In Xubuntu 12.04:

  1. Go to Menu >> Settings >> Settings Manager,
  2. Select Window Manager Tweaks,
  3. Under the Compositor tab, deselect the Enable display compositing option.

The second step is to replace the nouveau driver with the older, 2D-only nv driver. Unfortunately, this driver is no longer included in the Ubuntu repositories since 11.04 (Natty Narwhal). In order to utilize it, we have to temporarily add a Natty repository, install the driver, and then clean things up. To wit:

  1. Reboot the system into Recovery Mode:
    • While booting, hit Esc when Yaboot loads,
    • At the prompt, type Linux recovery and press Enter,
    • You'll arrive at the standard Recovery mode menu. Choose network, and then root
  2. Run the following commands:
 apt-get -y purge xserver-xorg-video-nouveau
 mkdir nv ; cd nv
 cat << EOF > /etc/apt/sources.lists.d/nv.list
 deb http://ports.ubuntu.com/ubuntu-ports/ natty universe
 deb-src http://archive.ubuntu.com/ubuntu natty universe 
 EOF
 apt-get update && apt-get source xserver-xorg-video-nv
 cd xserver-xorg-video-nv-2.1.17                        
 apt-get build-dep xserver-xorg-video-nv
 dpkg-buildpackage -rfakeroot -b
 cd ..
 dpkg -i ./*.deb && rm /etc/apt/sources.list.d/nv.list && shutdown -r now

Once rebooted, the nv driver should be put into place and Xubuntu should run much more smoothly. (note that it will likely still identify itself as the nouveau driver under lspci -k).

Additional displays detected

This is referred to as a phantom screen on some forums, and can cause some banding or interference in the display. You can see if additional displays are detected by checking under Menu >> Settings >> Settings Manager >> Display, or by exploring the directories under /sys/class/drm/.

We'll need to configure to ignore the phantom displays. In order to do so, create or append to /etc/X11/xorg.conf:

 sudo -i
 cat << EOF >> /etc/X11/xorg.conf
 Section "Monitor"
         Identifier "TV-1"
         Option "Ignore" "True"
 EndSection
 Section "Monitor"
         Identifier "VGA-1"
         Option "Ignore" "True"
 EndSection
 EOF

And reboot the system.