diff --git a/efifb-add-more-models.patch b/efifb-add-more-models.patch new file mode 100644 index 000000000..3351970d7 --- /dev/null +++ b/efifb-add-more-models.patch @@ -0,0 +1,59 @@ +--- vanilla-2.6.35.3.orig/drivers/video/efifb.c ++++ vanilla-2.6.35.3/drivers/video/efifb.c +@@ -39,7 +39,11 @@ enum { + M_I20, /* 20-Inch iMac */ + M_I20_SR, /* 20-Inch iMac (Santa Rosa) */ + M_I24, /* 24-Inch iMac */ ++ M_I24_8_1, /* 24-Inch iMac, 8,1th gen */ ++ M_I24_10_1, /* 24-Inch iMac, 10,1th gen */ + M_MINI, /* Mac Mini */ ++ M_MINI_3_1, /* Mac Mini, 3,1th gen */ ++ M_MINI_4_1, /* Mac Mini, 4,1th gen */ + M_MB, /* MacBook */ + M_MB_2, /* MacBook, 2nd rev. */ + M_MB_3, /* MacBook, 3rd rev. */ +@@ -47,6 +51,7 @@ enum { + M_MBA, /* MacBook Air */ + M_MBP, /* MacBook Pro */ + M_MBP_2, /* MacBook Pro 2nd gen */ ++ M_MBP_2_2, /* MacBook Pro 2,2nd gen */ + M_MBP_SR, /* MacBook Pro (Santa Rosa) */ + M_MBP_4, /* MacBook Pro, 4th gen */ + M_MBP_5_1, /* MacBook Pro, 5,1th gen */ +@@ -64,11 +69,16 @@ static struct efifb_dmi_info { + [M_I20] = { "i20", 0x80010000, 1728 * 4, 1680, 1050 }, /* guess */ + [M_I20_SR] = { "imac7", 0x40010000, 1728 * 4, 1680, 1050 }, + [M_I24] = { "i24", 0x80010000, 2048 * 4, 1920, 1200 }, /* guess */ ++ [M_I24_8_1] = { "imac8", 0xc0060000, 2048 * 4, 1920, 1200 }, ++ [M_I24_10_1] = { "imac10", 0xc0010000, 2048 * 4, 1920, 1080 }, + [M_MINI]= { "mini", 0x80000000, 2048 * 4, 1024, 768 }, ++ [M_MINI_3_1]= { "mini31", 0x40010000, 1024 * 4, 1024, 768 }, ++ [M_MINI_4_1]= { "mini41", 0xc0010000, 2048 * 4, 1920, 1200 }, + [M_MB] = { "macbook", 0x80000000, 2048 * 4, 1280, 800 }, + [M_MBA] = { "mba", 0x80000000, 2048 * 4, 1280, 800 }, + [M_MBP] = { "mbp", 0x80010000, 1472 * 4, 1440, 900 }, + [M_MBP_2] = { "mbp2", 0, 0, 0, 0 }, /* placeholder */ ++ [M_MBP_2_2] = { "mbp22", 0x80010000, 1472 * 4, 1440, 900 }, + [M_MBP_SR] = { "mbp3", 0x80030000, 2048 * 4, 1440, 900 }, + [M_MBP_4] = { "mbp4", 0xc0060000, 2048 * 4, 1920, 1200 }, + [M_MBP_5_1] = { "mbp51", 0xc0010000, 2048 * 4, 1440, 900 }, +@@ -92,7 +102,11 @@ static struct dmi_system_id __initdata d + EFIFB_DMI_SYSTEM_ID("Apple Computer, Inc.", "iMac6,1", M_I24), + EFIFB_DMI_SYSTEM_ID("Apple Inc.", "iMac6,1", M_I24), + EFIFB_DMI_SYSTEM_ID("Apple Inc.", "iMac7,1", M_I20_SR), ++ EFIFB_DMI_SYSTEM_ID("Apple Inc.", "iMac8,1", M_I24_8_1), ++ EFIFB_DMI_SYSTEM_ID("Apple Inc.", "iMac10,1", M_I24_10_1), + EFIFB_DMI_SYSTEM_ID("Apple Computer, Inc.", "Macmini1,1", M_MINI), ++ EFIFB_DMI_SYSTEM_ID("Apple Inc.", "Macmini3,1", M_MINI_3_1), ++ EFIFB_DMI_SYSTEM_ID("Apple Inc.", "Macmini4,1", M_MINI_4_1), + EFIFB_DMI_SYSTEM_ID("Apple Computer, Inc.", "MacBook1,1", M_MB), + /* At least one of these two will be right; maybe both? */ + EFIFB_DMI_SYSTEM_ID("Apple Computer, Inc.", "MacBook2,1", M_MB), +@@ -104,6 +118,7 @@ static struct dmi_system_id __initdata d + EFIFB_DMI_SYSTEM_ID("Apple Inc.", "MacBookAir1,1", M_MBA), + EFIFB_DMI_SYSTEM_ID("Apple Computer, Inc.", "MacBookPro1,1", M_MBP), + EFIFB_DMI_SYSTEM_ID("Apple Computer, Inc.", "MacBookPro2,1", M_MBP_2), ++ EFIFB_DMI_SYSTEM_ID("Apple Computer, Inc.", "MacBookPro2,2", M_MBP_2_2), + EFIFB_DMI_SYSTEM_ID("Apple Inc.", "MacBookPro2,1", M_MBP_2), + EFIFB_DMI_SYSTEM_ID("Apple Computer, Inc.", "MacBookPro3,1", M_MBP_SR), + EFIFB_DMI_SYSTEM_ID("Apple Inc.", "MacBookPro3,1", M_MBP_SR), diff --git a/kernel.spec b/kernel.spec index d5c36388f..77630ecb2 100644 --- a/kernel.spec +++ b/kernel.spec @@ -48,7 +48,7 @@ Summary: The Linux kernel # reset this by hand to 1 (or to 0 and then use rpmdev-bumpspec). # scripts/rebase.sh should be made to do that for you, actually. # -%global baserelease 13 +%global baserelease 14 %global fedora_build %{baserelease} # base_sublevel is the kernel version we're starting with and patching @@ -663,6 +663,8 @@ Patch1824: drm-intel-next.patch Patch1825: drm-intel-make-lvds-work.patch Patch1900: linux-2.6-intel-iommu-igfx.patch +Patch2000: efifb-add-more-models.patch + # linux1394 git patches Patch2200: linux-2.6-firewire-git-update.patch Patch2201: linux-2.6-firewire-git-pending.patch @@ -1262,6 +1264,8 @@ ApplyOptionalPatch drm-intel-next.patch ApplyPatch drm-intel-make-lvds-work.patch ApplyPatch linux-2.6-intel-iommu-igfx.patch +ApplyPatch efifb-add-more-models.patch + # linux1394 git patches #ApplyPatch linux-2.6-firewire-git-update.patch #ApplyOptionalPatch linux-2.6-firewire-git-pending.patch @@ -1892,6 +1896,10 @@ fi # and build. %changelog +* Tue Aug 31 2010 Kyle McMartin 2.6.35.4-14 +- efifb-add-more-models.patch: Add patch from Luke Macken to + support more Mac models (rhbz#528232) + * Tue Aug 31 2010 Dave Jones 2.6.35.4-13 - Fix incorrect DMA size freeing error in via-velocity.