Results 1 to 10 of 103

Thread: Please run this command to improve out-of-the-box Linux support for all Mac models

Threaded View

  1. #1
    Join Date
    Jul 2010
    Beans
    142

    Please run this command to improve out-of-the-box Linux support for all Mac models

    WARNING : Deprecated approach, see http://ubuntuforums.org/showpost.php...6&postcount=99


    Hello,

    Can I kindly ask you to run the following command from a Terminal under MacOS X 10.5 or 10.6. This will allow the "pure EFI boot" on Linux to work "out of the box" (ie without recompiling the Linux kernel) on all Mac models, by populating the "efifb_dmi_info" missing entries in the Linux kernel framebuffer driver (drivers/video/efifb.c). Sorry, it cannot be launched from a Linux terminal, it is a chicken-and-egg problem) :

    sudo ioreg -lw0 |grep manufacturer|cut -b25-80;sudo ioreg -lw0|grep "product-name"|cut -b 25-80;sudo dtrace -qn 'BEGIN{boot_args=((struct boot_args*)(`PE_state).bootArgs);printf("FrameBuff erBase: 0x%08x\nPixelsPerScanLine: %d\nHorizontalResolution: %d\nVerticalResolution: %d", boot_args->Video.v_baseAddr, boot_args->Video.v_rowBytes/4, boot_args->Video.v_width, boot_args->Video.v_height);exit(0)} '


    This command does not change anything to your system, it only reads the low-level EFI video values with the "ioreg" and the "dtrace" command and displays their values.
    So basically the risk is 0.

    I am sure that with all the Mac passionates on this forum, in a few days we can cover all Apple models…


    Model FBB PPSL HR VR Manufacturer
    Macmini1,1 ???
    Macmini2,1 ???
    Macmini3,1 0x40010000 1024 1024 768 Apple Inc. # 1 GB RAM
    Macmini3,1 0x80010000 2048 1360 768 Apple Inc. # 2 GB RAM
    Macmini3,1 0xc0010000 2048 1280 800 Apple Inc. # 4 GB RAM
    Macmini3,1 0xc0010000 1024 1024 768 Apple Inc. # 4 GB RAM
    Macmini4,1 0xc0010000 2048 1920 1200 Apple Inc.
    MacPro1,1 0xe0010000 2048 1680 1050 Apple Computer, Inc.
    MacPro1,1 0xe0060000 2048 1920 1200 Apple Computer, Inc.
    MacPro2,1 0xe0010000 2560 2560 1600 Apple Computer, Inc.
    MacPro3,1 0x80060000 2048 1680 1050 Apple Inc.
    MacPro4,1 ???
    MacPro5,1 0x80010000 1280 1280 1024 Apple Inc.
    iMac4,1 ???
    iMac4,2 ???
    iMac5,1 0x80010000 1472 1440 900 Apple Computer, Inc. # 2 GB RAM
    iMac5,1 0xc0010000 1472 1440 900 Apple Computer, Inc. # 4 GB RAM
    iMac5,2 ???
    iMac6,1 ???
    iMac7,1 0x80010000 1728 1680 1050 Apple Inc. # 2 GB RAM
    iMac8,1 0x80010000 1728 1680 1050 Apple Inc. # 2 GB RAM
    iMac8,1 0xc0010000 1728 1680 1050 Apple Inc. # 4 GB RAM
    iMac8,1 0xc0060000 2048 1920 1200 Apple Inc.
    iMac9,1 0xc0010000 2048 1680 1050 Apple Inc.
    iMac9,1 0xc0030000 2048 1920 1200 Apple Inc.
    iMac9,1 0xc0060000 2048 1920 1200 Apple Inc.
    iMac10,1 0xc0010000 1920 1920 1080 Apple Inc.
    iMac10,1 0xc0010000 2048 1920 1080 Apple Inc.
    iMac11,1 0xc0010000 2560 2560 1440 Apple Inc.
    iMac11,2 0xc0010000 1920 1920 1080 Apple Inc.
    iMac11,3 0xc0010000 2560 2560 1440 Apple Inc.
    Xserve1,1 0x40010000 1280 1280 800 Apple Inc.
    Xserve1,1 0x80010000 1280 1280 800 Apple Inc.
    Xserve2,1 0x80010000 1024 1024 768 Apple Inc.
    Xserve3,1 0x80030000 2048 1600 1200 Apple Inc.
    MacBook1,1 0x80000000 2048 1280 800 Apple Computer, Inc.
    MacBook2,1 0x80000000 2048 1280 800 Apple Inc.
    MacBook3,1 0x40000000 2048 1280 800 Apple Inc. # 1 GB RAM
    MacBook3,1 0x80000000 2048 1280 800 Apple Inc. # 2 GB RAM
    MacBook3,1 0xc0000000 2048 1280 800 Apple Inc. # 4 GB RAM
    MacBook4,1 0xc0000000 2048 1280 800 Apple Inc.
    MacBook5,1 0x80010000 2048 1280 800 Apple Inc. # 2 GB RAM
    MacBook5,1 0xc0010000 2048 1280 800 Apple Inc. # 4 GB RAM
    MacBook5,2 0xc0010000 2048 1280 800 Apple Inc. # 4 GB RAM
    MacBook6,1 0x80010000 2048 1280 800 Apple Inc. # 2 GB RAM
    MacBook6,1 0xc0010000 2048 1280 800 Apple Inc. # 4 GB RAM
    MacBook7,1 0x80010000 2048 1280 800 Apple Inc. # 2 GB RAM
    MacBookAir1,1 ???
    MacBookAir2,1 0x80010000 2048 1280 800 Apple Inc.
    MacBookAir3,1 0x80010000 2048 1366 768 Apple Inc. # 2 GB RAM
    MacBookAir3,1 0xc0010000 2048 1366 768 Apple Inc. # 4 GB RAM
    MacBookAir3,2 0x80010000 2048 1440 900 Apple Inc. # 2 GB RAM
    MacBookAir3,2 0xc0010000 2048 1440 900 Apple Inc. # 4 GB RAM
    MacBookPro1,1 0x80010000 1472 1440 900 Apple Computer, Inc.
    MacBookPro1,2 ???
    MacBookPro2,1 ???
    MacBookPro2,2 0x80010000 1472 1440 900 Apple Computer, Inc.
    MacBookPro3,1 0xc0030000 2048 1440 900 Apple Inc.
    MacBookPro4,1 0x80060000 2048 1440 900 Apple Inc. # 2 GB RAM
    MacBookPro4,1 0xc0030000 2048 1440 900 Apple Inc. # 4 GB RAM
    MacBookPro4,1 0xc0060000 2048 1440 900 Apple Inc. # 4 GB RAM
    MacBookPro5,1 0x90010000 2048 1440 900 Apple Inc. # ?
    MacBookPro5,1 0xc0010000 2048 1440 900 Apple Inc. # Discrete graphics
    MacBookPro5,1 0xb0030000 2048 1440 900 Apple Inc. # Integrated graphics
    MacBookPro5,2 0xc0010000 2048 1920 1200 Apple Inc. # Discrete graphics
    MacBookPro5,2 0xb0030000 2048 1920 1200 Apple Inc. # Integrated graphics
    MacBookPro5,3 0xd0010000 2048 1440 900 Apple Inc. # Discrete graphics
    MacBookPro5,3 0xc0030000 2048 1440 900 Apple Inc. # Integrated graphics
    MacBookPro5,4 0xc0010000 2048 1440 900 Apple Inc.
    MacBookPro5,5 0xc0010000 2048 1280 800 Apple Inc.
    MacBookPro6,1 0x90030000 2048 1920 1200 Apple Inc. # Discrete graphics
    MacBookPro6,2 0x90030000 2048 1680 1050 Apple Inc. # Discrete graphics
    MacBookPro7,1 0xc0010000 2048 1280 800 Apple Inc.

    Submissions from all remaining Intel-based Mac models are welcome.
    Different values are possible on the same model, depending on the amount of RAM.

    On my machine, when the 9400M is active at boot time the output is the following :
    Code:
    <"Apple Inc.">
    <"MacBookPro5,3">
    FrameBufferBase: 0xd0010000
    PixelsPerScanLine: 2048
    HorizontalResolution: 1440
    VerticalResolution: 900
    On my machine, when the 9600M is active at boot time the output is the following :
    Code:
    <"Apple Inc.">
    <"MacBookPro5,3">
    FrameBufferBase: 0xc0030000
    PixelsPerScanLine: 2048
    HorizontalResolution: 1440
    VerticalResolution: 900
    If your machine has 2 graphics cards and the graphic card is switched after boot time (in "Energy Saving" preference pane or with gfxCardStatus), the FrameBufferBase value does not change anymore, it keeps its previous value, so it is really needed to do a full reboot.

    Please copy the terminal output on your machine and paste it in a reply to this post !
    As soon as the output is collected for all models, I will consolidate them and submit it as a patch to the Linux kernel.

    Many thanks in advance for your help in this collaborative work !

    metatech
    Last edited by metatechbe; May 17th, 2011 at 08:47 PM. Reason: Harmless + list of supported models + DEPRECATED

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •