MacBook Pro Specials

From openSUSE


Contents

Graphic

ATI graphics card

Just follow the instructions on the ATI-openSUSE Wiki page.

Suspend to RAM with ATI drivers

Normally s2ram knows what to do with your MacBook - but if you've installed the ATI driver, suspend doesn't work anymore.

To enable suspend to RAM with the drivers from ATI loaded, you have to boot with the commandline option

vga=0

This can be done via starting yast2 bootloader an edit the commandline options.

Afterwards edit/create /etc/pm/config.d/config and enter:

S2RAM_OPTS="-f"

from this point, s2ram doesn't try to call VBE_POST and VBE_MODE - and everything works fine again.


Nvidia graphics card

For NVIDIA GeForce 8600M GT graphics cards, initially Xwindow will not work. So:

  • Boot into runlevel 3 (Switch to a console and enter
Image:Shellscript.png init 3
  • Get the latest NVidia driver from the [NVidia Download site]
  • Run the produced nvidia driver setup
  • Run sax2 to build your X config file after building and installing the patched nvidia driver. (sax2 -r -m 0=nvidia)
  • Set Resolution is 1440x900.

Also, be sure to set your screen resolution accordingly.

Enabling DVI/SVGA Out

If you need to enable the DVI out and you're using a DVI-to-SVGA adapter, modify the Section "Device" part of /etc/X11/xorg.conf to disable crt1:

 #Option       "ForceMonitors" "auto,crt1"
 Option       "EnableMonitor" "nocrt1,lvds,crt2"   

Credit to Chris Smart for posting a how to on his blog.

Activate LCD and Keyboard Backlight

applesmc driver

This driver was recently (2.6.22) added to the kernel. It allows query/control of the fans, light sensor, position (there is a OpenGL app somewhere displaying a airplane-like artificial horizon) and some temperature sensors.

As the hardware comes with different PCI entries, automatic detection is sadly not possible. So, you have to make an entry like

MODULES_LOADED_ON_BOOT=applesmc

in the file /etc/sysconfig/kernel so that your keyboard backlight works.

pbbuttonsd

Install the package pbbuttonsd to configure the keyboard light. Edit the file /etc/pbbuttonsd.cnf as root' and adjust the settings to your needs. The configuration should be self explained. Afterwards start the daemon with:

rcpbbuttonsd start

and/or activate the daemon during boot time with

chkconfig -a pbbuttonsd

(you can use the YaST2 Runlevel editor for this, too.)

On top of this there are two applications: powerprefs as configuration frontend (which does not work yet, but the segfault will be fixed starting with Alpha4 latest, so for the moment you will have to edit the config file yourself) and gtkpbbuttons, which can display popups on the screen when funcion-keys are used (brightness up/down, volume up/down, and so on).

pommed

As an alternative solution to pbbuttonsd, you can install the new packages pommed, gpomme and wmpomme. The pommed daemon doesn't need as many resources as pbbuttonsd.

Keyboard settings

If you like to have a "[Del]" and a "[Alt Gr]" key, create a file named .Xmodmap in your home-directory and enter the two lines:

keycode 108 = Delete
keycode 116 = ISO_Level3_Shift
  • The key between the right Apple-key and the "home" button will be your delete key
  • The right Apple-key will be your "[Alt Gr]" key

You can reach the "home", "end", "page up" and "page down" keys with the "fn" key on the left side. The Functions on the keys "F1" – "F10" should work when the pbbuttonsd is running.

To change the behavior of the F1, F2, etc. keys if you are using pommed, edit /etc/pommed.conf and set:

fnmode = 2

The effect of this option is hardware dependent: If the function keys are working as you like, then do not change this option.

Trackpad settings

Enter the following section as root to the file /etc/X11/xorg.conf (do this after you installed the ATI drivers):

Section "InputDevice"
  Identifier      "Mouse[2]"
  Driver          "synaptics"
  Option          "SendCoreEvents"        "true"
  Option          "Device"                "/dev/psaux"
  Option          "Protocol"              "auto-dev"
  Option          "LeftEdge"      "100"
  Option          "RightEdge"     "1120"
  Option          "TopEdge"       "50"
  Option          "BottomEdge"    "310"
  Option          "FingerLow"     "25"
  Option          "FingerHigh"    "30"
  Option          "MaxTapMove"    "220"
  Option          "TapButton1"    "1"
  Option          "TapButton2"    "3"
  Option          "TapButton3"    "2"
  Option          "MinSpee]d"      "0.79"
  Option          "MaxSpeed"      "0.88"
  Option          "AccelFactor"   "0.0015"
  Option          "SHMConfig"     "on"
EndSection

If you like, you can also add these options to the InputDevice Section:

  Option       "HorizTwoFingerScroll" "1"
  Option       "VertTwoFingerScroll" "1"

And edit the Section ServerLayout as follows:

#  InputDevice  "Mouse[1]" "CorePointer"
  InputDevice  "Mouse[2]" "CorePointer"

After a restart of your X-Server (just log out and re-login) you should be able to use the ksynaptics tool or something else to configure the settings. You can also read the synaptics manual:

Image:Shellscript.png man synaptics

to get an overview about all possible settings.

Adjust KDE settings

To adjust the keyboard settings start "Control Center" -> "Localisation" -> "Keyboard layout". Select something like "MacBook/MacBookPro(Int)" in the drop down menu for the keyboard type, select your language and the "nodeadkeys" variant.

If you like the € and the @ symbols to appear on the keys "E" and "L", then adjust the "Xkb-Options" in the corresponding Tab in this menu.

Networking / WLAN

Marvell Yukon Ethernet

The sky2 driver for the wired network did have some issues up to 10.2 but these should have been fixed by now in the kernel.

If your Marvell Yukon Ethernet card (88E8058 on MacBook Pro V3 ) still makes problems, you might need to get a new(er) network card driver from here. Follow the instructions in the included README file. After that set up your network with yast and then do an online update.

Atheros WLAN

WLAN is up to now a bit tricky. If your MacBook is recent enough, you'll have a Atheros AR5418 (PCI ID: 168c:0024). Two approaches:

Using ndiswrapper

In a 32bit installation, you could resort to using ndiswrapper with the driver for another OS, but there simply is no 64bit variant of that driver.

Using madwifi

This has recently become extremely easy by using the pre-built package. You can search for madwifi on the Build Service, or the direct link, here:

  • 1-click.png.

Bluetooth

Finally found out why bluetooth did not want to work: The USB bluetooth device comes up in a special hid-only power-on mode. Set "HID2HCI_START" to "yes" in /etc/sysconfig/bluetooth and do a "rcbluetooth restart"; you then will have a bluetooth device!

Bugreports

Bug 257434 – Keyboard chooser empty Resolved: Fixed
Bug 388005 – applesmc not loaded on startup