diff --git a/include/osmocom/core/crc16.h b/include/osmocom/core/crc16.h
index 52807af..f2e77e4 100644
--- a/include/osmocom/core/crc16.h
+++ b/include/osmocom/core/crc16.h
@@ -1,13 +1,16 @@
-/*! \file crc16.h
- * This was copied from the linux kernel and adjusted for our types.
+/*! \addtogroup crc
+ *  @{
+ *  \file crc16.h
+ *  This was copied from the linux kernel and adjusted for our types.
  */
+
 /*
  *	crc16.h - CRC-16 routine
  *
  * Implements the standard CRC-16:
- *   Width 16
- *   Poly  0x8005 (x^16 + x^15 + x^2 + 1)
- *   Init  0
+ * - Width 16
+ * - Poly  0x8005 (x^16 + x^15 + x^2 + 1)
+ * - Init  0
  *
  * Copyright (c) 2005 Ben Gardner <bgardner@wabtec.com>
  *
@@ -25,19 +28,22 @@
 
 extern uint16_t osmo_crc16(uint16_t crc, const uint8_t *buffer, size_t len);
 
+/*! CRC-16 polynome 0x8005 (x^16 + x^15 + x^2 + 1) */
 static inline uint16_t osmo_crc16_byte(uint16_t crc, const uint8_t data)
 {
 	return (crc >> 8) ^ osmo_crc16_table[(crc ^ data) & 0xff];
 }
 
 
-/* CCITT polynome 0x8408. This corresponds to x^0 + x^5 + x^12 */
 
 extern uint16_t const osmo_crc16_ccitt_table[256];
 
 extern uint16_t osmo_crc16_ccitt(uint16_t crc, const uint8_t *buffer, size_t len);
 
+/*! CCITT polynome 0x8408 (x^0 + x^5 + x^12) */
 static inline uint16_t osmo_crc16_ccitt_byte(uint16_t crc, const uint8_t data)
 {
 	return (crc >> 8) ^ osmo_crc16_ccitt_table[(crc ^ data) & 0xff];
 }
+
+/*! @} */
diff --git a/include/osmocom/core/crcXXgen.h.tpl b/include/osmocom/core/crcXXgen.h.tpl
index 2c909f9..823f21f 100644
--- a/include/osmocom/core/crcXXgen.h.tpl
+++ b/include/osmocom/core/crcXXgen.h.tpl
@@ -22,7 +22,7 @@
 
 #pragma once
 
-/*! \addtogroup crcgen
+/*! \addtogroup crc
  *  @{
  * \file crcXXgen.h.tpl */
 
diff --git a/include/osmocom/core/crcgen.h b/include/osmocom/core/crcgen.h
index d73e6e8..7cfe869 100644
--- a/include/osmocom/core/crcgen.h
+++ b/include/osmocom/core/crcgen.h
@@ -22,7 +22,7 @@
 
 #pragma once
 
-/*! \defgroup crcgen Osmocom generic CRC routines
+/*! \defgroup crc Osmocom CRC routines
  *  @{
  * \file crcgen.h */
 
