From dd897b51e04694f7edb4e60a8ccd71391b6e140b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fin=20Maa=C3=9F?= Date: Tue, 14 May 2024 10:29:47 +0200 Subject: [PATCH] drivers: i2c: i2c_sbcon: add get_config and recover_bus MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit add get_config and recover_bus for the sbcon i2c driver. Signed-off-by: Fin Maaß --- drivers/i2c/i2c_sbcon.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/drivers/i2c/i2c_sbcon.c b/drivers/i2c/i2c_sbcon.c index e3ddd62b262..5be737b2a40 100644 --- a/drivers/i2c/i2c_sbcon.c +++ b/drivers/i2c/i2c_sbcon.c @@ -84,6 +84,13 @@ static int i2c_sbcon_configure(const struct device *dev, uint32_t dev_config) return i2c_bitbang_configure(&context->bitbang, dev_config); } +static int i2c_sbcon_get_config(const struct device *dev, uint32_t *config) +{ + struct i2c_sbcon_context *context = dev->data; + + return i2c_bitbang_get_config(&context->bitbang, config); +} + static int i2c_sbcon_transfer(const struct device *dev, struct i2c_msg *msgs, uint8_t num_msgs, uint16_t slave_address) { @@ -93,9 +100,18 @@ static int i2c_sbcon_transfer(const struct device *dev, struct i2c_msg *msgs, slave_address); } +static int i2c_sbcon_recover_bus(const struct device *dev) +{ + struct i2c_sbcon_context *context = dev->data; + + return i2c_bitbang_recover_bus(&context->bitbang); +} + static const struct i2c_driver_api api = { .configure = i2c_sbcon_configure, + .get_config = i2c_sbcon_get_config, .transfer = i2c_sbcon_transfer, + .recover_bus = i2c_sbcon_recover_bus, }; static int i2c_sbcon_init(const struct device *dev)