HomeFreeBSD

As expected, things aren't as simple as hoped. Consequently, we have

Description

As expected, things aren't as simple as hoped. Consequently, we have
no option but to use the smbios information to fill in the blanks.
It's a good thing UGA is a protocol of the past and GOP has all the
info we need.

Anyway, the logic has been tweaked a little to get the easier bits
of information up front. This includes the resolution and the frame
buffer address. Then we look at the smbios information and define
expected values as well as the missing bits (frame buffer offset and
stride). If the values obtained match the expect values, we fill in
the blanks and return. Otherwise we use the existing detection logic
to figure it out.

Rename the environment variables from uga_framebuffer abd uga_stride
to hw.efifb.address and hw.efifb.stride. The latter names are more
in line with other variable names.

We currently have hardcoded settings for:

  1. Mid-2007 iMac (iMac7,1)
  2. Late-2007 MacBook (MacBook3,1)

Details

Provenance
marcelAuthored on
Parents
rS287537: Follow-up to r287442: Move sysctl to compiled-once file
Branches
Unknown
Tags
Unknown