aboutsummaryrefslogtreecommitdiff
path: root/arch/arm/include/asm/arch-tegra/tegra_i2c.h
diff options
context:
space:
mode:
authorTom Rini <trini@konsulko.com>2023-02-23 17:32:22 -0500
committerTom Rini <trini@konsulko.com>2023-02-23 17:40:18 -0500
commit0024e7f72b689f8c2df731a69e20f47b6f8dc5a7 (patch)
tree03da9b68c29df4ffa5c181acca8ce6176636a410 /arch/arm/include/asm/arch-tegra/tegra_i2c.h
parent0b58258a33280a536c5b1e5e90dfdf0b5b5852cc (diff)
parent5a8fe1ee818e0f8a74fa088f6a3d705a01b6afbe (diff)
Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-tegra
Diffstat (limited to 'arch/arm/include/asm/arch-tegra/tegra_i2c.h')
-rw-r--r--arch/arm/include/asm/arch-tegra/tegra_i2c.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/arch/arm/include/asm/arch-tegra/tegra_i2c.h b/arch/arm/include/asm/arch-tegra/tegra_i2c.h
index c49f43251d..afec6bbdda 100644
--- a/arch/arm/include/asm/arch-tegra/tegra_i2c.h
+++ b/arch/arm/include/asm/arch-tegra/tegra_i2c.h
@@ -8,6 +8,7 @@
#ifndef _TEGRA_I2C_H_
#define _TEGRA_I2C_H_
+#include <asm/io.h>
#include <asm/types.h>
struct udevice;
@@ -154,4 +155,20 @@ struct i2c_ctlr {
*/
int tegra_i2c_get_dvc_bus(struct udevice **busp);
+/* Pre-dm section used for initial setup of PMIC */
+#define I2C_SEND_2_BYTES 0x0A02
+
+static inline void tegra_i2c_ll_write(uint addr, uint data)
+{
+ struct i2c_ctlr *reg = (struct i2c_ctlr *)TEGRA_DVC_BASE;
+
+ writel(addr, &reg->cmd_addr0);
+ writel(0x2, &reg->cnfg);
+
+ writel(data, &reg->cmd_data1);
+ writel(I2C_SEND_2_BYTES, &reg->cnfg);
+}
+
+void pmic_enable_cpu_vdd(void);
+
#endif /* _TEGRA_I2C_H_ */