Skip to content
  • Simon Glass's avatar
    efi: Correct handling of frame buffer · a75cf70d
    Simon Glass authored
    
    
    The efi_gop driver uses private fields from the video uclass to obtain a
    pointer to the frame buffer. Use the platform data instead.
    
    Check the VIDEO_COPY setting to determine which frame buffer to use. Once
    the next stage is running (and making use of U-Boot's EFI boot services)
    U-Boot does not handle copying from priv->fb to the hardware framebuffer,
    so we must allow EFI to write directly to the hardware framebuffer.
    
    We could provide a function to read this, but it seems better to just
    document how it works. The original change ignored an explicit comment
    in the video.h file ("Things that are private to the uclass: don't use
    these in the driver") which is why this was missed when the VIDEO_COPY
    feature was added.
    
    Signed-off-by: Simon Glass's avatarSimon Glass <sjg@chromium.org>
    Fixes: 8f661a5b
    
     ("efi_loader: gop: Expose fb when 32bpp")
    Reviewed-by: Bin Meng's avatarBin Meng <bmeng.cn@gmail.com>
    a75cf70d