diff options
author | Ruihai Zhou <zhouruihai@huaqin.corp-partner.google.com> | 2023-11-08 09:11:34 +0800 |
---|---|---|
committer | Martin L Roth <gaumless@gmail.com> | 2024-01-14 02:42:48 +0000 |
commit | d4b6b81280e70ba59962e9e41cd7cad52e3f369d (patch) | |
tree | 8ef1c3418fbdd67ac7e6b3b7035afb6258a925d3 /src/mainboard/google/geralt/panel.c | |
parent | d7612e97651b75ba2d157ca89bd108c5172ab2c6 (diff) |
mb/google/geralt: Enable BOE_NV110WUM_L60 panel for Ciri
The MIPI panel BOE_NV110WUM_L60 will be used for Ciri, enable it.
Also remove the `mdelay(10)` after mtk_i2c_bus_init, because MTK
confirms this is not needed. Add mdelay(2) between VDD18 and VSP/VSN
to meet the panel datasheet.
BUG=b:308968270
TEST=Boot to firmware screen
BRANCH=None
Change-Id: I0a04f062f81c543d38716d7ff185b5633c1aa3a9
Signed-off-by: Ruihai Zhou <zhouruihai@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/78957
Reviewed-by: Yidi Lin <yidilin@google.com>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/mainboard/google/geralt/panel.c')
-rw-r--r-- | src/mainboard/google/geralt/panel.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/mainboard/google/geralt/panel.c b/src/mainboard/google/geralt/panel.c index 202eda7b7d..3f55cac12d 100644 --- a/src/mainboard/google/geralt/panel.c +++ b/src/mainboard/google/geralt/panel.c @@ -3,10 +3,14 @@ #include <boardid.h> #include <cbfs.h> #include <console/console.h> +#include <delay.h> #include <edid.h> #include <gpio.h> #include <identity.h> #include <soc/gpio_common.h> +#include <soc/i2c.h> +#include <soc/pmif.h> +#include <soc/regulator.h> #include <string.h> #include "gpio.h" @@ -59,3 +63,22 @@ void fill_lp_backlight_gpios(struct lb_gpios *gpios) lb_add_gpios(gpios, backlight_gpios, ARRAY_SIZE(backlight_gpios)); } + +void power_on_mipi_panel(const struct tps65132s_cfg *cfg) +{ + mtk_i2c_bus_init(cfg->i2c_bus, I2C_SPEED_FAST); + + /* Enable VM18V */ + mainboard_enable_regulator(MTK_REGULATOR_VDD18, true); + mdelay(2); + if (tps65132s_setup(cfg) != CB_SUCCESS) + printk(BIOS_ERR, "Failed to set up voltage regulator tps65132s\n"); + gpio_output(GPIO_DISP_RST_1V8_L, 0); + mdelay(1); + gpio_output(GPIO_DISP_RST_1V8_L, 1); + mdelay(1); + gpio_output(GPIO_DISP_RST_1V8_L, 0); + mdelay(1); + gpio_output(GPIO_DISP_RST_1V8_L, 1); + mdelay(6); +} |