diff --git a/backend.c b/backend.c
index b3e38393..9f0f119f 100644
--- a/backend.c
+++ b/backend.c
@@ -63,6 +63,12 @@
* sigrok.org/wiki/Libsigrok
*/
+/**
+ * @file
+ *
+ * Initializing and shutting down libsigrok.
+ */
+
/**
* @defgroup grp_init Initialization
*
diff --git a/datastore.c b/datastore.c
index eac79cec..16346695 100644
--- a/datastore.c
+++ b/datastore.c
@@ -24,6 +24,12 @@
#include "libsigrok.h"
#include "libsigrok-internal.h"
+/**
+ * @file
+ *
+ * Creating, using, or destroying libsigrok datastores.
+ */
+
/**
* @defgroup grp_datastore Datastore
*
diff --git a/device.c b/device.c
index 26e34c95..2509c542 100644
--- a/device.c
+++ b/device.c
@@ -22,6 +22,12 @@
#include "libsigrok.h"
#include "libsigrok-internal.h"
+/**
+ * @file
+ *
+ * Device handling in libsigrok.
+ */
+
/**
* @defgroup grp_devices Devices
*
diff --git a/error.c b/error.c
index 761c94e4..c9b8589e 100644
--- a/error.c
+++ b/error.c
@@ -20,6 +20,12 @@
#include "libsigrok.h"
+/**
+ * @file
+ *
+ * Error handling in libsigrok.
+ */
+
/**
* @defgroup grp_error Error handling
*
diff --git a/filter.c b/filter.c
index 4e3115cd..df28a723 100644
--- a/filter.c
+++ b/filter.c
@@ -23,6 +23,12 @@
#include "libsigrok.h"
#include "libsigrok-internal.h"
+/**
+ * @file
+ *
+ * Helper functions to filter out unused probes from samples.
+ */
+
/**
* @defgroup grp_filter Probe filter
*
diff --git a/hwdriver.c b/hwdriver.c
index 207052cf..8be8a9e2 100644
--- a/hwdriver.c
+++ b/hwdriver.c
@@ -26,6 +26,12 @@
#include "libsigrok.h"
#include "libsigrok-internal.h"
+/**
+ * @file
+ *
+ * Hardware driver handling in libsigrok.
+ */
+
/**
* @defgroup grp_driver Hardware drivers
*
diff --git a/input/input.c b/input/input.c
index 1b83c65d..fd51a874 100644
--- a/input/input.c
+++ b/input/input.c
@@ -20,6 +20,12 @@
#include "libsigrok.h"
#include "libsigrok-internal.h"
+/**
+ * @file
+ *
+ * Input file/data format handling.
+ */
+
/**
* @defgroup grp_input Input formats
*
diff --git a/libsigrok-internal.h b/libsigrok-internal.h
index 56360572..38647622 100644
--- a/libsigrok-internal.h
+++ b/libsigrok-internal.h
@@ -27,6 +27,12 @@
#include
#endif
+/**
+ * @file
+ *
+ * libsigrok private header file, only to be used internally.
+ */
+
/*--- Macros ----------------------------------------------------------------*/
#ifndef ARRAY_SIZE
diff --git a/libsigrok.h b/libsigrok.h
index 4c467346..fd09492e 100644
--- a/libsigrok.h
+++ b/libsigrok.h
@@ -30,6 +30,12 @@
extern "C" {
#endif
+/**
+ * @file
+ *
+ * The public libsigrok header file to be used by frontends.
+ */
+
/*
* All possible return codes of libsigrok functions must be listed here.
* Functions should never return hardcoded numbers as status, but rather
diff --git a/log.c b/log.c
index a3b807aa..6ebede70 100644
--- a/log.c
+++ b/log.c
@@ -26,7 +26,7 @@
/**
* @file
*
- * Logging support.
+ * Controlling the libsigrok message logging functionality.
*/
/**
diff --git a/output/output.c b/output/output.c
index 457a80c3..d726ad93 100644
--- a/output/output.c
+++ b/output/output.c
@@ -20,6 +20,12 @@
#include "libsigrok.h"
#include "libsigrok-internal.h"
+/**
+ * @file
+ *
+ * Output file/data format handling.
+ */
+
/**
* @defgroup grp_output Output formats
*
diff --git a/proto.h b/proto.h
index 49b2d747..4c9286c1 100644
--- a/proto.h
+++ b/proto.h
@@ -20,6 +20,12 @@
#ifndef LIBSIGROK_SIGROK_PROTO_H
#define LIBSIGROK_SIGROK_PROTO_H
+/**
+ * @file
+ *
+ * Header file containing API function prototypes.
+ */
+
/*--- backend.c -------------------------------------------------------------*/
SR_API int sr_init(struct sr_context **ctx);
diff --git a/session.c b/session.c
index 0d4c13f7..81e09b11 100644
--- a/session.c
+++ b/session.c
@@ -25,6 +25,12 @@
#include "libsigrok.h"
#include "libsigrok-internal.h"
+/**
+ * @file
+ *
+ * Creating, using, or destroying libsigrok sessions.
+ */
+
/**
* @defgroup grp_session Session handling
*
diff --git a/session_file.c b/session_file.c
index 5b91f929..41ca36c5 100644
--- a/session_file.c
+++ b/session_file.c
@@ -27,6 +27,12 @@
#include "libsigrok.h"
#include "libsigrok-internal.h"
+/**
+ * @file
+ *
+ * Loading and saving libsigrok session files.
+ */
+
/**
* @addtogroup grp_session
*
diff --git a/strutil.c b/strutil.c
index c147b961..1cb0db39 100644
--- a/strutil.c
+++ b/strutil.c
@@ -24,6 +24,12 @@
#include "libsigrok.h"
#include "libsigrok-internal.h"
+/**
+ * @file
+ *
+ * Helper functions for handling or converting libsigrok-related strings.
+ */
+
/**
* @defgroup grp_strutil String utilities
*
diff --git a/version.c b/version.c
index 37baabec..a92aa960 100644
--- a/version.c
+++ b/version.c
@@ -20,6 +20,12 @@
#include "libsigrok.h"
+/**
+ * @file
+ *
+ * Version number querying functions.
+ */
+
/**
* @defgroup grp_versions Versions
*