lib/edid_fill_fb: Add dual pipe flag to lb_framebuffer_flags

Extend the lb_framebuffer_flags struct to include one more bitfield
'has_dual_pipe' to indicate dual pipe support.

TEST=firmware display ok, in depthcharge with https://crrev.com/c/7129839
BRANCH=none
BUG=b:424782827

Change-Id: I082be80b4606090ed219820a407d80d9f429ea7e
Signed-off-by: Nancy Lin <nancy.lin@mediatek.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/90038
Reviewed-by: Yidi Lin <yidilin@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
This commit is contained in:
Nancy Lin 2025-11-12 13:34:08 +08:00 committed by Yu-Ping Wu
commit 14595d64de
4 changed files with 15 additions and 2 deletions

View file

@ -223,7 +223,8 @@ enum cb_fb_orientation {
struct cb_framebuffer_flags {
u8 has_external_display : 1;
u8 reserved : 7;
u8 has_dual_pipe : 1;
u8 reserved : 6;
};
struct cb_framebuffer {

View file

@ -281,7 +281,8 @@ enum lb_fb_orientation {
struct lb_framebuffer_flags {
uint8_t has_external_display : 1;
uint8_t reserved : 7;
uint8_t has_dual_pipe : 1;
uint8_t reserved : 6;
};
struct lb_framebuffer {

View file

@ -5,6 +5,7 @@
#include <stdint.h>
#include <commonlib/coreboot_tables.h>
#include <types.h>
struct fb_info;
@ -20,6 +21,8 @@ int fb_add_framebuffer_info_simple(uintptr_t fb_addr, uint32_t x_res, uint32_t y
void fb_set_orientation(struct fb_info *info,
enum lb_fb_orientation orientation);
void fb_set_dual_pipe_flag(struct fb_info *info, bool dual_pipe);
struct edid;
struct fb_info *fb_new_framebuffer_info_from_edid(const struct edid *edid,
uintptr_t fb_addr);

View file

@ -163,6 +163,14 @@ void fb_set_orientation(struct fb_info *info, enum lb_fb_orientation orientation
info->fb.orientation = orientation;
}
void fb_set_dual_pipe_flag(struct fb_info *info, bool dual_pipe)
{
if (!info)
return;
info->fb.flags.has_dual_pipe = dual_pipe;
}
/*
* Take an edid, and create a framebuffer.
*/