This is going to be a very high level guide.
1. Get EFI boot going using the following guides.
http://dentifrice.poivron.org/laptops/macbookpro8,2/
http://ck.kennt-wayne.de/2012/jun/ge...o-82-late-2011
2. Get your kernel source of choice. I've tested this on the latest Quantal kernel, 3.7, and 3.8-rc1, and 3.8-rc3.
3. Apply the radeon-load-bios patch that you can find in the guides above.
4. The dentifrice.poivron.org guide explains how to grab your vbios.bin. Copy it to /lib/firmware/radeon/vbios.bin
5. (This is key) Compile the kernel with the following options.
CONFIG_DRM=Y
CONFIG_DRM_I915-Y
DRM_RADEON=m
# This was the hardest one for me to figure out.
# Without this the system will boot to a blank screen after
# splash
# CONFIG_FB_EFI is not set
# These options allow your kernel to load the radeon bios before
# the filesystem is mounted. Otherwise you will have to delay
# loading the radeon module.
CONFIG_FW_LOADER=y
CONFIG_FIRMWARE_IN_KERNEL=y
CONFIG_EXTRA_FIRMWARE="radeon/vbios.bin"
CONFIG_EXTRA_FIRMWARE_DIR="/lib/firmware/"
6. Edit your grub.cfg to look like the following:
menuentry 'Ubuntu GNU/Linux, with Linux 3.8.0 rc3' {
insmod gzio
insmod part_gpt
insmod ext2
set gfxpayload=keep
outb 0x728 1
outb 0x710 2
outb 0x740 2
set root='(hd0,gpt5)'
echo 'Loading Ubuntu, with Linux 3.8.0 rc3'
search --no-floppy --fs-uuid --set=root dbebd209-a59f-4cdf-b8f8-260a37655072
linux /boot/vmlinuz-3.8.0-rc3-noefifb+ root=UUID=dbebd209-a59f-4cdf-b8f8-260a37655072 ro quiet splash i915.lvds_use_ssc=0
initrd /boot/initrd.img-3.8.0-rc3-noefifb+
}
7. Get suspend working properly. After resuming from suspend with the IGD card active the system would freeze when powering on the discrete card. The solution was to do step 5 in the following guide.
http://blog.lazut.in/2012/06/vgaswit...conquered.html
After booting up with this kernel you should be able to use vgaswitcheroo.
I've made this 'guide' really high level on purpose. I expect that the people that take this on are comfortable compiling their own kernel.
Hope this helps!
Bookmarks