diff options
| author | Stefano Babic <[email protected]> | 2015-10-30 14:52:51 +0100 |
|---|---|---|
| committer | Stefano Babic <[email protected]> | 2015-10-30 14:52:51 +0100 |
| commit | e573bdb324c78fac56655a493bea843842c9d9f8 (patch) | |
| tree | 3933d354a6be71cbe66d583fec3f5b2479e596ee /include/misc.h | |
| parent | a69fdc7787bfa2f27eed74c2ee58c28ce932d502 (diff) | |
| parent | 0eb4cf9c14315e1976a116de75da6f420ac0e8dd (diff) | |
Merge branch 'master' of git://git.denx.de/u-boot
Diffstat (limited to 'include/misc.h')
| -rw-r--r-- | include/misc.h | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/include/misc.h b/include/misc.h new file mode 100644 index 00000000000..7e9badfabd0 --- /dev/null +++ b/include/misc.h @@ -0,0 +1,79 @@ +/* + * Copyright (C) 2015 Thomas Chou <[email protected]> + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#ifndef _MISC_H_ +#define _MISC_H_ + +/* + * Read the device to buffer, optional. + * + * @dev: the device + * @offset: offset to read the device + * @buf: pointer to data buffer + * @size: data size in bytes to read the device + * @return: 0 if OK, -ve on error + */ +int misc_read(struct udevice *dev, int offset, void *buf, int size); +/* + * Write buffer to the device, optional. + * + * @dev: the device + * @offset: offset to write the device + * @buf: pointer to data buffer + * @size: data size in bytes to write the device + * @return: 0 if OK, -ve on error + */ +int misc_write(struct udevice *dev, int offset, void *buf, int size); +/* + * Assert command to the device, optional. + * + * @dev: the device + * @request: command to be sent to the device + * @buf: pointer to buffer related to the requset + * @return: 0 if OK, -ve on error + */ +int misc_ioctl(struct udevice *dev, unsigned long request, void *buf); + +/* + * struct misc_ops - Driver model Misc operations + * + * The uclass interface is implemented by all miscellaneous devices which + * use driver model. + */ +struct misc_ops { + /* + * Read the device to buffer, optional. + * + * @dev: the device + * @offset: offset to read the device + * @buf: pointer to data buffer + * @size: data size in bytes to read the device + * @return: 0 if OK, -ve on error + */ + int (*read)(struct udevice *dev, int offset, void *buf, int size); + /* + * Write buffer to the device, optional. + * + * @dev: the device + * @offset: offset to write the device + * @buf: pointer to data buffer + * @size: data size in bytes to write the device + * @return: 0 if OK, -ve on error + */ + int (*write)(struct udevice *dev, int offset, const void *buf, + int size); + /* + * Assert command to the device, optional. + * + * @dev: the device + * @request: command to be sent to the device + * @buf: pointer to buffer related to the requset + * @return: 0 if OK, -ve on error + */ + int (*ioctl)(struct udevice *dev, unsigned long request, void *buf); +}; + +#endif /* _MISC_H_ */ |
