From 08e1b0ebc7a5b9a960994e16710465dfb67f66ee Mon Sep 17 00:00:00 2001
From: Joel Bodenmann <joel@unormal.org>
Date: Fri, 28 Mar 2014 19:45:08 +0100
Subject: Removed the doxygen inside of every driver as doxygen is only meant
 for highlevel API documentation. Documenting the drivers interface should be
 done inside a template driver or the gdisp LLD abstraction.

---
 drivers/gaudio/Win32/gaudio_play_config.h          |  34 ------
 drivers/gaudio/Win32/gaudio_play_lld.c             |   5 -
 drivers/gaudio/Win32/gaudio_record_config.h        |  34 ------
 drivers/gaudio/Win32/gaudio_record_lld.c           |   5 -
 drivers/gaudio/gadc/gaudio_record_board_template.h |  29 ------
 drivers/gaudio/gadc/gaudio_record_config.h         |  25 -----
 drivers/gaudio/gadc/gaudio_record_lld.c            |   9 --
 drivers/gdisp/ED060SC4/board_ED060SC4_template.h   |  92 +----------------
 drivers/gdisp/ED060SC4/gdisp_lld_ED060SC4.c        |  43 ++++----
 drivers/gdisp/HX8347D/HX8347D.h                    |   9 --
 drivers/gdisp/HX8347D/board_HX8347D_template.h     |  96 -----------------
 drivers/gdisp/HX8347D/gdisp_lld_HX8347D.c          |   5 -
 drivers/gdisp/HX8347D/gdisp_lld_config.h           |   9 --
 drivers/gdisp/ILI9320/board_ILI9320_template.h     |  97 -----------------
 drivers/gdisp/ILI9320/gdisp_lld_ILI9320.c          |   5 -
 drivers/gdisp/ILI9320/gdisp_lld_config.h           |  10 --
 drivers/gdisp/ILI9325/board_ILI9325_template.h     |  95 -----------------
 drivers/gdisp/ILI9325/gdisp_lld_ILI9325.c          |   5 -
 drivers/gdisp/ILI9325/gdisp_lld_config.h           |  10 --
 drivers/gdisp/ILI9341/board_ILI9341_template.h     |  94 -----------------
 drivers/gdisp/ILI9341/gdisp_lld_ILI9341.c          |   6 --
 drivers/gdisp/ILI9341/gdisp_lld_config.h           |  10 --
 drivers/gdisp/ILI9481/board_ILI9481_template.h     |  95 -----------------
 drivers/gdisp/ILI9481/gdisp_lld_ILI9481.c          |   7 --
 drivers/gdisp/ILI9481/gdisp_lld_config.h           |  10 --
 .../Nokia6610GE12/board_Nokia6610GE12_template.h   |  72 -------------
 .../gdisp/Nokia6610GE12/gdisp_lld_Nokia6610GE12.c  |   5 -
 drivers/gdisp/Nokia6610GE12/gdisp_lld_config.h     |   9 --
 .../Nokia6610GE8/board_Nokia6610GE8_template.h     |  72 -------------
 .../gdisp/Nokia6610GE8/gdisp_lld_Nokia6610GE8.c    |  11 +-
 drivers/gdisp/Nokia6610GE8/gdisp_lld_config.h      |   9 --
 drivers/gdisp/RA8875/board_RA8875_template.h       |  89 ----------------
 drivers/gdisp/RA8875/gdisp_lld_RA8875.c            |   5 -
 drivers/gdisp/RA8875/gdisp_lld_config.h            |  10 --
 drivers/gdisp/S6D1121/board_S6D1121_template.h     |  94 -----------------
 drivers/gdisp/S6D1121/gdisp_lld_S6D1121.c          |  10 --
 drivers/gdisp/S6D1121/gdisp_lld_config.h           |  10 --
 drivers/gdisp/SSD1289/board_SSD1289_template.h     | 115 ---------------------
 drivers/gdisp/SSD1289/gdisp_lld_SSD1289.c          |   5 -
 drivers/gdisp/SSD1289/gdisp_lld_config.h           |   9 --
 drivers/gdisp/SSD1306/SSD1306.h                    |   2 -
 drivers/gdisp/SSD1306/board_SSD1306_template.h     |  71 -------------
 drivers/gdisp/SSD1306/gdisp_lld_SSD1306.c          |   6 --
 drivers/gdisp/SSD1306/gdisp_lld_config.h           |   2 -
 drivers/gdisp/SSD1963/board_SSD1963_template.h     |  94 -----------------
 drivers/gdisp/SSD1963/gdisp_lld_SSD1963.c          |   6 --
 drivers/gdisp/SSD1963/gdisp_lld_config.h           |  10 --
 drivers/gdisp/SSD1963/ssd1963.h                    |   2 -
 drivers/gdisp/SSD2119/board_SSD2119_template.h     | 115 ---------------------
 drivers/gdisp/SSD2119/gdisp_lld_SSD2119.c          |   5 -
 drivers/gdisp/SSD2119/gdisp_lld_config.h           |   9 --
 drivers/gdisp/SSD2119/ssd2119.h                    |  10 --
 drivers/gdisp/ST7565/board_ST7565_template.h       |  68 ------------
 drivers/gdisp/ST7565/gdisp_lld_ST7565.c            |   7 +-
 drivers/gdisp/ST7565/gdisp_lld_config.h            |   2 -
 drivers/gdisp/ST7565/st7565.h                      |   2 -
 drivers/gdisp/TestStub/gdisp_lld_TestStub.c        |   5 -
 drivers/gdisp/TestStub/gdisp_lld_config.h          |   9 --
 drivers/ginput/dial/GADC/ginput_lld_dial.c         |  10 --
 .../dial/GADC/ginput_lld_dial_board_template.h     |  11 --
 drivers/ginput/dial/GADC/ginput_lld_dial_config.h  |  10 --
 drivers/ginput/toggle/Pal/ginput_lld_toggle.c      |  24 -----
 .../toggle/Pal/ginput_lld_toggle_board_template.h  |  10 --
 .../ginput/toggle/Pal/ginput_lld_toggle_config.h   |  10 --
 drivers/ginput/touch/ADS7843/ginput_lld_mouse.c    |  36 -------
 .../ADS7843/ginput_lld_mouse_board_template.h      |  40 -------
 .../ginput/touch/ADS7843/ginput_lld_mouse_config.h |  11 --
 drivers/ginput/touch/FT5x06/ft5x06.h               |  10 --
 drivers/ginput/touch/FT5x06/ginput_lld_mouse.c     |  30 ------
 .../touch/FT5x06/ginput_lld_mouse_board_template.h |  41 --------
 .../ginput/touch/FT5x06/ginput_lld_mouse_config.h  |  11 --
 drivers/ginput/touch/MCU/ginput_lld_mouse.c        |  39 -------
 .../touch/MCU/ginput_lld_mouse_board_template.h    |  68 ------------
 .../touch/MCU/ginput_lld_mouse_config_template.h   |  11 --
 drivers/ginput/touch/STMPE811/ginput_lld_mouse.c   |  32 +-----
 .../STMPE811/ginput_lld_mouse_board_template.h     |  41 --------
 .../touch/STMPE811/ginput_lld_mouse_config.h       |  11 --
 drivers/ginput/touch/STMPE811/stmpe811.h           |   9 --
 drivers/multiple/Win32/gdisp_lld_Win32.c           |   5 -
 drivers/multiple/Win32/gdisp_lld_config.h          |  10 --
 drivers/multiple/Win32/ginput_lld_mouse_config.h   |  12 ---
 drivers/multiple/Win32/ginput_lld_toggle_config.h  |  12 ---
 drivers/multiple/X/gdisp_lld_X.c                   |  14 ---
 drivers/multiple/X/gdisp_lld_config.h              |  10 --
 drivers/multiple/X/ginput_lld_mouse_config.h       |  12 ---
 drivers/multiple/uGFXnet/gdisp_lld_config.h        |  10 --
 drivers/multiple/uGFXnet/gdisp_lld_uGFXnet.c       |   4 -
 drivers/multiple/uGFXnet/ginput_lld_mouse_config.h |  12 ---
 drivers/multiple/uGFXnet/uGFXnetProtocol.h         |   5 -
 89 files changed, 23 insertions(+), 2337 deletions(-)

diff --git a/drivers/gaudio/Win32/gaudio_play_config.h b/drivers/gaudio/Win32/gaudio_play_config.h
index 4013e91f..c4830010 100644
--- a/drivers/gaudio/Win32/gaudio_play_config.h
+++ b/drivers/gaudio/Win32/gaudio_play_config.h
@@ -5,14 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gaudio/Win32/gaudio_play_config.h
- * @brief   GAUDIO Play Driver config file.
- *
- * @addtogroup GAUDIO
- * @{
- */
-
 #ifndef GAUDIO_PLAY_CONFIG_H
 #define GAUDIO_PLAY_CONFIG_H
 
@@ -22,42 +14,16 @@
 /* Driver hardware support.                                                  */
 /*===========================================================================*/
 
-/**
- * @brief	The maximum sample frequency supported by this audio device
- */
 #define GAUDIO_PLAY_MAX_SAMPLE_FREQUENCY		44100
-
-/**
- * @brief	The number of audio formats supported by this driver
- */
 #define GAUDIO_PLAY_NUM_FORMATS					2
-
-/**
- * @brief	The available audio sample formats in order of preference
- */
 #define GAUDIO_PLAY_FORMAT1						ARRAY_DATA_16BITSIGNED
 #define GAUDIO_PLAY_FORMAT2						ARRAY_DATA_8BITUNSIGNED
-
-/**
- * @brief	The number of audio channels supported by this driver
- */
 #define GAUDIO_PLAY_NUM_CHANNELS				2
-
-/**
- * @brief	Whether each channel is mono or stereo
- */
 #define GAUDIO_PLAY_CHANNEL0_IS_STEREO			FALSE
 #define GAUDIO_PLAY_CHANNEL1_IS_STEREO			TRUE
-
-/**
- * @brief	The list of audio channel names and their uses
- * @{
- */
 #define	GAUDIO_PLAY_MONO						0
 #define	GAUDIO_PLAY_STEREO						1
-/** @} */
 
 #endif	/* GFX_USE_GAUDIO && GAUDIO_NEED_PLAY */
 
 #endif	/* GAUDIO_PLAY_CONFIG_H */
-/** @} */
diff --git a/drivers/gaudio/Win32/gaudio_play_lld.c b/drivers/gaudio/Win32/gaudio_play_lld.c
index 35a1fc99..c0adf03e 100644
--- a/drivers/gaudio/Win32/gaudio_play_lld.c
+++ b/drivers/gaudio/Win32/gaudio_play_lld.c
@@ -5,11 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gaudio/Win32/gaudio_play_lld.c
- * @brief   GAUDIO - Play Driver file for Win32.
- */
-
 #include "gfx.h"
 
 #if GFX_USE_GAUDIO && GAUDIO_NEED_PLAY
diff --git a/drivers/gaudio/Win32/gaudio_record_config.h b/drivers/gaudio/Win32/gaudio_record_config.h
index 4d952e1d..5897212b 100644
--- a/drivers/gaudio/Win32/gaudio_record_config.h
+++ b/drivers/gaudio/Win32/gaudio_record_config.h
@@ -5,14 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gaudio/Win32/gaudio_record_config.h
- * @brief   GAUDIO Record Driver config file.
- *
- * @addtogroup GAUDIO
- * @{
- */
-
 #ifndef GAUDIO_RECORD_CONFIG_H
 #define GAUDIO_RECORD_CONFIG_H
 
@@ -22,42 +14,16 @@
 /* Driver hardware support.                                                  */
 /*===========================================================================*/
 
-/**
- * @brief	The maximum sample frequency supported by this audio device
- */
 #define GAUDIO_RECORD_MAX_SAMPLE_FREQUENCY			44100
-
-/**
- * @brief	The number of audio formats supported by this driver
- */
 #define GAUDIO_RECORD_NUM_FORMATS					2
-
-/**
- * @brief	The available audio sample formats in order of preference
- */
 #define GAUDIO_RECORD_FORMAT1						ARRAY_DATA_16BITSIGNED
 #define GAUDIO_RECORD_FORMAT2						ARRAY_DATA_8BITUNSIGNED
-
-/**
- * @brief	The number of audio channels supported by this driver
- */
 #define GAUDIO_RECORD_NUM_CHANNELS					2
-
-/**
- * @brief	Whether each channel is mono or stereo
- */
 #define GAUDIO_RECORD_CHANNEL0_IS_STEREO			FALSE
 #define GAUDIO_RECORD_CHANNEL1_IS_STEREO			TRUE
-
-/**
- * @brief	The list of audio channels and their uses
- * @{
- */
 #define	GAUDIO_RECORD_MONO							0
 #define	GAUDIO_RECORD_STEREO						1
-/** @} */
 
 #endif	/* GFX_USE_GAUDIO && GAUDIO_NEED_RECORD */
 
 #endif	/* GAUDIO_RECORD_CONFIG_H */
-/** @} */
diff --git a/drivers/gaudio/Win32/gaudio_record_lld.c b/drivers/gaudio/Win32/gaudio_record_lld.c
index 9f63ff2f..c9ac8187 100644
--- a/drivers/gaudio/Win32/gaudio_record_lld.c
+++ b/drivers/gaudio/Win32/gaudio_record_lld.c
@@ -5,11 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gaudio/Win32/gaudio_record_lld.c
- * @brief   GAUDIO - Record Driver file for Win32.
- */
-
 #include "gfx.h"
 
 #if GFX_USE_GAUDIO && GAUDIO_NEED_RECORD
diff --git a/drivers/gaudio/gadc/gaudio_record_board_template.h b/drivers/gaudio/gadc/gaudio_record_board_template.h
index 59168be1..42c15205 100644
--- a/drivers/gaudio/gadc/gaudio_record_board_template.h
+++ b/drivers/gaudio/gadc/gaudio_record_board_template.h
@@ -5,14 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gaudio/gadc/gaudio_record_board_template.h
- * @brief   GAUDIO Record Driver board config board file
- *
- * @addtogroup GAUDIO
- * @{
- */
-
 #ifndef _GAUDIO_RECORD_BOARD_H
 #define _GAUDIO_RECORD_BOARD_H
 
@@ -20,37 +12,16 @@
 /* Audio inputs on this board                                                */
 /*===========================================================================*/
 
-/**
- * @brief	The number of audio channels supported by this driver
- * @note	This is an example
- */
 #define GAUDIO_RECORD_NUM_CHANNELS					1
 
-/**
- * @brief	Whether each channel is mono or stereo
- * @note	This is an example
- */
 #define GAUDIO_RECORD_CHANNEL0_IS_STEREO			FALSE
 
-/**
- * @brief	The list of audio channels and their uses
- * @note	This is an example
- * @{
- */
 #define	GAUDIO_RECORD_MICROPHONE					0
-/** @} */
 
-/**
- * @brief	The audio channel to GADC physical device assignment
- * @note	This is an example
- * @{
- */
 #ifdef GAUDIO_RECORD_LLD_IMPLEMENTATION
 	static uint32_t gaudio_gadc_physdevs[GAUDIO_RECORD_NUM_CHANNELS] = {
 			GADC_PHYSDEV_MICROPHONE,
 			};
 #endif
-/** @} */
 
 #endif	/* _GAUDIO_RECORD_BOARD_H */
-/** @} */
diff --git a/drivers/gaudio/gadc/gaudio_record_config.h b/drivers/gaudio/gadc/gaudio_record_config.h
index 88092a63..345625ff 100644
--- a/drivers/gaudio/gadc/gaudio_record_config.h
+++ b/drivers/gaudio/gadc/gaudio_record_config.h
@@ -5,14 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gaudio/gadc/gaudio_record_config.h
- * @brief   GAUDIN Record Driver config file.
- *
- * @addtogroup GAUDIO
- * @{
- */
-
 #ifndef GAUDIO_RECORD_CONFIG_H
 #define GAUDIO_RECORD_CONFIG_H
 
@@ -22,30 +14,13 @@
 /* Driver hardware support.                                                  */
 /*===========================================================================*/
 
-/**
- * @brief	The maximum sample frequency supported by this audio device
- * @details	For this driver it matches the GADC maximum high speed sample rate
- */
 #define GAUDIO_RECORD_MAX_SAMPLE_FREQUENCY			GADC_MAX_HIGH_SPEED_SAMPLERATE
-
-/**
- * @brief	The number of audio formats supported by this driver
- */
 #define GAUDIO_RECORD_NUM_FORMATS					1
-
-/**
- * @brief	The available audio sample formats in order of preference
- */
 #define GAUDIO_RECORD_FORMAT1						GADC_SAMPLE_FORMAT
 
-/**
- * For the GAUDIO driver that uses GADC - all the remaining config definitions are specific
- * to the board.
- */
 /* Include the user supplied board definitions */
 #include "gaudio_record_board.h"
 
 #endif	/* GFX_USE_GAUDIO && GAUDIO_NEED_RECORD */
 
 #endif	/* GAUDIO_RECORD_CONFIG_H */
-/** @} */
diff --git a/drivers/gaudio/gadc/gaudio_record_lld.c b/drivers/gaudio/gadc/gaudio_record_lld.c
index 6f4cb2de..1d70a259 100644
--- a/drivers/gaudio/gadc/gaudio_record_lld.c
+++ b/drivers/gaudio/gadc/gaudio_record_lld.c
@@ -5,15 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gaudio/gadc/gaudio_record_lld.c
- * @brief   GAUDIO - Record Driver file for using the cpu ADC (via GADC).
- */
-
-/**
- * We are now implementing the driver - pull in our channel table
- * from the board definitions.
- */
 #define GAUDIO_RECORD_IMPLEMENTATION
 #include "gfx.h"
 
diff --git a/drivers/gdisp/ED060SC4/board_ED060SC4_template.h b/drivers/gdisp/ED060SC4/board_ED060SC4_template.h
index 6d71a986..69683cd0 100644
--- a/drivers/gdisp/ED060SC4/board_ED060SC4_template.h
+++ b/drivers/gdisp/ED060SC4/board_ED060SC4_template.h
@@ -5,18 +5,10 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/ST7565/board_ST7565_template.h
- * @brief   GDISP Graphic Driver subsystem board interface for the ST7565 display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _GDISP_LLD_BOARD_H
 #define _GDISP_LLD_BOARD_H
 
-/**
+/*
  * @brief	Optional parameters that can be put in this file.
  * @note	The values listed below are the defaults.
  *
@@ -54,149 +46,67 @@
  *			#define EINK_WRITECOUNT			4
  */
 
-/**
- * @brief   Initialise the board for the display.
- *
- * @param[in] g			The GDisplay structure
- *
- * @note	Set the g->board member to whatever is appropriate. For multiple
- * 			displays this might be a pointer to the appropriate register set.
- *
- * @notapi
- */
 static inline void init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief	Delay for display waveforms. Should be an accurate microsecond delay.
- *
- * @param[in] us		The number of microseconds
- */
 static void eink_delay(int us) {
 	(void) us;
 }
 
-/**
- * @brief	Turn the E-ink panel Vdd supply (+3.3V) on or off.
- *
- * @param[in] g			The GDisplay structure
- * @param[in] on		On or off
- */
 static inline void setpower_vdd(GDisplay *g, bool_t on) {
 	(void) g;
 	(void) on;
 }
 
-/**
- * @brief	Turn the E-ink panel negative supplies (-15V, -20V) on or off.
- *
- * @param[in] g			The GDisplay structure
- * @param[in] on		On or off
- */
 static inline void setpower_vneg(GDisplay *g, bool_t on) {
 	(void) g;
 	(void) on;
 }
 
-/**
- * @brief	Turn the E-ink panel positive supplies (-15V, -20V) on or off.
- *
- * @param[in] g			The GDisplay structure
- * @param[in] on		On or off
- */
 static inline void setpower_vpos(GDisplay *g, bool_t on) {
 	(void) g;
 	(void) on;
 }
 
-/**
- * @brief	Set the state of the LE (source driver Latch Enable) pin.
- *
- * @param[in] g			The GDisplay structure
- * @param[in] on		On or off
- */
 static inline void setpin_le(GDisplay *g, bool_t on) {
 	(void) g;
 	(void) on;
 }
 
-/**
- * @brief	Set the state of the OE (source driver Output Enable) pin.
- *
- * @param[in] g			The GDisplay structure
- * @param[in] on		On or off
- */
 static inline void setpin_oe(GDisplay *g, bool_t on) {
 	(void) g;
 	(void) on;
 }
 
-/**
- * @brief	Set the state of the CL (source driver Clock) pin.
- *
- * @param[in] g			The GDisplay structure
- * @param[in] on		On or off
- */
 static inline void setpin_cl(GDisplay *g, bool_t on) {
 	(void) g;
 	(void) on;
 }
 
-/**
- * @brief	Set the state of the SPH (source driver Start Pulse Horizontal) pin.
- *
- * @param[in] g			The GDisplay structure
- * @param[in] on		On or off
- */
 static inline void setpin_sph(GDisplay *g, bool_t on) {
 	(void) g;
 	(void) on;
 }
 
-/**
- * @brief	Set the state of the D0-D7 (source driver Data) pins.
- *
- * @param[in] g			The GDisplay structure
- * @param[in] value		The byte to write
- */
 static inline void setpins_data(GDisplay *g, uint8_t value) {
 	(void) g;
 	(void) value;
 }
 
-/**
- * @brief	Set the state of the CKV (gate driver Clock Vertical) pin.
- *
- * @param[in] g			The GDisplay structure
- * @param[in] on		On or off
- */
 static inline void setpin_ckv(GDisplay *g, bool_t on) {
 	(void) g;
 	(void) on;
 }
 
-/**
- * @brief	Set the state of the GMODE (gate driver Gate Mode) pin.
- *
- * @param[in] g			The GDisplay structure
- * @param[in] on		On or off
- */
 static inline void setpin_gmode(GDisplay *g, bool_t on) {
 	(void) g;
 	(void) on;
 }
 
-/**
- * @brief	Set the state of the SPV (gate driver Start Pulse Vertical) pin.
- *
- * @param[in] g			The GDisplay structure
- * @param[in] on		On or off
- */
 static inline void setpin_spv(GDisplay *g, bool_t on) {
 	(void) g;
 	(void) on;
 }
 
 #endif /* _GDISP_LLD_BOARD_H */
-/** @} */
diff --git a/drivers/gdisp/ED060SC4/gdisp_lld_ED060SC4.c b/drivers/gdisp/ED060SC4/gdisp_lld_ED060SC4.c
index 1c61ee93..789053c8 100644
--- a/drivers/gdisp/ED060SC4/gdisp_lld_ED060SC4.c
+++ b/drivers/gdisp/ED060SC4/gdisp_lld_ED060SC4.c
@@ -5,11 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/ED060SC4/gdisp_lld.c
- * @brief   GDISP Graphics Driver for the E-ink panel ED060SC4.
- */
-
 #include "gfx.h"
 
 #if GFX_USE_GDISP
@@ -83,7 +78,7 @@
 
 #define PRIV(g)		((drvPriv *)g->priv)
 
-/** Delay between signal changes, to give time for IO pins to change state. */
+/* Delay between signal changes, to give time for IO pins to change state. */
 static inline void clockdelay(void)
 {
 	#if EINK_CLOCKDELAY & 1
@@ -111,7 +106,7 @@ static inline void clockdelay(void)
 	#endif
 }
 
-/** Fast vertical clock pulse for gate driver, used during initializations */
+/* Fast vertical clock pulse for gate driver, used during initializations */
 static void vclock_quick(GDisplay *g)
 {
 	setpin_ckv(g, TRUE);
@@ -120,7 +115,7 @@ static void vclock_quick(GDisplay *g)
 	eink_delay(4);
 }
 
-/** Horizontal clock pulse for clocking data into source driver */
+/* Horizontal clock pulse for clocking data into source driver */
 static void hclock(GDisplay *g)
 {
 	clockdelay();
@@ -129,7 +124,7 @@ static void hclock(GDisplay *g)
 	setpin_cl(g, FALSE);
 }
 
-/** Start a new vertical gate driver scan from top.
+/* Start a new vertical gate driver scan from top.
  * Note: Does not clear any previous bits in the shift register,
  *       so you should always scan through the whole display before
  *       starting a new scan.
@@ -144,7 +139,7 @@ static void vscan_start(GDisplay *g)
 	vclock_quick(g);
 }
 
-/** Waveform for strobing a row of data onto the display.
+/* Waveform for strobing a row of data onto the display.
  * Attempts to minimize the leaking of color to other rows by having
  * a long idle period after a medium-length strobe period.
  */
@@ -158,7 +153,7 @@ static void vscan_write(GDisplay *g)
 	eink_delay(200);
 }
 
-/** Waveform used when clearing the display. Strobes a row of data to the
+/* Waveform used when clearing the display. Strobes a row of data to the
  * screen, but does not mind some of it leaking to other rows.
  */
 static void vscan_bulkwrite(GDisplay *g)
@@ -169,7 +164,7 @@ static void vscan_bulkwrite(GDisplay *g)
 	eink_delay(200);
 }
 
-/** Waveform for skipping a vertical row without writing anything.
+/* Waveform for skipping a vertical row without writing anything.
  * Attempts to minimize the amount of change in any row.
  */
 static void vscan_skip(GDisplay *g)
@@ -180,7 +175,7 @@ static void vscan_skip(GDisplay *g)
 	eink_delay(100);
 }
 
-/** Stop the vertical scan. The significance of this escapes me, but it seems
+/* Stop the vertical scan. The significance of this escapes me, but it seems
  * necessary or the next vertical scan may be corrupted.
  */
 static void vscan_stop(GDisplay *g)
@@ -193,7 +188,7 @@ static void vscan_stop(GDisplay *g)
 	vclock_quick(g);
 }
 
-/** Start updating the source driver data (from left to right). */
+/* Start updating the source driver data (from left to right). */
 static void hscan_start(GDisplay *g)
 {
 	/* Disable latching and output enable while we are modifying the row. */
@@ -204,7 +199,7 @@ static void hscan_start(GDisplay *g)
 	setpin_sph(g, FALSE);
 }
 
-/** Write data to the horizontal row. */
+/* Write data to the horizontal row. */
 static void hscan_write(GDisplay *g, const uint8_t *data, int count)
 {
 	while (count--)
@@ -217,7 +212,7 @@ static void hscan_write(GDisplay *g, const uint8_t *data, int count)
 	}
 }
 
-/** Finish and transfer the row to the source drivers.
+/* Finish and transfer the row to the source drivers.
  * Does not set the output enable, so the drivers are not yet active. */
 static void hscan_stop(GDisplay *g)
 {
@@ -231,7 +226,7 @@ static void hscan_stop(GDisplay *g)
 	setpin_le(g, FALSE);
 }
 
-/** Turn on the power to the E-Ink panel, observing proper power sequencing. */
+/* Turn on the power to the E-Ink panel, observing proper power sequencing. */
 static void power_on(GDisplay *g)
 {
 	unsigned i;
@@ -264,7 +259,7 @@ static void power_on(GDisplay *g)
 	vscan_stop(g);
 }
 
-/** Turn off the power, observing proper power sequencing. */
+/* Turn off the power, observing proper power sequencing. */
 static void power_off(GDisplay *g)
 {
 	/* First the high voltages */
@@ -289,7 +284,7 @@ static void power_off(GDisplay *g)
 /* ====================================
  *      Framebuffer emulation layer
  * ==================================== */
-
+ 
 #if EINK_PPB == 4
 	#define PIXELMASK 3
 	#define PIXEL_WHITE 2
@@ -336,7 +331,7 @@ typedef struct drvPriv {
 	uint8_t g_blockmap[BLOCKS_Y][BLOCKS_X];
 } drvPriv;
 
-/** Check if the row contains any allocated blocks. */
+/* Check if the row contains any allocated blocks. */
 static bool_t blocks_on_row(GDisplay *g, unsigned by)
 {
 	unsigned bx;
@@ -350,7 +345,7 @@ static bool_t blocks_on_row(GDisplay *g, unsigned by)
 	return FALSE;
 }
 
-/** Write out a block row. */
+/* Write out a block row. */
 static void write_block_row(GDisplay *g, unsigned by)
 {
 	unsigned bx, dy, dx;
@@ -379,7 +374,7 @@ static void write_block_row(GDisplay *g, unsigned by)
 	}
 }
 
-/** Clear the block map, i.e. deallocate all blocks */
+/* Clear the block map, i.e. deallocate all blocks */
 static void clear_block_map(GDisplay *g)
 {
 	unsigned bx, by;
@@ -394,7 +389,7 @@ static void clear_block_map(GDisplay *g)
 	PRIV(g)->g_next_block = 0;
 }
 
-/** Initialize a newly allocated block. */
+/* Initialize a newly allocated block. */
 static void zero_block(block_t *block)
 {
 	unsigned dx, dy;
@@ -407,7 +402,7 @@ static void zero_block(block_t *block)
 	}
 }
 
-/** Allocate a buffer
+/* Allocate a buffer
  * Automatically flushes if all buffers are full. */
 static block_t *alloc_buffer(GDisplay *g, unsigned bx, unsigned by)
 {
diff --git a/drivers/gdisp/HX8347D/HX8347D.h b/drivers/gdisp/HX8347D/HX8347D.h
index 280cd748..479a9ef0 100644
--- a/drivers/gdisp/HX8347D/HX8347D.h
+++ b/drivers/gdisp/HX8347D/HX8347D.h
@@ -5,14 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/HX8347D/HX8347D.h
- * @brief   GDISP Graphic Driver support header for the HX8347D display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _HX8347D_H
 #define _HX8347D_H
 
@@ -140,4 +132,3 @@
 #define HX8347D_REG_PGSEL               0xff    /* Page select */
 
 #endif /* _HX8347D_H */
-/** @} */
diff --git a/drivers/gdisp/HX8347D/board_HX8347D_template.h b/drivers/gdisp/HX8347D/board_HX8347D_template.h
index 57ec75f6..fd40d30c 100644
--- a/drivers/gdisp/HX8347D/board_HX8347D_template.h
+++ b/drivers/gdisp/HX8347D/board_HX8347D_template.h
@@ -5,152 +5,56 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/HX8347D/board_HX8347D_template.h
- * @brief   GDISP Graphic Driver subsystem board SPI interface for the HX8347D display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _GDISP_LLD_BOARD_H
 #define _GDISP_LLD_BOARD_H
 
-/**
- * @brief   Initialise the board for the display.
- *
- * @param[in] g			The GDisplay structure
- *
- * @note	Set the g->board member to whatever is appropriate. For multiple
- * 			displays this might be a pointer to the appropriate register set.
- *
- * @notapi
- */
 static inline void init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   After the initialisation.
- *
- * @param[in] g			The GDisplay structure
- *
- * @notapi
- */
 static inline void post_init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Set or clear the lcd reset pin.
- *
- * @param[in] g			The GDisplay structure
- * @param[in] state		TRUE = lcd in reset, FALSE = normal operation
- *
- * @notapi
- */
 static inline void setpin_reset(GDisplay *g, bool_t state) {
 	(void) g;
 	(void) state;
 }
 
-/**
- * @brief   Set the lcd back-light level.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] percent		0 to 100%
- *
- * @notapi
- */
 static inline void set_backlight(GDisplay *g, uint8_t percent) {
 	(void) g;
 	(void) percent;
 }
 
-/**
- * @brief   Take exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void acquire_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Release exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void release_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Set the bus in 16 bit mode
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void busmode16(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Set the bus in 8 bit mode (the default)
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void busmode8(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Send data to the index register.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] index			The index register to set
- *
- * @notapi
- */
 static inline void write_index(GDisplay *g, uint8_t index) {
 	(void) g;
 	(void) index;
 }
 
-/**
- * @brief   Send 8 bits of data to the lcd.
- * @pre		The bus is in 8 bit mode
- *
- * @param[in] g				The GDisplay structure
- * @param[in] data			The data to send
- *
- * @notapi
- */
 static inline void write_data(GDisplay *g, uint8_t data) {
 	(void) g;
 	(void) data;
 }
 
-/**
- * @brief   Send 16 bits of data to the lcd.
- * @pre		The bus is in 16 bit mode
- *
- * @param[in] g				The GDisplay structure
- * @param[in] data			The data to send
- *
- * @notapi
- */
 static inline void write_ram16(GDisplay *g, uint16_t data) {
 	(void) g;
 	(void) data;
 }
 
 #endif /* _GDISP_LLD_BOARD_H */
-/** @} */
diff --git a/drivers/gdisp/HX8347D/gdisp_lld_HX8347D.c b/drivers/gdisp/HX8347D/gdisp_lld_HX8347D.c
index 1b581d4d..34051c22 100644
--- a/drivers/gdisp/HX8347D/gdisp_lld_HX8347D.c
+++ b/drivers/gdisp/HX8347D/gdisp_lld_HX8347D.c
@@ -5,11 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/HX8347D/gdisp_lld.c
- * @brief   GDISP Graphics Driver subsystem low level driver source for the HX8347D display.
- */
-
 #include "gfx.h"
 
 #if GFX_USE_GDISP
diff --git a/drivers/gdisp/HX8347D/gdisp_lld_config.h b/drivers/gdisp/HX8347D/gdisp_lld_config.h
index ab4c8639..0602ca0e 100644
--- a/drivers/gdisp/HX8347D/gdisp_lld_config.h
+++ b/drivers/gdisp/HX8347D/gdisp_lld_config.h
@@ -5,14 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/HX8347D/gdisp_lld_config.h
- * @brief   GDISP Graphic Driver subsystem low level driver header for the HX8347D display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _GDISP_LLD_CONFIG_H
 #define _GDISP_LLD_CONFIG_H
 
@@ -30,4 +22,3 @@
 #endif	/* GFX_USE_GDISP */
 
 #endif	/* _GDISP_LLD_CONFIG_H */
-/** @} */
diff --git a/drivers/gdisp/ILI9320/board_ILI9320_template.h b/drivers/gdisp/ILI9320/board_ILI9320_template.h
index 6f5ad16d..a4787730 100644
--- a/drivers/gdisp/ILI9320/board_ILI9320_template.h
+++ b/drivers/gdisp/ILI9320/board_ILI9320_template.h
@@ -5,153 +5,56 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/ILI9320/board_ILI9320_template.h
- * @brief   GDISP Graphic Driver subsystem board interface for the ILI9320 display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef GDISP_LLD_BOARD_H
 #define GDISP_LLD_BOARD_H
 
-/**
- * @brief   Initialise the board for the display.
- *
- * @param[in] g			The GDisplay structure
- *
- * @note	Set the g->board member to whatever is appropriate. For multiple
- * 			displays this might be a pointer to the appropriate register set.
- *
- * @notapi
- */
 static inline void init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   After the initialisation.
- *
- * @param[in] g			The GDisplay structure
- *
- * @notapi
- */
 static inline void post_init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Set or clear the lcd reset pin.
- *
- * @param[in] g			The GDisplay structure
- * @param[in] state		TRUE = lcd in reset, FALSE = normal operation
- *
- * @notapi
- */
 static inline void setpin_reset(GDisplay *g, bool_t state) {
 	(void) g;
 	(void) state;
 }
 
-/**
- * @brief   Set the lcd back-light level.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] percent		0 to 100%
- *
- * @notapi
- */
 static inline void set_backlight(GDisplay *g, uint8_t percent) {
 	(void) g;
 	(void) percent;
 }
 
-/**
- * @brief   Take exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void acquire_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Release exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void release_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Send data to the index register.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] index			The index register to set
- *
- * @notapi
- */
 static inline void write_index(GDisplay *g, uint16_t index) {
 	(void) g;
 	(void) index;
 }
 
-/**
- * @brief   Send data to the lcd.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] data			The data to send
- *
- * @notapi
- */
 static inline void write_data(GDisplay *g, uint16_t data) {
 	(void) g;
 	(void) data;
 }
 
-/**
- * @brief   Set the bus in read mode
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void setreadmode(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Set the bus back into write mode
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void setwritemode(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Read data from the lcd.
- * @return	The data from the lcd
- *
- * @param[in] g				The GDisplay structure
- *
- * @note	The chip select may need to be asserted/de-asserted
- * 			around the actual spi read
- *
- * @notapi
- */
 static inline uint16_t read_data(GDisplay *g) {
 	(void) g;
 	return 0;
 }
 
 #endif /* GDISP_LLD_BOARD_H */
-/** @} */
diff --git a/drivers/gdisp/ILI9320/gdisp_lld_ILI9320.c b/drivers/gdisp/ILI9320/gdisp_lld_ILI9320.c
index 8dd5f586..87f29390 100644
--- a/drivers/gdisp/ILI9320/gdisp_lld_ILI9320.c
+++ b/drivers/gdisp/ILI9320/gdisp_lld_ILI9320.c
@@ -5,11 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/ILI9320/gdisp_lld.c
- * @brief   GDISP Graphics Driver subsystem low level driver source for the ILI9320 display.
- */
-
 #include "gfx.h"
 
 #if GFX_USE_GDISP
diff --git a/drivers/gdisp/ILI9320/gdisp_lld_config.h b/drivers/gdisp/ILI9320/gdisp_lld_config.h
index 5709de50..04834079 100644
--- a/drivers/gdisp/ILI9320/gdisp_lld_config.h
+++ b/drivers/gdisp/ILI9320/gdisp_lld_config.h
@@ -5,14 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/ILI9320/gdisp_lld_config.h
- * @brief   GDISP Graphic Driver subsystem low level driver header for the ILI9320 display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef GDISP_LLD_CONFIG_H
 #define GDISP_LLD_CONFIG_H
 
@@ -32,5 +24,3 @@
 #endif	/* GFX_USE_GDISP */
 
 #endif	/* _GDISP_LLD_CONFIG_H */
-/** @} */
-
diff --git a/drivers/gdisp/ILI9325/board_ILI9325_template.h b/drivers/gdisp/ILI9325/board_ILI9325_template.h
index 07c2fdee..a4787730 100644
--- a/drivers/gdisp/ILI9325/board_ILI9325_template.h
+++ b/drivers/gdisp/ILI9325/board_ILI9325_template.h
@@ -5,151 +5,56 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/ILI9325/board_ILI9325_template.h
- * @brief   GDISP Graphic Driver subsystem board interface for the ILI9325 display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef GDISP_LLD_BOARD_H
 #define GDISP_LLD_BOARD_H
 
-/**
- * @brief   Initialise the board for the display.
- *
- * @param[in] g			The GDisplay structure
- *
- * @note	Set the g->board member to whatever is appropriate. For multiple
- * 			displays this might be a pointer to the appropriate register set.
- *
- * @notapi
- */
 static inline void init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   After the initialisation.
- *
- * @param[in] g			The GDisplay structure
- *
- * @notapi
- */
 static inline void post_init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Set or clear the lcd reset pin.
- *
- * @param[in] g			The GDisplay structure
- * @param[in] state		TRUE = lcd in reset, FALSE = normal operation
- *
- * @notapi
- */
 static inline void setpin_reset(GDisplay *g, bool_t state) {
 	(void) g;
 	(void) state;
 }
 
-/**
- * @brief   Set the lcd back-light level.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] percent		0 to 100%
- *
- * @notapi
- */
 static inline void set_backlight(GDisplay *g, uint8_t percent) {
 	(void) g;
 	(void) percent;
 }
 
-/**
- * @brief   Take exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void acquire_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Release exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void release_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Send data to the index register.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] index			The index register to set
- *
- * @notapi
- */
 static inline void write_index(GDisplay *g, uint16_t index) {
 	(void) g;
 	(void) index;
 }
 
-/**
- * @brief   Send data to the lcd.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] data			The data to send
- *
- * @notapi
- */
 static inline void write_data(GDisplay *g, uint16_t data) {
 	(void) g;
 	(void) data;
 }
 
-/**
- * @brief   Set the bus in read mode
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void setreadmode(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Set the bus back into write mode
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void setwritemode(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Read data from the lcd.
- * @return	The data from the lcd
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline uint16_t read_data(GDisplay *g) {
 	(void) g;
 	return 0;
 }
 
 #endif /* GDISP_LLD_BOARD_H */
-/** @} */
-
diff --git a/drivers/gdisp/ILI9325/gdisp_lld_ILI9325.c b/drivers/gdisp/ILI9325/gdisp_lld_ILI9325.c
index e2900514..118e5933 100644
--- a/drivers/gdisp/ILI9325/gdisp_lld_ILI9325.c
+++ b/drivers/gdisp/ILI9325/gdisp_lld_ILI9325.c
@@ -5,11 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/ILI9325/gdisp_lld.c
- * @brief   GDISP Graphics Driver subsystem low level driver source for the ILI9325 display.
- */
-
 #include "gfx.h"
 
 #if GFX_USE_GDISP /*|| defined(__DOXYGEN__)*/
diff --git a/drivers/gdisp/ILI9325/gdisp_lld_config.h b/drivers/gdisp/ILI9325/gdisp_lld_config.h
index c40bd2b7..95bd2937 100644
--- a/drivers/gdisp/ILI9325/gdisp_lld_config.h
+++ b/drivers/gdisp/ILI9325/gdisp_lld_config.h
@@ -5,14 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/ILI9325/gdisp_lld_config.h
- * @brief   GDISP Graphic Driver subsystem low level driver header for the ILI9325 display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef GDISP_LLD_CONFIG_H
 #define GDISP_LLD_CONFIG_H
 
@@ -32,5 +24,3 @@
 #endif	/* GFX_USE_GDISP */
 
 #endif	/* _GDISP_LLD_CONFIG_H */
-/** @} */
-
diff --git a/drivers/gdisp/ILI9341/board_ILI9341_template.h b/drivers/gdisp/ILI9341/board_ILI9341_template.h
index b8f55dc1..c4057b1f 100644
--- a/drivers/gdisp/ILI9341/board_ILI9341_template.h
+++ b/drivers/gdisp/ILI9341/board_ILI9341_template.h
@@ -5,150 +5,56 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/ILI9341/board_ILI9341_template.h
- * @brief   GDISP Graphic Driver subsystem board interface for the ILI9341 display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _GDISP_LLD_BOARD_H
 #define _GDISP_LLD_BOARD_H
 
-/**
- * @brief   Initialise the board for the display.
- *
- * @param[in] g			The GDisplay structure
- *
- * @note	Set the g->board member to whatever is appropriate. For multiple
- * 			displays this might be a pointer to the appropriate register set.
- *
- * @notapi
- */
 static inline void init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   After the initialisation.
- *
- * @param[in] g			The GDisplay structure
- *
- * @notapi
- */
 static inline void post_init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Set or clear the lcd reset pin.
- *
- * @param[in] g			The GDisplay structure
- * @param[in] state		TRUE = lcd in reset, FALSE = normal operation
- * 
- * @notapi
- */
 static inline void setpin_reset(GDisplay *g, bool_t state) {
 	(void) g;
 	(void) state;
 }
 
-/**
- * @brief   Set the lcd back-light level.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] percent		0 to 100%
- * 
- * @notapi
- */
 static inline void set_backlight(GDisplay *g, uint8_t percent) {
 	(void) g;
 	(void) percent;
 }
 
-/**
- * @brief   Take exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void acquire_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Release exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void release_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Send data to the index register.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] index			The index register to set
- *
- * @notapi
- */
 static inline void write_index(GDisplay *g, uint16_t index) {
 	(void) g;
 	(void) index;
 }
 
-/**
- * @brief   Send data to the lcd.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] data			The data to send
- * 
- * @notapi
- */
 static inline void write_data(GDisplay *g, uint16_t data) {
 	(void) g;
 	(void) data;
 }
 
-/**
- * @brief   Set the bus in read mode
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void setreadmode(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Set the bus back into write mode
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void setwritemode(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Read data from the lcd.
- * @return	The data from the lcd
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline uint16_t read_data(GDisplay *g) {
 	(void) g;
 	return 0;
 }
 
 #endif /* _GDISP_LLD_BOARD_H */
-/** @} */
diff --git a/drivers/gdisp/ILI9341/gdisp_lld_ILI9341.c b/drivers/gdisp/ILI9341/gdisp_lld_ILI9341.c
index d6679714..f27605a7 100644
--- a/drivers/gdisp/ILI9341/gdisp_lld_ILI9341.c
+++ b/drivers/gdisp/ILI9341/gdisp_lld_ILI9341.c
@@ -5,12 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/ILI9341/gdisp_lld.c
- * @brief   GDISP Graphics Driver subsystem low level driver source for
- * 			the ILI9341 and compatible HVGA display
- */
-
 #include "gfx.h"
 
 #if GFX_USE_GDISP
diff --git a/drivers/gdisp/ILI9341/gdisp_lld_config.h b/drivers/gdisp/ILI9341/gdisp_lld_config.h
index 668a06c9..d3625d70 100644
--- a/drivers/gdisp/ILI9341/gdisp_lld_config.h
+++ b/drivers/gdisp/ILI9341/gdisp_lld_config.h
@@ -5,15 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/ILI9481/gdisp_lld_config.h
- * @brief   GDISP Graphics Driver subsystem low level driver source for
- * 			the ILI9481 and compatible HVGA display
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _GDISP_LLD_CONFIG_H
 #define _GDISP_LLD_CONFIG_H
 
@@ -32,4 +23,3 @@
 #endif	/* GFX_USE_GDISP */
 
 #endif	/* _GDISP_LLD_CONFIG_H */
-/** @} */
diff --git a/drivers/gdisp/ILI9481/board_ILI9481_template.h b/drivers/gdisp/ILI9481/board_ILI9481_template.h
index 7824c936..c4057b1f 100644
--- a/drivers/gdisp/ILI9481/board_ILI9481_template.h
+++ b/drivers/gdisp/ILI9481/board_ILI9481_template.h
@@ -5,151 +5,56 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/ILI9481/board_ILI9481_template.h
- * @brief   GDISP Graphics Driver subsystem low level driver source for
- * 			the ILI9481 and compatible HVGA display
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _GDISP_LLD_BOARD_H
 #define _GDISP_LLD_BOARD_H
 
-/**
- * @brief   Initialise the board for the display.
- *
- * @param[in] g			The GDisplay structure
- *
- * @note	Set the g->board member to whatever is appropriate. For multiple
- * 			displays this might be a pointer to the appropriate register set.
- *
- * @notapi
- */
 static inline void init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   After the initialisation.
- *
- * @param[in] g			The GDisplay structure
- *
- * @notapi
- */
 static inline void post_init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Set or clear the lcd reset pin.
- *
- * @param[in] g			The GDisplay structure
- * @param[in] state		TRUE = lcd in reset, FALSE = normal operation
- * 
- * @notapi
- */
 static inline void setpin_reset(GDisplay *g, bool_t state) {
 	(void) g;
 	(void) state;
 }
 
-/**
- * @brief   Set the lcd back-light level.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] percent		0 to 100%
- * 
- * @notapi
- */
 static inline void set_backlight(GDisplay *g, uint8_t percent) {
 	(void) g;
 	(void) percent;
 }
 
-/**
- * @brief   Take exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void acquire_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Release exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void release_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Send data to the index register.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] index			The index register to set
- *
- * @notapi
- */
 static inline void write_index(GDisplay *g, uint16_t index) {
 	(void) g;
 	(void) index;
 }
 
-/**
- * @brief   Send data to the lcd.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] data			The data to send
- * 
- * @notapi
- */
 static inline void write_data(GDisplay *g, uint16_t data) {
 	(void) g;
 	(void) data;
 }
 
-/**
- * @brief   Set the bus in read mode
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void setreadmode(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Set the bus back into write mode
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void setwritemode(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Read data from the lcd.
- * @return	The data from the lcd
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline uint16_t read_data(GDisplay *g) {
 	(void) g;
 	return 0;
 }
 
 #endif /* _GDISP_LLD_BOARD_H */
-/** @} */
diff --git a/drivers/gdisp/ILI9481/gdisp_lld_ILI9481.c b/drivers/gdisp/ILI9481/gdisp_lld_ILI9481.c
index 748ee469..f0bc7355 100644
--- a/drivers/gdisp/ILI9481/gdisp_lld_ILI9481.c
+++ b/drivers/gdisp/ILI9481/gdisp_lld_ILI9481.c
@@ -5,12 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/ILI9481/gdisp_lld.c
- * @brief   GDISP Graphics Driver subsystem low level driver source for
- * 			the ILI9481 and compatible HVGA display
- */
-
 #include "gfx.h"
 
 #if GFX_USE_GDISP
@@ -325,4 +319,3 @@ LLDSPEC bool_t gdisp_lld_init(GDisplay *g) {
 #endif
 
 #endif /* GFX_USE_GDISP */
-/** @} */
diff --git a/drivers/gdisp/ILI9481/gdisp_lld_config.h b/drivers/gdisp/ILI9481/gdisp_lld_config.h
index 3f3a4834..ba48718a 100644
--- a/drivers/gdisp/ILI9481/gdisp_lld_config.h
+++ b/drivers/gdisp/ILI9481/gdisp_lld_config.h
@@ -5,15 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/ILI9481/gdisp_lld_config.h
- * @brief   GDISP Graphics Driver subsystem low level driver source for
- * 			the ILI9481 and compatible HVGA display
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _GDISP_LLD_CONFIG_H
 #define _GDISP_LLD_CONFIG_H
 
@@ -32,4 +23,3 @@
 #endif	/* GFX_USE_GDISP */
 
 #endif	/* _GDISP_LLD_CONFIG_H */
-/** @} */
diff --git a/drivers/gdisp/Nokia6610GE12/board_Nokia6610GE12_template.h b/drivers/gdisp/Nokia6610GE12/board_Nokia6610GE12_template.h
index 160c9278..0545fcd5 100644
--- a/drivers/gdisp/Nokia6610GE12/board_Nokia6610GE12_template.h
+++ b/drivers/gdisp/Nokia6610GE12/board_Nokia6610GE12_template.h
@@ -5,14 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/Nokia6610GE12/board_Nokia6610GE12_template.h
- * @brief   GDISP Graphic Driver subsystem board interface for the Nokia6610 GE12 display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _GDISP_LLD_BOARD_H
 #define _GDISP_LLD_BOARD_H
 
@@ -28,104 +20,40 @@
 //#define GDISP_INITIAL_CONTRAST			50		// The initial contrast percentage
 //#define GDISP_INITIAL_BACKLIGHT			100		// The initial backlight percentage
 
-/**
- * @brief   Initialise the board for the display.
- *
- * @param[in] g			The GDisplay structure
- *
- * @note	Set the g->board member to whatever is appropriate. For multiple
- * 			displays this might be a pointer to the appropriate register set.
- *
- * @notapi
- */
 static inline void init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   After the initialisation.
- *
- * @param[in] g			The GDisplay structure
- *
- * @notapi
- */
 static inline void post_init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Set or clear the lcd reset pin.
- *
- * @param[in] g			The GDisplay structure
- * @param[in] state		TRUE = lcd in reset, FALSE = normal operation
- * 
- * @notapi
- */
 static inline void setpin_reset(GDisplay *g, bool_t state) {
 	(void) g;
 	(void) state;
 }
 
-/**
- * @brief   Set the lcd back-light level.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] percent		0 to 100%
- * 
- * @notapi
- */
 static inline void set_backlight(GDisplay *g, uint8_t percent) {
 	(void) g;
 	(void) percent;
 }
 
-/**
- * @brief   Take exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void acquire_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Release exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void release_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Send data to the index register.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] index			The index register to set
- *
- * @notapi
- */
 static inline void write_index(GDisplay *g, uint16_t index) {
 	(void) g;
 	(void) index;
 }
 
-/**
- * @brief   Send data to the lcd.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] data			The data to send
- * 
- * @notapi
- */
 static inline void write_data(GDisplay *g, uint16_t data) {
 	(void) g;
 	(void) data;
 }
 
 #endif /* _GDISP_LLD_BOARD_H */
-/** @} */
diff --git a/drivers/gdisp/Nokia6610GE12/gdisp_lld_Nokia6610GE12.c b/drivers/gdisp/Nokia6610GE12/gdisp_lld_Nokia6610GE12.c
index f0603ca8..c6aa2a7c 100644
--- a/drivers/gdisp/Nokia6610GE12/gdisp_lld_Nokia6610GE12.c
+++ b/drivers/gdisp/Nokia6610GE12/gdisp_lld_Nokia6610GE12.c
@@ -5,11 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/Nokia6610GE12/gdisp_lld.c
- * @brief   GDISP Graphics Driver subsystem low level driver source for the Nokia6610 GE12 display.
- */
-
 #include "gfx.h"
 
 #if GFX_USE_GDISP
diff --git a/drivers/gdisp/Nokia6610GE12/gdisp_lld_config.h b/drivers/gdisp/Nokia6610GE12/gdisp_lld_config.h
index 19a455d8..3f29f611 100644
--- a/drivers/gdisp/Nokia6610GE12/gdisp_lld_config.h
+++ b/drivers/gdisp/Nokia6610GE12/gdisp_lld_config.h
@@ -5,14 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/Nokia6610GE12/gdisp_lld_config.h
- * @brief   GDISP Graphic Driver subsystem low level driver header for the Nokia6610 GE12 display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _GDISP_LLD_CONFIG_H
 #define _GDISP_LLD_CONFIG_H
 
@@ -30,4 +22,3 @@
 #endif	/* GFX_USE_GDISP */
 
 #endif	/* _GDISP_LLD_CONFIG_H */
-/** @} */
diff --git a/drivers/gdisp/Nokia6610GE8/board_Nokia6610GE8_template.h b/drivers/gdisp/Nokia6610GE8/board_Nokia6610GE8_template.h
index 28fc9f70..0545fcd5 100644
--- a/drivers/gdisp/Nokia6610GE8/board_Nokia6610GE8_template.h
+++ b/drivers/gdisp/Nokia6610GE8/board_Nokia6610GE8_template.h
@@ -5,14 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/Nokia6610GE8/board_Nokia6610GE8_template.h
- * @brief   GDISP Graphic Driver subsystem board interface for the Nokia6610 GE12 display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _GDISP_LLD_BOARD_H
 #define _GDISP_LLD_BOARD_H
 
@@ -28,104 +20,40 @@
 //#define GDISP_INITIAL_CONTRAST			50		// The initial contrast percentage
 //#define GDISP_INITIAL_BACKLIGHT			100		// The initial backlight percentage
 
-/**
- * @brief   Initialise the board for the display.
- *
- * @param[in] g			The GDisplay structure
- *
- * @note	Set the g->board member to whatever is appropriate. For multiple
- * 			displays this might be a pointer to the appropriate register set.
- *
- * @notapi
- */
 static inline void init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   After the initialisation.
- *
- * @param[in] g			The GDisplay structure
- *
- * @notapi
- */
 static inline void post_init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Set or clear the lcd reset pin.
- *
- * @param[in] g			The GDisplay structure
- * @param[in] state		TRUE = lcd in reset, FALSE = normal operation
- * 
- * @notapi
- */
 static inline void setpin_reset(GDisplay *g, bool_t state) {
 	(void) g;
 	(void) state;
 }
 
-/**
- * @brief   Set the lcd back-light level.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] percent		0 to 100%
- * 
- * @notapi
- */
 static inline void set_backlight(GDisplay *g, uint8_t percent) {
 	(void) g;
 	(void) percent;
 }
 
-/**
- * @brief   Take exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void acquire_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Release exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void release_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Send data to the index register.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] index			The index register to set
- *
- * @notapi
- */
 static inline void write_index(GDisplay *g, uint16_t index) {
 	(void) g;
 	(void) index;
 }
 
-/**
- * @brief   Send data to the lcd.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] data			The data to send
- * 
- * @notapi
- */
 static inline void write_data(GDisplay *g, uint16_t data) {
 	(void) g;
 	(void) data;
 }
 
 #endif /* _GDISP_LLD_BOARD_H */
-/** @} */
diff --git a/drivers/gdisp/Nokia6610GE8/gdisp_lld_Nokia6610GE8.c b/drivers/gdisp/Nokia6610GE8/gdisp_lld_Nokia6610GE8.c
index c02b1ec8..cd265e00 100644
--- a/drivers/gdisp/Nokia6610GE8/gdisp_lld_Nokia6610GE8.c
+++ b/drivers/gdisp/Nokia6610GE8/gdisp_lld_Nokia6610GE8.c
@@ -5,19 +5,11 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/Nokia6610GE8/gdisp_lld.c
- * @brief   GDISP Graphics Driver subsystem low level driver source for the Nokia6610 GE8 display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #include "gfx.h"
 
 #if GFX_USE_GDISP
 
-/**
+/*
  * This is for the EPSON (GE8) controller driving a Nokia6610 color LCD display.
  * Note that there is also a PHILIPS (GE12) controller for the same display that this code
  * does not support.
@@ -599,4 +591,3 @@ LLDSPEC bool_t gdisp_lld_init(GDisplay *g) {
 #endif
 
 #endif /* GFX_USE_GDISP */
-/** @} */
diff --git a/drivers/gdisp/Nokia6610GE8/gdisp_lld_config.h b/drivers/gdisp/Nokia6610GE8/gdisp_lld_config.h
index 1476dbcf..b90314d6 100644
--- a/drivers/gdisp/Nokia6610GE8/gdisp_lld_config.h
+++ b/drivers/gdisp/Nokia6610GE8/gdisp_lld_config.h
@@ -5,14 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/Nokia6610GE8/gdisp_lld_config.h
- * @brief   GDISP Graphic Driver subsystem low level driver header for the Nokia6610 GE8 display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _GDISP_LLD_CONFIG_H
 #define _GDISP_LLD_CONFIG_H
 
@@ -46,4 +38,3 @@
 #endif	/* GFX_USE_GDISP */
 
 #endif	/* _GDISP_LLD_CONFIG_H */
-/** @} */
diff --git a/drivers/gdisp/RA8875/board_RA8875_template.h b/drivers/gdisp/RA8875/board_RA8875_template.h
index fce05129..292484f5 100644
--- a/drivers/gdisp/RA8875/board_RA8875_template.h
+++ b/drivers/gdisp/RA8875/board_RA8875_template.h
@@ -5,139 +5,50 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/SSD1963/board_RA8875_template.h
- * @brief   GDISP Graphic Driver subsystem board interface for the RA8875 display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _GDISP_LLD_BOARD_H
 #define _GDISP_LLD_BOARD_H
 
-/**
- * @brief   Initialise the board for the display.
- *
- * @param[in] g			The GDisplay structure
- *
- * @note	Set the g->board member to whatever is appropriate. For multiple
- * 			displays this might be a pointer to the appropriate register set.
- *
- * @notapi
- */
 static inline void init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   After the initialisation.
- *
- * @param[in] g			The GDisplay structure
- *
- * @notapi
- */
 static inline void post_init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Set or clear the lcd reset pin.
- *
- * @param[in] g			The GDisplay structure
- * @param[in] state		TRUE = lcd in reset, FALSE = normal operation
- *
- * @notapi
- */
 static inline void setpin_reset(GDisplay *g, bool_t state) {
 	(void) g;
 	(void) state;
 }
 
-/**
- * @brief   Take exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void acquire_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Release exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void release_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Send data to the index register.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] index			The index register to set
- *
- * @notapi
- */
 static inline void write_index(GDisplay *g, uint16_t index) {
 	(void) g;
 	(void) index;
 }
 
-/**
- * @brief   Send data to the lcd.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] data			The data to send
- *
- * @notapi
- */
 static inline void write_data(GDisplay *g, uint16_t data) {
 	(void) g;
 	(void) data;
 }
 
-/**
- * @brief   Set the bus in read mode
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void setreadmode(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Set the bus back into write mode
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void setwritemode(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Read data from the lcd.
- * @return	The data from the lcd
- *
- * @param[in] g				The GDisplay structure
- *
- * @note	The chip select may need to be asserted/de-asserted
- * 			around the actual spi read
- *
- * @notapi
- */
 static inline uint16_t read_data(GDisplay *g) {
 	(void) g;
 }
 
 #endif /* _GDISP_LLD_BOARD_H */
-/** @} */
diff --git a/drivers/gdisp/RA8875/gdisp_lld_RA8875.c b/drivers/gdisp/RA8875/gdisp_lld_RA8875.c
index a4d1d0e1..6b58868b 100644
--- a/drivers/gdisp/RA8875/gdisp_lld_RA8875.c
+++ b/drivers/gdisp/RA8875/gdisp_lld_RA8875.c
@@ -5,11 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/RA8875/gdisp_lld.c
- * @brief   GDISP Graphics Driver subsystem low level driver source.
- */
-
 #include "gfx.h"
 
 #if GFX_USE_GDISP /*|| defined(__DOXYGEN__)*/
diff --git a/drivers/gdisp/RA8875/gdisp_lld_config.h b/drivers/gdisp/RA8875/gdisp_lld_config.h
index 55a07839..03a58afa 100644
--- a/drivers/gdisp/RA8875/gdisp_lld_config.h
+++ b/drivers/gdisp/RA8875/gdisp_lld_config.h
@@ -5,14 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/SSD1963/gdisp_lld_config.h
- * @brief   GDISP Graphic Driver subsystem low level driver header.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _GDISP_LLD_CONFIG_H
 #define _GDISP_LLD_CONFIG_H
 
@@ -32,5 +24,3 @@
 #endif	/* GFX_USE_GDISP */
 
 #endif	/* _GDISP_LLD_CONFIG_H */
-/** @} */
-
diff --git a/drivers/gdisp/S6D1121/board_S6D1121_template.h b/drivers/gdisp/S6D1121/board_S6D1121_template.h
index 04742f56..c4057b1f 100644
--- a/drivers/gdisp/S6D1121/board_S6D1121_template.h
+++ b/drivers/gdisp/S6D1121/board_S6D1121_template.h
@@ -5,150 +5,56 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/S6D1121/board_S6D1121_template.h
- * @brief   GDISP Graphic Driver subsystem board interface for the S6D1121 display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _GDISP_LLD_BOARD_H
 #define _GDISP_LLD_BOARD_H
 
-/**
- * @brief   Initialise the board for the display.
- *
- * @param[in] g			The GDisplay structure
- *
- * @note	Set the g->board member to whatever is appropriate. For multiple
- * 			displays this might be a pointer to the appropriate register set.
- *
- * @notapi
- */
 static inline void init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   After the initialisation.
- *
- * @param[in] g			The GDisplay structure
- *
- * @notapi
- */
 static inline void post_init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Set or clear the lcd reset pin.
- *
- * @param[in] g			The GDisplay structure
- * @param[in] state		TRUE = lcd in reset, FALSE = normal operation
- * 
- * @notapi
- */
 static inline void setpin_reset(GDisplay *g, bool_t state) {
 	(void) g;
 	(void) state;
 }
 
-/**
- * @brief   Set the lcd back-light level.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] percent		0 to 100%
- * 
- * @notapi
- */
 static inline void set_backlight(GDisplay *g, uint8_t percent) {
 	(void) g;
 	(void) percent;
 }
 
-/**
- * @brief   Take exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void acquire_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Release exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void release_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Send data to the index register.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] index			The index register to set
- *
- * @notapi
- */
 static inline void write_index(GDisplay *g, uint16_t index) {
 	(void) g;
 	(void) index;
 }
 
-/**
- * @brief   Send data to the lcd.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] data			The data to send
- * 
- * @notapi
- */
 static inline void write_data(GDisplay *g, uint16_t data) {
 	(void) g;
 	(void) data;
 }
 
-/**
- * @brief   Set the bus in read mode
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void setreadmode(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Set the bus back into write mode
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void setwritemode(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Read data from the lcd.
- * @return	The data from the lcd
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline uint16_t read_data(GDisplay *g) {
 	(void) g;
 	return 0;
 }
 
 #endif /* _GDISP_LLD_BOARD_H */
-/** @} */
diff --git a/drivers/gdisp/S6D1121/gdisp_lld_S6D1121.c b/drivers/gdisp/S6D1121/gdisp_lld_S6D1121.c
index 389b27fe..e3f1dd0c 100644
--- a/drivers/gdisp/S6D1121/gdisp_lld_S6D1121.c
+++ b/drivers/gdisp/S6D1121/gdisp_lld_S6D1121.c
@@ -5,14 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/S6D1121/gdisp_lld.c
- * @brief   GDISP Graphics Driver subsystem low level driver source for the S6d1121 display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #include "gfx.h"
 
 #if GFX_USE_GDISP
@@ -336,5 +328,3 @@ LLDSPEC bool_t gdisp_lld_init(GDisplay *g) {
 #endif
 
 #endif /* GFX_USE_GDISP */
-/** @} */
-
diff --git a/drivers/gdisp/S6D1121/gdisp_lld_config.h b/drivers/gdisp/S6D1121/gdisp_lld_config.h
index 79e859bc..03a58afa 100644
--- a/drivers/gdisp/S6D1121/gdisp_lld_config.h
+++ b/drivers/gdisp/S6D1121/gdisp_lld_config.h
@@ -5,14 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/S6D1121/gdisp_lld_config.h
- * @brief   GDISP Graphic Driver subsystem low level driver header for the S6D1121 display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _GDISP_LLD_CONFIG_H
 #define _GDISP_LLD_CONFIG_H
 
@@ -32,5 +24,3 @@
 #endif	/* GFX_USE_GDISP */
 
 #endif	/* _GDISP_LLD_CONFIG_H */
-/** @} */
-
diff --git a/drivers/gdisp/SSD1289/board_SSD1289_template.h b/drivers/gdisp/SSD1289/board_SSD1289_template.h
index 7c9cd757..b86d9579 100644
--- a/drivers/gdisp/SSD1289/board_SSD1289_template.h
+++ b/drivers/gdisp/SSD1289/board_SSD1289_template.h
@@ -5,181 +5,67 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/SSD1289/board_SSD1289_template.h
- * @brief   GDISP Graphic Driver subsystem board interface for the SSD1289 display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _GDISP_LLD_BOARD_H
 #define _GDISP_LLD_BOARD_H
 
-/**
- * @brief   Initialise the board for the display.
- *
- * @param[in] g			The GDisplay structure
- *
- * @note	Set the g->board member to whatever is appropriate. For multiple
- * 			displays this might be a pointer to the appropriate register set.
- *
- * @notapi
- */
 static inline void init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   After the initialisation.
- *
- * @param[in] g			The GDisplay structure
- *
- * @notapi
- */
 static inline void post_init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Set or clear the lcd reset pin.
- *
- * @param[in] g			The GDisplay structure
- * @param[in] state		TRUE = lcd in reset, FALSE = normal operation
- * 
- * @notapi
- */
 static inline void setpin_reset(GDisplay *g, bool_t state) {
 	(void) g;
 	(void) state;
 }
 
-/**
- * @brief   Set the lcd back-light level.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] percent		0 to 100%
- * 
- * @notapi
- */
 static inline void set_backlight(GDisplay *g, uint8_t percent) {
 	(void) g;
 	(void) percent;
 }
 
-/**
- * @brief   Take exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void acquire_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Release exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void release_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Send data to the index register.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] index			The index register to set
- *
- * @notapi
- */
 static inline void write_index(GDisplay *g, uint16_t index) {
 	(void) g;
 	(void) index;
 }
 
-/**
- * @brief   Send data to the lcd.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] data			The data to send
- * 
- * @notapi
- */
 static inline void write_data(GDisplay *g, uint16_t data) {
 	(void) g;
 	(void) data;
 }
 
-/**
- * @brief   Set the bus in read mode
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void setreadmode(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Set the bus back into write mode
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void setwritemode(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Read data from the lcd.
- * @return	The data from the lcd
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline uint16_t read_data(GDisplay *g) {
 	(void) g;
 	return 0;
 }
 
-/**
- * The below section you can replace with #error if your interface doesn't support DMA
- */
 #if defined(GDISP_USE_DMA) || defined(__DOXYGEN__)
 	//#error "GDISP - SSD1289: This interface does not support DMA"
 
-	/**
-	 * @brief	Transfer data using DMA but don't increment the source address
-	 *
-	 * @param[in] g				The GDisplay structure
-	 * @param[in] buffer		The source buffer location
-	 * @param[in] area			The number of pixels to transfer
-	 *
-	 * @notapi
-	 */
 	static inline void dma_with_noinc(GDisplay *g, color_t *buffer, int area) {
 		(void) g;
 		(void) buffer;
 		(void) area;
 	}
 
-	/**
-	 * @brief	Transfer data using DMA incrementing the source address
-	 *
-	 * @param[in] g				The GDisplay structure
-	 * @param[in] buffer		The source buffer location
-	 * @param[in] area			The number of pixels to transfer
-	 *
-	 * @notapi
-	 */
 	static inline void dma_with_inc(GDisplay *g, color_t *buffer, int area) {
 		(void) g;
 		(void) buffer;
@@ -188,4 +74,3 @@ static inline uint16_t read_data(GDisplay *g) {
 #endif
 
 #endif /* _GDISP_LLD_BOARD_H */
-/** @} */
diff --git a/drivers/gdisp/SSD1289/gdisp_lld_SSD1289.c b/drivers/gdisp/SSD1289/gdisp_lld_SSD1289.c
index 75338745..d49e5268 100644
--- a/drivers/gdisp/SSD1289/gdisp_lld_SSD1289.c
+++ b/drivers/gdisp/SSD1289/gdisp_lld_SSD1289.c
@@ -5,11 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/SSD1289/gdisp_lld.c
- * @brief   GDISP Graphics Driver subsystem low level driver source for the SSD1289 display.
- */
-
 #include "gfx.h"
 
 #if GFX_USE_GDISP
diff --git a/drivers/gdisp/SSD1289/gdisp_lld_config.h b/drivers/gdisp/SSD1289/gdisp_lld_config.h
index a9166553..8d327bf9 100644
--- a/drivers/gdisp/SSD1289/gdisp_lld_config.h
+++ b/drivers/gdisp/SSD1289/gdisp_lld_config.h
@@ -5,14 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/SSD1289/gdisp_lld_config.h
- * @brief   GDISP Graphic Driver subsystem low level driver header for the SSD1289 display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _GDISP_LLD_CONFIG_H
 #define _GDISP_LLD_CONFIG_H
 
@@ -40,4 +32,3 @@
 #endif	/* GFX_USE_GDISP */
 
 #endif	/* _GDISP_LLD_CONFIG_H */
-/** @} */
diff --git a/drivers/gdisp/SSD1306/SSD1306.h b/drivers/gdisp/SSD1306/SSD1306.h
index 47ca39e4..d1c59fe4 100644
--- a/drivers/gdisp/SSD1306/SSD1306.h
+++ b/drivers/gdisp/SSD1306/SSD1306.h
@@ -53,5 +53,3 @@
 #define SSD1306_SCROLL_VERTICAL_AND_HORIZONTAL_LEFT		0x2A
 
 #endif /* _SSD1306_H */
-/** @} */
-
diff --git a/drivers/gdisp/SSD1306/board_SSD1306_template.h b/drivers/gdisp/SSD1306/board_SSD1306_template.h
index 5b4bd05c..0bd3f803 100644
--- a/drivers/gdisp/SSD1306/board_SSD1306_template.h
+++ b/drivers/gdisp/SSD1306/board_SSD1306_template.h
@@ -5,106 +5,37 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/SSD1306/board_SSD1306_template.h
- * @brief   GDISP Graphic Driver subsystem board interface for the SSD1306 display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _GDISP_LLD_BOARD_H
 #define _GDISP_LLD_BOARD_H
 
-/**
- * @brief   Optional: A byte to prefix on each display page line.
- * @note	If not defined then no byte is prefixed on each page line.
- *
- * @notapi
- */
 //#define SSD1306_PAGE_PREFIX		0x40
 
-/**
- * @brief   Initialise the board for the display.
- *
- * @param[in] g			The GDisplay structure
- *
- * @note	Set the g->board member to whatever is appropriate. For multiple
- * 			displays this might be a pointer to the appropriate register set.
- *
- * @notapi
- */
 static inline void init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   After the initialisation.
- *
- * @param[in] g			The GDisplay structure
- *
- * @notapi
- */
 static inline void post_init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Set or clear the lcd reset pin.
- *
- * @param[in] g			The GDisplay structure
- * @param[in] state		TRUE = lcd in reset, FALSE = normal operation
- *
- * @notapi
- */
 static inline void setpin_reset(GDisplay *g, bool_t state) {
 	(void) g;
 	(void) state;
 }
 
-/**
- * @brief   Take exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void acquire_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Release exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void release_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Send a command to the controller.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] cmd			The command to send *
- *
- * @notapi
- */
 static inline void write_cmd(GDisplay *g, uint8_t cmd) {
 	(void) g;
 	(void) cmd;
 }
 
-/**
- * @brief   Send data to the lcd.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] data			The data to send
- *
- * @notapi
- */
 static inline void write_data(GDisplay *g, uint8_t* data, uint16_t length) {
 	(void) g;
 	(void) data;
@@ -112,5 +43,3 @@ static inline void write_data(GDisplay *g, uint8_t* data, uint16_t length) {
 }
 
 #endif /* _GDISP_LLD_BOARD_H */
-/** @} */
-
diff --git a/drivers/gdisp/SSD1306/gdisp_lld_SSD1306.c b/drivers/gdisp/SSD1306/gdisp_lld_SSD1306.c
index 5dd4c2ab..abea8365 100644
--- a/drivers/gdisp/SSD1306/gdisp_lld_SSD1306.c
+++ b/drivers/gdisp/SSD1306/gdisp_lld_SSD1306.c
@@ -5,11 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/SSD1306/gdisp_lld.c
- * @brief   GDISP Graphics Driver subsystem low level driver source for the SSD1306 display.
- */
-
 #include "gfx.h"
 
 #if GFX_USE_GDISP
@@ -279,4 +274,3 @@ LLDSPEC bool_t gdisp_lld_init(GDisplay *g) {
 #endif // GDISP_NEED_CONTROL
 
 #endif // GFX_USE_GDISP
-
diff --git a/drivers/gdisp/SSD1306/gdisp_lld_config.h b/drivers/gdisp/SSD1306/gdisp_lld_config.h
index 627de17b..2b805e86 100644
--- a/drivers/gdisp/SSD1306/gdisp_lld_config.h
+++ b/drivers/gdisp/SSD1306/gdisp_lld_config.h
@@ -28,5 +28,3 @@
 #endif	/* GFX_USE_GDISP */
 
 #endif	/* _GDISP_LLD_CONFIG_H */
-/** @} */
-
diff --git a/drivers/gdisp/SSD1963/board_SSD1963_template.h b/drivers/gdisp/SSD1963/board_SSD1963_template.h
index 5e1999b8..f9f248e7 100644
--- a/drivers/gdisp/SSD1963/board_SSD1963_template.h
+++ b/drivers/gdisp/SSD1963/board_SSD1963_template.h
@@ -5,47 +5,9 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/SSD1963/board_SSD1963_template.h
- * @brief   GDISP Graphic Driver subsystem board interface for the SSD1963 display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _GDISP_LLD_BOARD_H
 #define _GDISP_LLD_BOARD_H
 
-/**
- * @brief	LCD panel specs
- *
- * @note	The timings need to follow the datasheet for your particular TFT/LCD screen
- * 			(the actual screen, not the controller).
- * @note	Datasheets normally use a specific set of timings and acronyms, their value refers
- * 			to the number of pixel clocks. Non-display periods refer to pulses/timings that occur
- * 			before or after the timings that actually put pixels on the screen. Display periods
- * 			refer to pulses/timings that directly put pixels on the screen.
- * @note	HDP: Horizontal Display Period, normally the width - 1<br>
- * 			HT: Horizontal Total period (display + non-display)<br>
- * 			HPS: non-display period between the start of the horizontal sync (LLINE) signal
- * 				and the first display data<br>
- * 			LPS: horizontal sync pulse (LLINE) start location in pixel clocks<br>
- * 			HPW: Horizontal sync Pulse Width<br>
- * 			VDP: Vertical Display period, normally height - 1<br>
- * 			VT: Vertical Total period (display + non-display)<br>
- * 			VPS: non-display period in lines between the start of the frame and the first display
- * 				data in number of lines<br>
- * 			FPS: vertical sync pulse (LFRAME) start location in lines.<br>
- * 			VPW: Vertical sync Pulse Width
- * @note	Here's how to convert them:<br>
- * 				SCREEN_HSYNC_FRONT_PORCH = ( HT - HPS ) - GDISP_SCREEN_WIDTH<br>
- * 				SCREEN_HSYNC_PULSE = HPW<br>
- * 				SCREEN_HSYNC_BACK_PORCH = HPS - HPW<br>
- * 				SCREEN_VSYNC_FRONT_PORCH = ( VT - VPS ) - GDISP_SCREEN_HEIGHT<br>
- * 				SCREEN_VSYNC_PULSE = VPW<br>
- * 				SCREEN_VSYNC_BACK_PORCH = VPS - LPS<br>
- */
-
 static const LCD_Parameters	DisplayTimings[] = {
 	// You need one of these array elements per display
 	{
@@ -58,91 +20,35 @@ static const LCD_Parameters	DisplayTimings[] = {
 	},
 };
 
-/**
- * @brief   Initialise the board for the display.
- *
- * @param[in] g			The GDisplay structure
- *
- * @note	Set the g->board member to whatever is appropriate. For multiple
- * 			displays this might be a pointer to the appropriate register set.
- *
- * @notapi
- */
 static inline void init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   After the initialisation.
- *
- * @param[in] g			The GDisplay structure
- *
- * @notapi
- */
 static inline void post_init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Set or clear the lcd reset pin.
- *
- * @param[in] g			The GDisplay structure
- * @param[in] state		TRUE = lcd in reset, FALSE = normal operation
- * 
- * @notapi
- */
 static inline void setpin_reset(GDisplay *g, bool_t state) {
 	(void) g;
 	(void) state;
 }
 
-/**
- * @brief   Take exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void acquire_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Release exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void release_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Send data to the index register.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] index			The index register to set
- *
- * @notapi
- */
 static inline void write_index(GDisplay *g, uint16_t index) {
 	(void) g;
 	(void) index;
 }
 
-/**
- * @brief   Send data to the lcd.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] data			The data to send
- * 
- * @notapi
- */
 static inline void write_data(GDisplay *g, uint16_t data) {
 	(void) g;
 	(void) data;
 }
 
 #endif /* _GDISP_LLD_BOARD_H */
-/** @} */
diff --git a/drivers/gdisp/SSD1963/gdisp_lld_SSD1963.c b/drivers/gdisp/SSD1963/gdisp_lld_SSD1963.c
index 1e69ef70..74fa3e3e 100644
--- a/drivers/gdisp/SSD1963/gdisp_lld_SSD1963.c
+++ b/drivers/gdisp/SSD1963/gdisp_lld_SSD1963.c
@@ -5,11 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/SSD1963/gdisp_lld.c
- * @brief   GDISP Graphics Driver subsystem low level driver source.
- */
-
 #include "gfx.h"
 
 #if GFX_USE_GDISP
@@ -282,4 +277,3 @@ LLDSPEC bool_t gdisp_lld_init(GDisplay *g) {
 #endif
 
 #endif /* GFX_USE_GDISP */
-
diff --git a/drivers/gdisp/SSD1963/gdisp_lld_config.h b/drivers/gdisp/SSD1963/gdisp_lld_config.h
index 8ad94738..f1b61702 100644
--- a/drivers/gdisp/SSD1963/gdisp_lld_config.h
+++ b/drivers/gdisp/SSD1963/gdisp_lld_config.h
@@ -5,14 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/SSD1963/gdisp_lld_config.h
- * @brief   GDISP Graphic Driver subsystem low level driver header.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _GDISP_LLD_CONFIG_H
 #define _GDISP_LLD_CONFIG_H
 
@@ -30,5 +22,3 @@
 #endif	/* GFX_USE_GDISP */
 
 #endif	/* _GDISP_LLD_CONFIG_H */
-/** @} */
-
diff --git a/drivers/gdisp/SSD1963/ssd1963.h b/drivers/gdisp/SSD1963/ssd1963.h
index be328775..2d1ac55f 100644
--- a/drivers/gdisp/SSD1963/ssd1963.h
+++ b/drivers/gdisp/SSD1963/ssd1963.h
@@ -9,7 +9,6 @@
 #define SSD1963_H
 
 /* SSD1963 commands */
-
 #define SSD1963_NOP						0x0000
 #define SSD1963_SOFT_RESET  			0x0001
 #define SSD1963_GET_POWER_MODE 			0x000A
@@ -95,4 +94,3 @@
 #define SSD1963_GET_PIXEL_DATA_INTERFACE 0x00F1
 
 #endif
-
diff --git a/drivers/gdisp/SSD2119/board_SSD2119_template.h b/drivers/gdisp/SSD2119/board_SSD2119_template.h
index b4c6341d..61c54774 100644
--- a/drivers/gdisp/SSD2119/board_SSD2119_template.h
+++ b/drivers/gdisp/SSD2119/board_SSD2119_template.h
@@ -5,181 +5,67 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/SSD2119/board_SSD2119_template.h
- * @brief   GDISP Graphic Driver subsystem board template for the SSD2119 display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _GDISP_LLD_BOARD_H
 #define _GDISP_LLD_BOARD_H
 
-/**
- * @brief   Initialise the board for the display.
- *
- * @param[in] g			The GDisplay structure
- *
- * @note	Set the g->board member to whatever is appropriate. For multiple
- * 			displays this might be a pointer to the appropriate register set.
- *
- * @notapi
- */
 static inline void init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   After the initialisation.
- *
- * @param[in] g			The GDisplay structure
- *
- * @notapi
- */
 static inline void post_init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Set or clear the lcd reset pin.
- *
- * @param[in] g			The GDisplay structure
- * @param[in] state		TRUE = lcd in reset, FALSE = normal operation
- *
- * @notapi
- */
 static inline void setpin_reset(GDisplay *g, bool_t state) {
 	(void) g;
 	(void) state;
 }
 
-/**
- * @brief   Set the lcd back-light level.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] percent		0 to 100%
- *
- * @notapi
- */
 static inline void set_backlight(GDisplay *g, uint8_t percent) {
 	(void) g;
 	(void) percent;
 }
 
-/**
- * @brief   Take exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void acquire_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Release exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void release_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Send data to the index register.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] index			The index register to set
- *
- * @notapi
- */
 static inline void write_index(GDisplay *g, uint16_t index) {
 	(void) g;
 	(void) index;
 }
 
-/**
- * @brief   Send data to the lcd.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] data			The data to send
- *
- * @notapi
- */
 static inline void write_data(GDisplay *g, uint16_t data) {
 	(void) g;
 	(void) data;
 }
 
-/**
- * @brief   Set the bus in read mode
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void setreadmode(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Set the bus back into write mode
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void setwritemode(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Read data from the lcd.
- * @return	The data from the lcd
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline uint16_t read_data(GDisplay *g) {
 	(void) g;
 	return 0;
 }
 
-/**
- * The below section you can replace with #error if your interface doesn't support DMA
- */
 #if defined(GDISP_USE_DMA) || defined(__DOXYGEN__)
 	//#error "GDISP - SSD2119: This interface does not support DMA"
 
-	/**
-	 * @brief	Transfer data using DMA but don't increment the source address
-	 *
-	 * @param[in] g				The GDisplay structure
-	 * @param[in] buffer		The source buffer location
-	 * @param[in] area			The number of pixels to transfer
-	 *
-	 * @notapi
-	 */
 	static inline void dma_with_noinc(GDisplay *g, color_t *buffer, int area) {
 		(void) g;
 		(void) buffer;
 		(void) area;
 	}
 
-	/**
-	 * @brief	Transfer data using DMA incrementing the source address
-	 *
-	 * @param[in] g				The GDisplay structure
-	 * @param[in] buffer		The source buffer location
-	 * @param[in] area			The number of pixels to transfer
-	 *
-	 * @notapi
-	 */
 	static inline void dma_with_inc(GDisplay *g, color_t *buffer, int area) {
 		(void) g;
 		(void) buffer;
@@ -188,4 +74,3 @@ static inline uint16_t read_data(GDisplay *g) {
 #endif
 
 #endif /* _GDISP_LLD_BOARD_H */
-/** @} */
diff --git a/drivers/gdisp/SSD2119/gdisp_lld_SSD2119.c b/drivers/gdisp/SSD2119/gdisp_lld_SSD2119.c
index 8af9a123..08cddf96 100644
--- a/drivers/gdisp/SSD2119/gdisp_lld_SSD2119.c
+++ b/drivers/gdisp/SSD2119/gdisp_lld_SSD2119.c
@@ -5,11 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/SSD2119/gdisp_lld.c
- * @brief   GDISP Graphics Driver subsystem low level driver source for the SSD2119 display.
- */
-
 #include "gfx.h"
 
 #if GFX_USE_GDISP
diff --git a/drivers/gdisp/SSD2119/gdisp_lld_config.h b/drivers/gdisp/SSD2119/gdisp_lld_config.h
index ec034bef..17983807 100644
--- a/drivers/gdisp/SSD2119/gdisp_lld_config.h
+++ b/drivers/gdisp/SSD2119/gdisp_lld_config.h
@@ -5,14 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/SSD2119/gdisp_lld_config.h
- * @brief   GDISP Graphic Driver subsystem low level driver header for the SSD2119 display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _GDISP_LLD_CONFIG_H
 #define _GDISP_LLD_CONFIG_H
 
@@ -40,4 +32,3 @@
 #endif	/* GFX_USE_GDISP */
 
 #endif	/* _GDISP_LLD_CONFIG_H */
-/** @} */
diff --git a/drivers/gdisp/SSD2119/ssd2119.h b/drivers/gdisp/SSD2119/ssd2119.h
index a8fa7521..7812d98b 100644
--- a/drivers/gdisp/SSD2119/ssd2119.h
+++ b/drivers/gdisp/SSD2119/ssd2119.h
@@ -5,19 +5,10 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/SSD2119/ssd2119.h
- * @brief   GDISP Graphic Driver support header for the SSD2119 display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _SSD2119_H
 #define _SSD2119_H
 
 /* SSD2119 registers */
-
 #define SSD2119_REG_DEVICE_CODE_READ  0x00
 #define SSD2119_REG_OSC_START         0x00
 #define SSD2119_REG_OUTPUT_CTRL       0x01
@@ -65,4 +56,3 @@
 #define SSD2119_REG_Y_RAM_ADDR        0x4F
 
 #endif /* _SSD2119_H */
-/** @} */
diff --git a/drivers/gdisp/ST7565/board_ST7565_template.h b/drivers/gdisp/ST7565/board_ST7565_template.h
index 4eb45701..3efdbd46 100644
--- a/drivers/gdisp/ST7565/board_ST7565_template.h
+++ b/drivers/gdisp/ST7565/board_ST7565_template.h
@@ -5,20 +5,9 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/ST7565/board_ST7565_template.h
- * @brief   GDISP Graphic Driver subsystem board interface for the ST7565 display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _GDISP_LLD_BOARD_H
 #define _GDISP_LLD_BOARD_H
 
-/**
- * Driver configuration
- */
 #define ST7565_LCD_BIAS         ST7565_LCD_BIAS_7
 #define ST7565_ADC              ST7565_ADC_NORMAL
 #define ST7565_COM_SCAN         ST7565_COM_SCAN_INC
@@ -28,87 +17,32 @@
  * #define ST7565_PAGE_ORDER       4,5,6,7,0,1,2,3
  */
 
-/**
- * @brief   Initialise the board for the display.
- *
- * @param[in] g			The GDisplay structure
- *
- * @note	Set the g->board member to whatever is appropriate. For multiple
- * 			displays this might be a pointer to the appropriate register set.
- *
- * @notapi
- */
 static inline void init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   After the initialisation.
- *
- * @param[in] g			The GDisplay structure
- *
- * @notapi
- */
 static inline void post_init_board(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Set or clear the lcd reset pin.
- *
- * @param[in] g			The GDisplay structure
- * @param[in] state		TRUE = lcd in reset, FALSE = normal operation
- *
- * @notapi
- */
 static inline void setpin_reset(GDisplay *g, bool_t state) {
 	(void) g;
 	(void) state;
 }
 
-/**
- * @brief   Take exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void acquire_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Release exclusive control of the bus
- *
- * @param[in] g				The GDisplay structure
- *
- * @notapi
- */
 static inline void release_bus(GDisplay *g) {
 	(void) g;
 }
 
-/**
- * @brief   Send a command to the controller.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] cmd			The command to send *
- *
- * @notapi
- */
 static inline void write_cmd(GDisplay *g, uint8_t cmd) {
 	(void) g;
 	(void) cmd;
 }
 
-/**
- * @brief   Send data to the lcd.
- *
- * @param[in] g				The GDisplay structure
- * @param[in] data			The data to send
- *
- * @notapi
- */
 static inline void write_data(GDisplay *g, uint8_t* data, uint16_t length) {
 	(void) g;
 	(void) data;
@@ -116,5 +50,3 @@ static inline void write_data(GDisplay *g, uint8_t* data, uint16_t length) {
 }
 
 #endif /* _GDISP_LLD_BOARD_H */
-/** @} */
-
diff --git a/drivers/gdisp/ST7565/gdisp_lld_ST7565.c b/drivers/gdisp/ST7565/gdisp_lld_ST7565.c
index b3029391..8d331fbc 100644
--- a/drivers/gdisp/ST7565/gdisp_lld_ST7565.c
+++ b/drivers/gdisp/ST7565/gdisp_lld_ST7565.c
@@ -5,11 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/ST7565/gdisp_lld.c
- * @brief   GDISP Graphics Driver subsystem low level driver source for the ST7565 display.
- */
-
 #include "gfx.h"
 
 #if GFX_USE_GDISP
@@ -77,7 +72,7 @@
 /* Driver exported functions.                                                */
 /*===========================================================================*/
 
-/**
+/*
  * As this controller can't update on a pixel boundary we need to maintain the
  * the entire display surface in memory so that we can do the necessary bit
  * operations. Fortunately it is a small display in monochrome.
diff --git a/drivers/gdisp/ST7565/gdisp_lld_config.h b/drivers/gdisp/ST7565/gdisp_lld_config.h
index f774e8fa..48587b9e 100644
--- a/drivers/gdisp/ST7565/gdisp_lld_config.h
+++ b/drivers/gdisp/ST7565/gdisp_lld_config.h
@@ -24,5 +24,3 @@
 #endif	/* GFX_USE_GDISP */
 
 #endif	/* _GDISP_LLD_CONFIG_H */
-/** @} */
-
diff --git a/drivers/gdisp/ST7565/st7565.h b/drivers/gdisp/ST7565/st7565.h
index 9542dd3f..48636b33 100644
--- a/drivers/gdisp/ST7565/st7565.h
+++ b/drivers/gdisp/ST7565/st7565.h
@@ -35,5 +35,3 @@
 #define ST7565_POWER_CONTROL        0x28
 
 #endif /* _ST7565_H */
-/** @} */
-
diff --git a/drivers/gdisp/TestStub/gdisp_lld_TestStub.c b/drivers/gdisp/TestStub/gdisp_lld_TestStub.c
index f87826aa..4051c818 100644
--- a/drivers/gdisp/TestStub/gdisp_lld_TestStub.c
+++ b/drivers/gdisp/TestStub/gdisp_lld_TestStub.c
@@ -5,11 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/TestStub/gdisp_lld.c
- * @brief   GDISP Graphics Driver subsystem low level driver source (stub).
- */
-
 #include "gfx.h"
 
 #if GFX_USE_GDISP /*|| defined(__DOXYGEN__)*/
diff --git a/drivers/gdisp/TestStub/gdisp_lld_config.h b/drivers/gdisp/TestStub/gdisp_lld_config.h
index 63471c6c..53111358 100644
--- a/drivers/gdisp/TestStub/gdisp_lld_config.h
+++ b/drivers/gdisp/TestStub/gdisp_lld_config.h
@@ -5,14 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/gdisp/TestStub/gdisp_lld_config.h
- * @brief   GDISP Graphic Driver subsystem low level driver header (stub).
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _GDISP_LLD_CONFIG_H
 #define _GDISP_LLD_CONFIG_H
 
@@ -30,4 +22,3 @@
 #endif	/* GFX_USE_GDISP */
 
 #endif	/* _GDISP_LLD_CONFIG_H */
-/** @} */
diff --git a/drivers/ginput/dial/GADC/ginput_lld_dial.c b/drivers/ginput/dial/GADC/ginput_lld_dial.c
index cefe5689..c07419bc 100644
--- a/drivers/ginput/dial/GADC/ginput_lld_dial.c
+++ b/drivers/ginput/dial/GADC/ginput_lld_dial.c
@@ -5,15 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/ginput/dial/GADC/ginput_lld_dial.c
- * @brief   GINPUT Dial low level driver source for GADC hardware.
- *
- * @defgroup Dial Dial
- * @ingroup GINPUT
- * @{
- */
-
 #include "gfx.h"
 
 #if GFX_USE_GINPUT && GINPUT_NEED_DIAL
@@ -83,4 +74,3 @@ void ginput_lld_dial_poll(DialCallbackFn fn) {
 }
 
 #endif /* GFX_USE_GINPUT && GINPUT_NEED_DIAL */
-/** @} */
diff --git a/drivers/ginput/dial/GADC/ginput_lld_dial_board_template.h b/drivers/ginput/dial/GADC/ginput_lld_dial_board_template.h
index 202b5386..e10e52f6 100644
--- a/drivers/ginput/dial/GADC/ginput_lld_dial_board_template.h
+++ b/drivers/ginput/dial/GADC/ginput_lld_dial_board_template.h
@@ -5,15 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/ginput/dial/GADC/ginput_lld_dial_board_template.h
- * @brief   GINPUT Dial Driver config file.
- *
- * @defgroup Dial Dial
- * @ingroup GINPUT
- * @{
- */
-
 #ifndef _GINPUT_LLD_DIAL_BOARD_H
 #define _GINPUT_LLD_DIAL_BOARD_H
 
@@ -32,5 +23,3 @@
 #endif	/* GFX_USE_GINPUT && GINPUT_NEED_DIAL */
 
 #endif	/* _GINPUT_LLD_DIAL_BOARD_H */
-/** @} */
-
diff --git a/drivers/ginput/dial/GADC/ginput_lld_dial_config.h b/drivers/ginput/dial/GADC/ginput_lld_dial_config.h
index 3e54b4ca..45c61c1d 100644
--- a/drivers/ginput/dial/GADC/ginput_lld_dial_config.h
+++ b/drivers/ginput/dial/GADC/ginput_lld_dial_config.h
@@ -5,15 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/ginput/dial/GADC/ginput_lld_dial_config.h
- * @brief   GINPUT Dial Driver configuration header.
- *
- * @defgroup Dial Dial
- * @ingroup GINPUT
- * @{
- */
-
 #ifndef _GINPUT_LLD_DIAL_CONFIG_H
 #define _GINPUT_LLD_DIAL_CONFIG_H
 
@@ -27,4 +18,3 @@
 #endif	/* GFX_USE_GDISP && GINPUT_NEED_DIAL */
 
 #endif	/* _GINPUT_LLD_DIAL_CONFIG_H */
-/** @} */
diff --git a/drivers/ginput/toggle/Pal/ginput_lld_toggle.c b/drivers/ginput/toggle/Pal/ginput_lld_toggle.c
index 09290f17..f42d222f 100644
--- a/drivers/ginput/toggle/Pal/ginput_lld_toggle.c
+++ b/drivers/ginput/toggle/Pal/ginput_lld_toggle.c
@@ -5,15 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/ginput/toggle/Pal/ginput_lld_toggle.c
- * @brief   GINPUT Toggle low level driver source for the ChibiOS PAL hardware.
- *
- * @defgroup Toggle Toggle
- * @ingroup GINPUT
- * @{
- */
-
 #include "gfx.h"
 
 #if (GFX_USE_GINPUT && GINPUT_NEED_TOGGLE) /*|| defined(__DOXYGEN__)*/
@@ -22,27 +13,12 @@
 
 GINPUT_TOGGLE_DECLARE_STRUCTURE();
 
-/**
- * @brief   Initialise the port.
- *
- * @param[in] ptc	A pointer to one of the entries in GInputToggleConfigTable
- *
- * @notapi
- */
 void ginput_lld_toggle_init(const GToggleConfig *ptc) {
 	palSetGroupMode(((IOBus *)ptc->id)->portid, ptc->mask, 0, ptc->mode);
 }
 
-/**
- * @brief   Get the bits from the port.
- *
- * @param[in] ptc	A pointer to one of the entries in GInputToggleConfigTable
- *
- * @notapi
- */
 unsigned ginput_lld_toggle_getbits(const GToggleConfig *ptc) {
 	return palReadBus((IOBus *)ptc->id);
 }
 
 #endif /* GFX_USE_GINPUT && GINPUT_NEED_TOGGLE */
-/** @} */
diff --git a/drivers/ginput/toggle/Pal/ginput_lld_toggle_board_template.h b/drivers/ginput/toggle/Pal/ginput_lld_toggle_board_template.h
index 84038d16..049160f5 100644
--- a/drivers/ginput/toggle/Pal/ginput_lld_toggle_board_template.h
+++ b/drivers/ginput/toggle/Pal/ginput_lld_toggle_board_template.h
@@ -5,15 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/ginput/toggle/Pal/ginput_lld_toggle_board_template.h
- * @brief   GINPUT Toggle low level driver source for the ChibiOS PAL hardware on the example board.
- *
- * @defgroup Toggle Toggle
- * @ingroup GINPUT
- * @{
- */
-
 #ifndef _GDISP_LLD_TOGGLE_BOARD_H
 #define _GDISP_LLD_TOGGLE_BOARD_H
 
@@ -45,4 +36,3 @@
 	}
 
 #endif /* _GDISP_LLD_TOGGLE_BOARD_H */
-/** @} */
diff --git a/drivers/ginput/toggle/Pal/ginput_lld_toggle_config.h b/drivers/ginput/toggle/Pal/ginput_lld_toggle_config.h
index 84155956..0ae2aa3f 100644
--- a/drivers/ginput/toggle/Pal/ginput_lld_toggle_config.h
+++ b/drivers/ginput/toggle/Pal/ginput_lld_toggle_config.h
@@ -3,15 +3,6 @@
  * the license was not distributed with this file, you can obtain one at:
  *
  *              http://ugfx.org/license.html
- */
-
-/**
- * @file    drivers/ginput/toggle/Pal/ginput_lld_toggle_config.h
- * @brief   GINPUT Toggle Driver configuration header.
- *
- * @defgroup Toggle Toggle
- * @ingroup GINPUT
- * @{
  */
 
 #ifndef _GINPUT_LLD_TOGGLE_CONFIG_H
@@ -25,4 +16,3 @@
 #endif	/* GFX_USE_GDISP && GINPUT_NEED_TOGGLE */
 
 #endif	/* _GINPUT_LLD_TOGGLE_CONFIG_H */
-/** @} */
diff --git a/drivers/ginput/touch/ADS7843/ginput_lld_mouse.c b/drivers/ginput/touch/ADS7843/ginput_lld_mouse.c
index 890b65ae..cb9b6f4e 100644
--- a/drivers/ginput/touch/ADS7843/ginput_lld_mouse.c
+++ b/drivers/ginput/touch/ADS7843/ginput_lld_mouse.c
@@ -5,15 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/ginput/touch/ADS7843/ginput_lld_mouse.c
- * @brief   GINPUT Touch low level driver source for the ADS7843.
- *
- * @defgroup Mouse Mouse
- * @ingroup GINPUT
- * @{
- */
-
 #include "gfx.h"
 
 #if (GFX_USE_GINPUT && GINPUT_NEED_MOUSE) /*|| defined(__DOXYGEN__)*/
@@ -34,13 +25,6 @@
 static uint16_t sampleBuf[7];
 static coord_t	lastx, lasty;
 
-/**
- * @brief   7-point median filtering code for touch samples
- *
- * @note    This is an internally used routine only.
- *
- * @notapi
- */
 static void filter(void) {
 	uint16_t temp;
 	int i,j;
@@ -57,29 +41,10 @@ static void filter(void) {
 	}
 }
 
-/**
- * @brief   Initialise the mouse/touch.
- *
- * @notapi
- */
 void ginput_lld_mouse_init(void) {
 	init_board();
 }
 
-/**
- * @brief   Read the mouse/touch position.
- *
- * @param[in] pt	A pointer to the structure to fill
- *
- * @note			For drivers that don't support returning a position
- *					when the touch is up (most touch devices), it should
- *					return the previous position with the new Z value.
- *					The z value is the pressure for those touch devices
- *					that support it (-100 to 100 where > 0 is touched)
- *					or, 0 or 100 for those drivers that don't.
- *
- * @notapi
- */
 void ginput_lld_mouse_get_reading(MouseReading *pt) {
 	uint16_t i;
 
@@ -127,4 +92,3 @@ void ginput_lld_mouse_get_reading(MouseReading *pt) {
 }
 
 #endif /* GFX_USE_GINPUT && GINPUT_NEED_MOUSE */
-/** @} */
diff --git a/drivers/ginput/touch/ADS7843/ginput_lld_mouse_board_template.h b/drivers/ginput/touch/ADS7843/ginput_lld_mouse_board_template.h
index b4699c76..09783adf 100644
--- a/drivers/ginput/touch/ADS7843/ginput_lld_mouse_board_template.h
+++ b/drivers/ginput/touch/ADS7843/ginput_lld_mouse_board_template.h
@@ -5,67 +5,27 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/ginput/touch/ADS7843/ginput_lld_mouse_board_template.h
- * @brief   GINPUT Touch low level driver source for the ADS7843 on the example board.
- *
- * @defgroup Mouse Mouse
- * @ingroup GINPUT
- * @{
- */
-
 #ifndef _GINPUT_LLD_MOUSE_BOARD_H
 #define _GINPUT_LLD_MOUSE_BOARD_H
 
-/**
- * @brief   Initialise the board for the touch.
- *
- * @notapi
- */
 static inline void init_board(void) {
 
 }
 
-/**
- * @brief   Check whether the surface is currently touched
- * @return	TRUE if the surface is currently touched
- *
- * @notapi
- */
 static inline bool_t getpin_pressed(void) {
 
 }
 
-/**
- * @brief   Aquire the bus ready for readings
- *
- * @notapi
- */
 static inline void aquire_bus(void) {
 
 }
 
-/**
- * @brief   Release the bus after readings
- *
- * @notapi
- */
 static inline void release_bus(void) {
 
 }
 
-/**
- * @brief   Read a value from touch controller
- * @return	The value read from the controller
- *
- * params[in] port	The controller port to read.
- *
- * @notapi
- */
 static inline uint16_t read_value(uint16_t port) {
 
 }
 
 #endif /* _GINPUT_LLD_MOUSE_BOARD_H */
-/** @} */
-
diff --git a/drivers/ginput/touch/ADS7843/ginput_lld_mouse_config.h b/drivers/ginput/touch/ADS7843/ginput_lld_mouse_config.h
index 5c959521..31840a51 100644
--- a/drivers/ginput/touch/ADS7843/ginput_lld_mouse_config.h
+++ b/drivers/ginput/touch/ADS7843/ginput_lld_mouse_config.h
@@ -5,16 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/ginput/touch/ADS7843/ginput_lld_mouse_config.h
- * @brief   GINPUT LLD header file for mouse/touch driver.
- *
- * @defgroup Mouse Mouse
- * @ingroup GINPUT 
- *
- * @{
- */
-
 #ifndef _LLD_GINPUT_MOUSE_CONFIG_H
 #define _LLD_GINPUT_MOUSE_CONFIG_H
 
@@ -29,4 +19,3 @@
 #define GINPUT_MOUSE_CLICK_TIME					500
 
 #endif /* _LLD_GINPUT_MOUSE_CONFIG_H */
-/** @} */
diff --git a/drivers/ginput/touch/FT5x06/ft5x06.h b/drivers/ginput/touch/FT5x06/ft5x06.h
index 2b91d1c6..bfc1d080 100644
--- a/drivers/ginput/touch/FT5x06/ft5x06.h
+++ b/drivers/ginput/touch/FT5x06/ft5x06.h
@@ -5,14 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/ginput/touch/FT5x06/ft5x06.h
- * @brief   Register definition header for the STMPE811 touch controller.
- *
- * @addtogroup GINPUT
- * @{
- */
-
 #ifndef _FT5x06_H
 #define _FT5x06_H
 
@@ -78,5 +70,3 @@
 #define FT5x06_ID_G_ERR                  0xA9
 
 #endif /* _FT5x06_H */
-/** @} */
-
diff --git a/drivers/ginput/touch/FT5x06/ginput_lld_mouse.c b/drivers/ginput/touch/FT5x06/ginput_lld_mouse.c
index 43baa9b7..7a50c5f6 100644
--- a/drivers/ginput/touch/FT5x06/ginput_lld_mouse.c
+++ b/drivers/ginput/touch/FT5x06/ginput_lld_mouse.c
@@ -5,15 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/ginput/touch/STMPE811/ginput_lld_mouse.c
- * @brief   GINPUT Touch low level driver source for the STMPE811.
- *
- * @defgroup Mouse Mouse
- * @ingroup GINPUT
- * @{
- */
-
 #include "gfx.h"
 
 #if (GFX_USE_GINPUT && GINPUT_NEED_MOUSE) /*|| defined(__DOXYGEN__)*/
@@ -28,11 +19,6 @@
 static coord_t x, y, z;
 static uint8_t touched;
 
-/**
- * @brief   Initialise the mouse/touch.
- *
- * @notapi
- */
 void ginput_lld_mouse_init(void) {
 	init_board();
 
@@ -65,20 +51,6 @@ void ginput_lld_mouse_init(void) {
 	write_reg(FT5x06_ID_G_PERIODMONITOR, 1, 0x28);
 }
 
-/**
- * @brief   Read the mouse/touch position.
- *
- * @param[in] pt	A pointer to the structure to fill
- *
- * @note			For drivers that don't support returning a position
- *					when the touch is up (most touch devices), it should
- *					return the previous position with the new Z value.
- *					The z value is the pressure for those touch devices
- *					that support it (-100 to 100 where > 0 is touched)
- *					or, 0 or 100 for those drivers that don't.
- *
- * @notapi
- */
 void ginput_lld_mouse_get_reading(MouseReading *pt) {
 	// Poll to get the touched status
 	uint8_t		last_touched;
@@ -114,5 +86,3 @@ void ginput_lld_mouse_get_reading(MouseReading *pt) {
 }
 
 #endif /* GFX_USE_GINPUT && GINPUT_NEED_MOUSE */
-/** @} */
-
diff --git a/drivers/ginput/touch/FT5x06/ginput_lld_mouse_board_template.h b/drivers/ginput/touch/FT5x06/ginput_lld_mouse_board_template.h
index d13881da..b7744a49 100644
--- a/drivers/ginput/touch/FT5x06/ginput_lld_mouse_board_template.h
+++ b/drivers/ginput/touch/FT5x06/ginput_lld_mouse_board_template.h
@@ -5,64 +5,23 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/ginput/touch/FT5x06/ginput_lld_mouse_board_template.h
- * @brief   GINPUT Touch low level driver source for the FT5x06 on the example board.
- *
- * @defgroup Mouse Mouse
- * @ingroup GINPUT
- * @{
- */
-
 #ifndef _GINPUT_LLD_MOUSE_BOARD_H
 #define _GINPUT_LLD_MOUSE_BOARD_H
 
-/**
- * @brief   Initialise the board for the touch.
- *
- * @notapi
- */
 static void init_board(void) {
 
 }
 
-/**
- * @brief   Check whether an interrupt is raised
- * @return	TRUE if there is an interrupt signal present
- *
- * @notapi
- */
 static inline bool_t getpin_irq(void) {
 
 }
 
-/**
- * @brief	Write a value into a certain register
- *
- * @param[in] reg	The register address
- * @param[in] n		The amount of bytes (one or two)
- * @param[in] val	The value
- *
- * @notapi
- */
 static void write_reg(uint8_t reg, uint8_t n, uint16_t val) {
 
 }
 
-/**
- * @brief	Read the value of a certain register
- *
- * @param[in] reg	The register address
- * @param[in] n		The amount of bytes (one or two)
- *
- * @return Data read from device (one byte or two depending on n param)
- *
- * @notapi
- */
 static uint16_t read_reg(uint8_t reg, uint8_t n) {
 
 }
 
 #endif /* _GINPUT_LLD_MOUSE_BOARD_H */
-/** @} */
-
diff --git a/drivers/ginput/touch/FT5x06/ginput_lld_mouse_config.h b/drivers/ginput/touch/FT5x06/ginput_lld_mouse_config.h
index 57d3f135..24335a0a 100644
--- a/drivers/ginput/touch/FT5x06/ginput_lld_mouse_config.h
+++ b/drivers/ginput/touch/FT5x06/ginput_lld_mouse_config.h
@@ -5,16 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/ginput/touch/STMPE811/ginput_lld_mouse_config.h
- * @brief   GINPUT LLD header file for mouse/touch driver.
- *
- * @defgroup Mouse Mouse
- * @ingroup GINPUT 
- *
- * @{
- */
-
 #ifndef _LLD_GINPUT_MOUSE_CONFIG_H
 #define _LLD_GINPUT_MOUSE_CONFIG_H
 
@@ -29,4 +19,3 @@
 #define GINPUT_MOUSE_CLICK_TIME					450
 
 #endif /* _LLD_GINPUT_MOUSE_CONFIG_H */
-/** @} */
diff --git a/drivers/ginput/touch/MCU/ginput_lld_mouse.c b/drivers/ginput/touch/MCU/ginput_lld_mouse.c
index d7a2e314..ad2519e4 100644
--- a/drivers/ginput/touch/MCU/ginput_lld_mouse.c
+++ b/drivers/ginput/touch/MCU/ginput_lld_mouse.c
@@ -5,16 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/ginput/touch/MCU/ginput_lld_mouse.c
- * @brief   GINPUT Touch low level driver source for the MCU.
- *
- * @defgroup Mouse Mouse
- * @ingroup GINPUT
- *
- * @{
- */
-
 #include "gfx.h"
 
 #if (GFX_USE_GINPUT && GINPUT_NEED_MOUSE) /*|| defined(__DOXYGEN__)*/
@@ -25,13 +15,6 @@
 
 static uint16_t sampleBuf[7];
 
-/**
- * @brief   7-point median filtering code for touchscreen samples
- *
- * @note    This is an internally used routine only.
- *
- * @notapi
- */
 static void filter(void) {
 	uint16_t temp;
 	int i,j;
@@ -48,31 +31,10 @@ static void filter(void) {
 	}
 }
 
-/**
- * @brief   Initialise the mouse/touch.
- *
- * @notapi
- */
 void ginput_lld_mouse_init(void) {
 	init_board();
 }
 
-/**
- * @brief   Read the mouse/touch position.
- *
- * @param[in] pt	A pointer to the structure to fill
- *
- * @note			We use a 7 sample medium filter on each coordinate to remove analogue noise.
- * @note			During touch transition the ADC can return some very strange
- * 					results. To fix this behaviour we don't return until
- * 					we have tested the touch is in the same state at both the beginning
- * 					and the end of the reading.
- * @note			Whilst x and y can return readings in any range so long as it fits in 16 bits,
- * 					the z value must be ranged by the board file to be a rough percentage. Anything
- * 					greater than 80% pressure is a touch.
- *
- * @notapi
- */
 void ginput_lld_mouse_get_reading(MouseReading *pt) {
 	uint16_t i;
 
@@ -116,4 +78,3 @@ void ginput_lld_mouse_get_reading(MouseReading *pt) {
 }
 
 #endif /* GFX_USE_GINPUT && GINPUT_NEED_MOUSE */
-/** @} */
diff --git a/drivers/ginput/touch/MCU/ginput_lld_mouse_board_template.h b/drivers/ginput/touch/MCU/ginput_lld_mouse_board_template.h
index 52af9269..e213bcb9 100644
--- a/drivers/ginput/touch/MCU/ginput_lld_mouse_board_template.h
+++ b/drivers/ginput/touch/MCU/ginput_lld_mouse_board_template.h
@@ -5,105 +5,37 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/ginput/touch/MCU/ginput_lld_mouse_board_template.h
- * @brief   GINPUT Touch low level driver source for the MCU on the example board.
- *
- * @defgroup Mouse Mouse
- * @ingroup GINPUT
- *
- * @{
- */
-
 #ifndef _GINPUT_LLD_MOUSE_BOARD_H
 #define _GINPUT_LLD_MOUSE_BOARD_H
 
-/**
- * @brief   Initialise the board for the touch.
- *
- * @notapi
- */
 static inline void init_board(void) {
 }
 
-/**
- * @brief   Acquire the bus ready for readings
- *
- * @notapi
- */
 static inline void aquire_bus(void) {
 }
 
-/**
- * @brief   Release the bus after readings
- *
- * @notapi
- */
 static inline void release_bus(void) {
 }
 
-/**
- * @brief   Set up the device for a x coordinate read
- * @note	This is performed once followed by multiple
- * 			x coordinate read's (which are then median filtered)
- *
- * @notapi
- */
 static inline void setup_x(void) {
 }
 
-/**
- * @brief   Set up the device for a y coordinate read
- * @note	This is performed once followed by multiple
- * 			y coordinate read's (which are then median filtered)
- *
- * @notapi
- */
 static inline void setup_y(void) {
 }
 
-/**
- * @brief   Set up the device for a z coordinate (pressure) read
- * @note	This is performed once followed by multiple
- * 			z coordinate read's (which are then median filtered)
- *
- * @notapi
- */
 static inline void setup_z(void) {
 	palClearPad(GPIOB, GPIOB_DRIVEA);
 	palClearPad(GPIOB, GPIOB_DRIVEB);
     chThdSleepMilliseconds(2);
 }
 
-/**
- * @brief   Read an x value from touch controller
- * @return	The value read from the controller
- *
- * @notapi
- */
 static inline uint16_t read_x(void) {
 }
 
-/**
- * @brief   Read a y value from touch controller
- * @return	The value read from the controller
- *
- * @notapi
- */
 static inline uint16_t read_y(void) {
 }
 
-/**
- * @brief   Read a z value from touch controller
- * @return	The value read from the controller.
- * @note	The return value must be scaled between 0 and 100.
- * 			Values over 80 are considered as "touch" down.
- *
- * @notapi
- */
 static inline uint16_t read_z(void) {
 }
 
 #endif /* _GINPUT_LLD_MOUSE_BOARD_H */
-/** @} */
-
diff --git a/drivers/ginput/touch/MCU/ginput_lld_mouse_config_template.h b/drivers/ginput/touch/MCU/ginput_lld_mouse_config_template.h
index 0c9e9300..328e6337 100644
--- a/drivers/ginput/touch/MCU/ginput_lld_mouse_config_template.h
+++ b/drivers/ginput/touch/MCU/ginput_lld_mouse_config_template.h
@@ -5,16 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/ginput/touch/MCU/ginput_lld_mouse_config.h
- * @brief   GINPUT LLD header file for touch driver.
- *
- * @defgroup Mouse Mouse
- * @ingroup GINPUT
- *
- * @{
- */
-
 #ifndef _LLD_GINPUT_MOUSE_CONFIG_H
 #define _LLD_GINPUT_MOUSE_CONFIG_H
 
@@ -29,4 +19,3 @@
 #define GINPUT_MOUSE_CLICK_TIME					500
 
 #endif /* _LLD_GINPUT_MOUSE_CONFIG_H */
-/** @} */
diff --git a/drivers/ginput/touch/STMPE811/ginput_lld_mouse.c b/drivers/ginput/touch/STMPE811/ginput_lld_mouse.c
index d650e603..e658fae2 100644
--- a/drivers/ginput/touch/STMPE811/ginput_lld_mouse.c
+++ b/drivers/ginput/touch/STMPE811/ginput_lld_mouse.c
@@ -4,16 +4,7 @@
  *
  *              http://ugfx.org/license.html
  */
-
-/**
- * @file    drivers/ginput/touch/STMPE811/ginput_lld_mouse.c
- * @brief   GINPUT Touch low level driver source for the STMPE811.
- *
- * @defgroup Mouse Mouse
- * @ingroup GINPUT
- * @{
- */
-
+ 
 #include "gfx.h"
 
 #if (GFX_USE_GINPUT && GINPUT_NEED_MOUSE) /*|| defined(__DOXYGEN__)*/
@@ -43,11 +34,6 @@ static void setActiveWindow(uint16_t bl_x, uint16_t bl_y, uint16_t tr_x, uint16_
 	write_reg(STMPE811_REG_WDW_BL_Y, 2, bl_y);
 }
 
-/**
- * @brief   Initialise the mouse/touch.
- *
- * @notapi
- */
 void ginput_lld_mouse_init(void)
 {
 	init_board();
@@ -81,20 +67,6 @@ void ginput_lld_mouse_init(void)
 	write_reg(STMPE811_REG_INT_CTRL,		1, 0x01);	// Level interrupt, enable intrrupts
 }
 
-/**
- * @brief   Read the mouse/touch position.
- *
- * @param[in] pt	A pointer to the structure to fill
- *
- * @note			For drivers that don't support returning a position
- *					when the touch is up (most touch devices), it should
- *					return the previous position with the new Z value.
- *					The z value is the pressure for those touch devices
- *					that support it (-100 to 100 where > 0 is touched)
- *					or, 0 or 100 for those drivers that don't.
- *
- * @notapi
- */
 void ginput_lld_mouse_get_reading(MouseReading *pt)
 {
 	bool_t	clearfifo;		// Do we need to clear the FIFO
@@ -158,5 +130,3 @@ void ginput_lld_mouse_get_reading(MouseReading *pt)
 }
 
 #endif /* GFX_USE_GINPUT && GINPUT_NEED_MOUSE */
-/** @} */
-
diff --git a/drivers/ginput/touch/STMPE811/ginput_lld_mouse_board_template.h b/drivers/ginput/touch/STMPE811/ginput_lld_mouse_board_template.h
index 3df898da..b7744a49 100644
--- a/drivers/ginput/touch/STMPE811/ginput_lld_mouse_board_template.h
+++ b/drivers/ginput/touch/STMPE811/ginput_lld_mouse_board_template.h
@@ -5,64 +5,23 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/ginput/touch/STMPE811/ginput_lld_mouse_board_template.h
- * @brief   GINPUT Touch low level driver source for the STMPE811 on the example board.
- *
- * @defgroup Mouse Mouse
- * @ingroup GINPUT
- * @{
- */
-
 #ifndef _GINPUT_LLD_MOUSE_BOARD_H
 #define _GINPUT_LLD_MOUSE_BOARD_H
 
-/**
- * @brief   Initialise the board for the touch.
- *
- * @notapi
- */
 static void init_board(void) {
 
 }
 
-/**
- * @brief   Check whether an interrupt is raised
- * @return	TRUE if there is an interrupt signal present
- *
- * @notapi
- */
 static inline bool_t getpin_irq(void) {
 
 }
 
-/**
- * @brief	Write a value into a certain register
- *
- * @param[in] reg	The register address
- * @param[in] n		The amount of bytes (one or two)
- * @param[in] val	The value
- *
- * @notapi
- */
 static void write_reg(uint8_t reg, uint8_t n, uint16_t val) {
 
 }
 
-/**
- * @brief	Read the value of a certain register
- *
- * @param[in] reg	The register address
- * @param[in] n		The amount of bytes (one or two)
- *
- * @return Data read from device (one byte or two depending on n param)
- *
- * @notapi
- */
 static uint16_t read_reg(uint8_t reg, uint8_t n) {
 
 }
 
 #endif /* _GINPUT_LLD_MOUSE_BOARD_H */
-/** @} */
-
diff --git a/drivers/ginput/touch/STMPE811/ginput_lld_mouse_config.h b/drivers/ginput/touch/STMPE811/ginput_lld_mouse_config.h
index c7427958..5cd512eb 100644
--- a/drivers/ginput/touch/STMPE811/ginput_lld_mouse_config.h
+++ b/drivers/ginput/touch/STMPE811/ginput_lld_mouse_config.h
@@ -5,16 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/ginput/touch/STMPE811/ginput_lld_mouse_config.h
- * @brief   GINPUT LLD header file for mouse/touch driver.
- *
- * @defgroup Mouse Mouse
- * @ingroup GINPUT 
- *
- * @{
- */
-
 #ifndef _LLD_GINPUT_MOUSE_CONFIG_H
 #define _LLD_GINPUT_MOUSE_CONFIG_H
 
@@ -33,4 +23,3 @@
 #define STMP811_NO_GPIO_IRQPIN 					FALSE
 
 #endif /* _LLD_GINPUT_MOUSE_CONFIG_H */
-/** @} */
diff --git a/drivers/ginput/touch/STMPE811/stmpe811.h b/drivers/ginput/touch/STMPE811/stmpe811.h
index 494b5f5c..1ee9c211 100644
--- a/drivers/ginput/touch/STMPE811/stmpe811.h
+++ b/drivers/ginput/touch/STMPE811/stmpe811.h
@@ -5,14 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/ginput/touch/STMPE811/stmpe811.h
- * @brief   Register definition header for the STMPE811 touch controller.
- *
- * @addtogroup GINPUT
- * @{
- */
-
 #ifndef _STMPE811_H
 #define _STMPE811_H
 
@@ -89,4 +81,3 @@
 #define STMPE811_REG_TEMP_TH        0x62
 
 #endif /* _STMPE811_H */
-/** @} */
diff --git a/drivers/multiple/Win32/gdisp_lld_Win32.c b/drivers/multiple/Win32/gdisp_lld_Win32.c
index 7bd9379f..3643d727 100644
--- a/drivers/multiple/Win32/gdisp_lld_Win32.c
+++ b/drivers/multiple/Win32/gdisp_lld_Win32.c
@@ -5,10 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/multiple/Win32/gdisp_lld.c
- * @brief   GDISP Graphics Driver subsystem low level driver source for Win32.
- */
 #include "gfx.h"
 
 #if GFX_USE_GDISP
@@ -1177,4 +1173,3 @@ LLDSPEC bool_t gdisp_lld_init(GDisplay *g) {
 #endif /* GINPUT_NEED_TOGGLE */
 
 #endif /* GFX_USE_GDISP */
-
diff --git a/drivers/multiple/Win32/gdisp_lld_config.h b/drivers/multiple/Win32/gdisp_lld_config.h
index 1554161b..659dfb77 100644
--- a/drivers/multiple/Win32/gdisp_lld_config.h
+++ b/drivers/multiple/Win32/gdisp_lld_config.h
@@ -3,14 +3,6 @@
  * the license was not distributed with this file, you can obtain one at:
  *
  *              http://ugfx.org/license.html
- */
-
-/**
- * @file    drivers/multiple/Win32/gdisp_lld_config.h
- * @brief   GDISP Graphic Driver subsystem low level driver header for Win32.
- *
- * @addtogroup GDISP
- * @{
  */
 
 #ifndef _GDISP_LLD_CONFIG_H
@@ -58,5 +50,3 @@
 #endif	/* GFX_USE_GDISP */
 
 #endif	/* _GDISP_LLD_CONFIG_H */
-/** @} */
-
diff --git a/drivers/multiple/Win32/ginput_lld_mouse_config.h b/drivers/multiple/Win32/ginput_lld_mouse_config.h
index a58d92d1..8263ebed 100644
--- a/drivers/multiple/Win32/ginput_lld_mouse_config.h
+++ b/drivers/multiple/Win32/ginput_lld_mouse_config.h
@@ -5,16 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/multiple/Win32/ginput_lld_mouse_config.h
- * @brief   GINPUT LLD header file for mouse/touch driver.
- *
- * @defgroup Mouse Mouse
- * @ingroup GINPUT
- *
- * @{
- */
-
 #ifndef _LLD_GINPUT_MOUSE_CONFIG_H
 #define _LLD_GINPUT_MOUSE_CONFIG_H
 
@@ -46,5 +36,3 @@
 //#define GINPUT_MOUSE_POLL_PERIOD				25						// Poll driven
 
 #endif /* _LLD_GINPUT_MOUSE_CONFIG_H */
-/** @} */
-
diff --git a/drivers/multiple/Win32/ginput_lld_toggle_config.h b/drivers/multiple/Win32/ginput_lld_toggle_config.h
index dd0c9b5c..46a30b5f 100644
--- a/drivers/multiple/Win32/ginput_lld_toggle_config.h
+++ b/drivers/multiple/Win32/ginput_lld_toggle_config.h
@@ -3,16 +3,6 @@
  * the license was not distributed with this file, you can obtain one at:
  *
  *              http://ugfx.org/license.html
- */
-
-/**
- * @file    drivers/multiple/Win32/ginput_lld_toggle_config.h
- * @brief   GINPUT Toggle Driver configuration header.
- *
- * @defgroup Toggle Toggle
- * @ingroup GINPUT
- *
- * @{
  */
 
 #ifndef _GINPUT_LLD_TOGGLE_CONFIG_H
@@ -46,5 +36,3 @@
 #endif	/* GFX_USE_GDISP && GINPUT_NEED_TOGGLE */
 
 #endif	/* _GINPUT_LLD_TOGGLE_CONFIG_H */
-/** @} */
-
diff --git a/drivers/multiple/X/gdisp_lld_X.c b/drivers/multiple/X/gdisp_lld_X.c
index 940f4f7b..29115f53 100644
--- a/drivers/multiple/X/gdisp_lld_X.c
+++ b/drivers/multiple/X/gdisp_lld_X.c
@@ -5,11 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/multiple/X/gdisp_lld.c
- * @brief   GDISP Graphics Driver subsystem low level driver source for X.
- */
-
 #include "gfx.h"
 
 #if GFX_USE_GDISP
@@ -18,13 +13,6 @@
 #include "drivers/multiple/X/gdisp_lld_config.h"
 #include "src/gdisp/driver.h"
 
-/**
- * Our color model - Default or 24 bit only.
- *
- * At present we don't define this as we don't need to.
- * It may however be useful later if we implement bitblits.
- * As this may be dead code we don't include it in gdisp/options.h
- */
 #ifndef GDISP_FORCE_24BIT	
 	#define GDISP_FORCE_24BIT	FALSE
 #endif
@@ -336,5 +324,3 @@ LLDSPEC void gdisp_lld_draw_pixel(GDisplay *g)
 #endif /* GINPUT_NEED_MOUSE */
 
 #endif /* GFX_USE_GDISP */
-/** @} */
-
diff --git a/drivers/multiple/X/gdisp_lld_config.h b/drivers/multiple/X/gdisp_lld_config.h
index 631ecf46..55d61d74 100644
--- a/drivers/multiple/X/gdisp_lld_config.h
+++ b/drivers/multiple/X/gdisp_lld_config.h
@@ -5,14 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/multiple/X/gdisp_lld_config.h
- * @brief   GDISP Graphic Driver subsystem low level driver header for the X11 display.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _GDISP_LLD_CONFIG_H
 #define _GDISP_LLD_CONFIG_H
 
@@ -34,5 +26,3 @@
 #endif	/* GFX_USE_GDISP */
 
 #endif	/* _GDISP_LLD_CONFIG_H */
-/** @} */
-
diff --git a/drivers/multiple/X/ginput_lld_mouse_config.h b/drivers/multiple/X/ginput_lld_mouse_config.h
index dc3d5a20..8263ebed 100644
--- a/drivers/multiple/X/ginput_lld_mouse_config.h
+++ b/drivers/multiple/X/ginput_lld_mouse_config.h
@@ -5,16 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/multiple/X/ginput_lld_mouse_config.h
- * @brief   GINPUT LLD header file for mouse/touch driver.
- *
- * @defgroup Mouse Mouse
- * @ingroup GINPUT
- *
- * @{
- */
-
 #ifndef _LLD_GINPUT_MOUSE_CONFIG_H
 #define _LLD_GINPUT_MOUSE_CONFIG_H
 
@@ -46,5 +36,3 @@
 //#define GINPUT_MOUSE_POLL_PERIOD				25						// Poll driven
 
 #endif /* _LLD_GINPUT_MOUSE_CONFIG_H */
-/** @} */
-
diff --git a/drivers/multiple/uGFXnet/gdisp_lld_config.h b/drivers/multiple/uGFXnet/gdisp_lld_config.h
index f67e3192..e181d91e 100644
--- a/drivers/multiple/uGFXnet/gdisp_lld_config.h
+++ b/drivers/multiple/uGFXnet/gdisp_lld_config.h
@@ -5,14 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/multiple/uGFXnet/gdisp_lld_config.h
- * @brief   GDISP Graphic Driver subsystem low level driver header for uGFXnet.
- *
- * @addtogroup GDISP
- * @{
- */
-
 #ifndef _GDISP_LLD_CONFIG_H
 #define _GDISP_LLD_CONFIG_H
 
@@ -38,5 +30,3 @@
 #endif	/* GFX_USE_GDISP */
 
 #endif	/* _GDISP_LLD_CONFIG_H */
-/** @} */
-
diff --git a/drivers/multiple/uGFXnet/gdisp_lld_uGFXnet.c b/drivers/multiple/uGFXnet/gdisp_lld_uGFXnet.c
index 18a53580..bfe430df 100644
--- a/drivers/multiple/uGFXnet/gdisp_lld_uGFXnet.c
+++ b/drivers/multiple/uGFXnet/gdisp_lld_uGFXnet.c
@@ -5,10 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/multiple/Win32/gdisp_lld.c
- * @brief   GDISP Graphics Driver subsystem low level driver source for uGFX network display.
- */
 #include "gfx.h"
 
 #if GFX_USE_GDISP
diff --git a/drivers/multiple/uGFXnet/ginput_lld_mouse_config.h b/drivers/multiple/uGFXnet/ginput_lld_mouse_config.h
index b0a0e04f..576df7ee 100644
--- a/drivers/multiple/uGFXnet/ginput_lld_mouse_config.h
+++ b/drivers/multiple/uGFXnet/ginput_lld_mouse_config.h
@@ -5,16 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/multiple/Win32/ginput_lld_mouse_config.h
- * @brief   GINPUT LLD header file for mouse/touch driver.
- *
- * @defgroup Mouse Mouse
- * @ingroup GINPUT
- *
- * @{
- */
-
 #ifndef _LLD_GINPUT_MOUSE_CONFIG_H
 #define _LLD_GINPUT_MOUSE_CONFIG_H
 
@@ -49,5 +39,3 @@
 #define GINPUT_MOUSE_NO_ROTATION				TRUE
 
 #endif /* _LLD_GINPUT_MOUSE_CONFIG_H */
-/** @} */
-
diff --git a/drivers/multiple/uGFXnet/uGFXnetProtocol.h b/drivers/multiple/uGFXnet/uGFXnetProtocol.h
index 153a3adf..521cca0f 100644
--- a/drivers/multiple/uGFXnet/uGFXnetProtocol.h
+++ b/drivers/multiple/uGFXnet/uGFXnetProtocol.h
@@ -5,11 +5,6 @@
  *              http://ugfx.org/license.html
  */
 
-/**
- * @file    drivers/multiple/uGFXnet/uGFXnetProtocol.h
- * @brief   GDISP uGFXnet protocol header.
- */
-
 #define GNETCODE_VERSION			GNETCODE_VERSION_1_0		// The current protocol version
 
 // The list of possible protocol version numbers
-- 
cgit v1.2.3