Attention is currently required from: shkim, Henry Sun, Evan Green, SH Kim, Paul Menzel, Simon Yang, Edward Doan, Karthik Ramasubramanian. Tim Wawrzynczak has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/60190 )
Change subject: mb/google/dedede/var/bugzzy: Initialize display signals on user mode ......................................................................
Patch Set 11:
(1 comment)
File src/mainboard/google/dedede/variants/bugzzy/ramstage.c:
https://review.coreboot.org/c/coreboot/+/60190/comment/71d8251f_7f4ae541 PS11, Line 58: addr32 = mmio32 + PCH_GPIOB; : data32 = read32((void *) addr32); : data32 |= GPIO_CLOCK_VAL_OUT; : data32 |= GPIO_CLOCK_DIR_MASK | GPIO_CLOCK_DIR_OUT | GPIO_CLOCK_VAL_MASK; : write32((void *)addr32, data32);
It might also be helpful to put these all into functions, e.g.
``` static void panel_power_on(uintptr_t igd_bar) { setbits32((void *)(igd_bar + PCH_PP_CONTROL), 0x1); }
static void panel_reset_assert(uintptr_t igd_bar) { clrsetbits32((void *)(igd_bar + PCH_GPIOB), GPIO_CLOCK_VAL_OUT, GPIO_CLOCK_DIR_MASK | GPIO_CLOCK_DIR_OUT | GPIO_CLOCK_VAL_MASK); }
static void panel_reset_deassert(uintptr_t igd_bar) { const uint32_t data32 = GPIO_CLOCK_VAL_MASK | GPIO_CLOCK_VAL_OUT | GPIO_CLOCK_DIR_MASK | GPIO_CLOCK_DIR_OUT; setbits32((void *)(igd_bar + PCH_GPIOB), data32); } ```
and then write this function like
``` uintptr_t igd_bar = find_resource(igd_dev, PCI_BASE_ADDRESS_0)->base; if (!igd_bar) return;
panel_power_on(); mdelay(20); panel_reset_deassert(); mdelay(2); panel_reset_assert(); mdelay(2); panel_reset_deassert(); ```
WDYT?