Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-only */
0002 /* Copyright (C) 2010 Google, Inc.
0003  * Copyright (c) 2011, Code Aurora Forum. All rights reserved.
0004  * Author: Dima Zavin <dima@android.com>
0005  */
0006 
0007 #ifndef _LINUX_SSBI_H
0008 #define _LINUX_SSBI_H
0009 
0010 #include <linux/types.h>
0011 
0012 int ssbi_write(struct device *dev, u16 addr, const u8 *buf, int len);
0013 int ssbi_read(struct device *dev, u16 addr, u8 *buf, int len);
0014 
0015 static inline int
0016 ssbi_reg_read(void *context, unsigned int reg, unsigned int *val)
0017 {
0018     int ret;
0019     u8 v;
0020 
0021     ret = ssbi_read(context, reg, &v, 1);
0022     if (!ret)
0023         *val = v;
0024 
0025     return ret;
0026 }
0027 
0028 static inline int
0029 ssbi_reg_write(void *context, unsigned int reg, unsigned int val)
0030 {
0031     u8 v = val;
0032     return ssbi_write(context, reg, &v, 1);
0033 }
0034 
0035 #endif