Hi,
I've been experimenting with Linux's coreboot framebuffer driver on a google/gru (kevin) chromebook with stock firmware. I get these kernel messages:
platform simple-framebuffer.0: failed to claim resource 0: [mem 0x00000000-0x00ea5fff] coreboot: could not register framebuffer framebuffer: probe of coreboot7 failed with error -16
When I tried to print the coreboot table struct in kernel I saw the framebuffer physical address is 0. Browsing coreboot sources led me to a "rockchip/rk3399: display: Do not allocate framebuffer in coreboot" [1] commit, which says it's "dynamically chosen by libpayload now". I think the coreboot tables should be updated after this, but aren't.
[1] https://review.coreboot.org/c/coreboot/+/17109/
I suspect `set_vbe_mode_info_valid(&edid, (uintptr_t)0);` is the point of interest there, which is now `fb_new_framebuffer_info_from_edid`, which is in a few more files:
$ git grep "fb_new_framebuffer_info_from_edid(.*0);" src/mainboard/google/asurada/mainboard.c: ... src/mainboard/google/cherry/mainboard.c: ... src/mainboard/google/corsola/display.c: ... src/mainboard/google/geralt/display.c: ... src/mainboard/google/herobrine/mainboard.c: ... src/mainboard/google/kukui/mainboard.c: ... src/mainboard/google/oak/mainboard.c: ... src/mainboard/google/trogdor/mainboard.c: ... src/soc/rockchip/rk3399/display.c: ...
I don't quite know how to solve this, but was told to report it to the mailing list.