Message ID | 20210527075556.1709140-4-hsinyi@chromium.org |
---|---|
State | Accepted |
Commit | 9029b9b2ae1355366530e43890fd6aa5db39e91e |
Headers | show |
Series | [v21,RESEND,1/4] i2c: core: support bus regulator controlling in adapter | expand |
On Thu, May 27, 2021 at 03:55:55PM +0800, Hsin-Yi Wang wrote: > Add vbus-supply which provides power to SCL/SDA. Pass this regulator > into core so it can be turned on/off for low power mode support. > > Signed-off-by: Hsin-Yi Wang <hsinyi@chromium.org> > Reviewed-by: Matthias Brugger <matthias.bgg@gmail.com> > Reviewed-by: Qii Wang <qii.wang@mediatek.com> Applied to for-next, thanks!
diff --git a/drivers/i2c/busses/i2c-mt65xx.c b/drivers/i2c/busses/i2c-mt65xx.c index 5ddfa4e56ee2..22d1d14b5de5 100644 --- a/drivers/i2c/busses/i2c-mt65xx.c +++ b/drivers/i2c/busses/i2c-mt65xx.c @@ -1220,6 +1220,13 @@ static int mtk_i2c_probe(struct platform_device *pdev) i2c->adap.quirks = i2c->dev_comp->quirks; i2c->adap.timeout = 2 * HZ; i2c->adap.retries = 1; + i2c->adap.bus_regulator = devm_regulator_get_optional(&pdev->dev, "vbus"); + if (IS_ERR(i2c->adap.bus_regulator)) { + if (PTR_ERR(i2c->adap.bus_regulator) == -ENODEV) + i2c->adap.bus_regulator = NULL; + else + return PTR_ERR(i2c->adap.bus_regulator); + } ret = mtk_i2c_parse_dt(pdev->dev.of_node, i2c); if (ret)