summaryrefslogtreecommitdiffstats
path: root/src/soc/mediatek
diff options
context:
space:
mode:
authorRuihai Zhou <zhouruihai@huaqin.corp-partner.google.com>2023-07-03 20:10:28 +0800
committerFelix Held <felix-coreboot@felixheld.de>2023-07-10 14:19:13 +0000
commit266e6557ba50a33fd1290f64552dc76d7fb48151 (patch)
tree7549e8b104f31a7accf0dd661ad0cab87d6e6581 /src/soc/mediatek
parenta8602a17bc7a18d29ffcb96e193a37903efe0394 (diff)
downloadcoreboot-266e6557ba50a33fd1290f64552dc76d7fb48151.tar.gz
coreboot-266e6557ba50a33fd1290f64552dc76d7fb48151.tar.bz2
coreboot-266e6557ba50a33fd1290f64552dc76d7fb48151.zip
mb/google/corsola: Add support for AW37503 Power IC
The AW37503 is designed to supply positive/negative supply for driving the MIPI panel. It doesn't integrate non-volatile memory(EEPROM), so we need to program the registers at boot. We program the target positive/negative output voltage via I2C and enable the power rails by pulling up ENP and ENN pins. On Starmie, we need +/-6V power supply for the MIPI panel. We program the AW37503 registers in coreboot so that kernel can control AW37503 via fixed regulators without additional settings(what we did for TPS65132). Since we distinguish AW37503 and TPS65132 by reading the vendor ID, we need to initialize I2C bus as early as possible. Therefore, we move mtk_i2c_bus_init() to mainboard_init(). BUG=b:289482828 TEST=emerge-staryu coreboot chromeos-bootimage TEST=Test the sequence the voltage Change-Id: I9ccd4db19c93a032226f006eab0427f78f7b6dc8 Signed-off-by: Ruihai Zhou <zhouruihai@huaqin.corp-partner.google.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/76219 Reviewed-by: Yu-Ping Wu <yupingso@google.com> Reviewed-by: cong yang <yangcong5@huaqin.corp-partner.google.com> Reviewed-by: Yidi Lin <yidilin@google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/soc/mediatek')
-rw-r--r--src/soc/mediatek/common/tps65132s.c4
1 files changed, 0 insertions, 4 deletions
diff --git a/src/soc/mediatek/common/tps65132s.c b/src/soc/mediatek/common/tps65132s.c
index 4683a43072ab..5a290351232e 100644
--- a/src/soc/mediatek/common/tps65132s.c
+++ b/src/soc/mediatek/common/tps65132s.c
@@ -30,10 +30,6 @@ enum cb_err tps65132s_setup(const struct tps65132s_cfg *cfg)
u8 val;
int i;
- /* Initialize I2C bus for PMIC TPS65132 */
- mtk_i2c_bus_init(cfg->i2c_bus, I2C_SPEED_FAST);
- mdelay(10);
-
gpio_output(cfg->en, 1);
gpio_output(cfg->sync, 1);
mdelay(10);