From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755283Ab0IBOOM (ORCPT ); Thu, 2 Sep 2010 10:14:12 -0400 Received: from mx1.redhat.com ([209.132.183.28]:20942 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752969Ab0IBOOL (ORCPT ); Thu, 2 Sep 2010 10:14:11 -0400 Message-ID: <4C7FB121.2070101@redhat.com> Date: Thu, 02 Sep 2010 10:13:53 -0400 From: Peter Jones User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.4) Gecko/20100624 Fedora/3.1-1.fc14 Thunderbird/3.1 MIME-Version: 1.0 To: Luke Macken CC: Andrew Morton , Marcin Slusarz , Arnaud Patard , Jaya Kumar , linux-kernel@vger.kernel.org Subject: Re: [PATCHv3] efifb: support the EFI framebuffer on more Apple hardware References: <20100902060340.GA21893@tomservo.cable.rcn.com> In-Reply-To: <20100902060340.GA21893@tomservo.cable.rcn.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 09/02/2010 02:03 AM, Luke Macken wrote: > This patch enables the EFI framebuffer on 14 more Macs, including the > iMac11,1 iMac10,1 iMac8,1 Macmini3,1 Macmini4,1 MacBook5,1 MacBook6,1 > MacBook7,1 MacBookPro2,2 MacBookPro5,2 MacBookPro5,3 MacBookPro6,1 > MacBookPro6,2 and MacBookPro7,1 > > Information gathered from various user submissions. > > https://bugzilla.redhat.com/show_bug.cgi?id=528232 > http://ubuntuforums.org/showthread.php?t=1557326 > > Signed-off-by: Luke Macken Thanks for digging up all this data, Luke. Signed-off-by: Peter Jones > > diff --git a/drivers/video/efifb.c b/drivers/video/efifb.c > index 815f84b..11de9ed 100644 > --- a/drivers/video/efifb.c > +++ b/drivers/video/efifb.c > @@ -39,17 +39,31 @@ 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_I27_11_1, /* 27-Inch iMac, 11,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. */ > + M_MB_5_1, /* MacBook, 5th rev. */ > + M_MB_6_1, /* MacBook, 6th rev. */ > + M_MB_7_1, /* MacBook, 7th rev. */ > M_MB_SR, /* MacBook, 2nd gen, (Santa Rosa) */ > 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 */ > + M_MBP_5_2, /* MacBook Pro, 5,2th gen */ > + M_MBP_5_3, /* MacBook Pro, 5,3rd gen */ > + M_MBP_6_1, /* MacBook Pro, 6,1th gen */ > + M_MBP_6_2, /* MacBook Pro, 6,2th gen */ > + M_MBP_7_1, /* MacBook Pro, 7,1th gen */ > M_UNKNOWN /* placeholder */ > }; > > @@ -64,14 +78,28 @@ 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_I27_11_1] = { "imac11", 0xc0010000, 2560 * 4, 2560, 1440 }, > [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_MB_5_1] = { "macbook51", 0x80010000, 2048 * 4, 1280, 800 }, > + [M_MB_6_1] = { "macbook61", 0x80010000, 2048 * 4, 1280, 800 }, > + [M_MB_7_1] = { "macbook71", 0x80010000, 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 }, > + [M_MBP_5_2] = { "mbp52", 0xc0010000, 2048 * 4, 1920, 1200 }, > + [M_MBP_5_3] = { "mbp53", 0xd0010000, 2048 * 4, 1440, 900 }, > + [M_MBP_6_1] = { "mbp61", 0x90030000, 2048 * 4, 1920, 1200 }, > + [M_MBP_6_2] = { "mbp62", 0x90030000, 2048 * 4, 1680, 1050 }, > + [M_MBP_7_1] = { "mbp71", 0xc0010000, 2048 * 4, 1280, 800 }, > [M_UNKNOWN] = { NULL, 0, 0, 0, 0 } > }; > > @@ -92,7 +120,12 @@ static const struct dmi_system_id dmi_system_table[] __initconst = { > 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 Inc.", "iMac11,1", M_I27_11_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), > @@ -101,14 +134,23 @@ static const struct dmi_system_id dmi_system_table[] __initconst = { > EFIFB_DMI_SYSTEM_ID("Apple Computer, Inc.", "MacBook3,1", M_MB), > EFIFB_DMI_SYSTEM_ID("Apple Inc.", "MacBook3,1", M_MB), > EFIFB_DMI_SYSTEM_ID("Apple Inc.", "MacBook4,1", M_MB), > + EFIFB_DMI_SYSTEM_ID("Apple Inc.", "MacBook5,1", M_MB_5_1), > + EFIFB_DMI_SYSTEM_ID("Apple Inc.", "MacBook6,1", M_MB_6_1), > + EFIFB_DMI_SYSTEM_ID("Apple Inc.", "MacBook7,1", M_MB_7_1), > 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), > EFIFB_DMI_SYSTEM_ID("Apple Inc.", "MacBookPro4,1", M_MBP_4), > EFIFB_DMI_SYSTEM_ID("Apple Inc.", "MacBookPro5,1", M_MBP_5_1), > + EFIFB_DMI_SYSTEM_ID("Apple Inc.", "MacBookPro5,2", M_MBP_5_2), > + EFIFB_DMI_SYSTEM_ID("Apple Inc.", "MacBookPro5,3", M_MBP_5_3), > + EFIFB_DMI_SYSTEM_ID("Apple Inc.", "MacBookPro6,1", M_MBP_6_1), > + EFIFB_DMI_SYSTEM_ID("Apple Inc.", "MacBookPro6,2", M_MBP_6_2), > + EFIFB_DMI_SYSTEM_ID("Apple Inc.", "MacBookPro7,1", M_MBP_7_1), > {}, > }; > -- Peter Computer games don't affect kids; I mean if Pac-Man affected us as kids, we'd all be running around in darkened rooms, munching magic pills and listening to repetitive electronic music. -- Not actually Kristian Wilson, Nintendo, Inc, 1989 01234567890123456789012345678901234567890123456789012345678901234567890123456789