Module Name: src Committed By: thorpej Date: Mon Dec 10 00:31:45 UTC 2018
Modified Files: src/sys/dev/i2c: i2c_exec.c i2cvar.h Log Message: Make i2c_acquire_bus() / i2c_release_bus() real symbols. To generate a diff of this commit: cvs rdiff -u -r1.10 -r1.11 src/sys/dev/i2c/i2c_exec.c cvs rdiff -u -r1.17 -r1.18 src/sys/dev/i2c/i2cvar.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/dev/i2c/i2c_exec.c diff -u src/sys/dev/i2c/i2c_exec.c:1.10 src/sys/dev/i2c/i2c_exec.c:1.11 --- src/sys/dev/i2c/i2c_exec.c:1.10 Sat Mar 7 14:16:51 2015 +++ src/sys/dev/i2c/i2c_exec.c Mon Dec 10 00:31:45 2018 @@ -1,4 +1,4 @@ -/* $NetBSD: i2c_exec.c,v 1.10 2015/03/07 14:16:51 jmcneill Exp $ */ +/* $NetBSD: i2c_exec.c,v 1.11 2018/12/10 00:31:45 thorpej Exp $ */ /* * Copyright (c) 2003 Wasabi Systems, Inc. @@ -36,7 +36,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: i2c_exec.c,v 1.10 2015/03/07 14:16:51 jmcneill Exp $"); +__KERNEL_RCSID(0, "$NetBSD: i2c_exec.c,v 1.11 2018/12/10 00:31:45 thorpej Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -54,6 +54,30 @@ static uint8_t iic_smbus_pec(int, uint8_ static int i2cexec_modcmd(modcmd_t, void *); /* + * iic_acquire_bus: + * + * Acquire the I2C bus for use by a client. + */ +int +iic_acquire_bus(i2c_tag_t tag, int flags) +{ + + return (*tag->ic_acquire_bus)(tag->ic_cookie, flags); +} + +/* + * iic_release_bus: + * + * Relese the I2C bus, allowing another client to use it. + */ +void +iic_release_bus(i2c_tag_t tag, int flags) +{ + + (*tag->ic_release_bus)(tag->ic_cookie, flags); +} + +/* * iic_exec: * * Simplified I2C client interface engine. Index: src/sys/dev/i2c/i2cvar.h diff -u src/sys/dev/i2c/i2cvar.h:1.17 src/sys/dev/i2c/i2cvar.h:1.18 --- src/sys/dev/i2c/i2cvar.h:1.17 Tue Jun 26 06:34:55 2018 +++ src/sys/dev/i2c/i2cvar.h Mon Dec 10 00:31:45 2018 @@ -1,4 +1,4 @@ -/* $NetBSD: i2cvar.h,v 1.17 2018/06/26 06:34:55 thorpej Exp $ */ +/* $NetBSD: i2cvar.h,v 1.18 2018/12/10 00:31:45 thorpej Exp $ */ /* * Copyright (c) 2003 Wasabi Systems, Inc. @@ -208,11 +208,8 @@ bool iic_use_direct_match(const struct i * Simplified API for clients of the i2c framework. Definitions * in <dev/i2c/i2c_io.h>. */ -#define iic_acquire_bus(ic, flags) \ - (*(ic)->ic_acquire_bus)((ic)->ic_cookie, (flags)) -#define iic_release_bus(ic, flags) \ - (*(ic)->ic_release_bus)((ic)->ic_cookie, (flags)) - +int iic_acquire_bus(i2c_tag_t, int); +void iic_release_bus(i2c_tag_t, int); int iic_exec(i2c_tag_t, i2c_op_t, i2c_addr_t, const void *, size_t, void *, size_t, int);