From: Rob Clark <robdclark@xxxxxxxxxxxx> Signed-off-by: Rob Clark <robdclark@xxxxxxxxxxxx> --- v2: Fix headerdoc comments lib/igt_debugfs.c | 17 +++++++++++++++++ lib/igt_debugfs.h | 13 +++++++++++++ 2 files changed, 30 insertions(+) diff --git a/lib/igt_debugfs.c b/lib/igt_debugfs.c index a5bb95ca..dd6f2995 100644 --- a/lib/igt_debugfs.c +++ b/lib/igt_debugfs.c @@ -351,6 +351,23 @@ void __igt_debugfs_read(int fd, const char *filename, char *buf, int size) close(dir); } +/** + * __igt_debugfs_write: + * @fd: the drm device file fd + * @filename: file name + * @buf: buffer to be written to the debugfs file + * @size: size of the buffer + * + * This function opens the debugfs file, writes it, then closes the file. + */ +void __igt_debugfs_write(int fd, const char *filename, const char *buf, int size) +{ + int dir = igt_debugfs_dir(fd); + + igt_sysfs_write(dir, filename, buf, size); + close(dir); +} + /** * igt_debugfs_search: * @filename: file name diff --git a/lib/igt_debugfs.h b/lib/igt_debugfs.h index d43ba6c6..b4867681 100644 --- a/lib/igt_debugfs.h +++ b/lib/igt_debugfs.h @@ -40,6 +40,7 @@ int igt_debugfs_pipe_dir(int device, int pipe, int mode); int igt_debugfs_open(int fd, const char *filename, int mode); void __igt_debugfs_read(int fd, const char *filename, char *buf, int size); +void __igt_debugfs_write(int fd, const char *filename, const char *buf, int size); int igt_debugfs_simple_read(int dir, const char *filename, char *buf, int size); bool igt_debugfs_search(int fd, const char *filename, const char *substring); @@ -54,6 +55,18 @@ bool igt_debugfs_search(int fd, const char *filename, const char *substring); #define igt_debugfs_read(fd, filename, buf) \ __igt_debugfs_read(fd, (filename), (buf), sizeof(buf)) +/** + * igt_debugfs_write: + * @fd: the drm device file fd + * @filename: name of the debugfs file + * @buf: buffer to be written to the debugfs file + * + * This is just a convenience wrapper for __igt_debugfs_write. See its + * documentation. + */ +#define igt_debugfs_write(fd, filename, buf) \ + __igt_debugfs_write(fd, (filename), (buf), sizeof(buf)) + /* * Pipe CRC */ -- 2.31.1