/* SPDX-License-Identifier: GPL-2.0-or-later */


#ifndef _LINUX_MFD_CGBC_H_


struct cgbc_version {
	unsigned char feature;
	unsigned char major;
	unsigned char minor;
};


struct cgbc_device_data {
	void __iomem		*io_session;
	void __iomem		*io_cmd;
	u8			session;
	struct device		*dev;
	struct cgbc_version	version;
	struct mutex		lock;
};

int cgbc_command(struct cgbc_device_data *cgbc, void *cmd, unsigned int cmd_size,
		 void *data, unsigned int data_size, u8 *status);

#endif 
