blob: da11eb5206c18e55213fb71d88f84cb1edce29e0 [file] [log] [blame]
Sylvain Munaut652c7322022-09-01 17:54:29 +02001/*
2 * i2c.h
3 *
4 * Copyright (C) 2021-2022 Sylvain Munaut <tnt@246tNt.com>
5 * SPDX-License-Identifier: GPL-3.0-or-later
6 */
7
8#pragma once
9
10#include <stdbool.h>
11#include <stdint.h>
12
13void i2c_start(void);
14void i2c_stop(void);
15bool i2c_write(uint8_t data);
16uint8_t i2c_read(bool ack);
17
18bool i2c_write_reg(uint8_t dev, uint8_t reg, uint8_t val);
19bool i2c_read_reg (uint8_t dev, uint8_t reg, uint8_t *val);
20
21bool i2c_probe(uint8_t dev);
22void i2c_scan(void);