public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* GOP Console Driver
       [not found] <1549124C-9EA3-4770-AFB7-9F75F36D764B@yahoo.com>
@ 2018-08-19  3:34 ` Jd Lyons
  2018-08-19  9:38   ` Andrew Fish
  2018-08-19 11:46   ` Marvin Häuser
  0 siblings, 2 replies; 5+ messages in thread
From: Jd Lyons @ 2018-08-19  3:34 UTC (permalink / raw)
  To: edk2-devel



> Begin forwarded message:
> 
> From: Jd Lyons <lyons_dj@yahoo.com>
> Subject: GOP Console Driver
> Date: August 18, 2018 at 11:31:50 PM EDT
> To: edk2-devel@lists.01.org
> 
> I’ve been trying to hack together GOP support for Apples EFI 1.1 on my Mac Pro3,1. Apple uses a somewhat mix of EFI 1.x and UEFi2.x.
> 
> I’m able to get the GOP rom for my graphics card to load and link to the device, Apple’s firmware takes care of that much, and I have some custom code for rEFInd boot loader that makes the graphics card work in graphics mode. However I can’t get back to a shell nor can I boot Windows or the Mac OS in this mode.
> 
> I think the trouble with booting the macOS is Apple’s boot.efi can’t get the console, Apple has a UGA Console driver but no GOP Console driver in my firmware. I tried extracting the Graphics Console Driver from OVMF and it does load, but doesn’t link to any devices, even when I try to connect it with my device handle, I.E.
> 
> connect DA 129
> 
> Returns success, but invoking drivers shows the Graphics Console Driver is still not linked to any devices.
> 
> Can anyone point me in the right direction on how to get a proper GOP Console Driver?
> 
> Thanks,
> JD



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: GOP Console Driver
  2018-08-19  3:34 ` GOP Console Driver Jd Lyons
@ 2018-08-19  9:38   ` Andrew Fish
  2018-08-19 11:46   ` Marvin Häuser
  1 sibling, 0 replies; 5+ messages in thread
From: Andrew Fish @ 2018-08-19  9:38 UTC (permalink / raw)
  To: Jd Lyons; +Cc: edk2-devel

JD,

Glad to see you are getting use out of your 10 year old Mac. Here are the supported graphics cards: https://support.apple.com/en-gb/HT201805 <https://support.apple.com/en-gb/HT201805>

The EFI on your Mac Pro3,1 requires a Mac Edition card. Some of those cards had an EFI Firmware Switch to change the ROM mode. 

Mac Pro 2010 is the oldest Mac that is still supported: https://support.apple.com/macos/mojave <https://support.apple.com/macos/mojave>.  

The Mac Edition cards produce an API that is lower level than UGA or GOP so that all the policy can be driven Mac and not the video card. 

Thanks,

Andrew Fish

> On Aug 19, 2018, at 4:34 AM, Jd Lyons <lyons_dj@yahoo.com> wrote:
> 
> 
> 
>> Begin forwarded message:
>> 
>> From: Jd Lyons <lyons_dj@yahoo.com>
>> Subject: GOP Console Driver
>> Date: August 18, 2018 at 11:31:50 PM EDT
>> To: edk2-devel@lists.01.org
>> 
>> I’ve been trying to hack together GOP support for Apples EFI 1.1 on my Mac Pro3,1. Apple uses a somewhat mix of EFI 1.x and UEFi2.x.
>> 
>> I’m able to get the GOP rom for my graphics card to load and link to the device, Apple’s firmware takes care of that much, and I have some custom code for rEFInd boot loader that makes the graphics card work in graphics mode. However I can’t get back to a shell nor can I boot Windows or the Mac OS in this mode.
>> 
>> I think the trouble with booting the macOS is Apple’s boot.efi can’t get the console, Apple has a UGA Console driver but no GOP Console driver in my firmware. I tried extracting the Graphics Console Driver from OVMF and it does load, but doesn’t link to any devices, even when I try to connect it with my device handle, I.E.
>> 
>> connect DA 129
>> 
>> Returns success, but invoking drivers shows the Graphics Console Driver is still not linked to any devices.
>> 
>> Can anyone point me in the right direction on how to get a proper GOP Console Driver?
>> 
>> Thanks,
>> JD
> 
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: GOP Console Driver
  2018-08-19  3:34 ` GOP Console Driver Jd Lyons
  2018-08-19  9:38   ` Andrew Fish
@ 2018-08-19 11:46   ` Marvin Häuser
  2018-08-19 17:05     ` Jd Lyons
  1 sibling, 1 reply; 5+ messages in thread
From: Marvin Häuser @ 2018-08-19 11:46 UTC (permalink / raw)
  To: Jd Lyons, edk2-devel@lists.01.org; +Cc: afish@apple.com

boot.efi requires a GOP instance to be present on gST->ConOutHandle, which Mac EFI installs via ConSplitter.
I know that Windows UEFI boot is not officially supported for such old models, however I'm not aware of the technical reasons - I think Windows should support UGA.
Shell is also trial&error with old Macs, I think I heard a modded EDK Shell once worked. As for finding out boot.efi's issues, I would just shim the most crucial Boot Services (especially HandleProtocol()) and protocol inputs and outputs.

Regards,
Marvin

> -----Original Message-----
> From: edk2-devel <edk2-devel-bounces@lists.01.org> On Behalf Of Jd Lyons
> Sent: Sunday, August 19, 2018 5:35 AM
> To: edk2-devel@lists.01.org
> Subject: [edk2] GOP Console Driver
> 
> 
> 
> > Begin forwarded message:
> >
> > From: Jd Lyons <lyons_dj@yahoo.com>
> > Subject: GOP Console Driver
> > Date: August 18, 2018 at 11:31:50 PM EDT
> > To: edk2-devel@lists.01.org
> >
> > I’ve been trying to hack together GOP support for Apples EFI 1.1 on my
> Mac Pro3,1. Apple uses a somewhat mix of EFI 1.x and UEFi2.x.
> >
> > I’m able to get the GOP rom for my graphics card to load and link to the
> device, Apple’s firmware takes care of that much, and I have some custom
> code for rEFInd boot loader that makes the graphics card work in graphics
> mode. However I can’t get back to a shell nor can I boot Windows or the Mac
> OS in this mode.
> >
> > I think the trouble with booting the macOS is Apple’s boot.efi can’t get the
> console, Apple has a UGA Console driver but no GOP Console driver in my
> firmware. I tried extracting the Graphics Console Driver from OVMF and it
> does load, but doesn’t link to any devices, even when I try to connect it with
> my device handle, I.E.
> >
> > connect DA 129
> >
> > Returns success, but invoking drivers shows the Graphics Console Driver is
> still not linked to any devices.
> >
> > Can anyone point me in the right direction on how to get a proper GOP
> Console Driver?
> >
> > Thanks,
> > JD
> 
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: GOP Console Driver
  2018-08-19 11:46   ` Marvin Häuser
@ 2018-08-19 17:05     ` Jd Lyons
  2018-08-19 17:22       ` Jd Lyons
  0 siblings, 1 reply; 5+ messages in thread
From: Jd Lyons @ 2018-08-19 17:05 UTC (permalink / raw)
  To: Marvin Häuser, edk2-devel



> On Aug 19, 2018, at 7:46 AM, Marvin Häuser <Marvin.Haeuser@outlook.com> wrote:
> 
> boot.efi requires a GOP instance to be present on gST->ConOutHandle, which Mac EFI installs via ConSplitter.
> I know that Windows UEFI boot is not officially supported for such old models, however I'm not aware of the technical reasons - I think Windows should support UGA.
> Shell is also trial&error with old Macs, I think I heard a modded EDK Shell once worked. As for finding out boot.efi's issues, I would just shim the most crucial Boot Services (especially HandleProtocol()) and protocol inputs and outputs.
> 
> Regards,
> Marvin
> 

Thanks Marvin, I suppose my Mac Pro doesn’t do gST>ConOutHandle for my GOP video card, I could try and replace the console splitter DXE in my firmware, but I’d like to try and test it first.

I extracted the ConsoleSplitter from OVMF and tried to load it via a shell on the Mac Pro, however the system just freezes when I issue the load command for this driver. Not completely unexpected as there is already a loaded console splitter. I’m not sure if there would be a way to test this, other than just replacing Apple’s console Splitter with the one from OVMF, I may brick the firmware if it’s incompatible.

Any ideas?

JD



>> -----Original Message-----
>> From: edk2-devel <edk2-devel-bounces@lists.01.org> On Behalf Of Jd Lyons
>> Sent: Sunday, August 19, 2018 5:35 AM
>> To: edk2-devel@lists.01.org
>> Subject: [edk2] GOP Console Driver
>> 
>> 
>> 
>>> Begin forwarded message:
>>> 
>>> From: Jd Lyons <lyons_dj@yahoo.com>
>>> Subject: GOP Console Driver
>>> Date: August 18, 2018 at 11:31:50 PM EDT
>>> To: edk2-devel@lists.01.org
>>> 
>>> I’ve been trying to hack together GOP support for Apples EFI 1.1 on my
>> Mac Pro3,1. Apple uses a somewhat mix of EFI 1.x and UEFi2.x.
>>> 
>>> I’m able to get the GOP rom for my graphics card to load and link to the
>> device, Apple’s firmware takes care of that much, and I have some custom
>> code for rEFInd boot loader that makes the graphics card work in graphics
>> mode. However I can’t get back to a shell nor can I boot Windows or the Mac
>> OS in this mode.
>>> 
>>> I think the trouble with booting the macOS is Apple’s boot.efi can’t get the
>> console, Apple has a UGA Console driver but no GOP Console driver in my
>> firmware. I tried extracting the Graphics Console Driver from OVMF and it
>> does load, but doesn’t link to any devices, even when I try to connect it with
>> my device handle, I.E.
>>> 
>>> connect DA 129
>>> 
>>> Returns success, but invoking drivers shows the Graphics Console Driver is
>> still not linked to any devices.
>>> 
>>> Can anyone point me in the right direction on how to get a proper GOP
>> Console Driver?
>>> 
>>> Thanks,
>>> JD
>> 
>> _______________________________________________
>> edk2-devel mailing list
>> edk2-devel@lists.01.org
>> https://lists.01.org/mailman/listinfo/edk2-devel



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: GOP Console Driver
  2018-08-19 17:05     ` Jd Lyons
@ 2018-08-19 17:22       ` Jd Lyons
  0 siblings, 0 replies; 5+ messages in thread
From: Jd Lyons @ 2018-08-19 17:22 UTC (permalink / raw)
  To: Marvin Häuser, edk2-devel



> On Aug 19, 2018, at 1:05 PM, Jd Lyons <lyons_dj@yahoo.com> wrote:
> 
> 
> 
>> On Aug 19, 2018, at 7:46 AM, Marvin Häuser <Marvin.Haeuser@outlook.com> wrote:
>> 
>> boot.efi requires a GOP instance to be present on gST->ConOutHandle, which Mac EFI installs via ConSplitter.
>> I know that Windows UEFI boot is not officially supported for such old models, however I'm not aware of the technical reasons - I think Windows should support UGA.
>> Shell is also trial&error with old Macs, I think I heard a modded EDK Shell once worked. As for finding out boot.efi's issues, I would just shim the most crucial Boot Services (especially HandleProtocol()) and protocol inputs and outputs.
>> 
>> Regards,
>> Marvin
>> 
> 
> Thanks Marvin, I suppose my Mac Pro doesn’t do gST>ConOutHandle for my GOP video card, I could try and replace the console splitter DXE in my firmware, but I’d like to try and test it first.
> 
> I extracted the ConsoleSplitter from OVMF and tried to load it via a shell on the Mac Pro, however the system just freezes when I issue the load command for this driver. Not completely unexpected as there is already a loaded console splitter. I’m not sure if there would be a way to test this, other than just replacing Apple’s console Splitter with the one from OVMF, I may brick the firmware if it’s incompatible.
> 
> Any ideas?
> 
> JD
> 
> 

Seems there is a driver for Clover boot loader that fixes this issue for me, does some stuff with gST>ConOutHandle.

https://github.com/svn2github/cloverefiboot/blob/master/OsxAptioFixDrv/OsxAptioFix2Drv.c

That let me boot OS X via the GOP card in my system, thanks for the help Marvin.


> 
>>> -----Original Message-----
>>> From: edk2-devel <edk2-devel-bounces@lists.01.org> On Behalf Of Jd Lyons
>>> Sent: Sunday, August 19, 2018 5:35 AM
>>> To: edk2-devel@lists.01.org
>>> Subject: [edk2] GOP Console Driver
>>> 
>>> 
>>> 
>>>> Begin forwarded message:
>>>> 
>>>> From: Jd Lyons <lyons_dj@yahoo.com>
>>>> Subject: GOP Console Driver
>>>> Date: August 18, 2018 at 11:31:50 PM EDT
>>>> To: edk2-devel@lists.01.org
>>>> 
>>>> I’ve been trying to hack together GOP support for Apples EFI 1.1 on my
>>> Mac Pro3,1. Apple uses a somewhat mix of EFI 1.x and UEFi2.x.
>>>> 
>>>> I’m able to get the GOP rom for my graphics card to load and link to the
>>> device, Apple’s firmware takes care of that much, and I have some custom
>>> code for rEFInd boot loader that makes the graphics card work in graphics
>>> mode. However I can’t get back to a shell nor can I boot Windows or the Mac
>>> OS in this mode.
>>>> 
>>>> I think the trouble with booting the macOS is Apple’s boot.efi can’t get the
>>> console, Apple has a UGA Console driver but no GOP Console driver in my
>>> firmware. I tried extracting the Graphics Console Driver from OVMF and it
>>> does load, but doesn’t link to any devices, even when I try to connect it with
>>> my device handle, I.E.
>>>> 
>>>> connect DA 129
>>>> 
>>>> Returns success, but invoking drivers shows the Graphics Console Driver is
>>> still not linked to any devices.
>>>> 
>>>> Can anyone point me in the right direction on how to get a proper GOP
>>> Console Driver?
>>>> 
>>>> Thanks,
>>>> JD
>>> 
>>> _______________________________________________
>>> edk2-devel mailing list
>>> edk2-devel@lists.01.org
>>> https://lists.01.org/mailman/listinfo/edk2-devel
> 



^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2018-08-19 17:22 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <1549124C-9EA3-4770-AFB7-9F75F36D764B@yahoo.com>
2018-08-19  3:34 ` GOP Console Driver Jd Lyons
2018-08-19  9:38   ` Andrew Fish
2018-08-19 11:46   ` Marvin Häuser
2018-08-19 17:05     ` Jd Lyons
2018-08-19 17:22       ` Jd Lyons

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox