[PATCH 1/5] bsps: Adjust bsp.h Doxygen groups

Sebastian Huber sebastian.huber at embedded-brains.de
Thu Mar 7 12:51:49 UTC 2019


Update #3706.
---
 bsps/arm/atsam/include/bsp.h                       | 20 +++++++++++--
 bsps/arm/beagle/include/bsp.h                      | 24 ++++++++-------
 bsps/arm/csb336/include/bsp.h                      | 26 ++++++++---------
 bsps/arm/csb336/net/lan91c11x.c                    |  2 +-
 bsps/arm/csb336/net/lan91c11x.h                    |  4 +--
 bsps/arm/csb337/include/at91rm9200.h               |  2 +-
 bsps/arm/csb337/include/bits.h                     |  2 +-
 bsps/arm/csb337/include/bsp.h                      | 26 ++++++++---------
 bsps/arm/csb337/include/bsp/irq.h                  |  2 +-
 bsps/arm/csb337/include/font8x16.h                 |  4 +--
 bsps/arm/csb337/include/sed1356.h                  |  4 +--
 bsps/arm/csb337/include/sed1356_16bit.h            |  4 +--
 bsps/arm/csb337/include/tm27.h                     |  2 +-
 bsps/arm/edb7312/include/bsp.h                     | 23 ++++++++-------
 bsps/arm/edb7312/include/bsp/irq.h                 |  2 +-
 bsps/arm/edb7312/include/ep7312.h                  |  2 +-
 bsps/arm/gdbarmsim/include/bsp.h                   | 25 ++++++++--------
 bsps/arm/gdbarmsim/include/bsp/swi.h               |  4 +--
 bsps/arm/gumstix/include/bsp.h                     | 23 ++++++++-------
 bsps/arm/gumstix/net/wd80x3.h                      |  2 +-
 bsps/arm/imx/include/bsp.h                         | 18 ++++++++++++
 bsps/arm/include/bsp/lpc-dma.h                     |  4 +--
 bsps/arm/include/bsp/lpc-emc.h                     |  4 +--
 bsps/arm/include/bsp/lpc-i2s.h                     |  4 +--
 bsps/arm/include/bsp/lpc-lcd.h                     |  4 +--
 bsps/arm/include/bsp/lpc-timer.h                   |  4 +--
 bsps/arm/lm3s69xx/include/bsp.h                    | 19 +++++++-----
 bsps/arm/lm3s69xx/include/bsp/io.h                 |  2 +-
 bsps/arm/lm3s69xx/include/bsp/irq.h                |  2 +-
 bsps/arm/lm3s69xx/include/bsp/lm3s69xx.h           |  2 +-
 bsps/arm/lm3s69xx/include/bsp/ssi.h                |  2 +-
 bsps/arm/lm3s69xx/include/bsp/syscon.h             |  2 +-
 bsps/arm/lm3s69xx/include/bsp/uart.h               |  2 +-
 bsps/arm/lpc176x/btimer/btimer.c                   |  2 +-
 bsps/arm/lpc176x/can/can.c                         |  2 +-
 bsps/arm/lpc176x/console/console-config.c          |  2 +-
 bsps/arm/lpc176x/gpio/lpc-gpio.c                   |  2 +-
 bsps/arm/lpc176x/include/bsp.h                     | 26 ++++++++---------
 bsps/arm/lpc176x/include/bsp/adc-defs.h            |  2 +-
 bsps/arm/lpc176x/include/bsp/adc.h                 |  2 +-
 bsps/arm/lpc176x/include/bsp/can-defs.h            |  2 +-
 bsps/arm/lpc176x/include/bsp/can.h                 |  2 +-
 bsps/arm/lpc176x/include/bsp/common-types.h        |  2 +-
 bsps/arm/lpc176x/include/bsp/dma.h                 |  4 +--
 bsps/arm/lpc176x/include/bsp/gpio-defs.h           |  2 +-
 bsps/arm/lpc176x/include/bsp/io-defs.h             |  2 +-
 bsps/arm/lpc176x/include/bsp/io.h                  |  2 +-
 bsps/arm/lpc176x/include/bsp/lpc-clock-config.h    |  2 +-
 bsps/arm/lpc176x/include/bsp/lpc-gpio.h            |  2 +-
 bsps/arm/lpc176x/include/bsp/lpc176x.h             |  2 +-
 bsps/arm/lpc176x/include/bsp/mbed-pinmap.h         |  2 +-
 bsps/arm/lpc176x/include/bsp/pwmout-defs.h         |  2 +-
 bsps/arm/lpc176x/include/bsp/pwmout.h              |  2 +-
 bsps/arm/lpc176x/include/bsp/system-clocks.h       |  4 +--
 bsps/arm/lpc176x/include/bsp/timer-defs.h          |  2 +-
 bsps/arm/lpc176x/include/bsp/timer.h               |  2 +-
 bsps/arm/lpc176x/include/bsp/watchdog-defs.h       |  2 +-
 bsps/arm/lpc176x/include/bsp/watchdog.h            |  2 +-
 bsps/arm/lpc176x/pwm/pwmout.c                      |  2 +-
 bsps/arm/lpc176x/rtc/rtc-config.c                  |  2 +-
 bsps/arm/lpc176x/start/adc.c                       |  2 +-
 bsps/arm/lpc176x/start/bspidle.c                   |  2 +-
 bsps/arm/lpc176x/start/bspstart.c                  |  2 +-
 bsps/arm/lpc176x/start/bspstarthooks.c             |  2 +-
 bsps/arm/lpc176x/start/dma-copy.c                  |  2 +-
 bsps/arm/lpc176x/start/dma.c                       |  2 +-
 bsps/arm/lpc176x/start/io.c                        |  2 +-
 bsps/arm/lpc176x/start/restart.c                   |  2 +-
 bsps/arm/lpc176x/start/system-clocks.c             |  2 +-
 bsps/arm/lpc176x/start/watchdog.c                  |  2 +-
 bsps/arm/lpc176x/timer/timer.c                     |  2 +-
 bsps/arm/lpc24xx/console/console-config.c          |  2 +-
 bsps/arm/lpc24xx/console/uart-probe-1.c            |  2 +-
 bsps/arm/lpc24xx/console/uart-probe-2.c            |  2 +-
 bsps/arm/lpc24xx/console/uart-probe-3.c            |  2 +-
 bsps/arm/lpc24xx/fb/lcd.c                          |  2 +-
 bsps/arm/lpc24xx/i2c/i2c-config.c                  |  2 +-
 bsps/arm/lpc24xx/i2c/i2c.c                         |  2 +-
 bsps/arm/lpc24xx/include/bsp.h                     | 26 ++++++++---------
 bsps/arm/lpc24xx/include/bsp/dma.h                 |  4 +--
 bsps/arm/lpc24xx/include/bsp/i2c.h                 |  4 +--
 bsps/arm/lpc24xx/include/bsp/io.h                  |  4 +--
 bsps/arm/lpc24xx/include/bsp/lcd.h                 |  4 +--
 bsps/arm/lpc24xx/include/bsp/lpc-clock-config.h    |  2 +-
 bsps/arm/lpc24xx/include/bsp/lpc-ethernet-config.h |  2 +-
 bsps/arm/lpc24xx/include/bsp/lpc17xx.h             |  2 +-
 bsps/arm/lpc24xx/include/bsp/lpc24xx.h             |  4 +--
 bsps/arm/lpc24xx/include/bsp/ssp.h                 |  4 +--
 bsps/arm/lpc24xx/include/bsp/start-config.h        |  2 +-
 bsps/arm/lpc24xx/include/bsp/system-clocks.h       |  4 +--
 bsps/arm/lpc24xx/rtc/rtc-config.c                  |  2 +-
 bsps/arm/lpc24xx/spi/ssp.c                         |  2 +-
 bsps/arm/lpc24xx/start/bspidle.c                   |  2 +-
 bsps/arm/lpc24xx/start/bspreset-armv4.c            |  2 +-
 bsps/arm/lpc24xx/start/bspstart.c                  |  2 +-
 bsps/arm/lpc24xx/start/bspstarthooks.c             |  2 +-
 bsps/arm/lpc24xx/start/dma-copy.c                  |  2 +-
 bsps/arm/lpc24xx/start/dma.c                       |  2 +-
 bsps/arm/lpc24xx/start/io.c                        |  2 +-
 bsps/arm/lpc24xx/start/restart.c                   |  2 +-
 bsps/arm/lpc24xx/start/start-config-emc-dynamic.c  |  2 +-
 bsps/arm/lpc24xx/start/start-config-emc-static.c   |  2 +-
 bsps/arm/lpc24xx/start/start-config-mpu.c          |  2 +-
 bsps/arm/lpc24xx/start/start-config-pinsel.c       |  2 +-
 bsps/arm/lpc24xx/start/system-clocks.c             |  2 +-
 bsps/arm/lpc24xx/start/timer.c                     |  2 +-
 bsps/arm/lpc32xx/console/console-config.c          |  2 +-
 bsps/arm/lpc32xx/console/hsu.c                     |  2 +-
 bsps/arm/lpc32xx/include/bsp.h                     | 34 +++++++++-------------
 bsps/arm/lpc32xx/include/bsp/boot.h                |  2 +-
 bsps/arm/lpc32xx/include/bsp/hsu.h                 |  2 +-
 bsps/arm/lpc32xx/include/bsp/i2c.h                 |  2 +-
 bsps/arm/lpc32xx/include/bsp/irq.h                 |  2 +-
 bsps/arm/lpc32xx/include/bsp/lpc-clock-config.h    |  2 +-
 bsps/arm/lpc32xx/include/bsp/lpc-ethernet-config.h |  2 +-
 bsps/arm/lpc32xx/include/bsp/lpc32xx.h             |  2 +-
 bsps/arm/lpc32xx/include/bsp/mmu.h                 |  2 +-
 bsps/arm/lpc32xx/include/bsp/nand-mlc.h            |  2 +-
 bsps/arm/lpc32xx/include/tm27.h                    |  2 +-
 bsps/arm/lpc32xx/nand/nand-select.c                |  2 +-
 bsps/arm/lpc32xx/rtc/rtc-config.c                  |  2 +-
 bsps/arm/lpc32xx/start/bspidle.c                   |  2 +-
 bsps/arm/lpc32xx/start/bspreset.c                  |  2 +-
 bsps/arm/lpc32xx/start/bspstart.c                  |  2 +-
 bsps/arm/lpc32xx/start/bspstarthooks.c             |  2 +-
 bsps/arm/lpc32xx/start/restart.c                   |  2 +-
 bsps/arm/lpc32xx/start/system-clocks.c             |  2 +-
 bsps/arm/lpc32xx/start/timer.c                     |  2 +-
 bsps/arm/raspberrypi/include/bsp.h                 | 21 +++++++------
 bsps/arm/raspberrypi/include/bsp/irq.h             |  2 +-
 bsps/arm/raspberrypi/include/bsp/mmu.h             |  2 +-
 bsps/arm/raspberrypi/include/bsp/raspberrypi.h     |  2 +-
 bsps/arm/raspberrypi/include/bsp/rpi-fb.h          |  2 +-
 bsps/arm/raspberrypi/include/bsp/usart.h           |  2 +-
 bsps/arm/raspberrypi/include/bsp/vc.h              |  2 +-
 bsps/arm/raspberrypi/start/vc_defines.h            |  2 +-
 bsps/arm/realview-pbx-a9/include/bsp.h             | 22 ++++++++------
 bsps/arm/realview-pbx-a9/include/bsp/irq.h         |  2 +-
 bsps/arm/realview-pbx-a9/include/tm27.h            |  2 +-
 bsps/arm/rtl22xx/console/lpc22xx_uart.h            |  2 +-
 bsps/arm/rtl22xx/include/bsp.h                     | 21 ++++++++-----
 bsps/arm/smdk2410/include/bsp.h                    | 14 ++++++++-
 bsps/arm/smdk2410/include/smc.h                    |  2 +-
 bsps/arm/stm32f4/include/bsp.h                     | 20 ++++++++-----
 bsps/arm/stm32f4/include/bsp/i2c.h                 |  2 +-
 bsps/arm/stm32f4/include/bsp/io.h                  |  2 +-
 bsps/arm/stm32f4/include/bsp/irq.h                 |  2 +-
 bsps/arm/stm32f4/include/bsp/rcc.h                 |  2 +-
 bsps/arm/stm32f4/include/bsp/stm32f10xxx_exti.h    |  2 +-
 bsps/arm/stm32f4/include/bsp/stm32f4.h             |  2 +-
 bsps/arm/stm32f4/include/bsp/usart.h               |  2 +-
 bsps/arm/tms570/clock/clock.c                      |  2 +-
 bsps/arm/tms570/console/printk-support.c           |  2 +-
 bsps/arm/tms570/console/tms570-sci.c               |  2 +-
 bsps/arm/tms570/cpucounter/cpucounterread.c        |  2 +-
 bsps/arm/tms570/include/bsp.h                      | 14 ++++++++-
 bsps/arm/tms570/include/bsp/irq.h                  |  2 +-
 bsps/arm/tms570/include/bsp/system-clocks.h        |  4 +--
 bsps/arm/tms570/include/bsp/tms570-pinmux.h        |  2 +-
 bsps/arm/tms570/include/bsp/tms570-pins.h          |  2 +-
 bsps/arm/tms570/include/bsp/tms570-pom.h           |  2 +-
 bsps/arm/tms570/include/bsp/tms570-rti.h           |  2 +-
 bsps/arm/tms570/include/bsp/tms570-sci-driver.h    |  2 +-
 bsps/arm/tms570/include/bsp/tms570-sci.h           |  2 +-
 bsps/arm/tms570/include/bsp/tms570-vim.h           |  2 +-
 bsps/arm/tms570/include/bsp/tms570_selftest.h      |  2 +-
 .../tms570/include/bsp/tms570_selftest_parity.h    |  2 +-
 bsps/arm/tms570/include/bsp/tms570lc4357-pins.h    |  2 +-
 bsps/arm/tms570/include/bsp/tms570ls3137zwt-pins.h |  2 +-
 bsps/arm/tms570/irq/irq.c                          |  2 +-
 bsps/arm/tms570/start/bspreset.c                   |  2 +-
 bsps/arm/tms570/start/bspstart.c                   |  2 +-
 bsps/arm/tms570/start/bspstarthooks.c              |  2 +-
 bsps/arm/tms570/start/init_emif_sdram.c            |  2 +-
 bsps/arm/tms570/start/init_esm.c                   |  2 +-
 bsps/arm/tms570/start/init_pinmux.c                |  2 +-
 bsps/arm/tms570/start/pinmux.c                     |  2 +-
 bsps/arm/tms570/start/tms570-pom.c                 |  2 +-
 bsps/arm/tms570/start/tms570_selftest.c            |  2 +-
 bsps/arm/tms570/start/tms570_selftest_par_can.c    |  2 +-
 bsps/arm/tms570/start/tms570_selftest_par_mibspi.c |  2 +-
 bsps/arm/tms570/start/tms570_selftest_par_std.c    |  2 +-
 bsps/arm/tms570/start/tms570_selftest_parity.c     |  2 +-
 bsps/arm/tms570/start/tms570_tcram_tests.c         |  2 +-
 bsps/arm/xilinx-zynq/include/bsp.h                 | 23 ++++++++-------
 bsps/arm/xilinx-zynq/include/bsp/irq.h             |  2 +-
 bsps/arm/xilinx-zynq/include/bsp/zynq-uart.h       |  2 +-
 bsps/arm/xilinx-zynq/include/tm27.h                |  2 +-
 bsps/bfin/TLL6527M/include/bsp.h                   | 25 +++++++++-------
 bsps/bfin/TLL6527M/include/cplb.h                  |  2 +-
 bsps/bfin/TLL6527M/include/tm27.h                  |  2 +-
 bsps/bfin/bf537Stamp/include/bsp.h                 | 20 +++++++++++++
 bsps/bfin/eZKit533/include/bsp.h                   | 15 ++++++++--
 bsps/bfin/eZKit533/include/cplb.h                  |  2 +-
 bsps/bfin/eZKit533/include/tm27.h                  |  2 +-
 bsps/epiphany/epiphany_sim/include/bsp.h           | 17 ++++++++---
 bsps/i386/pc386/console/fb_vesa_rm.c               |  2 +-
 bsps/i386/pc386/console/i386kbd.h                  |  2 +-
 bsps/i386/pc386/console/ps2_mouse.h                |  2 +-
 bsps/i386/pc386/include/bsp.h                      | 17 ++++++-----
 bsps/i386/pc386/include/bsp/exar17d15x.h           |  2 +-
 bsps/i386/pc386/include/bsp/fb_default_mode.h      |  2 +-
 bsps/i386/pc386/include/bsp/fb_vesa.h              |  2 +-
 bsps/i386/pc386/include/bsp/rtd316.h               |  2 +-
 bsps/i386/pc386/include/bsp/tblsizes.h             |  2 +-
 bsps/i386/pc386/include/bsp/vbe3.h                 |  2 +-
 bsps/i386/pc386/include/crt.h                      |  2 +-
 bsps/i386/pc386/include/edid.h                     |  2 +-
 bsps/i386/pc386/include/rtems/kd.h                 |  2 +-
 bsps/i386/pc386/include/rtems/keyboard.h           |  2 +-
 bsps/i386/pc386/include/rtems/ps2_drv.h            |  2 +-
 bsps/i386/pc386/include/rtems/vgacons.h            |  2 +-
 bsps/i386/pc386/include/tm27.h                     |  2 +-
 bsps/i386/pc386/net/3c509.h                        |  2 +-
 bsps/i386/shared/doxygen.h                         |  2 +-
 bsps/include/libchip/wd80x3.h                      |  2 +-
 bsps/lm32/lm32_evr/include/bsp.h                   | 21 +++++++------
 bsps/lm32/milkymist/include/bsp.h                  | 10 +++++--
 bsps/m68k/av5282/include/bsp.h                     | 17 +++++++----
 bsps/m68k/csb360/include/bsp.h                     | 13 +++++----
 bsps/m68k/gen68340/include/bsp.h                   | 22 ++++++++------
 bsps/m68k/gen68360/include/bsp.h                   | 22 ++++++++------
 bsps/m68k/gen68360/include/tm27.h                  |  2 +-
 bsps/m68k/gen68360/spi/m360_spi.h                  |  2 +-
 bsps/m68k/genmcf548x/include/bsp.h                 | 10 +++++--
 bsps/m68k/genmcf548x/include/bsp/irq.h             |  2 +-
 bsps/m68k/genmcf548x/include/tm27.h                |  2 +-
 bsps/m68k/mcf5206elite/include/bsp.h               | 20 +++++++++++++
 bsps/m68k/mcf52235/include/bsp.h                   | 23 +++++++++------
 bsps/m68k/mcf5225x/include/bsp.h                   | 20 +++++++++++++
 bsps/m68k/mcf5235/include/bsp.h                    | 20 +++++++++++++
 bsps/m68k/mcf5329/include/bsp.h                    | 21 +++++++++++++
 bsps/m68k/mrm332/include/bsp.h                     | 20 +++++++++++++
 bsps/m68k/mvme147/include/bsp.h                    | 20 +++++++++++++
 bsps/m68k/mvme147s/include/bsp.h                   | 20 +++++++++++++
 bsps/m68k/mvme162/include/bsp.h                    | 20 +++++++++++++
 bsps/m68k/mvme167/include/bsp.h                    | 21 +++++++++----
 bsps/m68k/uC5282/include/bsp.h                     | 20 +++++++++++++
 bsps/mips/csb350/include/bsp.h                     | 21 ++++++++++---
 bsps/mips/hurricane/include/bsp.h                  | 18 +++++++++++-
 bsps/mips/jmr3904/include/bsp.h                    | 21 ++++++++++---
 bsps/mips/malta/include/bsp.h                      | 19 ++++++++++--
 bsps/mips/rbtx4925/include/bsp.h                   | 20 +++++++++++--
 bsps/mips/rbtx4938/include/bsp.h                   | 20 +++++++++++--
 bsps/moxie/moxiesim/include/bsp.h                  | 20 +++++++++++++
 bsps/nios2/nios2_iss/include/bsp.h                 | 20 +++++++++++++
 bsps/no_cpu/no_bsp/include/bsp.h                   | 16 ++++++++++
 bsps/or1k/generic_or1k/btimer/btimer.c             |  2 +-
 bsps/or1k/generic_or1k/include/bsp.h               | 18 ++++++------
 bsps/or1k/generic_or1k/include/bsp/generic_or1k.h  |  2 +-
 bsps/or1k/generic_or1k/include/bsp/uart.h          |  2 +-
 bsps/or1k/generic_or1k/start/bspstart.c            |  2 +-
 bsps/or1k/shared/doxygen.h                         |  2 +-
 bsps/powerpc/beatnik/include/bsp.h                 | 20 +++++++++++++
 bsps/powerpc/gen5200/include/bsp.h                 | 20 +++++++++++++
 bsps/powerpc/gen5200/include/bsp/bestcomm.h        |  2 +-
 bsps/powerpc/gen5200/include/bsp/mscan-base.h      |  4 ++-
 bsps/powerpc/gen83xx/include/bsp.h                 | 20 +++++++++++++
 bsps/powerpc/haleakala/include/bsp.h               | 20 +++++++++++++
 bsps/powerpc/motorola_powerpc/include/bsp.h        | 20 +++++++++++++
 bsps/powerpc/mpc55xxevb/clock/clock-config.c       |  2 +-
 bsps/powerpc/mpc55xxevb/include/bsp.h              | 16 ++++++++--
 bsps/powerpc/mpc55xxevb/include/bsp/irq.h          |  2 +-
 .../mpc55xxevb/include/bsp/mpc55xx-config.h        |  2 +-
 bsps/powerpc/mpc55xxevb/include/bsp/smsc9218i.h    |  2 +-
 bsps/powerpc/mpc55xxevb/include/mpc55xx/dspi.h     |  2 +-
 bsps/powerpc/mpc55xxevb/include/mpc55xx/edma.h     |  2 +-
 bsps/powerpc/mpc55xxevb/include/mpc55xx/emios.h    |  2 +-
 bsps/powerpc/mpc55xxevb/include/mpc55xx/mpc55xx.h  |  8 ++---
 bsps/powerpc/mpc55xxevb/include/mpc55xx/reg-defs.h |  2 +-
 .../powerpc/mpc55xxevb/include/mpc55xx/regs-edma.h |  2 +-
 bsps/powerpc/mpc55xxevb/include/mpc55xx/regs-mmu.h |  2 +-
 bsps/powerpc/mpc55xxevb/include/mpc55xx/regs.h     |  2 +-
 bsps/powerpc/mpc55xxevb/include/mpc55xx/siu.h      |  2 +-
 bsps/powerpc/mpc55xxevb/include/mpc55xx/watchdog.h |  2 +-
 bsps/powerpc/mpc55xxevb/net/smsc9218i.c            |  2 +-
 bsps/powerpc/mpc55xxevb/start/bspgetworkarea.c     |  2 +-
 bsps/powerpc/mpc55xxevb/start/bspreset.c           |  2 +-
 bsps/powerpc/mpc55xxevb/start/bspstart.c           |  2 +-
 bsps/powerpc/mpc55xxevb/start/edma.c               |  2 +-
 bsps/powerpc/mpc55xxevb/start/emios.c              |  2 +-
 bsps/powerpc/mpc55xxevb/start/exc-vector-base.S    |  2 +-
 bsps/powerpc/mpc55xxevb/start/flash_support.c      |  2 +-
 bsps/powerpc/mpc55xxevb/start/get-system-clock.c   |  2 +-
 bsps/powerpc/mpc55xxevb/start/idle-thread.c        |  2 +-
 bsps/powerpc/mpc55xxevb/start/irq.c                |  2 +-
 bsps/powerpc/mpc55xxevb/start/sd-card-init.c       |  2 +-
 bsps/powerpc/mpc55xxevb/start/siu.c                |  2 +-
 bsps/powerpc/mpc55xxevb/start/start-clock.c        |  2 +-
 bsps/powerpc/mpc55xxevb/start/start-config-clock.c |  2 +-
 .../mpc55xxevb/start/start-config-ebi-cs-cal.c     |  2 +-
 .../powerpc/mpc55xxevb/start/start-config-ebi-cs.c |  2 +-
 bsps/powerpc/mpc55xxevb/start/start-config-ebi.c   |  2 +-
 .../mpc55xxevb/start/start-config-mmu-early.c      |  2 +-
 bsps/powerpc/mpc55xxevb/start/start-config-mmu.c   |  2 +-
 .../mpc55xxevb/start/start-config-siu-pcr.c        |  2 +-
 bsps/powerpc/mpc55xxevb/start/start-early.c        |  2 +-
 bsps/powerpc/mpc55xxevb/start/start-prologue.c     |  2 +-
 bsps/powerpc/mpc55xxevb/start/start-watchdog.c     |  2 +-
 bsps/powerpc/mpc8260ads/include/bsp.h              | 20 +++++++++++++
 bsps/powerpc/mvme3100/include/bsp.h                | 16 ++++++----
 bsps/powerpc/mvme3100/include/bsp/VMEConfig.h      |  2 +-
 bsps/powerpc/mvme3100/include/bsp/if_tsec_pub.h    |  2 +-
 bsps/powerpc/mvme3100/include/bsp/irq.h            |  2 +-
 bsps/powerpc/mvme5500/include/bsp.h                | 20 +++++++++++++
 bsps/powerpc/psim/include/bsp.h                    | 20 +++++++++++++
 bsps/powerpc/qemuppc/include/bsp.h                 | 20 +++++++++++++
 bsps/powerpc/qoriq/btimer/btimer.c                 |  2 +-
 bsps/powerpc/qoriq/clock/clock-config.c            |  2 +-
 bsps/powerpc/qoriq/console/console-config.c        |  2 +-
 bsps/powerpc/qoriq/console/uart-bridge-master.c    |  2 +-
 bsps/powerpc/qoriq/console/uart-bridge-slave.c     |  2 +-
 bsps/powerpc/qoriq/include/bsp.h                   | 16 ++++++++--
 bsps/powerpc/qoriq/include/bsp/intercom.h          |  4 +--
 bsps/powerpc/qoriq/include/bsp/irq.h               | 22 +++++++-------
 bsps/powerpc/qoriq/include/bsp/mmu.h               |  4 +--
 bsps/powerpc/qoriq/include/bsp/qoriq.h             |  2 +-
 bsps/powerpc/qoriq/include/bsp/tsec-config.h       |  2 +-
 bsps/powerpc/qoriq/include/bsp/uart-bridge.h       |  4 +--
 bsps/powerpc/qoriq/include/tm27.h                  |  2 +-
 bsps/powerpc/qoriq/irq/irq.c                       |  2 +-
 bsps/powerpc/qoriq/mpci/intercom-mpci.c            |  2 +-
 bsps/powerpc/qoriq/mpci/intercom.c                 |  2 +-
 bsps/powerpc/qoriq/mpci/lock.S                     |  2 +-
 bsps/powerpc/qoriq/net/network.c                   |  2 +-
 bsps/powerpc/qoriq/rtc/rtc-config.c                |  2 +-
 bsps/powerpc/qoriq/start/bspreset.c                |  2 +-
 bsps/powerpc/qoriq/start/bsprestart.c              |  2 +-
 bsps/powerpc/qoriq/start/bspstart.c                |  2 +-
 bsps/powerpc/qoriq/start/mmu-config.c              |  2 +-
 bsps/powerpc/qoriq/start/mmu-tlb1.S                |  2 +-
 bsps/powerpc/qoriq/start/mmu.c                     |  2 +-
 bsps/powerpc/shared/doxygen.h                      |  2 +-
 bsps/powerpc/ss555/include/bsp.h                   | 20 +++++++++++++
 bsps/powerpc/t32mppc/include/bsp.h                 | 20 +++++++++++++
 bsps/powerpc/tqm8xx/include/bsp.h                  | 21 +++++++++++++
 bsps/powerpc/virtex/include/bsp.h                  | 20 +++++++++++++
 bsps/powerpc/virtex4/include/bsp.h                 | 20 +++++++++++++
 bsps/powerpc/virtex4/include/bsp/mmu.h             |  4 +--
 bsps/powerpc/virtex4/start/mmu.c                   |  2 +-
 bsps/powerpc/virtex5/include/bsp.h                 | 19 ++++++++++--
 bsps/powerpc/virtex5/include/bsp/mmu.h             |  4 +--
 bsps/powerpc/virtex5/start/mmu.c                   |  2 +-
 bsps/riscv/griscv/include/amba.h                   | 19 ++++++++++--
 bsps/riscv/griscv/include/bsp.h                    | 21 +++++++++++++
 bsps/riscv/riscv/include/bsp.h                     | 20 +++++++++++++
 bsps/sh/gensh1/include/bsp.h                       | 20 +++++++++++++
 bsps/sh/gensh2/include/bsp.h                       | 20 +++++++++++++
 bsps/sh/gensh4/include/bsp.h                       | 20 +++++++++++++
 bsps/sh/shsim/include/bsp.h                        | 21 +++++++++++++
 bsps/sparc/erc32/include/bsp.h                     | 24 ++++++++-------
 bsps/sparc/leon2/btimer/btimer.c                   |  2 +-
 bsps/sparc/leon2/clock/ckinit.c                    |  2 +-
 bsps/sparc/leon2/console/console.c                 |  2 +-
 bsps/sparc/leon2/console/debugputs.c               |  2 +-
 bsps/sparc/leon2/gnatsupp/gnatsupp.c               |  2 +-
 bsps/sparc/leon2/include/bsp.h                     | 13 +++++----
 bsps/sparc/leon2/include/bsp/irq.h                 |  2 +-
 bsps/sparc/leon2/include/leon.h                    |  7 ++---
 bsps/sparc/leon2/include/tm27.h                    |  2 +-
 bsps/sparc/leon2/net/leon_open_eth.c               |  2 +-
 bsps/sparc/leon2/net/leon_smc91111.c               |  2 +-
 bsps/sparc/leon2/start/bspdelay.c                  |  2 +-
 bsps/sparc/leon2/start/bspidle.c                   |  2 +-
 bsps/sparc/leon2/start/bspstart.c                  |  2 +-
 bsps/sparc/leon2/start/setvec.c                    |  2 +-
 bsps/sparc/leon2/start/spurious.c                  |  2 +-
 bsps/sparc/leon3/include/amba.h                    | 19 ++++++++++--
 bsps/sparc/leon3/include/bsp.h                     | 13 +++++----
 bsps/sparc64/niagara/include/bsp.h                 | 20 +++++++++++++
 bsps/sparc64/usiii/include/bsp.h                   | 20 +++++++++++++
 bsps/v850/gdbv850sim/include/bsp.h                 | 19 ++++++++++++
 bsps/x86_64/amd64/include/bsp.h                    | 16 ++++++++++
 bsps/x86_64/shared/doxygen.h                       |  2 +-
 374 files changed, 1693 insertions(+), 653 deletions(-)

diff --git a/bsps/arm/atsam/include/bsp.h b/bsps/arm/atsam/include/bsp.h
index cd0103ad70..2556f6046d 100644
--- a/bsps/arm/atsam/include/bsp.h
+++ b/bsps/arm/atsam/include/bsp.h
@@ -1,3 +1,9 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsARMAtsam
+ */
+
 /*
  * Copyright (c) 2016 embedded brains GmbH.  All rights reserved.
  *
@@ -15,6 +21,16 @@
 #ifndef LIBBSP_ARM_ATSAM_BSP_H
 #define LIBBSP_ARM_ATSAM_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsARMAtsam Atmel/Microchip SAM E70, S70, V70 and V71
+ *
+ * @ingroup RTEMSBSPsARM
+ *
+ * @brief Atmel/Microchip SAM E70, S70, V70 and V71 Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 
@@ -93,10 +109,10 @@ void atsam_rtc_get_time(rtems_time_of_day *tod);
 
 void bsp_restart( const void *const addr );
 
-/** @} */
-
 #ifdef __cplusplus
 }
 #endif /* __cplusplus */
 
+/** @} */
+
 #endif /* LIBBSP_ARM_ATSAM_BSP_H */
diff --git a/bsps/arm/beagle/include/bsp.h b/bsps/arm/beagle/include/bsp.h
index f15d9102ad..cb415fda89 100644
--- a/bsps/arm/beagle/include/bsp.h
+++ b/bsps/arm/beagle/include/bsp.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup arm_beagle
+ * @ingroup RTEMSBSPsARMBeagle
  *
  * @brief Global BSP definitions.
  */
@@ -27,6 +27,16 @@
 #ifndef LIBBSP_ARM_BEAGLE_BSP_H
 #define LIBBSP_ARM_BEAGLE_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsARMBeagle Beaglebone
+ *
+ * @ingroup RTEMSBSPsARM
+ *
+ * @brief Beaglebone Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <stdint.h>
 #include <bsp/start.h>
@@ -346,16 +356,6 @@ static inline void write_ttbr0(uint32_t bar)
 #define    BSP_RESET_BOARD_AT_EXIT 1
     /* causes qemu to exit, signaling end of test */
 
-
-/**
- * @defgroup arm_beagle Beaglebone, Beagleboard Support
- *
- * @ingroup RTEMSBSPsARM
- *
- * @brief Beaglebones and beagleboards support package
- *
- */
-
 /**
  * @brief Beagleboard specific set up of the MMU.
  *
@@ -363,4 +363,6 @@ static inline void write_ttbr0(uint32_t bar)
  */
 BSP_START_TEXT_SECTION void beagle_setup_mmu_and_cache(void);
 
+/* @} */
+
 #endif /* LIBBSP_ARM_BEAGLE_BSP_H */
diff --git a/bsps/arm/csb336/include/bsp.h b/bsps/arm/csb336/include/bsp.h
index c886dd9a5f..9e6cbf709a 100644
--- a/bsps/arm/csb336/include/bsp.h
+++ b/bsps/arm/csb336/include/bsp.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup arm_csb336
+ * @ingroup RTEMSBSPsARMCSB336
  *
  * @brief Global BSP definitions.
  */
@@ -19,6 +19,16 @@
 #ifndef LIBBSP_ARM_CSB336_BSP_H
 #define LIBBSP_ARM_CSB336_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsARMCSB336 CSB336
+ *
+ * @ingroup RTEMSBSPsARM Board Support Package
+ *
+ * @brief CSB336 support package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 
@@ -29,16 +39,6 @@
 extern "C" {
 #endif
 
-/**
- * @defgroup arm_csb336 CSB336 Support
- *
- * @ingroup RTEMSBSPsARM
- *
- * @brief CSB336 support package.
- *
- * @{
- */
-
 #define BSP_FEATURE_IRQ_EXTENSION
 
 /* What is the input clock freq in hertz? */
@@ -58,11 +58,11 @@ int rtems_mc9328mxl_enet_attach(struct rtems_bsdnet_ifconfig *config,
 #define RTEMS_BSP_NETWORK_DRIVER_NAME	"eth0"
 #define RTEMS_BSP_NETWORK_DRIVER_ATTACH	rtems_mc9328mxl_enet_attach
 
-/** @} */
-
 #ifdef __cplusplus
 }
 #endif
 
+/** @} */
+
 #endif /* _BSP_H */
 
diff --git a/bsps/arm/csb336/net/lan91c11x.c b/bsps/arm/csb336/net/lan91c11x.c
index 59bacc9fef..779fbdc039 100644
--- a/bsps/arm/csb336/net/lan91c11x.c
+++ b/bsps/arm/csb336/net/lan91c11x.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup arm_csb336
+ * @ingroup RTEMSBSPsARMCSB336
  *
  * @brief Helper functions for SMSC LAN91C11x
  */
diff --git a/bsps/arm/csb336/net/lan91c11x.h b/bsps/arm/csb336/net/lan91c11x.h
index 8172874e0c..c1181bda69 100644
--- a/bsps/arm/csb336/net/lan91c11x.h
+++ b/bsps/arm/csb336/net/lan91c11x.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup arm_csb336
+ * @ingroup RTEMSBSPsARMCSB336
  *
  * @brief SMSC LAN91C11x ethernet devices definitions.
  */
@@ -9,7 +9,7 @@
 /**
  * @defgroup arm_csb336_lan91c11x SMSC LAN91C11x
  *
- * @ingroup arm_csb336
+ * @ingroup RTEMSBSPsARMCSB336
  *
  * @brief SMSC LAN91C11x ethernet devices definitions.
  */
diff --git a/bsps/arm/csb337/include/at91rm9200.h b/bsps/arm/csb337/include/at91rm9200.h
index 706b3cc03d..7dbac04384 100644
--- a/bsps/arm/csb337/include/at91rm9200.h
+++ b/bsps/arm/csb337/include/at91rm9200.h
@@ -353,7 +353,7 @@ typedef volatile unsigned long vulong;
 /**
  * @defgroup csb337_at91rm9200 AT91RM9200
  *
- * @ingroup arm_csb337
+ * @ingroup RTEMSBSPsARMCSB337
  *
  * @brief Atmel Register Definitions, Used In KIT637_V6 (CSB637)
  */
diff --git a/bsps/arm/csb337/include/bits.h b/bsps/arm/csb337/include/bits.h
index 09a5cd50b7..105f4d4bd6 100644
--- a/bsps/arm/csb337/include/bits.h
+++ b/bsps/arm/csb337/include/bits.h
@@ -58,7 +58,7 @@
 /**
  *@defgroup csb337_bits Bits
  *
- *@ingroup arm_csb337
+ *@ingroup RTEMSBSPsARMCSB337
  *
  *@brief
  *
diff --git a/bsps/arm/csb337/include/bsp.h b/bsps/arm/csb337/include/bsp.h
index c757bf1bc9..d5daa63d3e 100644
--- a/bsps/arm/csb337/include/bsp.h
+++ b/bsps/arm/csb337/include/bsp.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup arm_csb337
+ * @ingroup RTEMSBSPsARMCSB337
  *
  * @brief Global BSP definitions.
  */
@@ -19,6 +19,16 @@
 #ifndef LIBBSP_ARM_CSB337_BSP_H
 #define LIBBSP_ARM_CSB337_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsARMCSB337 CSB337
+ *
+ * @ingroup RTEMSBSPsARM
+ *
+ * @brief CSB337 Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 
@@ -28,16 +38,6 @@
 extern "C" {
 #endif
 
-/**
- * @defgroup arm_csb337 CSB337 Support
- *
- * @ingroup RTEMSBSPsARM
- *
- * @brief CSB337 support package.
- *
- * @{
- */
-
 #define BSP_FEATURE_IRQ_EXTENSION
 
 /* What is the input clock freq in hertz? */
@@ -68,11 +68,11 @@ int rtems_at91rm9200_emac_attach(struct rtems_bsdnet_ifconfig *config, int attac
 #define RTEMS_BSP_NETWORK_DRIVER_NAME	"eth0"
 #define RTEMS_BSP_NETWORK_DRIVER_ATTACH	rtems_at91rm9200_emac_attach
 
-/** @} */
-
 #ifdef __cplusplus
 }
 #endif
 
+/** @} */
+
 #endif /* _BSP_H */
 
diff --git a/bsps/arm/csb337/include/bsp/irq.h b/bsps/arm/csb337/include/bsp/irq.h
index ce683bc4ff..ffc022fa4f 100644
--- a/bsps/arm/csb337/include/bsp/irq.h
+++ b/bsps/arm/csb337/include/bsp/irq.h
@@ -32,7 +32,7 @@
 /**
  * @defgroup csb337_interrupt Interrrupt Support
  *
- * @ingroup arm_csb337
+ * @ingroup RTEMSBSPsARMCSB337
  *
  * @brief Interrupt Support.
  */
diff --git a/bsps/arm/csb337/include/font8x16.h b/bsps/arm/csb337/include/font8x16.h
index 0445b67668..3d0e144626 100644
--- a/bsps/arm/csb337/include/font8x16.h
+++ b/bsps/arm/csb337/include/font8x16.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup arm_csb337
+ * @ingroup RTEMSBSPsARMCSB337
  *
  * @brief Simple 8 x 16 font, printable characters only.
  */
@@ -9,7 +9,7 @@
 /**
  * @defgroup csb337_font Simple 8 x 16 font
  *
- * @ingroup arm_csb337
+ * @ingroup RTEMSBSPsARMCSB337
  *
  * @brief Simple 8 x 16 font, printable characters only.
  */
diff --git a/bsps/arm/csb337/include/sed1356.h b/bsps/arm/csb337/include/sed1356.h
index d4451ab7e1..583a2a3a77 100644
--- a/bsps/arm/csb337/include/sed1356.h
+++ b/bsps/arm/csb337/include/sed1356.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup arm_csb337
+ * @ingroup RTEMSBSPsARMCSB337
  *
  * @brief Public Interface for SED Video Controller Operations.
  */
@@ -9,7 +9,7 @@
 /**
  * @defgroup csb337_sed1356 SED Video Controller
  *
- * @ingroup arm_csb337
+ * @ingroup RTEMSBSPsARMCSB337
  *
  * @brief Public Interface for SED Video Controller Operations.
  */
diff --git a/bsps/arm/csb337/include/sed1356_16bit.h b/bsps/arm/csb337/include/sed1356_16bit.h
index 5ccf85d01c..a6149810b7 100644
--- a/bsps/arm/csb337/include/sed1356_16bit.h
+++ b/bsps/arm/csb337/include/sed1356_16bit.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup arm_csb337
+ * @ingroup RTEMSBSPsARMCSB337
  *
  * @brief SED1356 LCD/CRT Controllers for KIT637_V6 (CSB637)
  *        16-Bit access mode
@@ -10,7 +10,7 @@
 /**
  * @defgroup csb337_sed1356 SED Video Controller.
  *
- * @ingroup arm_csb337
+ * @ingroup RTEMSBSPsARMCSB337
  *
  * @brief SED1356 LCD/CRT Controllers for KIT637_V6 (CSB637)
  *        16-Bit access mode
diff --git a/bsps/arm/csb337/include/tm27.h b/bsps/arm/csb337/include/tm27.h
index 80b371d20b..c21ebcb284 100644
--- a/bsps/arm/csb337/include/tm27.h
+++ b/bsps/arm/csb337/include/tm27.h
@@ -1,7 +1,7 @@
 /**
  *@file
  *
- *@ingroup arm_csb337
+ *@ingroup RTEMSBSPsARMCSB337
  *
  *@brief Implementations of interrupt mechanisms for Time Test 27.
  *
diff --git a/bsps/arm/edb7312/include/bsp.h b/bsps/arm/edb7312/include/bsp.h
index 0317ed7cc2..a182aeef46 100644
--- a/bsps/arm/edb7312/include/bsp.h
+++ b/bsps/arm/edb7312/include/bsp.h
@@ -1,6 +1,6 @@
 /**
  * @file
- * @ingroup arm_edb7312
+ * @ingroup RTEMSBSPsARMEDB7312
  * @brief Global BSP definitions.
  */
 
@@ -16,6 +16,16 @@
 #ifndef LIBBSP_ARM_EDB7312_BSP_H
 #define LIBBSP_ARM_EDB7312_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsARMEDB7312 EDB7312
+ *
+ * @ingroup RTEMSBSPsARM
+ *
+ * @brief EDB7312 Board Support Package.
+ *
+ * @{
+ */
+
 #ifndef ASM
 
 #include <bspopts.h>
@@ -29,13 +39,6 @@ extern "C" {
 
 #define BSP_FEATURE_IRQ_EXTENSION
 
-/**
- * @defgroup arm_edb7312 EDB7312 Support
- * @ingroup RTEMSBSPsARM
- * @brief EDB7312 Support Package
- * @{
- */
-
 /**
  * @brief Define the interrupt mechanism for Time Test 27
  *
@@ -61,12 +64,12 @@ int cs8900_driver_attach (struct rtems_bsdnet_ifconfig *config,
  */
 void edb7312_interrupt_dispatch(rtems_vector_number vector);
 
-/** @} */
-
 #ifdef __cplusplus
 }
 #endif
 
 #endif /* !ASM */
 
+/** @} */
+
 #endif /* _BSP_H */
diff --git a/bsps/arm/edb7312/include/bsp/irq.h b/bsps/arm/edb7312/include/bsp/irq.h
index 04579a7c6f..e834e9cf5c 100644
--- a/bsps/arm/edb7312/include/bsp/irq.h
+++ b/bsps/arm/edb7312/include/bsp/irq.h
@@ -31,7 +31,7 @@
 
 /**
  * @defgroup edb7312_interrupt Interrupt Support
- * @ingroup arm_edb7312
+ * @ingroup RTEMSBSPsARMEDB7312
  * @brief Interrupt Support
  * @{
  */
diff --git a/bsps/arm/edb7312/include/ep7312.h b/bsps/arm/edb7312/include/ep7312.h
index ba9d430bc6..69f3e8d727 100644
--- a/bsps/arm/edb7312/include/ep7312.h
+++ b/bsps/arm/edb7312/include/ep7312.h
@@ -28,7 +28,7 @@
 
 /**
  * @defgroup edb7312_registers Register Definitions
- * @ingroup arm_edb7312
+ * @ingroup RTEMSBSPsARMEDB7312
  * @brief Cirrus EP7312 Register Definitions
  * @{
  */
diff --git a/bsps/arm/gdbarmsim/include/bsp.h b/bsps/arm/gdbarmsim/include/bsp.h
index 66e5636912..b880cd793a 100644
--- a/bsps/arm/gdbarmsim/include/bsp.h
+++ b/bsps/arm/gdbarmsim/include/bsp.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup arm_gdbarmsim
+ * @ingroup RTEMSBSPsARMGDBSim
  *
  * @brief Global BSP definitions.
  */
@@ -18,6 +18,16 @@
 #ifndef LIBBSP_ARM_GDBARMSIM_BSP_H
 #define LIBBSP_ARM_GDBARMSIM_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsARMGDBSim GDB Simulator
+ *
+ * @ingroup RTEMSBSPsARM
+ *
+ * @brief GDB Simulator Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 
@@ -29,16 +39,6 @@
 extern "C" {
 #endif
 
-/**
- * @defgroup arm_gdbarmsim GDBARMSIM Support
- *
- * @ingroup RTEMSBSPsARM
- *
- * @brief GDBARMSIM support package.
- *
- * @{
- */
-
 //#define BSP_GET_WORK_AREA_DEBUG 1
 
 /**
@@ -76,11 +76,12 @@ int     gdbarmsim_read(int, char *, int);
 int     gdbarmsim_swiread(int, char *, int);
 void    initialise_monitor_handles(void);
 
-/** @} */
 
 #ifdef __cplusplus
 }
 #endif
 
+/** @} */
+
 #endif /* _BSP_H */
 
diff --git a/bsps/arm/gdbarmsim/include/bsp/swi.h b/bsps/arm/gdbarmsim/include/bsp/swi.h
index e9eb434a58..7604ad9fad 100644
--- a/bsps/arm/gdbarmsim/include/bsp/swi.h
+++ b/bsps/arm/gdbarmsim/include/bsp/swi.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup arm_gdbarmsim
+ * @ingroup RTEMSBSPsARMGDBSim
  *
  * @brief Software interrupt definitions.
  */
@@ -9,7 +9,7 @@
 /**
  * @defgroup gdbarmsim_swi SWI Definitions
  *
- * @ingroup arm_gdbarmsim
+ * @ingroup RTEMSBSPsARMGDBSim
  *
  * @brief Software interrupt definitions.
  */
diff --git a/bsps/arm/gumstix/include/bsp.h b/bsps/arm/gumstix/include/bsp.h
index 687ffde4e1..538fb745c9 100644
--- a/bsps/arm/gumstix/include/bsp.h
+++ b/bsps/arm/gumstix/include/bsp.h
@@ -1,6 +1,6 @@
 /**
  * @file
- * @ingroup arm_gumstix
+ * @ingroup RTEMSBSPsARMGumstix
  * @brief Global BSP definitions.
  */
 
@@ -15,6 +15,16 @@
 #ifndef LIBBSP_ARM_GUMSTIX_BSP_H
 #define LIBBSP_ARM_GUMSTIX_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsARMGumstix Gumstix
+ *
+ * @ingroup RTEMSBSPsARM
+ *
+ * @brief Gumstix Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 
@@ -24,13 +34,6 @@
 extern "C" {
 #endif
 
-/**
- * @defgroup arm_gumstix Gumstix Support
- * @ingroup RTEMSBSPsARM
- * @brief Gumstix support package
- * @{
- */
-
 #define BSP_FEATURE_IRQ_EXTENSION
 
 #define BSP_HAS_FRAME_BUFFER 1
@@ -71,11 +74,11 @@ extern int rtems_ne_driver_attach(struct rtems_bsdnet_ifconfig *, int);
 #define RTEMS_BSP_NETWORK_DRIVER_ATTACH BSP_NE2000_NETWORK_DRIVER_ATTACH
 #endif
 
-/** @} */
-
 #ifdef __cplusplus
 }
 #endif
 
+/** @} */
+
 #endif /* _BSP_H */
 
diff --git a/bsps/arm/gumstix/net/wd80x3.h b/bsps/arm/gumstix/net/wd80x3.h
index c4a3aba758..0a9f3432bc 100644
--- a/bsps/arm/gumstix/net/wd80x3.h
+++ b/bsps/arm/gumstix/net/wd80x3.h
@@ -15,7 +15,7 @@
 
 /**
  * @defgroup gumstix_dp8390 DP8390 Support
- * @ingroup arm_gumstix
+ * @ingroup RTEMSBSPsARMGumstix
  * @brief DP8390 Ethernet Controller Support
  * @{
  */
diff --git a/bsps/arm/imx/include/bsp.h b/bsps/arm/imx/include/bsp.h
index b5fb7127df..4ed35c68fe 100644
--- a/bsps/arm/imx/include/bsp.h
+++ b/bsps/arm/imx/include/bsp.h
@@ -1,3 +1,9 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsARMimx
+ */
+
 /*
  * Copyright (c) 2017 embedded brains GmbH.  All rights reserved.
  *
@@ -15,6 +21,16 @@
 #ifndef LIBBSP_ARM_IMX_BSP_H
 #define LIBBSP_ARM_IMX_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsARMimx NXP i.MX
+ *
+ * @ingroup RTEMSBSPsARM
+ *
+ * @brief NXP i.MX Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 
 #define BSP_FEATURE_IRQ_EXTENSION
@@ -81,4 +97,6 @@ int spi_bus_register_imx(const char *bus_path, const char *alias_or_path);
 
 #endif /* ASM */
 
+/* @} */
+
 #endif /* LIBBSP_ARM_IMX_BSP_H */
diff --git a/bsps/arm/include/bsp/lpc-dma.h b/bsps/arm/include/bsp/lpc-dma.h
index 45d567b36c..37fcab480f 100644
--- a/bsps/arm/include/bsp/lpc-dma.h
+++ b/bsps/arm/include/bsp/lpc-dma.h
@@ -33,8 +33,8 @@ extern "C" {
 /**
  * @defgroup lpc_dma DMA Support
  *
- * @ingroup arm_lpc24xx
- * @ingroup arm_lpc32xx
+ * @ingroup RTEMSBSPsARMLPC24XX
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @brief DMA support.
  *
diff --git a/bsps/arm/include/bsp/lpc-emc.h b/bsps/arm/include/bsp/lpc-emc.h
index 31cb4241c8..dead6e7f0d 100644
--- a/bsps/arm/include/bsp/lpc-emc.h
+++ b/bsps/arm/include/bsp/lpc-emc.h
@@ -32,8 +32,8 @@ extern "C" {
 /**
  * @defgroup lpc_emc EMC Support
  *
- * @ingroup arm_lpc24xx
- * @ingroup arm_lpc32xx
+ * @ingroup RTEMSBSPsARMLPC24XX
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @brief EMC Support
  *
diff --git a/bsps/arm/include/bsp/lpc-i2s.h b/bsps/arm/include/bsp/lpc-i2s.h
index 65e951b7d7..433f2fd7cd 100644
--- a/bsps/arm/include/bsp/lpc-i2s.h
+++ b/bsps/arm/include/bsp/lpc-i2s.h
@@ -32,8 +32,8 @@ extern "C" {
 /**
  * @defgroup lpc_i2s I2S Support
  *
- * @ingroup arm_lpc24xx
- * @ingroup arm_lpc32xx
+ * @ingroup RTEMSBSPsARMLPC24XX
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @brief I2S support.
  *
diff --git a/bsps/arm/include/bsp/lpc-lcd.h b/bsps/arm/include/bsp/lpc-lcd.h
index a3ca4fe11a..aac295eef7 100644
--- a/bsps/arm/include/bsp/lpc-lcd.h
+++ b/bsps/arm/include/bsp/lpc-lcd.h
@@ -32,8 +32,8 @@ extern "C" {
 /**
  * @defgroup lpc_lcd LCD Support
  *
- * @ingroup lpc
- * @ingroup arm_lpc32xx
+ * @ingroup RTEMSBSPsARMLPC24XX
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @brief LCD support.
  *
diff --git a/bsps/arm/include/bsp/lpc-timer.h b/bsps/arm/include/bsp/lpc-timer.h
index 4c7ad4f1d1..5517a8cbe6 100644
--- a/bsps/arm/include/bsp/lpc-timer.h
+++ b/bsps/arm/include/bsp/lpc-timer.h
@@ -31,8 +31,8 @@ extern "C" {
 /**
  * @defgroup lpc_timer Timer Support
  *
- * @ingroup arm_lpc24xx
- * @ingroup arm_lpc32xx
+ * @ingroup RTEMSBSPsARMLPC24XX
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @brief Timer support.
  *
diff --git a/bsps/arm/lm3s69xx/include/bsp.h b/bsps/arm/lm3s69xx/include/bsp.h
index 1fae730892..6302e82d0c 100644
--- a/bsps/arm/lm3s69xx/include/bsp.h
+++ b/bsps/arm/lm3s69xx/include/bsp.h
@@ -1,7 +1,7 @@
 /**
  * @file
  * 
- * @ingroup arm_lm3s69xx
+ * @ingroup RTEMSBSPsARMLM3S69XX
  *
  * @brief Global BSP Definitions
  */
@@ -23,6 +23,14 @@
 #ifndef LIBBSP_ARM_LM3S69XX_BSP_H
 #define LIBBSP_ARM_LM3S69XX_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsARMLM3S69XX LM3S69XX
+ *
+ * @ingroup RTEMSBSPsARM
+ *
+ * @brief LM3S69XX Board Support Package.
+ */
+
 #include <bspopts.h>
 
 #define BSP_FEATURE_IRQ_EXTENSION
@@ -41,12 +49,7 @@
 
 #endif /* ASM */
 
+/* @} */
+
 #endif /* LIBBSP_ARM_LM3S69XX_BSP_H */
 
-/**
- * @defgroup arm_lm3s69xx LM3S69XX Support
- *
- * @ingroup RTEMSBSPsARM
- *
- * @brief LM3S69XX Support Package
- */
diff --git a/bsps/arm/lm3s69xx/include/bsp/io.h b/bsps/arm/lm3s69xx/include/bsp/io.h
index f9ddf4c8ee..3e3846e1c6 100644
--- a/bsps/arm/lm3s69xx/include/bsp/io.h
+++ b/bsps/arm/lm3s69xx/include/bsp/io.h
@@ -22,7 +22,7 @@
 /**
  * @defgroup lm3s69xx_io IO Support
  *
- * @ingroup arm_lm3s69xx
+ * @ingroup RTEMSBSPsARMLM3S69XX
  *
  * @brief IO support.
  */
diff --git a/bsps/arm/lm3s69xx/include/bsp/irq.h b/bsps/arm/lm3s69xx/include/bsp/irq.h
index 0b380c2ce2..dd49728881 100644
--- a/bsps/arm/lm3s69xx/include/bsp/irq.h
+++ b/bsps/arm/lm3s69xx/include/bsp/irq.h
@@ -35,7 +35,7 @@
 /**
  * @defgroup lm3s69xx_interrupt Interrupt Support
  *
- * @ingroup arm_lm3s69xx
+ * @ingroup RTEMSBSPsARMLM3S69XX
  *
  * @brief Interrupt support.
  */
diff --git a/bsps/arm/lm3s69xx/include/bsp/lm3s69xx.h b/bsps/arm/lm3s69xx/include/bsp/lm3s69xx.h
index ce3548d376..623b6ca45e 100644
--- a/bsps/arm/lm3s69xx/include/bsp/lm3s69xx.h
+++ b/bsps/arm/lm3s69xx/include/bsp/lm3s69xx.h
@@ -30,7 +30,7 @@
 /**
  * @defgroup lm3s69xx_reg Register Definitions
  *
- * @ingroup arm_lm3s69xx
+ * @ingroup RTEMSBSPsARMLM3S69XX
  *
  * @brief Register Definitions 
  */
diff --git a/bsps/arm/lm3s69xx/include/bsp/ssi.h b/bsps/arm/lm3s69xx/include/bsp/ssi.h
index e6e44c5aae..66d5302655 100644
--- a/bsps/arm/lm3s69xx/include/bsp/ssi.h
+++ b/bsps/arm/lm3s69xx/include/bsp/ssi.h
@@ -21,7 +21,7 @@
 /**
  * @defgroup lm3s69xx_ssi SSI Support
  *
- * @ingroup arm_lm3s69xx
+ * @ingroup RTEMSBSPsARMLM3S69XX
  *
  * @brief SSI Support
  */
diff --git a/bsps/arm/lm3s69xx/include/bsp/syscon.h b/bsps/arm/lm3s69xx/include/bsp/syscon.h
index 016839b5e5..2904138f4d 100644
--- a/bsps/arm/lm3s69xx/include/bsp/syscon.h
+++ b/bsps/arm/lm3s69xx/include/bsp/syscon.h
@@ -20,7 +20,7 @@
 /**
  * @defgroup lm3s69xx_syscon Syscon Support
  *
- * @ingroup arm_lm3s69xx
+ * @ingroup RTEMSBSPsARMLM3S69XX
  *
  * @brief Syscon Support
  */
diff --git a/bsps/arm/lm3s69xx/include/bsp/uart.h b/bsps/arm/lm3s69xx/include/bsp/uart.h
index 544fed55eb..1d31c236b3 100644
--- a/bsps/arm/lm3s69xx/include/bsp/uart.h
+++ b/bsps/arm/lm3s69xx/include/bsp/uart.h
@@ -28,7 +28,7 @@
 /**
  * defgroup lm3s69xx_uart UART Support
  *
- * @ingroup arm_lm3s69xx
+ * @ingroup RTEMSBSPsARMLM3S69XX
  *
  * @brief UART support.
  */
diff --git a/bsps/arm/lpc176x/btimer/btimer.c b/bsps/arm/lpc176x/btimer/btimer.c
index d2dcfbb1b2..e5d21fcbe9 100644
--- a/bsps/arm/lpc176x/btimer/btimer.c
+++ b/bsps/arm/lpc176x/btimer/btimer.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief Timer benchmark functions for the lpc176x bsp.
  */
diff --git a/bsps/arm/lpc176x/can/can.c b/bsps/arm/lpc176x/can/can.c
index bf94d9fc37..2e65d5f5eb 100644
--- a/bsps/arm/lpc176x/can/can.c
+++ b/bsps/arm/lpc176x/can/can.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief CAN controller for the mbed lpc1768 board.
  */
diff --git a/bsps/arm/lpc176x/console/console-config.c b/bsps/arm/lpc176x/console/console-config.c
index c80932daf7..e4e3462191 100644
--- a/bsps/arm/lpc176x/console/console-config.c
+++ b/bsps/arm/lpc176x/console/console-config.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief Console configuration.
  */
diff --git a/bsps/arm/lpc176x/gpio/lpc-gpio.c b/bsps/arm/lpc176x/gpio/lpc-gpio.c
index 220f5f9abc..30543858d7 100644
--- a/bsps/arm/lpc176x/gpio/lpc-gpio.c
+++ b/bsps/arm/lpc176x/gpio/lpc-gpio.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief GPIO library for the lpc176x bsp.
  */
diff --git a/bsps/arm/lpc176x/include/bsp.h b/bsps/arm/lpc176x/include/bsp.h
index 8c34de5164..5c8b104280 100644
--- a/bsps/arm/lpc176x/include/bsp.h
+++ b/bsps/arm/lpc176x/include/bsp.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief Global BSP definitions.
  */
@@ -23,6 +23,16 @@
 #ifndef LIBBSP_ARM_LPC176X_BSP_H
 #define LIBBSP_ARM_LPC176X_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsARMLPC176X NXP LPC176X
+ *
+ * @ingroup RTEMSBSPsARM
+ *
+ * @brief NXP LPC176X Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 
 #define LPC176X_PCLK ( LPC176X_CCLK / LPC176X_PCLKDIV )
@@ -44,16 +54,6 @@ extern "C" {
 
 struct rtems_bsdnet_ifconfig;
 
-/**
- * @defgroup lpc176x LPC176X Support
- *
- * @ingroup RTEMSBSPsARM
- *
- * @brief LPC176X support package.
- *
- * @{
- */
-
 /**
  * @brief Optimized idle task.
  *
@@ -84,12 +84,12 @@ void*bsp_idle_thread( uintptr_t ignored );
  */
 void bsp_restart( const void *addr );
 
-/** @} */
-
 #ifdef __cplusplus
 }
 #endif /* __cplusplus */
 
 #endif /* ASM */
 
+/** @} */
+
 #endif /* LIBBSP_ARM_LPC176X_BSP_H */
diff --git a/bsps/arm/lpc176x/include/bsp/adc-defs.h b/bsps/arm/lpc176x/include/bsp/adc-defs.h
index e1a4825a2a..177e3f03fb 100644
--- a/bsps/arm/lpc176x/include/bsp/adc-defs.h
+++ b/bsps/arm/lpc176x/include/bsp/adc-defs.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief ADC library for the lpc176x bsp.
  */
diff --git a/bsps/arm/lpc176x/include/bsp/adc.h b/bsps/arm/lpc176x/include/bsp/adc.h
index 58c6de3f1d..ac078cf643 100644
--- a/bsps/arm/lpc176x/include/bsp/adc.h
+++ b/bsps/arm/lpc176x/include/bsp/adc.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief ADC library for the lpc176x bsp.
  */
diff --git a/bsps/arm/lpc176x/include/bsp/can-defs.h b/bsps/arm/lpc176x/include/bsp/can-defs.h
index b55414f95f..fdaa7893d5 100644
--- a/bsps/arm/lpc176x/include/bsp/can-defs.h
+++ b/bsps/arm/lpc176x/include/bsp/can-defs.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief CAN controller for the lpc176x controller.
  */
diff --git a/bsps/arm/lpc176x/include/bsp/can.h b/bsps/arm/lpc176x/include/bsp/can.h
index 27fabc40e6..95480596fe 100644
--- a/bsps/arm/lpc176x/include/bsp/can.h
+++ b/bsps/arm/lpc176x/include/bsp/can.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief CAN controller for the mbed lpc1768 board.
  */
diff --git a/bsps/arm/lpc176x/include/bsp/common-types.h b/bsps/arm/lpc176x/include/bsp/common-types.h
index 16bfd96f3a..d43671c619 100644
--- a/bsps/arm/lpc176x/include/bsp/common-types.h
+++ b/bsps/arm/lpc176x/include/bsp/common-types.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief Definitions types used by some devices in common.
  */
diff --git a/bsps/arm/lpc176x/include/bsp/dma.h b/bsps/arm/lpc176x/include/bsp/dma.h
index 65edfc4e30..054c985fd3 100644
--- a/bsps/arm/lpc176x/include/bsp/dma.h
+++ b/bsps/arm/lpc176x/include/bsp/dma.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x_dma
+ * @ingroup RTEMSBSPsARMLPC176X_dma
  *
  * @brief Direct memory access (DMA) support.
  */
@@ -31,7 +31,7 @@ extern "C" {
 /**
  * @defgroup lpc176x_dma DMA Support
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief Direct memory access (DMA) support.
  *
diff --git a/bsps/arm/lpc176x/include/bsp/gpio-defs.h b/bsps/arm/lpc176x/include/bsp/gpio-defs.h
index 31155bf597..fdb9c6f743 100644
--- a/bsps/arm/lpc176x/include/bsp/gpio-defs.h
+++ b/bsps/arm/lpc176x/include/bsp/gpio-defs.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief API definitions of the GPIO driver for the lpc176x bsp in RTEMS.
  */
diff --git a/bsps/arm/lpc176x/include/bsp/io-defs.h b/bsps/arm/lpc176x/include/bsp/io-defs.h
index de57aadd8c..9749387013 100644
--- a/bsps/arm/lpc176x/include/bsp/io-defs.h
+++ b/bsps/arm/lpc176x/include/bsp/io-defs.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief Input/output module definitions.
  */
diff --git a/bsps/arm/lpc176x/include/bsp/io.h b/bsps/arm/lpc176x/include/bsp/io.h
index 3e6cd49581..9831c27d65 100644
--- a/bsps/arm/lpc176x/include/bsp/io.h
+++ b/bsps/arm/lpc176x/include/bsp/io.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief Input/output module methods definitions.
  */
diff --git a/bsps/arm/lpc176x/include/bsp/lpc-clock-config.h b/bsps/arm/lpc176x/include/bsp/lpc-clock-config.h
index 3eef02152e..df44cc5a1d 100644
--- a/bsps/arm/lpc176x/include/bsp/lpc-clock-config.h
+++ b/bsps/arm/lpc176x/include/bsp/lpc-clock-config.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief Clock driver configuration.
  */
diff --git a/bsps/arm/lpc176x/include/bsp/lpc-gpio.h b/bsps/arm/lpc176x/include/bsp/lpc-gpio.h
index cc75385a04..12f2f65969 100644
--- a/bsps/arm/lpc176x/include/bsp/lpc-gpio.h
+++ b/bsps/arm/lpc176x/include/bsp/lpc-gpio.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief API of the GPIO driver for the lpc176x bsp in RTEMS.
  */
diff --git a/bsps/arm/lpc176x/include/bsp/lpc176x.h b/bsps/arm/lpc176x/include/bsp/lpc176x.h
index 2f20c2e8ba..be31d10960 100644
--- a/bsps/arm/lpc176x/include/bsp/lpc176x.h
+++ b/bsps/arm/lpc176x/include/bsp/lpc176x.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief Specific register definitions according to lpc176x family boards.
  */
diff --git a/bsps/arm/lpc176x/include/bsp/mbed-pinmap.h b/bsps/arm/lpc176x/include/bsp/mbed-pinmap.h
index 538d33c41e..e158b653d6 100644
--- a/bsps/arm/lpc176x/include/bsp/mbed-pinmap.h
+++ b/bsps/arm/lpc176x/include/bsp/mbed-pinmap.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief Pins of the mbed lpc1768
  * See http://mbed.org/media/uploads/chris/mbed-005.1.pdf for references
diff --git a/bsps/arm/lpc176x/include/bsp/pwmout-defs.h b/bsps/arm/lpc176x/include/bsp/pwmout-defs.h
index 7b3999d2a6..1d30f701f3 100644
--- a/bsps/arm/lpc176x/include/bsp/pwmout-defs.h
+++ b/bsps/arm/lpc176x/include/bsp/pwmout-defs.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief PWM-Out controller for the mbed lpc1768 board.
  */
diff --git a/bsps/arm/lpc176x/include/bsp/pwmout.h b/bsps/arm/lpc176x/include/bsp/pwmout.h
index bbed297ae9..db53ec49a0 100644
--- a/bsps/arm/lpc176x/include/bsp/pwmout.h
+++ b/bsps/arm/lpc176x/include/bsp/pwmout.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief PWM-Out controller for the mbed lpc1768 board.
  */
diff --git a/bsps/arm/lpc176x/include/bsp/system-clocks.h b/bsps/arm/lpc176x/include/bsp/system-clocks.h
index 26087ff3e9..45b976e896 100644
--- a/bsps/arm/lpc176x/include/bsp/system-clocks.h
+++ b/bsps/arm/lpc176x/include/bsp/system-clocks.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x_clocks
+ * @ingroup RTEMSBSPsARMLPC176X_clocks
  *
  * @brief System clocks.
  */
@@ -32,7 +32,7 @@ extern "C" {
 /**
  * @defgroup lpc176x_clock System Clocks
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief System clocks.
  *
diff --git a/bsps/arm/lpc176x/include/bsp/timer-defs.h b/bsps/arm/lpc176x/include/bsp/timer-defs.h
index 7560add64e..8ff1931bea 100644
--- a/bsps/arm/lpc176x/include/bsp/timer-defs.h
+++ b/bsps/arm/lpc176x/include/bsp/timer-defs.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief API definitions of the for the timer of the lpc176x bsp.
  */
diff --git a/bsps/arm/lpc176x/include/bsp/timer.h b/bsps/arm/lpc176x/include/bsp/timer.h
index bb327eefce..0a79bc0456 100644
--- a/bsps/arm/lpc176x/include/bsp/timer.h
+++ b/bsps/arm/lpc176x/include/bsp/timer.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief Timer API for the lpc176x bsp.
  */
diff --git a/bsps/arm/lpc176x/include/bsp/watchdog-defs.h b/bsps/arm/lpc176x/include/bsp/watchdog-defs.h
index 888ebe1936..97d9f8954d 100644
--- a/bsps/arm/lpc176x/include/bsp/watchdog-defs.h
+++ b/bsps/arm/lpc176x/include/bsp/watchdog-defs.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief API definitions of the Watchdog driver for the lpc176x bsp in RTEMS.
  */
diff --git a/bsps/arm/lpc176x/include/bsp/watchdog.h b/bsps/arm/lpc176x/include/bsp/watchdog.h
index ff5d1730fa..8c9d952eb4 100644
--- a/bsps/arm/lpc176x/include/bsp/watchdog.h
+++ b/bsps/arm/lpc176x/include/bsp/watchdog.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief API of the Watchdog driver for the lpc176x bsp in RTEMS.
  */
diff --git a/bsps/arm/lpc176x/pwm/pwmout.c b/bsps/arm/lpc176x/pwm/pwmout.c
index c5ce3eb998..9ad4e0ced6 100644
--- a/bsps/arm/lpc176x/pwm/pwmout.c
+++ b/bsps/arm/lpc176x/pwm/pwmout.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief PWM-Out controller for the mbed lpc1768 board.
  */
diff --git a/bsps/arm/lpc176x/rtc/rtc-config.c b/bsps/arm/lpc176x/rtc/rtc-config.c
index 7d1512c01a..d211a8faf9 100644
--- a/bsps/arm/lpc176x/rtc/rtc-config.c
+++ b/bsps/arm/lpc176x/rtc/rtc-config.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief RTC configuration.
  */
diff --git a/bsps/arm/lpc176x/start/adc.c b/bsps/arm/lpc176x/start/adc.c
index 49288c07c6..ca2d5cf849 100644
--- a/bsps/arm/lpc176x/start/adc.c
+++ b/bsps/arm/lpc176x/start/adc.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief ADC library for the lpc176x bsp.
  */
diff --git a/bsps/arm/lpc176x/start/bspidle.c b/bsps/arm/lpc176x/start/bspidle.c
index 24bb1db887..f1572422b1 100644
--- a/bsps/arm/lpc176x/start/bspidle.c
+++ b/bsps/arm/lpc176x/start/bspidle.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief Idle task.
  */
diff --git a/bsps/arm/lpc176x/start/bspstart.c b/bsps/arm/lpc176x/start/bspstart.c
index f1aba444fc..b2b1e2db04 100644
--- a/bsps/arm/lpc176x/start/bspstart.c
+++ b/bsps/arm/lpc176x/start/bspstart.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief Startup code.
  */
diff --git a/bsps/arm/lpc176x/start/bspstarthooks.c b/bsps/arm/lpc176x/start/bspstarthooks.c
index dc790f3eb0..6755e43748 100644
--- a/bsps/arm/lpc176x/start/bspstarthooks.c
+++ b/bsps/arm/lpc176x/start/bspstarthooks.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief First configurations and initializations to the correct
  *              functionality of the board.
diff --git a/bsps/arm/lpc176x/start/dma-copy.c b/bsps/arm/lpc176x/start/dma-copy.c
index 0e0b37dbd3..84a1d28f7a 100644
--- a/bsps/arm/lpc176x/start/dma-copy.c
+++ b/bsps/arm/lpc176x/start/dma-copy.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x_dma
+ * @ingroup RTEMSBSPsARMLPC176X_dma
  *
  * @brief Direct memory access (DMA) support.
  */
diff --git a/bsps/arm/lpc176x/start/dma.c b/bsps/arm/lpc176x/start/dma.c
index 10c7701484..1c690b5b42 100644
--- a/bsps/arm/lpc176x/start/dma.c
+++ b/bsps/arm/lpc176x/start/dma.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x_dma
+ * @ingroup RTEMSBSPsARMLPC176X_dma
  *
  * @brief Direct memory access (DMA) support.
  */
diff --git a/bsps/arm/lpc176x/start/io.c b/bsps/arm/lpc176x/start/io.c
index 8eb746cbad..e3432e29f5 100644
--- a/bsps/arm/lpc176x/start/io.c
+++ b/bsps/arm/lpc176x/start/io.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief Input/output module methods.
  */
diff --git a/bsps/arm/lpc176x/start/restart.c b/bsps/arm/lpc176x/start/restart.c
index d6e5783f53..441c38bdcd 100644
--- a/bsps/arm/lpc176x/start/restart.c
+++ b/bsps/arm/lpc176x/start/restart.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief Restart implementation.
  */
diff --git a/bsps/arm/lpc176x/start/system-clocks.c b/bsps/arm/lpc176x/start/system-clocks.c
index 6af52be053..70cccb06d4 100644
--- a/bsps/arm/lpc176x/start/system-clocks.c
+++ b/bsps/arm/lpc176x/start/system-clocks.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x_clocks
+ * @ingroup RTEMSBSPsARMLPC176X_clocks
  *
  * @brief System clocks.
  */
diff --git a/bsps/arm/lpc176x/start/watchdog.c b/bsps/arm/lpc176x/start/watchdog.c
index 4b8b23d9f0..0f949eadd0 100644
--- a/bsps/arm/lpc176x/start/watchdog.c
+++ b/bsps/arm/lpc176x/start/watchdog.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief Watchdog controller for the mbed lpc176x family boards.
  */
diff --git a/bsps/arm/lpc176x/timer/timer.c b/bsps/arm/lpc176x/timer/timer.c
index 47992fcd96..62172703cf 100644
--- a/bsps/arm/lpc176x/timer/timer.c
+++ b/bsps/arm/lpc176x/timer/timer.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc176x
+ * @ingroup RTEMSBSPsARMLPC176X
  *
  * @brief Timer controller for the mbed lpc1768 board.
  */
diff --git a/bsps/arm/lpc24xx/console/console-config.c b/bsps/arm/lpc24xx/console/console-config.c
index de94552c27..987df35e3d 100644
--- a/bsps/arm/lpc24xx/console/console-config.c
+++ b/bsps/arm/lpc24xx/console/console-config.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx
+ * @ingroup RTEMSBSPsARMLPC24XX
  *
  * @brief Console configuration.
  */
diff --git a/bsps/arm/lpc24xx/console/uart-probe-1.c b/bsps/arm/lpc24xx/console/uart-probe-1.c
index 3b5f08059f..f452b3b333 100644
--- a/bsps/arm/lpc24xx/console/uart-probe-1.c
+++ b/bsps/arm/lpc24xx/console/uart-probe-1.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx
+ * @ingroup RTEMSBSPsARMLPC24XX
  *
  * @brief UART 1 probe.
  */
diff --git a/bsps/arm/lpc24xx/console/uart-probe-2.c b/bsps/arm/lpc24xx/console/uart-probe-2.c
index d45dbb755b..4715c0b2e8 100644
--- a/bsps/arm/lpc24xx/console/uart-probe-2.c
+++ b/bsps/arm/lpc24xx/console/uart-probe-2.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx
+ * @ingroup RTEMSBSPsARMLPC24XX
  *
  * @brief UART 2 probe.
  */
diff --git a/bsps/arm/lpc24xx/console/uart-probe-3.c b/bsps/arm/lpc24xx/console/uart-probe-3.c
index fad932ef9e..a2a86f77d9 100644
--- a/bsps/arm/lpc24xx/console/uart-probe-3.c
+++ b/bsps/arm/lpc24xx/console/uart-probe-3.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx
+ * @ingroup RTEMSBSPsARMLPC24XX
  *
  * @brief UART 3 probe.
  */
diff --git a/bsps/arm/lpc24xx/fb/lcd.c b/bsps/arm/lpc24xx/fb/lcd.c
index 9474eec18a..39addf5847 100644
--- a/bsps/arm/lpc24xx/fb/lcd.c
+++ b/bsps/arm/lpc24xx/fb/lcd.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx_lcd
+ * @ingroup RTEMSBSPsARMLPC24XX_lcd
  *
  * @brief LCD support.
  */
diff --git a/bsps/arm/lpc24xx/i2c/i2c-config.c b/bsps/arm/lpc24xx/i2c/i2c-config.c
index 5ba16ae874..c1251a1c3e 100644
--- a/bsps/arm/lpc24xx/i2c/i2c-config.c
+++ b/bsps/arm/lpc24xx/i2c/i2c-config.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx_libi2c
+ * @ingroup RTEMSBSPsARMLPC24XX_libi2c
  *
  * @brief LibI2C bus driver for the I2C modules.
  */
diff --git a/bsps/arm/lpc24xx/i2c/i2c.c b/bsps/arm/lpc24xx/i2c/i2c.c
index ef638e69b9..5a6303b106 100644
--- a/bsps/arm/lpc24xx/i2c/i2c.c
+++ b/bsps/arm/lpc24xx/i2c/i2c.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx_libi2c
+ * @ingroup RTEMSBSPsARMLPC24XX_libi2c
  *
  * @brief LibI2C bus driver for the I2C modules.
  */
diff --git a/bsps/arm/lpc24xx/include/bsp.h b/bsps/arm/lpc24xx/include/bsp.h
index ac59a2a887..96834bb252 100644
--- a/bsps/arm/lpc24xx/include/bsp.h
+++ b/bsps/arm/lpc24xx/include/bsp.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx
+ * @ingroup RTEMSBSPsARMLPC24XX
  *
  * @brief Global BSP definitions.
  */
@@ -23,6 +23,16 @@
 #ifndef LIBBSP_ARM_LPC24XX_BSP_H
 #define LIBBSP_ARM_LPC24XX_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsARMLPC24XX NXP LPC17XX, LPC23XX, LPC24XX and LPC40XX
+ *
+ * @ingroup RTEMSBSPsARM
+ *
+ * @brief NXP LPC17XX, LPC23XX, LPC24XX and LPC40XX Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 
 #define BSP_FEATURE_IRQ_EXTENSION
@@ -53,16 +63,6 @@ struct rtems_bsdnet_ifconfig;
 
 struct rtems_termios_device_context;
 
-/**
- * @defgroup lpc24xx LPC24XX Support
- *
- * @ingroup RTEMSBSPsARM
- *
- * @brief LPC24XX support package.
- *
- * @{
- */
-
 /**
  * @brief Network driver attach and detach function.
  */
@@ -117,12 +117,12 @@ bool lpc24xx_uart_probe_2(struct rtems_termios_device_context *context);
 
 bool lpc24xx_uart_probe_3(struct rtems_termios_device_context *context);
 
-/** @} */
-
 #ifdef __cplusplus
 }
 #endif /* __cplusplus */
 
 #endif /* ASM */
 
+/** @} */
+
 #endif /* LIBBSP_ARM_LPC24XX_BSP_H */
diff --git a/bsps/arm/lpc24xx/include/bsp/dma.h b/bsps/arm/lpc24xx/include/bsp/dma.h
index b2e6c3e665..3d5089b16b 100644
--- a/bsps/arm/lpc24xx/include/bsp/dma.h
+++ b/bsps/arm/lpc24xx/include/bsp/dma.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx_dma
+ * @ingroup RTEMSBSPsARMLPC24XX_dma
  *
  * @brief Direct memory access (DMA) support.
  */
@@ -31,7 +31,7 @@ extern "C" {
 /**
  * @defgroup lpc24xx_dma DMA Support
  *
- * @ingroup lpc24xx
+ * @ingroup RTEMSBSPsARMLPC24XX
  *
  * @brief Direct memory access (DMA) support.
  *
diff --git a/bsps/arm/lpc24xx/include/bsp/i2c.h b/bsps/arm/lpc24xx/include/bsp/i2c.h
index 3387521c5f..a049868fd6 100644
--- a/bsps/arm/lpc24xx/include/bsp/i2c.h
+++ b/bsps/arm/lpc24xx/include/bsp/i2c.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx_libi2c
+ * @ingroup RTEMSBSPsARMLPC24XX_libi2c
  *
  * @brief LibI2C bus driver for the I2C modules.
  */
@@ -36,7 +36,7 @@ extern "C" {
 /**
  * @defgroup lpc24xx_libi2c LPC24XX Bus Drivers
  *
- * @ingroup libi2c
+ * @ingroup RTEMSBSPsARMLPC24XX
  *
  * @brief LibI2C bus drivers for LPC24XX.
  *
diff --git a/bsps/arm/lpc24xx/include/bsp/io.h b/bsps/arm/lpc24xx/include/bsp/io.h
index 9f58ee8efb..c6fa4f47a1 100644
--- a/bsps/arm/lpc24xx/include/bsp/io.h
+++ b/bsps/arm/lpc24xx/include/bsp/io.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx_io
+ * @ingroup RTEMSBSPsARMLPC24XX_io
  *
  * @brief Input and output module.
  */
@@ -34,7 +34,7 @@ extern "C" {
 /**
  * @defgroup lpc24xx_io IO Support and Configuration
  *
- * @ingroup lpc24xx
+ * @ingroup RTEMSBSPsARMLPC24XX
  *
  * @brief Input and output module.
  *
diff --git a/bsps/arm/lpc24xx/include/bsp/lcd.h b/bsps/arm/lpc24xx/include/bsp/lcd.h
index c415074bd4..b0b6643316 100644
--- a/bsps/arm/lpc24xx/include/bsp/lcd.h
+++ b/bsps/arm/lpc24xx/include/bsp/lcd.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx_lcd
+ * @ingroup RTEMSBSPsARMLPC24XX_lcd
  *
  * @brief LCD support.
  */
@@ -34,7 +34,7 @@ extern "C" {
 /**
  * @defgroup lpc_dma LCD Support
  *
- * @ingroup lpc24xx
+ * @ingroup RTEMSBSPsARMLPC24XX
  *
  * @brief LCD support.
  *
diff --git a/bsps/arm/lpc24xx/include/bsp/lpc-clock-config.h b/bsps/arm/lpc24xx/include/bsp/lpc-clock-config.h
index 5e6b469e0f..35ae923d50 100644
--- a/bsps/arm/lpc24xx/include/bsp/lpc-clock-config.h
+++ b/bsps/arm/lpc24xx/include/bsp/lpc-clock-config.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx
+ * @ingroup RTEMSBSPsARMLPC24XX
  *
  * @brief Clock driver configuration.
  */
diff --git a/bsps/arm/lpc24xx/include/bsp/lpc-ethernet-config.h b/bsps/arm/lpc24xx/include/bsp/lpc-ethernet-config.h
index d24f132567..255a90d7b1 100644
--- a/bsps/arm/lpc24xx/include/bsp/lpc-ethernet-config.h
+++ b/bsps/arm/lpc24xx/include/bsp/lpc-ethernet-config.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx
+ * @ingroup RTEMSBSPsARMLPC24XX
  *
  * @brief Ethernet driver configuration.
  */
diff --git a/bsps/arm/lpc24xx/include/bsp/lpc17xx.h b/bsps/arm/lpc24xx/include/bsp/lpc17xx.h
index 9c35102e98..382227a724 100644
--- a/bsps/arm/lpc24xx/include/bsp/lpc17xx.h
+++ b/bsps/arm/lpc24xx/include/bsp/lpc17xx.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx_regs
+ * @ingroup RTEMSBSPsARMLPC24XX_regs
  *
  * @brief Register definitions.
  */
diff --git a/bsps/arm/lpc24xx/include/bsp/lpc24xx.h b/bsps/arm/lpc24xx/include/bsp/lpc24xx.h
index 64a910c041..15e20e2f27 100644
--- a/bsps/arm/lpc24xx/include/bsp/lpc24xx.h
+++ b/bsps/arm/lpc24xx/include/bsp/lpc24xx.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx_regs
+ * @ingroup RTEMSBSPsARMLPC24XX_regs
  *
  * @brief Register definitions.
  */
@@ -34,7 +34,7 @@
 /**
  * @defgroup lpc24xx_regs Register Definitions
  *
- * @ingroup lpc24xx
+ * @ingroup RTEMSBSPsARMLPC24XX
  *
  * @brief Register definitions.
  *
diff --git a/bsps/arm/lpc24xx/include/bsp/ssp.h b/bsps/arm/lpc24xx/include/bsp/ssp.h
index 1a77219d0e..c8ec97de75 100644
--- a/bsps/arm/lpc24xx/include/bsp/ssp.h
+++ b/bsps/arm/lpc24xx/include/bsp/ssp.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx_libi2c
+ * @ingroup RTEMSBSPsARMLPC24XX_libi2c
  *
  * @brief LibI2C bus driver for the Synchronous Serial Port (SSP).
  */
@@ -29,7 +29,7 @@ extern "C" {
 #endif /* __cplusplus */
 
 /**
- * @ingroup lpc24xx_libi2c
+ * @ingroup RTEMSBSPsARMLPC24XX_libi2c
  *
  * @{
  */
diff --git a/bsps/arm/lpc24xx/include/bsp/start-config.h b/bsps/arm/lpc24xx/include/bsp/start-config.h
index 4476cbdebe..ea981ebc55 100644
--- a/bsps/arm/lpc24xx/include/bsp/start-config.h
+++ b/bsps/arm/lpc24xx/include/bsp/start-config.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx
+ * @ingroup RTEMSBSPsARMLPC24XX
  *
  * @brief BSP start configuration.
  */
diff --git a/bsps/arm/lpc24xx/include/bsp/system-clocks.h b/bsps/arm/lpc24xx/include/bsp/system-clocks.h
index 564d12ec10..7bbc40164d 100644
--- a/bsps/arm/lpc24xx/include/bsp/system-clocks.h
+++ b/bsps/arm/lpc24xx/include/bsp/system-clocks.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx_clocks
+ * @ingroup RTEMSBSPsARMLPC24XX_clocks
  *
  * @brief System clocks.
  */
@@ -31,7 +31,7 @@ extern "C" {
 /**
  * @defgroup lpc24xx_clock System Clocks
  *
- * @ingroup lpc24xx
+ * @ingroup RTEMSBSPsARMLPC24XX
  *
  * @brief System clocks.
  *
diff --git a/bsps/arm/lpc24xx/rtc/rtc-config.c b/bsps/arm/lpc24xx/rtc/rtc-config.c
index c154a98196..1c1bb65c77 100644
--- a/bsps/arm/lpc24xx/rtc/rtc-config.c
+++ b/bsps/arm/lpc24xx/rtc/rtc-config.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx
+ * @ingroup RTEMSBSPsARMLPC24XX
  *
  * @brief RTC configuration.
  */
diff --git a/bsps/arm/lpc24xx/spi/ssp.c b/bsps/arm/lpc24xx/spi/ssp.c
index 6563d047b2..743276afd7 100644
--- a/bsps/arm/lpc24xx/spi/ssp.c
+++ b/bsps/arm/lpc24xx/spi/ssp.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx_libi2c
+ * @ingroup RTEMSBSPsARMLPC24XX_libi2c
  *
  * @brief LibI2C bus driver for the Synchronous Serial Port (SSP).
  */
diff --git a/bsps/arm/lpc24xx/start/bspidle.c b/bsps/arm/lpc24xx/start/bspidle.c
index 42a3e106f3..7286412559 100644
--- a/bsps/arm/lpc24xx/start/bspidle.c
+++ b/bsps/arm/lpc24xx/start/bspidle.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx
+ * @ingroup RTEMSBSPsARMLPC24XX
  *
  * @brief Idle task.
  */
diff --git a/bsps/arm/lpc24xx/start/bspreset-armv4.c b/bsps/arm/lpc24xx/start/bspreset-armv4.c
index c53b4e2447..b82fd88972 100644
--- a/bsps/arm/lpc24xx/start/bspreset-armv4.c
+++ b/bsps/arm/lpc24xx/start/bspreset-armv4.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx
+ * @ingroup RTEMSBSPsARMLPC24XX
  *
  * @brief Reset code.
  */
diff --git a/bsps/arm/lpc24xx/start/bspstart.c b/bsps/arm/lpc24xx/start/bspstart.c
index 6f00f35f99..de0efa9d6a 100644
--- a/bsps/arm/lpc24xx/start/bspstart.c
+++ b/bsps/arm/lpc24xx/start/bspstart.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx
+ * @ingroup RTEMSBSPsARMLPC24XX
  *
  * @brief Startup code.
  */
diff --git a/bsps/arm/lpc24xx/start/bspstarthooks.c b/bsps/arm/lpc24xx/start/bspstarthooks.c
index 6ceb066935..efae394e42 100644
--- a/bsps/arm/lpc24xx/start/bspstarthooks.c
+++ b/bsps/arm/lpc24xx/start/bspstarthooks.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx
+ * @ingroup RTEMSBSPsARMLPC24XX
  *
  * @brief Startup code.
  */
diff --git a/bsps/arm/lpc24xx/start/dma-copy.c b/bsps/arm/lpc24xx/start/dma-copy.c
index 73a8cdc3ab..7168947a2c 100644
--- a/bsps/arm/lpc24xx/start/dma-copy.c
+++ b/bsps/arm/lpc24xx/start/dma-copy.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx_dma
+ * @ingroup RTEMSBSPsARMLPC24XX_dma
  *
  * @brief Direct memory access (DMA) support.
  */
diff --git a/bsps/arm/lpc24xx/start/dma.c b/bsps/arm/lpc24xx/start/dma.c
index a67760ad3e..6e7c1c5157 100644
--- a/bsps/arm/lpc24xx/start/dma.c
+++ b/bsps/arm/lpc24xx/start/dma.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx_dma
+ * @ingroup RTEMSBSPsARMLPC24XX_dma
  *
  * @brief Direct memory access (DMA) support.
  */
diff --git a/bsps/arm/lpc24xx/start/io.c b/bsps/arm/lpc24xx/start/io.c
index c28b5182f0..dafd3aa8f5 100644
--- a/bsps/arm/lpc24xx/start/io.c
+++ b/bsps/arm/lpc24xx/start/io.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx_io
+ * @ingroup RTEMSBSPsARMLPC24XX_io
  *
  * @brief Input and output module.
  */
diff --git a/bsps/arm/lpc24xx/start/restart.c b/bsps/arm/lpc24xx/start/restart.c
index 627f79d19d..f5a107d4fa 100644
--- a/bsps/arm/lpc24xx/start/restart.c
+++ b/bsps/arm/lpc24xx/start/restart.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx
+ * @ingroup RTEMSBSPsARMLPC24XX
  *
  * @brief Restart implementation.
  */
diff --git a/bsps/arm/lpc24xx/start/start-config-emc-dynamic.c b/bsps/arm/lpc24xx/start/start-config-emc-dynamic.c
index 3a08f0b49d..720fc46aee 100644
--- a/bsps/arm/lpc24xx/start/start-config-emc-dynamic.c
+++ b/bsps/arm/lpc24xx/start/start-config-emc-dynamic.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx
+ * @ingroup RTEMSBSPsARMLPC24XX
  *
  * @brief BSP start EMC dynamic memory configuration.
  */
diff --git a/bsps/arm/lpc24xx/start/start-config-emc-static.c b/bsps/arm/lpc24xx/start/start-config-emc-static.c
index 4a427664f6..8545d86159 100644
--- a/bsps/arm/lpc24xx/start/start-config-emc-static.c
+++ b/bsps/arm/lpc24xx/start/start-config-emc-static.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx
+ * @ingroup RTEMSBSPsARMLPC24XX
  *
  * @brief BSP start EMC static memory configuration.
  */
diff --git a/bsps/arm/lpc24xx/start/start-config-mpu.c b/bsps/arm/lpc24xx/start/start-config-mpu.c
index 9d9846c69a..3dc3c48e4d 100644
--- a/bsps/arm/lpc24xx/start/start-config-mpu.c
+++ b/bsps/arm/lpc24xx/start/start-config-mpu.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx
+ * @ingroup RTEMSBSPsARMLPC24XX
  *
  * @brief BSP start MPU configuration.
  */
diff --git a/bsps/arm/lpc24xx/start/start-config-pinsel.c b/bsps/arm/lpc24xx/start/start-config-pinsel.c
index db44099664..cfd56124b6 100644
--- a/bsps/arm/lpc24xx/start/start-config-pinsel.c
+++ b/bsps/arm/lpc24xx/start/start-config-pinsel.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx
+ * @ingroup RTEMSBSPsARMLPC24XX
  *
  * @brief BSP start pin selection configuration.
  */
diff --git a/bsps/arm/lpc24xx/start/system-clocks.c b/bsps/arm/lpc24xx/start/system-clocks.c
index 8a2f62b4b0..19b040809f 100644
--- a/bsps/arm/lpc24xx/start/system-clocks.c
+++ b/bsps/arm/lpc24xx/start/system-clocks.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx_clocks
+ * @ingroup RTEMSBSPsARMLPC24XX_clocks
  *
  * @brief System clocks.
  */
diff --git a/bsps/arm/lpc24xx/start/timer.c b/bsps/arm/lpc24xx/start/timer.c
index c700d04566..46dbb21a04 100644
--- a/bsps/arm/lpc24xx/start/timer.c
+++ b/bsps/arm/lpc24xx/start/timer.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lpc24xx
+ * @ingroup RTEMSBSPsARMLPC24XX
  *
  * @brief Benchmark timer support.
  */
diff --git a/bsps/arm/lpc32xx/console/console-config.c b/bsps/arm/lpc32xx/console/console-config.c
index 17e6b0af8f..5446b84027 100644
--- a/bsps/arm/lpc32xx/console/console-config.c
+++ b/bsps/arm/lpc32xx/console/console-config.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup arm_lpc32xx
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @brief Console configuration.
  */
diff --git a/bsps/arm/lpc32xx/console/hsu.c b/bsps/arm/lpc32xx/console/hsu.c
index b2044e0753..e43e38e5cc 100644
--- a/bsps/arm/lpc32xx/console/hsu.c
+++ b/bsps/arm/lpc32xx/console/hsu.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup arm_lpc32xx
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @brief High speed UART driver (14-clock).
  */
diff --git a/bsps/arm/lpc32xx/include/bsp.h b/bsps/arm/lpc32xx/include/bsp.h
index a91f92bd35..c0d8c9edfe 100644
--- a/bsps/arm/lpc32xx/include/bsp.h
+++ b/bsps/arm/lpc32xx/include/bsp.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup arm_lpc32xx
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @brief Global BSP definitions.
  */
@@ -23,6 +23,16 @@
 #ifndef LIBBSP_ARM_LPC32XX_BSP_H
 #define LIBBSP_ARM_LPC32XX_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsARMLPC32XX NXP LPC32XX
+ *
+ * @ingroup RTEMSBSPsARM
+ *
+ * @brief NXP LPC32XX Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 
 #define BSP_FEATURE_IRQ_EXTENSION
@@ -40,16 +50,6 @@ extern "C" {
 
 struct rtems_bsdnet_ifconfig;
 
-/**
- * @defgroup arm_lpc32xx LPC32XX Support
- *
- * @ingroup RTEMSBSPsARM
- *
- * @brief LPC32XX support package.
- *
- * @{
- */
-
 /**
  * @brief Network driver attach and detach function.
  */
@@ -241,20 +241,12 @@ extern uint32_t lpc32xx_magic_zero_size [];
     ); \
   } while (0)
 
-/** @} */
-
-/**
- * @defgroup lpc LPC Support
- *
- * @ingroup arm_lpc32xx
- *
- * @brief LPC support package.
- */
-
 #ifdef __cplusplus
 }
 #endif /* __cplusplus */
 
 #endif /* ASM */
 
+/** @} */
+
 #endif /* LIBBSP_ARM_LPC32XX_BSP_H */
diff --git a/bsps/arm/lpc32xx/include/bsp/boot.h b/bsps/arm/lpc32xx/include/bsp/boot.h
index b9c845bc8f..cb4c92428b 100644
--- a/bsps/arm/lpc32xx/include/bsp/boot.h
+++ b/bsps/arm/lpc32xx/include/bsp/boot.h
@@ -33,7 +33,7 @@ extern "C" {
 /**
  * @defgroup lpc32xx_boot Boot Support
  *
- * @ingroup arm_lpc32xx
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @brief Boot support.
  *
diff --git a/bsps/arm/lpc32xx/include/bsp/hsu.h b/bsps/arm/lpc32xx/include/bsp/hsu.h
index ba97dfb423..c4248cb7ab 100644
--- a/bsps/arm/lpc32xx/include/bsp/hsu.h
+++ b/bsps/arm/lpc32xx/include/bsp/hsu.h
@@ -32,7 +32,7 @@ extern "C" {
 /**
  * @defgroup lpc32xx_hsu HSU Support
  *
- * @ingroup arm_lpc32xx
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @brief HSU Support
  *
diff --git a/bsps/arm/lpc32xx/include/bsp/i2c.h b/bsps/arm/lpc32xx/include/bsp/i2c.h
index e0bf8349ac..18433dfaad 100644
--- a/bsps/arm/lpc32xx/include/bsp/i2c.h
+++ b/bsps/arm/lpc32xx/include/bsp/i2c.h
@@ -33,7 +33,7 @@ extern "C" {
 /**
  * @defgroup lpc32xx_i2c I2C Support
  *
- * @ingroup arm_lpc32xx
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @brief I2C Support
  *
diff --git a/bsps/arm/lpc32xx/include/bsp/irq.h b/bsps/arm/lpc32xx/include/bsp/irq.h
index fbb13b5262..1eef140faf 100644
--- a/bsps/arm/lpc32xx/include/bsp/irq.h
+++ b/bsps/arm/lpc32xx/include/bsp/irq.h
@@ -35,7 +35,7 @@ extern "C" {
 /**
  * @defgroup lpc32xx_interrupt Interrupt Support
  *
- * @ingroup arm_lpc32xx
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @ingroup bsp_interrupt
  *
diff --git a/bsps/arm/lpc32xx/include/bsp/lpc-clock-config.h b/bsps/arm/lpc32xx/include/bsp/lpc-clock-config.h
index 2b676b433f..2a2d3f82e2 100644
--- a/bsps/arm/lpc32xx/include/bsp/lpc-clock-config.h
+++ b/bsps/arm/lpc32xx/include/bsp/lpc-clock-config.h
@@ -33,7 +33,7 @@ extern "C" {
 /**
  * @defgroup lpc_clock Clock Support
  *
- * @ingroup lpc
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @brief Clock support.
  *
diff --git a/bsps/arm/lpc32xx/include/bsp/lpc-ethernet-config.h b/bsps/arm/lpc32xx/include/bsp/lpc-ethernet-config.h
index 53e9e8415d..88dc11525e 100644
--- a/bsps/arm/lpc32xx/include/bsp/lpc-ethernet-config.h
+++ b/bsps/arm/lpc32xx/include/bsp/lpc-ethernet-config.h
@@ -38,7 +38,7 @@ extern "C" {
 /**
  * @defgroup lpc_eth Ethernet Support
  *
- * @ingroup lpc
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @brief Ethernet support.
  *
diff --git a/bsps/arm/lpc32xx/include/bsp/lpc32xx.h b/bsps/arm/lpc32xx/include/bsp/lpc32xx.h
index 2edb1e334e..42ec31a89b 100644
--- a/bsps/arm/lpc32xx/include/bsp/lpc32xx.h
+++ b/bsps/arm/lpc32xx/include/bsp/lpc32xx.h
@@ -33,7 +33,7 @@
 /**
  * @defgroup lpc32xx_reg Register Definitions
  *
- * @ingroup arm_lpc32xx
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @brief Register definitions.
  *
diff --git a/bsps/arm/lpc32xx/include/bsp/mmu.h b/bsps/arm/lpc32xx/include/bsp/mmu.h
index 32352b5ed9..7d46470622 100644
--- a/bsps/arm/lpc32xx/include/bsp/mmu.h
+++ b/bsps/arm/lpc32xx/include/bsp/mmu.h
@@ -32,7 +32,7 @@ extern "C" {
 /**
  * @defgroup lpc32xx_mmu MMU Support
  *
- * @ingroup arm_lpc32xx
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @brief MMU support.
  *
diff --git a/bsps/arm/lpc32xx/include/bsp/nand-mlc.h b/bsps/arm/lpc32xx/include/bsp/nand-mlc.h
index 2aa8312945..39dd2e291b 100644
--- a/bsps/arm/lpc32xx/include/bsp/nand-mlc.h
+++ b/bsps/arm/lpc32xx/include/bsp/nand-mlc.h
@@ -36,7 +36,7 @@ extern "C" {
 /**
  * @defgroup lpc32xx_nand_mlc NAND MLC Controller
  *
- * @ingroup arm_lpc32xx
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @brief NAND MLC Controller.
  *
diff --git a/bsps/arm/lpc32xx/include/tm27.h b/bsps/arm/lpc32xx/include/tm27.h
index a7cc2dd802..6176a75c71 100644
--- a/bsps/arm/lpc32xx/include/tm27.h
+++ b/bsps/arm/lpc32xx/include/tm27.h
@@ -1,6 +1,6 @@
 /* @file
  *
- * @ingroup arm_lpc32xx
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @brief Implementations of interrupt mechanisms for Time Test 27
  */
diff --git a/bsps/arm/lpc32xx/nand/nand-select.c b/bsps/arm/lpc32xx/nand/nand-select.c
index 9c03b12b85..2d4c761d5e 100644
--- a/bsps/arm/lpc32xx/nand/nand-select.c
+++ b/bsps/arm/lpc32xx/nand/nand-select.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup arm_lpc32xx
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @brief NAND controller selection.
  */
diff --git a/bsps/arm/lpc32xx/rtc/rtc-config.c b/bsps/arm/lpc32xx/rtc/rtc-config.c
index f2f3eddfaf..52e2daf4c2 100644
--- a/bsps/arm/lpc32xx/rtc/rtc-config.c
+++ b/bsps/arm/lpc32xx/rtc/rtc-config.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup arm_lpc32xx
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @brief RTC configuration.
  */
diff --git a/bsps/arm/lpc32xx/start/bspidle.c b/bsps/arm/lpc32xx/start/bspidle.c
index 0623c6646d..5324479fb5 100644
--- a/bsps/arm/lpc32xx/start/bspidle.c
+++ b/bsps/arm/lpc32xx/start/bspidle.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup arm_lpc32xx
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @brief bsp_idle_thread() implementation.
  */
diff --git a/bsps/arm/lpc32xx/start/bspreset.c b/bsps/arm/lpc32xx/start/bspreset.c
index e3c4cfbbd2..ba1165c551 100644
--- a/bsps/arm/lpc32xx/start/bspreset.c
+++ b/bsps/arm/lpc32xx/start/bspreset.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup arm_lpc32xx
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @brief Reset code.
  */
diff --git a/bsps/arm/lpc32xx/start/bspstart.c b/bsps/arm/lpc32xx/start/bspstart.c
index c535f766d7..3bc9792265 100644
--- a/bsps/arm/lpc32xx/start/bspstart.c
+++ b/bsps/arm/lpc32xx/start/bspstart.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup arm_lpc32xx
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @brief Startup code.
  */
diff --git a/bsps/arm/lpc32xx/start/bspstarthooks.c b/bsps/arm/lpc32xx/start/bspstarthooks.c
index 1df21b4343..8e79ce479f 100644
--- a/bsps/arm/lpc32xx/start/bspstarthooks.c
+++ b/bsps/arm/lpc32xx/start/bspstarthooks.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup arm_lpc32xx
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @brief Startup code.
  */
diff --git a/bsps/arm/lpc32xx/start/restart.c b/bsps/arm/lpc32xx/start/restart.c
index 6f6a8a5f9a..be09b02e39 100644
--- a/bsps/arm/lpc32xx/start/restart.c
+++ b/bsps/arm/lpc32xx/start/restart.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup arm_lpc32xx
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @brief Restart implementation.
  */
diff --git a/bsps/arm/lpc32xx/start/system-clocks.c b/bsps/arm/lpc32xx/start/system-clocks.c
index e5e3f00dd4..e38e5c62b1 100644
--- a/bsps/arm/lpc32xx/start/system-clocks.c
+++ b/bsps/arm/lpc32xx/start/system-clocks.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup arm_lpc32xx
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @brief System clocks.
  */
diff --git a/bsps/arm/lpc32xx/start/timer.c b/bsps/arm/lpc32xx/start/timer.c
index 5079452d8c..5b156ffb37 100644
--- a/bsps/arm/lpc32xx/start/timer.c
+++ b/bsps/arm/lpc32xx/start/timer.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup arm_lpc32xx
+ * @ingroup RTEMSBSPsARMLPC32XX
  *
  * @brief Benchmark timer support.
  */
diff --git a/bsps/arm/raspberrypi/include/bsp.h b/bsps/arm/raspberrypi/include/bsp.h
index 4e8c6c945e..1075cb1771 100644
--- a/bsps/arm/raspberrypi/include/bsp.h
+++ b/bsps/arm/raspberrypi/include/bsp.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup arm_raspberrypi
+ * @ingroup RTEMSBSPsARMRaspberryPi
  *
  * @brief Global BSP definitions.
  */
@@ -20,6 +20,15 @@
 #ifndef LIBBSP_ARM_RASPBERRYPI_BSP_H
 #define LIBBSP_ARM_RASPBERRYPI_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsARMRaspberryPi Raspberry Pi
+ *
+ * @ingroup RTEMSBSPsARM
+ *
+ * @brief Raspberry Pi Board Support Package.
+ *
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 
@@ -57,13 +66,7 @@ void rpi_start_rtems_on_secondary_processor(void);
 }
 #endif /* __cplusplus */
 
+/* @} */
+
 #endif /* LIBBSP_ARM_RASPBERRYPI_BSP_H */
 
-/**
- * @defgroup arm_raspberrypi Raspberry Pi Support
- *
- * @ingroup RTEMSBSPsARM
- *
- * @brief Raspberry Pi support package
- *
- */
diff --git a/bsps/arm/raspberrypi/include/bsp/irq.h b/bsps/arm/raspberrypi/include/bsp/irq.h
index 4600534171..6a9d05cba6 100644
--- a/bsps/arm/raspberrypi/include/bsp/irq.h
+++ b/bsps/arm/raspberrypi/include/bsp/irq.h
@@ -28,7 +28,7 @@
 /**
  * @defgroup raspberrypi_interrupt Interrrupt Support
  *
- * @ingroup arm_raspberrypi
+ * @ingroup RTEMSBSPsARMRaspberryPi
  *
  * @brief Interrupt support.
  */
diff --git a/bsps/arm/raspberrypi/include/bsp/mmu.h b/bsps/arm/raspberrypi/include/bsp/mmu.h
index 45ecc5a2a4..1a5b4e6fc1 100644
--- a/bsps/arm/raspberrypi/include/bsp/mmu.h
+++ b/bsps/arm/raspberrypi/include/bsp/mmu.h
@@ -35,7 +35,7 @@ extern "C" {
 /**
  * @defgroup raspberrypi_mmu MMU Support
  *
- * @ingroup arm_raspberrypi
+ * @ingroup RTEMSBSPsARMRaspberryPi
  *
  * @brief MMU support.
  *
diff --git a/bsps/arm/raspberrypi/include/bsp/raspberrypi.h b/bsps/arm/raspberrypi/include/bsp/raspberrypi.h
index 6f4c8e3de5..40c80cf408 100644
--- a/bsps/arm/raspberrypi/include/bsp/raspberrypi.h
+++ b/bsps/arm/raspberrypi/include/bsp/raspberrypi.h
@@ -28,7 +28,7 @@
 /**
  * @defgroup raspberrypi_reg Register Definitions
  *
- * @ingroup arm_raspberrypi
+ * @ingroup RTEMSBSPsARMRaspberryPi
  *
  * @brief Register Definitions
  *
diff --git a/bsps/arm/raspberrypi/include/bsp/rpi-fb.h b/bsps/arm/raspberrypi/include/bsp/rpi-fb.h
index 4f3c07fea2..710e51cb62 100644
--- a/bsps/arm/raspberrypi/include/bsp/rpi-fb.h
+++ b/bsps/arm/raspberrypi/include/bsp/rpi-fb.h
@@ -25,7 +25,7 @@
 /**
  * @defgroup raspberrypi_fb
  *
- * @ingroup arm_raspberrypi
+ * @ingroup RTEMSBSPsARMRaspberryPi
  *
  * @brief Framebuffer support and setup
  *
diff --git a/bsps/arm/raspberrypi/include/bsp/usart.h b/bsps/arm/raspberrypi/include/bsp/usart.h
index 491392b1f7..d3e710c5e9 100644
--- a/bsps/arm/raspberrypi/include/bsp/usart.h
+++ b/bsps/arm/raspberrypi/include/bsp/usart.h
@@ -10,7 +10,7 @@
 /**
  * @defgroup raspberrypi_usart USART Support
  *
- * @ingroup arm_raspberrypi
+ * @ingroup RTEMSBSPsARMRaspberryPi
  *
  * @brief Universal Synchronous/Asynchronous Receiver/Transmitter (USART) Support
  */
diff --git a/bsps/arm/raspberrypi/include/bsp/vc.h b/bsps/arm/raspberrypi/include/bsp/vc.h
index e863732cd5..107b6acf0c 100644
--- a/bsps/arm/raspberrypi/include/bsp/vc.h
+++ b/bsps/arm/raspberrypi/include/bsp/vc.h
@@ -23,7 +23,7 @@
 /**
  * @defgroup raspberrypi_vc Register Definitions
  *
- * @ingroup arm_raspberrypi
+ * @ingroup RTEMSBSPsARMRaspberryPi
  *
  * @brief Register Definitions
  *
diff --git a/bsps/arm/raspberrypi/start/vc_defines.h b/bsps/arm/raspberrypi/start/vc_defines.h
index 857305bf92..21ef3d12ea 100644
--- a/bsps/arm/raspberrypi/start/vc_defines.h
+++ b/bsps/arm/raspberrypi/start/vc_defines.h
@@ -25,7 +25,7 @@
 /**
  * @defgroup raspberrypi_vc Register Definitions
  *
- * @ingroup arm_raspberrypi
+ * @ingroup RTEMSBSPsARMRaspberryPi
  *
  * @brief Register Definitions
  *
diff --git a/bsps/arm/realview-pbx-a9/include/bsp.h b/bsps/arm/realview-pbx-a9/include/bsp.h
index 7e0bac3e18..6da54bd601 100644
--- a/bsps/arm/realview-pbx-a9/include/bsp.h
+++ b/bsps/arm/realview-pbx-a9/include/bsp.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup arm_realview-pbx-a9
+ * @ingroup RTEMSBSPsARMRealviewPBXA9
  *
  * @brief Global BSP definitions.
  */
@@ -23,6 +23,15 @@
 #ifndef LIBBSP_ARM_REALVIEW_PBX_A9_BSP_H
 #define LIBBSP_ARM_REALVIEW_PBX_A9_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsARMRealviewPBXA9 Realview PBX-A9
+ *
+ * @ingroup RTEMSBSPsARM
+ *
+ * @brief Realview PBX-A9 Board Support Package.
+ *
+ */
+
 #include <bspopts.h>
 
 #define BSP_FEATURE_IRQ_EXTENSION
@@ -55,13 +64,8 @@ extern "C" {
 
 #endif /* ASM */
 
+/* @} */
+
 #endif /* LIBBSP_ARM_REALVIEW_PBX_A9_BSP_H */
 
-/**
- * @defgroup arm_realview-pbx-a9 Realview PBX-A9
- *
- * @ingroup RTEMSBSPsARM
- *
- * @brief Realview PBX-A9 support package
- *
- */
+
diff --git a/bsps/arm/realview-pbx-a9/include/bsp/irq.h b/bsps/arm/realview-pbx-a9/include/bsp/irq.h
index 3c9790e9ef..e66bf41df4 100644
--- a/bsps/arm/realview-pbx-a9/include/bsp/irq.h
+++ b/bsps/arm/realview-pbx-a9/include/bsp/irq.h
@@ -34,7 +34,7 @@
 /**
  * @defgroup realview-pbx-a9_interrupt Interrrupt Support
  *
- * @ingroup arm_realview-pbx-a9
+ * @ingroup RTEMSBSPsARMRealviewPBXA9
  *
  * @brief Interrupt support.
  */
diff --git a/bsps/arm/realview-pbx-a9/include/tm27.h b/bsps/arm/realview-pbx-a9/include/tm27.h
index c336d8d310..ae148aacdd 100644
--- a/bsps/arm/realview-pbx-a9/include/tm27.h
+++ b/bsps/arm/realview-pbx-a9/include/tm27.h
@@ -10,7 +10,7 @@
 /**
  * @defgroup realview-pbx-a9_tm27 GIC tmtests/tm27
  *
- * @ingroup arm_realview-pbx-a9
+ * @ingroup RTEMSBSPsARMRealviewPBXA9
  *
  * @brief GIC tmtests/tm27 support.
  */
diff --git a/bsps/arm/rtl22xx/console/lpc22xx_uart.h b/bsps/arm/rtl22xx/console/lpc22xx_uart.h
index f6ae249672..bc1eec5759 100644
--- a/bsps/arm/rtl22xx/console/lpc22xx_uart.h
+++ b/bsps/arm/rtl22xx/console/lpc22xx_uart.h
@@ -9,7 +9,7 @@
 
 /**
  * @defgroup rtl22xx_uart UART Support
- * @ingroup arm_rtl22xx
+ * @ingroup RTEMSBSPsARMRTL22XX
  * @brief UART (Universal Asynchronous Reciever/Transmitter) Support
  * @{
  */
diff --git a/bsps/arm/rtl22xx/include/bsp.h b/bsps/arm/rtl22xx/include/bsp.h
index 64861591e6..3cb13f3aaf 100644
--- a/bsps/arm/rtl22xx/include/bsp.h
+++ b/bsps/arm/rtl22xx/include/bsp.h
@@ -1,6 +1,8 @@
 /**
  * @file
- * @ingroup arm_rtl22xx
+ *
+ * @ingroup RTEMSBSPsARMRTL22XX
+ *
  * @brief Global BSP definitions.
  */
 
@@ -16,16 +18,19 @@
 #ifndef LIBBSP_ARM_RTL22XX_BSP_H
 #define LIBBSP_ARM_RTL22XX_BSP_H
 
-#include <bspopts.h>
-#include <bsp/default-initial-extension.h>
-
 /**
- * @defgroup arm_rtl22xx RTL22XX Support
+ * @defgroup RTEMSBSPsARMRTL22XX RTL22XX
+ *
  * @ingroup RTEMSBSPsARM
- * @brief RTL22XX Support Package
+ *
+ * @brief RTL22XX Board Support Package.
+ *
  * @{
  */
 
+#include <bspopts.h>
+#include <bsp/default-initial-extension.h>
+
 #include <rtems.h>
 
 #ifdef __cplusplus
@@ -217,10 +222,10 @@ int cs8900_driver_attach (struct rtems_bsdnet_ifconfig *config,
  */
 extern void  UART0_Ini(void);
 
-/** @} */
-
 #ifdef __cplusplus
 }
 #endif
 
+/** @} */
+
 #endif /* _BSP_H */
diff --git a/bsps/arm/smdk2410/include/bsp.h b/bsps/arm/smdk2410/include/bsp.h
index 25764195d0..4e7e048b43 100644
--- a/bsps/arm/smdk2410/include/bsp.h
+++ b/bsps/arm/smdk2410/include/bsp.h
@@ -1,6 +1,6 @@
 /**
  * @file
- * @ingroup arm_smdk2410
+ * @ingroup RTEMSBSPsARMSMDK2410
  * @brief Global BSP definitons.
  */
 
@@ -16,6 +16,16 @@
 #ifndef LIBBSP_ARM_SMDK2410_BSP_H
 #define LIBBSP_ARM_SMDK2410_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsARMSMDK2410 SMDK2410
+ *
+ * @ingroup RTEMSBSPsARM
+ *
+ * @brief SMDK2410 Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 
@@ -76,5 +86,7 @@ void *bsp_idle_thread(uintptr_t ignored);
 }
 #endif
 
+/** @} */
+
 #endif /* _BSP_H */
 
diff --git a/bsps/arm/smdk2410/include/smc.h b/bsps/arm/smdk2410/include/smc.h
index 10ec14a771..2ce043aafc 100644
--- a/bsps/arm/smdk2410/include/smc.h
+++ b/bsps/arm/smdk2410/include/smc.h
@@ -17,7 +17,7 @@ extern "C" {
 
 /**
  * @defgroup smdk2410_smc SMC Disk Driver
- * @ingroup arm_smdk2410
+ * @ingroup RTEMSBSPsARMSMDK2410
  * @brief SMC Disk Driver Support
  * @{
  */
diff --git a/bsps/arm/stm32f4/include/bsp.h b/bsps/arm/stm32f4/include/bsp.h
index 30ab881ece..c37684f5aa 100644
--- a/bsps/arm/stm32f4/include/bsp.h
+++ b/bsps/arm/stm32f4/include/bsp.h
@@ -1,6 +1,6 @@
 /**
  * @file
- * @ingroup arm_stm34f4
+ * @ingroup RTEMSBSPsARMSTM32F4
  * @brief Global BSP definitions.
  */
 
@@ -18,16 +18,19 @@
  * http://www.rtems.org/license/LICENSE.
  */
 
+#ifndef LIBBSP_ARM_STM32F4_BSP_H
+#define LIBBSP_ARM_STM32F4_BSP_H
+
 /**
- * @defgroup arm_stm32f4 STM32F4 Support
+ * @defgroup RTEMSBSPsARMSTM32F4 STM32F4
+ *
  * @ingroup RTEMSBSPsARM
- * @brief STM32f4 Support Package
+ *
+ * @brief STM32F4 Board Support Package.
+ *
  * @{
  */
 
-#ifndef LIBBSP_ARM_STM32F4_BSP_H
-#define LIBBSP_ARM_STM32F4_BSP_H
-
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 
@@ -45,10 +48,11 @@ extern "C" {
 
 #define BSP_ARMV7M_SYSTICK_FREQUENCY STM32F4_HCLK
 
-/** @} */
-
 #ifdef __cplusplus
 }
 #endif /* __cplusplus */
 
+/** @} */
+
+
 #endif /* LIBBSP_ARM_STM32F4_BSP_H */
diff --git a/bsps/arm/stm32f4/include/bsp/i2c.h b/bsps/arm/stm32f4/include/bsp/i2c.h
index fa18b1f92f..9effe63ae1 100644
--- a/bsps/arm/stm32f4/include/bsp/i2c.h
+++ b/bsps/arm/stm32f4/include/bsp/i2c.h
@@ -37,7 +37,7 @@ extern "C" {
 
 /**
  * @defgroup stm32f4_i2c I2C Support
- * @ingroup arm_stm32f4
+ * @ingroup RTEMSBSPsARMSTM32F4
  * @brief I2C Module
  * @{
  */
diff --git a/bsps/arm/stm32f4/include/bsp/io.h b/bsps/arm/stm32f4/include/bsp/io.h
index b7f8669cba..412fa8fbfc 100644
--- a/bsps/arm/stm32f4/include/bsp/io.h
+++ b/bsps/arm/stm32f4/include/bsp/io.h
@@ -31,7 +31,7 @@ extern "C" {
 
 /**
  * @defgroup stm32f4_io IO Support
- * @ingroup arm_stm32f4
+ * @ingroup RTEMSBSPsARMSTM32F4
  * @brief IO Support
  * @{
  */
diff --git a/bsps/arm/stm32f4/include/bsp/irq.h b/bsps/arm/stm32f4/include/bsp/irq.h
index 4771f521fe..1035a43519 100644
--- a/bsps/arm/stm32f4/include/bsp/irq.h
+++ b/bsps/arm/stm32f4/include/bsp/irq.h
@@ -39,7 +39,7 @@ extern "C" {
 
 /**
  * @defgroup stm32f4_interrupt Interrupt Support
- * @ingroup arm_stm32f4
+ * @ingroup RTEMSBSPsARMSTM32F4
  * @brief Interrupt Support
  * @{
  */
diff --git a/bsps/arm/stm32f4/include/bsp/rcc.h b/bsps/arm/stm32f4/include/bsp/rcc.h
index f1bd7d173c..599cba9342 100644
--- a/bsps/arm/stm32f4/include/bsp/rcc.h
+++ b/bsps/arm/stm32f4/include/bsp/rcc.h
@@ -30,7 +30,7 @@ extern "C" {
 
 /**
  * @defgroup stm32f4_rcc RCC Support
- * @ingroup arm_stm32f4
+ * @ingroup RTEMSBSPsARMSTM32F4
  * @brief RCC Support
  * @{
  */
diff --git a/bsps/arm/stm32f4/include/bsp/stm32f10xxx_exti.h b/bsps/arm/stm32f4/include/bsp/stm32f10xxx_exti.h
index ecb4bb900c..d5324171a9 100644
--- a/bsps/arm/stm32f4/include/bsp/stm32f10xxx_exti.h
+++ b/bsps/arm/stm32f4/include/bsp/stm32f10xxx_exti.h
@@ -25,7 +25,7 @@
 
 /**
  * @defgroup stm32f4_exti EXTI Support
- * @ingroup arm_stm32f4
+ * @ingroup RTEMSBSPsARMSTM32F4
  * @brief STM32F10XXX EXTI Support
  * @{
  */
diff --git a/bsps/arm/stm32f4/include/bsp/stm32f4.h b/bsps/arm/stm32f4/include/bsp/stm32f4.h
index 154d4f6d7b..9901e7ccfc 100644
--- a/bsps/arm/stm32f4/include/bsp/stm32f4.h
+++ b/bsps/arm/stm32f4/include/bsp/stm32f4.h
@@ -30,7 +30,7 @@
 
 /**
  * @defgroup stm32f4_reg Register Defintions
- * @ingroup arm_stm32f4
+ * @ingroup RTEMSBSPsARMSTM32F4
  * @brief Register Definitions
  * @{
  */
diff --git a/bsps/arm/stm32f4/include/bsp/usart.h b/bsps/arm/stm32f4/include/bsp/usart.h
index bac0f6845a..3d5646a066 100644
--- a/bsps/arm/stm32f4/include/bsp/usart.h
+++ b/bsps/arm/stm32f4/include/bsp/usart.h
@@ -25,7 +25,7 @@
 
 /**
  * @defgroup stm32f4_usart USART Support
- * @ingroup arm_stm32f4
+ * @ingroup RTEMSBSPsARMSTM32F4
  * @brief USART Support
  * @{
  */
diff --git a/bsps/arm/tms570/clock/clock.c b/bsps/arm/tms570/clock/clock.c
index c87b7e2043..86b26aafd8 100644
--- a/bsps/arm/tms570/clock/clock.c
+++ b/bsps/arm/tms570/clock/clock.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief clock functions definitions.
  */
diff --git a/bsps/arm/tms570/console/printk-support.c b/bsps/arm/tms570/console/printk-support.c
index 8785db32c8..9e4a6000f1 100644
--- a/bsps/arm/tms570/console/printk-support.c
+++ b/bsps/arm/tms570/console/printk-support.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief definitions of serial line for debugging.
  */
diff --git a/bsps/arm/tms570/console/tms570-sci.c b/bsps/arm/tms570/console/tms570-sci.c
index 53986dece0..5eba1f7c92 100644
--- a/bsps/arm/tms570/console/tms570-sci.c
+++ b/bsps/arm/tms570/console/tms570-sci.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief Serial communication interface (SCI) functions definitions.
  */
diff --git a/bsps/arm/tms570/cpucounter/cpucounterread.c b/bsps/arm/tms570/cpucounter/cpucounterread.c
index ada65a87ed..2195199106 100644
--- a/bsps/arm/tms570/cpucounter/cpucounterread.c
+++ b/bsps/arm/tms570/cpucounter/cpucounterread.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570_clocks
+ * @ingroup RTEMSBSPsARMTMS570_clocks
  *
  * @brief Cortex-R performace counters
  *
diff --git a/bsps/arm/tms570/include/bsp.h b/bsps/arm/tms570/include/bsp.h
index f557d868ee..c5ac0cc59a 100644
--- a/bsps/arm/tms570/include/bsp.h
+++ b/bsps/arm/tms570/include/bsp.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief Global BSP definitions.
  */
@@ -25,6 +25,16 @@
 #ifndef LIBBSP_ARM_TMS570_BSP_H
 #define LIBBSP_ARM_TMS570_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsARMTMS570 TMS570
+ *
+ * @ingroup RTEMSBSPsARM
+ *
+ * @brief TMS570 Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 
 #define BSP_FEATURE_IRQ_EXTENSION
@@ -39,4 +49,6 @@
 
 #endif /* ASM */
 
+/* @} */
+
 #endif /* LIBBSP_ARM_TMS570_BSP_H */
diff --git a/bsps/arm/tms570/include/bsp/irq.h b/bsps/arm/tms570/include/bsp/irq.h
index c90c6002c1..c37ebadbc4 100644
--- a/bsps/arm/tms570/include/bsp/irq.h
+++ b/bsps/arm/tms570/include/bsp/irq.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief TMS570 interrupt definitions.
  */
diff --git a/bsps/arm/tms570/include/bsp/system-clocks.h b/bsps/arm/tms570/include/bsp/system-clocks.h
index ea60b3a6a5..9c819fef74 100644
--- a/bsps/arm/tms570/include/bsp/system-clocks.h
+++ b/bsps/arm/tms570/include/bsp/system-clocks.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief System clocks.
  */
@@ -34,7 +34,7 @@ extern "C" {
 /**
  * @defgroup tms570_clock System Clocks
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief System clocks.
  *
diff --git a/bsps/arm/tms570/include/bsp/tms570-pinmux.h b/bsps/arm/tms570/include/bsp/tms570-pinmux.h
index edf23f27f3..f744b92737 100644
--- a/bsps/arm/tms570/include/bsp/tms570-pinmux.h
+++ b/bsps/arm/tms570/include/bsp/tms570-pinmux.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief I/O Multiplexing Module (IOMM) basic support
  */
diff --git a/bsps/arm/tms570/include/bsp/tms570-pins.h b/bsps/arm/tms570/include/bsp/tms570-pins.h
index ac9cf4ca74..32839138d0 100644
--- a/bsps/arm/tms570/include/bsp/tms570-pins.h
+++ b/bsps/arm/tms570/include/bsp/tms570-pins.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief Select pin mapping according to selected chip.
  *        Defaults to TMS570LS3137ZWT for now.
diff --git a/bsps/arm/tms570/include/bsp/tms570-pom.h b/bsps/arm/tms570/include/bsp/tms570-pom.h
index db8a54b824..7e89ea2b96 100644
--- a/bsps/arm/tms570/include/bsp/tms570-pom.h
+++ b/bsps/arm/tms570/include/bsp/tms570-pom.h
@@ -1,6 +1,6 @@
 /**
  * @file
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  * @brief Parameter Overlay Module (POM) header file
  */
 
diff --git a/bsps/arm/tms570/include/bsp/tms570-rti.h b/bsps/arm/tms570/include/bsp/tms570-rti.h
index deb360af3a..fdfdc1578a 100644
--- a/bsps/arm/tms570/include/bsp/tms570-rti.h
+++ b/bsps/arm/tms570/include/bsp/tms570-rti.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief Real Time Interrupt module (RTI) header file.
  */
diff --git a/bsps/arm/tms570/include/bsp/tms570-sci-driver.h b/bsps/arm/tms570/include/bsp/tms570-sci-driver.h
index 2cb63d687c..995e18ffbe 100644
--- a/bsps/arm/tms570/include/bsp/tms570-sci-driver.h
+++ b/bsps/arm/tms570/include/bsp/tms570-sci-driver.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief Declaration of serial's driver inner structure.
  */
diff --git a/bsps/arm/tms570/include/bsp/tms570-sci.h b/bsps/arm/tms570/include/bsp/tms570-sci.h
index c2ef198de6..cc92a514cb 100644
--- a/bsps/arm/tms570/include/bsp/tms570-sci.h
+++ b/bsps/arm/tms570/include/bsp/tms570-sci.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief Serial Communication Interface (SCI) header file.
  */
diff --git a/bsps/arm/tms570/include/bsp/tms570-vim.h b/bsps/arm/tms570/include/bsp/tms570-vim.h
index 27173be098..9903d31960 100644
--- a/bsps/arm/tms570/include/bsp/tms570-vim.h
+++ b/bsps/arm/tms570/include/bsp/tms570-vim.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief Vectored Interrupt Module (VIM) header file.
  */
diff --git a/bsps/arm/tms570/include/bsp/tms570_selftest.h b/bsps/arm/tms570/include/bsp/tms570_selftest.h
index d3fb6f8dbe..c7e01a36cd 100644
--- a/bsps/arm/tms570/include/bsp/tms570_selftest.h
+++ b/bsps/arm/tms570/include/bsp/tms570_selftest.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief Definition of TMS570 selftest error codes, addresses and functions.
  */
diff --git a/bsps/arm/tms570/include/bsp/tms570_selftest_parity.h b/bsps/arm/tms570/include/bsp/tms570_selftest_parity.h
index 287d964969..404a414beb 100644
--- a/bsps/arm/tms570/include/bsp/tms570_selftest_parity.h
+++ b/bsps/arm/tms570/include/bsp/tms570_selftest_parity.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief Check of module parity based protection logic to work.
  */
diff --git a/bsps/arm/tms570/include/bsp/tms570lc4357-pins.h b/bsps/arm/tms570/include/bsp/tms570lc4357-pins.h
index 125a7792e0..a7912d1547 100644
--- a/bsps/arm/tms570/include/bsp/tms570lc4357-pins.h
+++ b/bsps/arm/tms570/include/bsp/tms570lc4357-pins.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief Specification of individual pins mapping to the package
  */
diff --git a/bsps/arm/tms570/include/bsp/tms570ls3137zwt-pins.h b/bsps/arm/tms570/include/bsp/tms570ls3137zwt-pins.h
index f906636232..089f0d4248 100644
--- a/bsps/arm/tms570/include/bsp/tms570ls3137zwt-pins.h
+++ b/bsps/arm/tms570/include/bsp/tms570ls3137zwt-pins.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief Specification of individual pins mapping to the package
  */
diff --git a/bsps/arm/tms570/irq/irq.c b/bsps/arm/tms570/irq/irq.c
index 877b6e2985..7129915c93 100644
--- a/bsps/arm/tms570/irq/irq.c
+++ b/bsps/arm/tms570/irq/irq.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief TMS570 interrupt support functions definitions.
  */
diff --git a/bsps/arm/tms570/start/bspreset.c b/bsps/arm/tms570/start/bspreset.c
index beac0f0f16..daca621c86 100644
--- a/bsps/arm/tms570/start/bspreset.c
+++ b/bsps/arm/tms570/start/bspreset.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief Reset code.
  */
diff --git a/bsps/arm/tms570/start/bspstart.c b/bsps/arm/tms570/start/bspstart.c
index abf9eff392..25ea4e3a17 100644
--- a/bsps/arm/tms570/start/bspstart.c
+++ b/bsps/arm/tms570/start/bspstart.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief Startup code.
  */
diff --git a/bsps/arm/tms570/start/bspstarthooks.c b/bsps/arm/tms570/start/bspstarthooks.c
index 64e57d6d13..55a50ca65b 100644
--- a/bsps/arm/tms570/start/bspstarthooks.c
+++ b/bsps/arm/tms570/start/bspstarthooks.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief First configurations and initializations to the correct
  *              functionality of the board.
diff --git a/bsps/arm/tms570/start/init_emif_sdram.c b/bsps/arm/tms570/start/init_emif_sdram.c
index 3004e03b11..2ce7946203 100644
--- a/bsps/arm/tms570/start/init_emif_sdram.c
+++ b/bsps/arm/tms570/start/init_emif_sdram.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief Initialization of external memory/SDRAM interface.
  */
diff --git a/bsps/arm/tms570/start/init_esm.c b/bsps/arm/tms570/start/init_esm.c
index 9364cba384..fdc7f94b90 100644
--- a/bsps/arm/tms570/start/init_esm.c
+++ b/bsps/arm/tms570/start/init_esm.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief Error signaling module initialization
  */
diff --git a/bsps/arm/tms570/start/init_pinmux.c b/bsps/arm/tms570/start/init_pinmux.c
index f294dd8ad2..e86a115541 100644
--- a/bsps/arm/tms570/start/init_pinmux.c
+++ b/bsps/arm/tms570/start/init_pinmux.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief Initialize pin multiplexers.
  */
diff --git a/bsps/arm/tms570/start/pinmux.c b/bsps/arm/tms570/start/pinmux.c
index 44f5468146..6aec5f7c32 100644
--- a/bsps/arm/tms570/start/pinmux.c
+++ b/bsps/arm/tms570/start/pinmux.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief I/O Multiplexing Module (IOMM) basic support
  */
diff --git a/bsps/arm/tms570/start/tms570-pom.c b/bsps/arm/tms570/start/tms570-pom.c
index d884ef8aa3..8f31d01b77 100644
--- a/bsps/arm/tms570/start/tms570-pom.c
+++ b/bsps/arm/tms570/start/tms570-pom.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief TMS570 Parameter Overlay Module functions definitions.
  */
diff --git a/bsps/arm/tms570/start/tms570_selftest.c b/bsps/arm/tms570/start/tms570_selftest.c
index 5861b4e898..6f3e553acd 100644
--- a/bsps/arm/tms570/start/tms570_selftest.c
+++ b/bsps/arm/tms570/start/tms570_selftest.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief TMS570 selftest support functions implementation.
  */
diff --git a/bsps/arm/tms570/start/tms570_selftest_par_can.c b/bsps/arm/tms570/start/tms570_selftest_par_can.c
index d96baf6961..7f622c38a8 100644
--- a/bsps/arm/tms570/start/tms570_selftest_par_can.c
+++ b/bsps/arm/tms570/start/tms570_selftest_par_can.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief Test CAN module parity based protection logic to work.
  */
diff --git a/bsps/arm/tms570/start/tms570_selftest_par_mibspi.c b/bsps/arm/tms570/start/tms570_selftest_par_mibspi.c
index 51889309d9..0acac1f0e6 100644
--- a/bsps/arm/tms570/start/tms570_selftest_par_mibspi.c
+++ b/bsps/arm/tms570/start/tms570_selftest_par_mibspi.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief Test MibSPI module parity based protection logic to work.
  */
diff --git a/bsps/arm/tms570/start/tms570_selftest_par_std.c b/bsps/arm/tms570/start/tms570_selftest_par_std.c
index 7ad64407db..60bc35d422 100644
--- a/bsps/arm/tms570/start/tms570_selftest_par_std.c
+++ b/bsps/arm/tms570/start/tms570_selftest_par_std.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief Generic parity based protection logic check applicable to HETx, HTUx, ADC, DMA and VIM.
  */
diff --git a/bsps/arm/tms570/start/tms570_selftest_parity.c b/bsps/arm/tms570/start/tms570_selftest_parity.c
index a7d32a39f0..8152180eee 100644
--- a/bsps/arm/tms570/start/tms570_selftest_parity.c
+++ b/bsps/arm/tms570/start/tms570_selftest_parity.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief Check of module parity based protection logic to work.
  */
diff --git a/bsps/arm/tms570/start/tms570_tcram_tests.c b/bsps/arm/tms570/start/tms570_tcram_tests.c
index dfee9d8e52..e920717cd8 100644
--- a/bsps/arm/tms570/start/tms570_tcram_tests.c
+++ b/bsps/arm/tms570/start/tms570_tcram_tests.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup tms570
+ * @ingroup RTEMSBSPsARMTMS570
  *
  * @brief TCRAM selftest function.
  */
diff --git a/bsps/arm/xilinx-zynq/include/bsp.h b/bsps/arm/xilinx-zynq/include/bsp.h
index 72b98193d2..43568980be 100644
--- a/bsps/arm/xilinx-zynq/include/bsp.h
+++ b/bsps/arm/xilinx-zynq/include/bsp.h
@@ -1,6 +1,6 @@
 /**
  * @file
- * @ingroup arm_zynq
+ * @ingroup RTEMSBSPsARMZynq
  * @brief Global BSP definitions.
  */
 
@@ -21,6 +21,16 @@
 #ifndef LIBBSP_ARM_XILINX_ZYNQ_BSP_H
 #define LIBBSP_ARM_XILINX_ZYNQ_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsARMZynq Xilinx Zynq
+ *
+ * @ingroup RTEMSBSPsARM
+ *
+ * @brief Xilinx Zynq Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 
 #define BSP_FEATURE_IRQ_EXTENSION
@@ -36,13 +46,6 @@
 extern "C" {
 #endif /* __cplusplus */
 
-/**
- * @defgroup arm_zynq Xilinx-Zynq Support
- * @ingroup RTEMSBSPsARM
- * @brief Xilinz-Zynq Board Support Package
- * @{
- */
-
 #define BSP_ARM_A9MPCORE_SCU_BASE 0xf8f00000
 
 #define BSP_ARM_GIC_CPUIF_BASE 0xf8f00100
@@ -69,12 +72,12 @@ BSP_START_TEXT_SECTION void zynq_setup_mmu_and_cache(void);
 
 uint32_t zynq_clock_cpu_1x(void);
 
-/** @} */
-
 #ifdef __cplusplus
 }
 #endif /* __cplusplus */
 
 #endif /* ASM */
 
+/** @} */
+
 #endif /* LIBBSP_ARM_XILINX_ZYNQ_BSP_H */
diff --git a/bsps/arm/xilinx-zynq/include/bsp/irq.h b/bsps/arm/xilinx-zynq/include/bsp/irq.h
index e8288938fe..d8020ca9f6 100644
--- a/bsps/arm/xilinx-zynq/include/bsp/irq.h
+++ b/bsps/arm/xilinx-zynq/include/bsp/irq.h
@@ -35,7 +35,7 @@ extern "C" {
 
 /**
  * @defgroup zynq_interrupt Interrupt Support
- * @ingroup arm_zynq
+ * @ingroup RTEMSBSPsARMZynq
  * @brief Interrupt Support
  * @{
  */
diff --git a/bsps/arm/xilinx-zynq/include/bsp/zynq-uart.h b/bsps/arm/xilinx-zynq/include/bsp/zynq-uart.h
index 4d3edfabef..76a0723f57 100644
--- a/bsps/arm/xilinx-zynq/include/bsp/zynq-uart.h
+++ b/bsps/arm/xilinx-zynq/include/bsp/zynq-uart.h
@@ -29,7 +29,7 @@ extern "C" {
 
 /**
  * @defgroup zynq_uart UART Support
- * @ingroup arm_zynq
+ * @ingroup RTEMSBSPsARMZynq
  * @brief UART Support
  */
 
diff --git a/bsps/arm/xilinx-zynq/include/tm27.h b/bsps/arm/xilinx-zynq/include/tm27.h
index 39b8ecafec..cf4f18a722 100644
--- a/bsps/arm/xilinx-zynq/include/tm27.h
+++ b/bsps/arm/xilinx-zynq/include/tm27.h
@@ -27,7 +27,7 @@
 
 /**
  * @defgroup zynq_tm27 TM27 Test Support
- * @ingroup arm_zynq
+ * @ingroup RTEMSBSPsARMZynq
  * @brief Interrupt Mechanisms for tm27 test
  */
 
diff --git a/bsps/bfin/TLL6527M/include/bsp.h b/bsps/bfin/TLL6527M/include/bsp.h
index 96321f8ece..daf1ebe333 100644
--- a/bsps/bfin/TLL6527M/include/bsp.h
+++ b/bsps/bfin/TLL6527M/include/bsp.h
@@ -1,6 +1,8 @@
 /**
  * @file
- * @ingroup bfin_tll6527m
+ *
+ * @ingroup RTEMSBSPsBfinTLL6527M
+ *
  * @brief Global BSP definitions.
  *
  * This include file contains all board IO definitions for TLL6527M.
@@ -17,6 +19,16 @@
 #ifndef LIBBSP_BFIN_TLL6527M_BSP_H
 #define LIBBSP_BFIN_TLL6527M_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsBfinTLL6527M TLL6527M
+ *
+ * @ingroup RTEMSBSPsBfin
+ *
+ * @brief TLL6527M Board Support Package.
+ *
+ * @{
+ */
+
 #ifndef ASM
 
 #include <bspopts.h>
@@ -31,13 +43,6 @@
 extern "C" {
 #endif
 
-/**
- * @defgroup bfin_tll6527m TLL6527M Support
- * @ingroup RTEMSBSPsBfin
- * @brief TLL6527M Support Package
- * @{
- */
-
 /*
  * PLL and clock setup values:
  */
@@ -118,12 +123,12 @@ void Init_RTC(void);
  */
 void bfin_null_isr(void);
 
-/** @} */
-
 #ifdef __cplusplus
 }
 #endif
 
 #endif /* !ASM */
 
+/** @} */
+
 #endif
diff --git a/bsps/bfin/TLL6527M/include/cplb.h b/bsps/bfin/TLL6527M/include/cplb.h
index b6035ca142..e5625771a3 100644
--- a/bsps/bfin/TLL6527M/include/cplb.h
+++ b/bsps/bfin/TLL6527M/include/cplb.h
@@ -18,7 +18,7 @@
 
 /**
  * @defgroup tll6527m_cplb CPLB Configuration
- * @ingroup bfin_tll6527m
+ * @ingroup RTEMSBSPsBfinTLL6527M
  * @brief CPLB Configuration
  * @{
  */
diff --git a/bsps/bfin/TLL6527M/include/tm27.h b/bsps/bfin/TLL6527M/include/tm27.h
index 787004f8a6..6a943fec1b 100644
--- a/bsps/bfin/TLL6527M/include/tm27.h
+++ b/bsps/bfin/TLL6527M/include/tm27.h
@@ -23,7 +23,7 @@
 
 /**
  * @defgroup tll6527m_tm27 TM27 Test Support
- * @ingroup bfin_tll6527m
+ * @ingroup RTEMSBSPsBfinTLL6527M
  * @brief Interrupt Mechanisms for TM27
  * @{
  */
diff --git a/bsps/bfin/bf537Stamp/include/bsp.h b/bsps/bfin/bf537Stamp/include/bsp.h
index 8b14be13f6..5b55ecf325 100644
--- a/bsps/bfin/bf537Stamp/include/bsp.h
+++ b/bsps/bfin/bf537Stamp/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsBfinBF537Stamp
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*  bsp.h
  *
  *  This include file contains all board IO definitions for bf537Stamp.
@@ -15,6 +23,16 @@
 #ifndef LIBBSP_BFIN_BF537STAMP_BSP_H
 #define LIBBSP_BFIN_BF537STAMP_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsBfinBF537Stamp BF537-STAMP
+ *
+ * @ingroup RTEMSBSPsBfin
+ *
+ * @brief BF537-STAMP Board Support Package.
+ *
+ * @{
+ */
+
 #ifndef ASM
 
 #include <bspopts.h>
@@ -119,4 +137,6 @@ extern int bf537Stamp_network_driver_attach(struct rtems_bsdnet_ifconfig *, int)
 
 #endif /* !ASM */
 
+/* @} */
+
 #endif
diff --git a/bsps/bfin/eZKit533/include/bsp.h b/bsps/bfin/eZKit533/include/bsp.h
index 476769e216..27498b1442 100644
--- a/bsps/bfin/eZKit533/include/bsp.h
+++ b/bsps/bfin/eZKit533/include/bsp.h
@@ -1,7 +1,11 @@
 /**
  * @file
- * @ingroup bfin_ezkit533
+ *
+ * @ingroup RTEMSBSPsBfinEZKit533
+ *
  * @brief Global BSP definitions.
+ *
+ * This include file contains all board IO definitions for TLL6527M.
  */
 
 /*  bsp.h
@@ -37,9 +41,12 @@ extern "C" {
 #endif
 
 /**
- * @defgroup bfin_ezkit533 eZKit533 Support
+ * @defgroup RTEMSBSPsBfinEZKit533 BF533 EZ-KIT
+ *
  * @ingroup RTEMSBSPsBfin
- * @brief eZKit533 Board Support Package
+ *
+ * @brief BF533 EZ-KIT Board Support Package.
+ *
  * @{
  */
 
@@ -163,4 +170,6 @@ void bfin_null_isr(void);
 
 #endif /* !ASM */
 
+/** @} */
+
 #endif
diff --git a/bsps/bfin/eZKit533/include/cplb.h b/bsps/bfin/eZKit533/include/cplb.h
index 2c215e8954..1a5906a8d1 100644
--- a/bsps/bfin/eZKit533/include/cplb.h
+++ b/bsps/bfin/eZKit533/include/cplb.h
@@ -18,7 +18,7 @@
 
 /**
  * @defgroup ezkit533_cplb CPLB Configuration
- * @ingroup bfin_ezkit533
+ * @ingroup RTEMSBSPsBfinEZKit533
  * @brief CPLB Configuration
  * @{
  */
diff --git a/bsps/bfin/eZKit533/include/tm27.h b/bsps/bfin/eZKit533/include/tm27.h
index 6aaf4cfa1d..834eee8229 100644
--- a/bsps/bfin/eZKit533/include/tm27.h
+++ b/bsps/bfin/eZKit533/include/tm27.h
@@ -21,7 +21,7 @@
 
 /**
  * @defgroup ezkit533_tm27 TM27 Test Support
- * @ingroup bfin_ezkit533
+ * @ingroup RTEMSBSPsBfinEZKit533
  * @brief Interrupt Mechanisms for TM27
  * @{
  */
diff --git a/bsps/epiphany/epiphany_sim/include/bsp.h b/bsps/epiphany/epiphany_sim/include/bsp.h
index 46d495a8c5..36b3f1fad0 100644
--- a/bsps/epiphany/epiphany_sim/include/bsp.h
+++ b/bsps/epiphany/epiphany_sim/include/bsp.h
@@ -1,9 +1,7 @@
 /**
- * @defgroup bsp_epiphany Epiphany
+ * @file
  *
- * @ingroup bsp_epiphany
- *
- * @brief Epiphany Support Package
+ * @ingroup RTEMSBSPsEpiphanySim
  */
 
 /*
@@ -38,6 +36,16 @@
 #ifndef LIBBSP_EPIPHANY_EPIPHANY_SIM_H
 #define LIBBSP_EPIPHANY_EPIPHANY_SIM_H
 
+/**
+ * @defgroup RTEMSBSPsEpiphanySim Simulator
+ *
+ * @ingroup RTEMSBSPsEpiphany
+ *
+ * @brief Simulator Board Support Package.
+ *
+ * @{
+ */
+
 #include <rtems.h>
 
 #include <bspopts.h>
@@ -61,5 +69,6 @@ void *clock_driver_sim_idle_body(uintptr_t);
 #ifdef __cplusplus
 }
 #endif
+/** @} */
 
 #endif /* LIBBSP_EPIPHANY_EPIPHANY_SIM_H */
diff --git a/bsps/i386/pc386/console/fb_vesa_rm.c b/bsps/i386/pc386/console/fb_vesa_rm.c
index 857f5b8d1d..3263bc262b 100644
--- a/bsps/i386/pc386/console/fb_vesa_rm.c
+++ b/bsps/i386/pc386/console/fb_vesa_rm.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup i386_pc386
+ * @ingroup RTEMSBSPsI386
  *
  * @brief FB driver for graphic hardware compatible with VESA Bios Extension
  *     Real mode interface utilized
diff --git a/bsps/i386/pc386/console/i386kbd.h b/bsps/i386/pc386/console/i386kbd.h
index 627b37c750..5fd12f2e41 100644
--- a/bsps/i386/pc386/console/i386kbd.h
+++ b/bsps/i386/pc386/console/i386kbd.h
@@ -1,7 +1,7 @@
 /**
  * @file
  * 
- * @ingroup i386_pc386
+ * @ingroup RTEMSBSPsI386
  *
  * @brief I386 keyboard definitions.
  */
diff --git a/bsps/i386/pc386/console/ps2_mouse.h b/bsps/i386/pc386/console/ps2_mouse.h
index dd61e8a367..1c1366de1a 100644
--- a/bsps/i386/pc386/console/ps2_mouse.h
+++ b/bsps/i386/pc386/console/ps2_mouse.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup i386_pc386
+ * @ingroup RTEMSBSPsI386
  *
  * @brief Keyboard and mouse definitions.
  */
diff --git a/bsps/i386/pc386/include/bsp.h b/bsps/i386/pc386/include/bsp.h
index 3049ee5a8a..7bc6f839bd 100644
--- a/bsps/i386/pc386/include/bsp.h
+++ b/bsps/i386/pc386/include/bsp.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup i386_pc386
+ * @ingroup RTEMSBSPsI386Pc386
  *
  * @brief Global BSP definitions.
  */
@@ -47,6 +47,11 @@
 #ifndef LIBBSP_I386_PC386_BSP_H
 #define LIBBSP_I386_PC386_BSP_H
 
+/**
+ * @addtogroup RTEMSBSPsI386
+ *
+ * @{
+ */
 #ifndef ASM
 
 #include <bspopts.h>
@@ -61,13 +66,7 @@
 extern "C" {
 #endif
 
-/**
- * @degroup i386_pc386 PC386 Support
- *
- * @ingroup RTEMSBSPsI386
- *
- * @brief PC386 support.
- */
+
 
 #define BSP_HAS_FRAME_BUFFER 1
 
@@ -261,4 +260,6 @@ void C_dispatch_isr(int vector);
 
 #endif /* !ASM */
 
+/** @} */
+
 #endif /* _BSP_H */
diff --git a/bsps/i386/pc386/include/bsp/exar17d15x.h b/bsps/i386/pc386/include/bsp/exar17d15x.h
index 9e1194ffec..ea785a397b 100644
--- a/bsps/i386/pc386/include/bsp/exar17d15x.h
+++ b/bsps/i386/pc386/include/bsp/exar17d15x.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup i386_pc386
+ * @ingroup RTEMSBSPsI386
  *
  * @brief Exar Multiport PCI UART interface.
  */
diff --git a/bsps/i386/pc386/include/bsp/fb_default_mode.h b/bsps/i386/pc386/include/bsp/fb_default_mode.h
index a71e379ce5..05af33d098 100644
--- a/bsps/i386/pc386/include/bsp/fb_default_mode.h
+++ b/bsps/i386/pc386/include/bsp/fb_default_mode.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup i386_pc386
+ * @ingroup RTEMSBSPsI386
  *
  * @brief Variable for the definition of the default graphical mode to be
  *     initialized.
diff --git a/bsps/i386/pc386/include/bsp/fb_vesa.h b/bsps/i386/pc386/include/bsp/fb_vesa.h
index ecb56d7b0f..3222119bfd 100644
--- a/bsps/i386/pc386/include/bsp/fb_vesa.h
+++ b/bsps/i386/pc386/include/bsp/fb_vesa.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup i386_pc386
+ * @ingroup RTEMSBSPsI386
  *
  * @brief Headers specific for framebuffer drivers utilizing VESA VBE.
  */
diff --git a/bsps/i386/pc386/include/bsp/rtd316.h b/bsps/i386/pc386/include/bsp/rtd316.h
index aabad2c263..28fe6f47db 100644
--- a/bsps/i386/pc386/include/bsp/rtd316.h
+++ b/bsps/i386/pc386/include/bsp/rtd316.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup i386_pc386
+ * @ingroup RTEMSBSPsI386
  *
  * @brief RTD316 driver interface defintions.
  */
diff --git a/bsps/i386/pc386/include/bsp/tblsizes.h b/bsps/i386/pc386/include/bsp/tblsizes.h
index cea8619c8f..13429dc85f 100644
--- a/bsps/i386/pc386/include/bsp/tblsizes.h
+++ b/bsps/i386/pc386/include/bsp/tblsizes.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup i386_pc386
+ * @ingroup RTEMSBSPsI386
  *
  * @brief Sizes of Global and Interrupt descriptor tables.
  */
diff --git a/bsps/i386/pc386/include/bsp/vbe3.h b/bsps/i386/pc386/include/bsp/vbe3.h
index 4d1bf51661..3e67b769a3 100644
--- a/bsps/i386/pc386/include/bsp/vbe3.h
+++ b/bsps/i386/pc386/include/bsp/vbe3.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup i386_pc386
+ * @ingroup RTEMSBSPsI386
  *
  * @brief VESA Bios Extension definitions.
  *
diff --git a/bsps/i386/pc386/include/crt.h b/bsps/i386/pc386/include/crt.h
index ba0534a5aa..ae26c829d2 100644
--- a/bsps/i386/pc386/include/crt.h
+++ b/bsps/i386/pc386/include/crt.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup i386_pc386
+ * @ingroup RTEMSBSPsI386
  *
  * @brief CRT controller definitions.
  */
diff --git a/bsps/i386/pc386/include/edid.h b/bsps/i386/pc386/include/edid.h
index 48beb10f1c..c76cec8330 100644
--- a/bsps/i386/pc386/include/edid.h
+++ b/bsps/i386/pc386/include/edid.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup i386_pc386
+ * @ingroup RTEMSBSPsI386
  *
  * @brief VESA EDID definitions.
  *
diff --git a/bsps/i386/pc386/include/rtems/kd.h b/bsps/i386/pc386/include/rtems/kd.h
index c97e4f7bdd..2a00a72523 100644
--- a/bsps/i386/pc386/include/rtems/kd.h
+++ b/bsps/i386/pc386/include/rtems/kd.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup i386_pc386
+ * @ingroup RTEMSBSPsI386
  *
  * @brief KD definitions.
  */
diff --git a/bsps/i386/pc386/include/rtems/keyboard.h b/bsps/i386/pc386/include/rtems/keyboard.h
index ffc8aabfbd..e35a96a7bc 100644
--- a/bsps/i386/pc386/include/rtems/keyboard.h
+++ b/bsps/i386/pc386/include/rtems/keyboard.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup i386_pc386
+ * @ingroup RTEMSBSPsI386
  *
  * @brief Keyboard definitions.
  */
diff --git a/bsps/i386/pc386/include/rtems/ps2_drv.h b/bsps/i386/pc386/include/rtems/ps2_drv.h
index 536b56a6ed..2e0000b62f 100644
--- a/bsps/i386/pc386/include/rtems/ps2_drv.h
+++ b/bsps/i386/pc386/include/rtems/ps2_drv.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup i386_pc386
+ * @ingroup RTEMSBSPsI386
  *
  * @brief Paux driver routines.
  */
diff --git a/bsps/i386/pc386/include/rtems/vgacons.h b/bsps/i386/pc386/include/rtems/vgacons.h
index df7615bf5e..de80ef3664 100644
--- a/bsps/i386/pc386/include/rtems/vgacons.h
+++ b/bsps/i386/pc386/include/rtems/vgacons.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup i386_pc386
+ * @ingroup RTEMSBSPsI386
  *
  * @brief VGA definitions.
  */
diff --git a/bsps/i386/pc386/include/tm27.h b/bsps/i386/pc386/include/tm27.h
index b53ab8e97a..229590b6bc 100644
--- a/bsps/i386/pc386/include/tm27.h
+++ b/bsps/i386/pc386/include/tm27.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup i386_pc386
+ * @ingroup RTEMSBSPsI386
  *
  * @brief Implementation of interrupt mechanisms for Time Test 27.
  */
diff --git a/bsps/i386/pc386/net/3c509.h b/bsps/i386/pc386/net/3c509.h
index 975342970a..300f864c20 100644
--- a/bsps/i386/pc386/net/3c509.h
+++ b/bsps/i386/pc386/net/3c509.h
@@ -58,7 +58,7 @@
 /**
  * @defgroup pc386_3c509 3C509 Support
  *
- * @ingroup i386_pc386
+ * @ingroup RTEMSBSPsI386
  *
  * @brief 3C509 support.
  */
diff --git a/bsps/i386/shared/doxygen.h b/bsps/i386/shared/doxygen.h
index 8b1e7c0287..01af22ca5e 100644
--- a/bsps/i386/shared/doxygen.h
+++ b/bsps/i386/shared/doxygen.h
@@ -3,7 +3,7 @@
  *
  * @ingroup RTEMSBSPs
  *
- * @brief i386 Board Support Packages.
+ * @brief i386 Board Support Package.
  */
 
 /**
diff --git a/bsps/include/libchip/wd80x3.h b/bsps/include/libchip/wd80x3.h
index b4aa12e735..970cc94cce 100644
--- a/bsps/include/libchip/wd80x3.h
+++ b/bsps/include/libchip/wd80x3.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup i386_pc386
+ * @ingroup RTEMSBSPsI386
  *
  * @brief DP8390 Ethernet controller definitions.
  */
diff --git a/bsps/lm32/lm32_evr/include/bsp.h b/bsps/lm32/lm32_evr/include/bsp.h
index 7ffc5251a2..26a393e689 100644
--- a/bsps/lm32/lm32_evr/include/bsp.h
+++ b/bsps/lm32/lm32_evr/include/bsp.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lm32_evr
+ * @ingroup RTEMSBSPsLM32EVR
  *
  * @brief Global BSP definitions.
  */
@@ -21,19 +21,20 @@
 #ifndef LIBBSP_LM32_LM32_EVR_BSP_H
 #define LIBBSP_LM32_LM32_EVR_BSP_H
 
-#include <stdint.h>
-#include <bspopts.h>
-#include <bsp/default-initial-extension.h>
-
-#include <rtems.h>
-
 /**
- * @defgroup lm32_evr EVR Support
+ * @defgroup RTEMSBSPsLM32EVR LM32 EVR
  *
  * @ingroup RTEMSBSPsLM32
  *
- * @brief EVR support package.
+ * @brief LM32 EVR Board Support Package.
+ *
+ * @{
  */
+#include <stdint.h>
+#include <bspopts.h>
+#include <bsp/default-initial-extension.h>
+
+#include <rtems.h>
 
 #ifdef __cplusplus
 extern "C" {
@@ -81,5 +82,7 @@ char BSP_uart_is_character_ready(char *ch);
 }
 #endif
 
+/** @} */
+
 #endif
 /* end of include file */
diff --git a/bsps/lm32/milkymist/include/bsp.h b/bsps/lm32/milkymist/include/bsp.h
index 254da0d32b..96ef645cc5 100644
--- a/bsps/lm32/milkymist/include/bsp.h
+++ b/bsps/lm32/milkymist/include/bsp.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup lm32_milkymist
+ * @ingroup RTEMSBSPsLM32Milkymist
  *
  * @brief Global BSP definitions.
  */
@@ -27,11 +27,13 @@
 #include <rtems.h>
 
 /**
- * @defgroup lm32_milkymist Milkymist Support
+ * @defgroup RTEMSBSPsLM32Milkymist Milkymist
  * 
  * @ingroup RTEMSBSPsLM32
  * 
- * @brief Milkymist support package.
+ * @brief Milkymist Board Support Package.
+ *
+ * @{
  */
 
 #ifdef __cplusplus
@@ -59,4 +61,6 @@ extern int rtems_minimac_driver_attach (struct rtems_bsdnet_ifconfig *config,
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/m68k/av5282/include/bsp.h b/bsps/m68k/av5282/include/bsp.h
index 643a0c9184..ee21777e82 100644
--- a/bsps/m68k/av5282/include/bsp.h
+++ b/bsps/m68k/av5282/include/bsp.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup m68k_av5282
+ * @ingroup RTEMSBSPsM68kAV5282
  *
  * @brief Global BSP definitions.
  */
@@ -10,17 +10,19 @@
  *  av5282 BSP header file
  */
 
+#ifndef LIBBSP_M68K_AV5282_BSP_H
+#define LIBBSP_M68K_AV5282_BSP_H
+
 /**
- * @defgroup m68k_av5282 AV5282 Support
+ * @defgroup RTEMSBSPsM68kAV5282 AV5282
  *
  * @ingroup RTEMSBSPsM68k
  *
- * @brief AV5282 support.
+ * @brief AV5282 Board Support Package.
+ *
+ * @{
  */
 
-#ifndef LIBBSP_M68K_AV5282_BSP_H
-#define LIBBSP_M68K_AV5282_BSP_H
-
 #ifndef ASM
 
 #include <bspopts.h>
@@ -94,4 +96,7 @@ void Init5282(void);
 #endif
 
 #endif /* !ASM */
+
+/** @} */
+
 #endif
diff --git a/bsps/m68k/csb360/include/bsp.h b/bsps/m68k/csb360/include/bsp.h
index eceb790a08..84ad6a7b23 100644
--- a/bsps/m68k/csb360/include/bsp.h
+++ b/bsps/m68k/csb360/include/bsp.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup m68k_csb360
+ * @ingroup RTEMSBSPsM68kCSB3602
  *
  * @brief Global BSP definitions.
  */
@@ -26,16 +26,17 @@
 #ifndef LIBBSP_M68K_CSB360_BSP_H
 #define LIBBSP_M68K_CSB360_BSP_H
 
-#include <mcf5272/mcf5272.h>
-
 /**
- * @defgroup m68k_csb360 CSB360 Support
+ * @defgroup RTEMSBSPsM68kCSB3602 CSB3602
  *
  * @ingroup RTEMSBSPsM68k
  *
- * @brief CSB360 support.
+ * @brief CSB3602 Board Support Package.
+ *
+ * @{
  */
 
+#include <mcf5272/mcf5272.h>
 
 /*** Board resources allocation ***/
 #define BSP_MEM_ADDR_SRAM 0x20000000
@@ -186,4 +187,6 @@ void init5272(void);
 
 #endif /* ASM */
 
+/** @} */
+
 #endif
diff --git a/bsps/m68k/gen68340/include/bsp.h b/bsps/m68k/gen68340/include/bsp.h
index ca9c79e4b2..6bc0f74a19 100644
--- a/bsps/m68k/gen68340/include/bsp.h
+++ b/bsps/m68k/gen68340/include/bsp.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup m68k_gen68340
+ * @ingroup RTEMSBSPsM68kGen68340
  *
  * @brief Global BSP definitions.
  */
@@ -26,6 +26,16 @@
 #ifndef LIBBSP_M68K_GEN68340_BSP_H
 #define LIBBSP_M68K_GEN68340_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsM68kGen68340 Motorola 68340
+ *
+ * @ingroup RTEMSBSPsM68k
+ *
+ * @brief Motorola 68340 Board Support Package.
+ *
+ * @{
+ */
+
 #ifndef ASM
 
 #include <bspopts.h>
@@ -37,14 +47,6 @@
 extern "C" {
 #endif
 
-/**
- * @defgroup m68k_gen68340 Motorola MC68340 Support
- *
- * @ingroup RTEMSBSPsM68k
- *
- * @brief Motorola MC68340 support.
- */
-
 /* Constants */
 
 /* Structures */
@@ -78,4 +80,6 @@ void _Init68340 (void);
 
 #endif /* !ASM */
 
+/** @} */
+
 #endif
diff --git a/bsps/m68k/gen68360/include/bsp.h b/bsps/m68k/gen68360/include/bsp.h
index 0c6a94066c..ac228e6fb5 100644
--- a/bsps/m68k/gen68360/include/bsp.h
+++ b/bsps/m68k/gen68360/include/bsp.h
@@ -1,7 +1,7 @@
 /**
  *  @file
  *
- *  @ingroup gen68360_bsp
+ *  @ingroup RTEMSBSPsM68kGen68360
  *
  *  @brief Board Support Package for `Generic' Motorola MC68360
  */
@@ -31,6 +31,16 @@
 #ifndef LIBBSP_M68K_GEN68360_BSP_H
 #define LIBBSP_M68K_GEN68360_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsM68kGen68360 Motorola 68360
+ *
+ * @ingroup RTEMSBSPsM68k
+ *
+ * @brief Motorola 68360 Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 
@@ -40,14 +50,6 @@
 extern "C" {
 #endif
 
-/**
- *  @defgroup gen68360_bsp Network driver
- *
- *  @ingroup m68k_gen68360
- *
- *  @brief Network driver configuration
- */
-
 struct rtems_bsdnet_ifconfig;
 extern int rtems_scc1_driver_attach (struct rtems_bsdnet_ifconfig *config, int attaching);
 #define RTEMS_BSP_NETWORK_DRIVER_NAME	"scc1"
@@ -108,4 +110,6 @@ void _Init68360(void);
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/m68k/gen68360/include/tm27.h b/bsps/m68k/gen68360/include/tm27.h
index c71eed3897..5523a4a345 100644
--- a/bsps/m68k/gen68360/include/tm27.h
+++ b/bsps/m68k/gen68360/include/tm27.h
@@ -22,7 +22,7 @@
 /**
  *  @defgroup m68k_tm27 Stuff for Time Test 27
  *
- *  @ingroup m68k_gen68360
+ *  @ingroup RTEMSBSPsM68kGen68360
  *
  *  @brief Don't bother with hardware -- just use a software-interrupt
  */
diff --git a/bsps/m68k/gen68360/spi/m360_spi.h b/bsps/m68k/gen68360/spi/m360_spi.h
index 8e9b2fb208..1a18707fe9 100644
--- a/bsps/m68k/gen68360/spi/m360_spi.h
+++ b/bsps/m68k/gen68360/spi/m360_spi.h
@@ -26,7 +26,7 @@
 /**
  *  @defgroup m68k_m360spi M360_SPIDRV Support
  *
- *  @ingroup m68k_gen68360
+ *  @ingroup RTEMSBSPsM68kGen68360
  *
  *  @brief M360_SPIDRV Support Package
  */
diff --git a/bsps/m68k/genmcf548x/include/bsp.h b/bsps/m68k/genmcf548x/include/bsp.h
index 82d9287635..0d17628f12 100644
--- a/bsps/m68k/genmcf548x/include/bsp.h
+++ b/bsps/m68k/genmcf548x/include/bsp.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup m68k_genmcf548x
+ * @ingroup RTEMSBSPsM68kGenMCF548X
  *
  * @brief Global BSP definitions.
  */
@@ -58,11 +58,13 @@
 #include <bsp/default-initial-extension.h>
 
 /**
- * @defgroup m68k_genmcf548x MCF548X Support
+ * @defgroup RTEMSBSPsM68kGenMCF548X MCF548X
  *
  * @ingroup RTEMSBSPsM68k
  *
- * @brief MCT548X support.
+ * @brief MCF548X Board Support Package.
+ *
+ * @{
  */
 
 #include <rtems.h>
@@ -131,4 +133,6 @@ void bsp_cacr_clear_flags(uint32_t flags);
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/m68k/genmcf548x/include/bsp/irq.h b/bsps/m68k/genmcf548x/include/bsp/irq.h
index 825cc0d104..0a5a4cd6d5 100644
--- a/bsps/m68k/genmcf548x/include/bsp/irq.h
+++ b/bsps/m68k/genmcf548x/include/bsp/irq.h
@@ -30,7 +30,7 @@
 /**
  * @defgroup genmcf548x_interrupt Interrupt Support
  *
- * @ingroup m68k_genmcf548x
+ * @ingroup RTEMSBSPsM68kGenMCF548X
  *
  * @brief Interrupt support.
  */
diff --git a/bsps/m68k/genmcf548x/include/tm27.h b/bsps/m68k/genmcf548x/include/tm27.h
index 31ea8bca0c..ad51ee7915 100644
--- a/bsps/m68k/genmcf548x/include/tm27.h
+++ b/bsps/m68k/genmcf548x/include/tm27.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup m68k_genmcf548x
+ * @ingroup RTEMSBSPsM68kGenMCF548X
  *
  * @brief Time Test 27 routines.
  */
diff --git a/bsps/m68k/mcf5206elite/include/bsp.h b/bsps/m68k/mcf5206elite/include/bsp.h
index 47c7e8c745..1081e1fc31 100644
--- a/bsps/m68k/mcf5206elite/include/bsp.h
+++ b/bsps/m68k/mcf5206elite/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsM68kMCF5206Elite
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*
  * Board Support Package for MCF5206eLITE evaluation board
  * BSP definitions
@@ -14,6 +22,16 @@
 #ifndef LIBBSP_M68K_MCF5206ELITE_BSP_H
 #define LIBBSP_M68K_MCF5206ELITE_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsM68kMCF5206Elite MCF5206eLite
+ *
+ * @ingroup RTEMSBSPsM68k
+ *
+ * @brief MCF5206eLite Board Support Package.
+ *
+ * @{
+ */
+
 #include "mcf5206/mcf5206e.h"
 
 /*** Board resources allocation ***/
@@ -178,4 +196,6 @@ void Init5206e(void);
 
 #endif /* ASM */
 
+/** @} */
+
 #endif
diff --git a/bsps/m68k/mcf52235/include/bsp.h b/bsps/m68k/mcf52235/include/bsp.h
index df30017eab..c608598b3d 100644
--- a/bsps/m68k/mcf52235/include/bsp.h
+++ b/bsps/m68k/mcf52235/include/bsp.h
@@ -1,9 +1,9 @@
 /**
  * @file
  *
- * @ingroup m68k_mcf52235
+ * @ingroup RTEMSBSPsM68kMCF52235
  *
- * @brief Global BSP definitions
+ * @brief Global BSP definitions.
  */
 
 /*
@@ -13,6 +13,16 @@
 #ifndef LIBBSP_M68K_MCF52235_BSP_H
 #define LIBBSP_M68K_MCF52235_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsM68kMCF52235 MCF52235
+ *
+ * @ingroup RTEMSBSPsM68k
+ *
+ * @brief MCF52235 Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 #include <rtems.h>
@@ -76,12 +86,7 @@ void Init52235(void);
 }
 #endif
 
+/** @} */
+
 #endif
 
-/**
- * @defgroup m68k_mcf52235 MCF52235 Support
- *
- * @ingroup RTEMSBSPsM68k
- *
- * @brief MCF52235 Support Package
- */
diff --git a/bsps/m68k/mcf5225x/include/bsp.h b/bsps/m68k/mcf5225x/include/bsp.h
index 8b8d40f485..12f6fb57e8 100644
--- a/bsps/m68k/mcf5225x/include/bsp.h
+++ b/bsps/m68k/mcf5225x/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsM68kMCF5225X
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*
  *  The license and distribution terms for this file may be
  *  found in the file LICENSE in this distribution or at
@@ -7,6 +15,16 @@
 #ifndef LIBBSP_M68K_MCF5225X_BSP_H
 #define LIBBSP_M68K_MCF5225X_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsM68kMCF5225X MCF5225X
+ *
+ * @ingroup RTEMSBSPsM68k
+ *
+ * @brief MCF5225X Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 #include <rtems.h>
@@ -87,4 +105,6 @@ void Init5225x(void);
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/m68k/mcf5235/include/bsp.h b/bsps/m68k/mcf5235/include/bsp.h
index 14a6b04034..d92ff7a6ee 100644
--- a/bsps/m68k/mcf5235/include/bsp.h
+++ b/bsps/m68k/mcf5235/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsM68kMCF5235
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*
  *  mcf5235 BSP header file
  */
@@ -5,6 +13,16 @@
 #ifndef LIBBSP_M68K_MCF5235_BSP_H
 #define LIBBSP_M68K_MCF5235_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsM68kMCF5235 MCF5235
+ *
+ * @ingroup RTEMSBSPsM68k
+ *
+ * @brief MCF5235 Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 #include <rtems.h>
@@ -67,4 +85,6 @@ void Init5235(void);
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/m68k/mcf5329/include/bsp.h b/bsps/m68k/mcf5329/include/bsp.h
index 7670e7a2d9..d3b5bcfb75 100644
--- a/bsps/m68k/mcf5329/include/bsp.h
+++ b/bsps/m68k/mcf5329/include/bsp.h
@@ -1,3 +1,12 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsM68kMCF5329
+ *
+ * @brief Global BSP definitions.
+ */
+
+
 /*
  *  mcf52235 BSP header file
  */
@@ -5,6 +14,16 @@
 #ifndef LIBBSP_M68K_MCF5329_BSP_H
 #define LIBBSP_M68K_MCF5329_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsM68kMCF5329 MCF5329
+ *
+ * @ingroup RTEMSBSPsM68k
+ *
+ * @brief MCF5329 Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 #include <rtems.h>
@@ -67,4 +86,6 @@ void Init5329(void);
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/m68k/mrm332/include/bsp.h b/bsps/m68k/mrm332/include/bsp.h
index 6d4f7b8eb2..77293946bb 100644
--- a/bsps/m68k/mrm332/include/bsp.h
+++ b/bsps/m68k/mrm332/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsM68kMRM332
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*  bsp.h
  *
  *  This include file contains all mrm board IO definitions.
@@ -15,6 +23,16 @@
 #ifndef LIBBSP_M68K_MRM332_BSP_H
 #define LIBBSP_M68K_MRM332_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsM68kMRM332 MRM332
+ *
+ * @ingroup RTEMSBSPsM68k
+ *
+ * @brief MRM332 Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 
@@ -87,4 +105,6 @@ void outbyte(char);
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/m68k/mvme147/include/bsp.h b/bsps/m68k/mvme147/include/bsp.h
index 9cf3fbf5a8..612b2b183d 100644
--- a/bsps/m68k/mvme147/include/bsp.h
+++ b/bsps/m68k/mvme147/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsM68kMVME147
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*  bsp.h
  *
  *  This include file contains all MVME147 board IO definitions.
@@ -17,6 +25,16 @@
 #ifndef LIBBSP_M68K_MVME147_BSP_H
 #define LIBBSP_M68K_MVME147_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsM68kMVME147 MVME147
+ *
+ * @ingroup RTEMSBSPsM68k
+ *
+ * @brief MVME147 Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 
@@ -114,4 +132,6 @@ rtems_isr_entry set_vector(
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/m68k/mvme147s/include/bsp.h b/bsps/m68k/mvme147s/include/bsp.h
index 3a4803fec2..6c285f9e6c 100644
--- a/bsps/m68k/mvme147s/include/bsp.h
+++ b/bsps/m68k/mvme147s/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsM68kMVME147s
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*  bsp.h
  *
  *  This include file contains all MVME147 board IO definitions.
@@ -17,6 +25,16 @@
 #ifndef LIBBSP_M68K_MVME147S_BSP_H
 #define LIBBSP_M68K_MVME147S_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsM68kMVME147s MVME147s
+ *
+ * @ingroup RTEMSBSPsM68k
+ *
+ * @brief MVME147s Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 
@@ -189,4 +207,6 @@ rtems_isr_entry set_vector(
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/m68k/mvme162/include/bsp.h b/bsps/m68k/mvme162/include/bsp.h
index 3645a31086..6110f0172c 100644
--- a/bsps/m68k/mvme162/include/bsp.h
+++ b/bsps/m68k/mvme162/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsM68kMVME162
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*
  *  This include file contains all MVME162fx board IO definitions.
  */
@@ -21,6 +29,16 @@
 #ifndef LIBBSP_M68K_MVME162_BSP_H
 #define LIBBSP_M68K_MVME162_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsM68kMVME162 MVME162
+ *
+ * @ingroup RTEMSBSPsM68k
+ *
+ * @brief MVME162 Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 
@@ -201,4 +219,6 @@ bool char_ready(int port, char *ch);
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/m68k/mvme167/include/bsp.h b/bsps/m68k/mvme167/include/bsp.h
index d04b4f3952..152510f224 100644
--- a/bsps/m68k/mvme167/include/bsp.h
+++ b/bsps/m68k/mvme167/include/bsp.h
@@ -1,10 +1,9 @@
 /**
- *  @file
+ * @file
  *
- *  Following defines must reflect the setup of the particular MVME167.
- *  All page references are to the MVME166/MVME167/MVME187 Single Board
- *  Computer Programmer's Reference Guide (MVME187PG/D2) with the April
- *  1993 supplements/addenda (MVME187PG/D2A1).
+ * @ingroup RTEMSBSPsM68kMVME167
+ *
+ * @brief Global BSP definitions.
  */
 
 /*
@@ -22,6 +21,16 @@
 #ifndef LIBBSP_M68K_MVME167_BSP_H
 #define LIBBSP_M68K_MVME167_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsM68kMVME162 MVME167
+ *
+ * @ingroup RTEMSBSPsM68k
+ *
+ * @brief MVME167 Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 
@@ -315,4 +324,6 @@ extern void *M68Kvec[];   /* vector table address */
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/m68k/uC5282/include/bsp.h b/bsps/m68k/uC5282/include/bsp.h
index a887cc0385..e40a224404 100644
--- a/bsps/m68k/uC5282/include/bsp.h
+++ b/bsps/m68k/uC5282/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsM68kUC5282
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*
  *  uC5282 BSP header file
  *
@@ -14,6 +22,16 @@
 #ifndef LIBBSP_M68K_UC5282_BSP_H
 #define LIBBSP_M68K_UC5282_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsM68kUC5282 uC5282
+ *
+ * @ingroup RTEMSBSPsM68k
+ *
+ * @brief uC5282 Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 
@@ -172,4 +190,6 @@ extern struct {
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/mips/csb350/include/bsp.h b/bsps/mips/csb350/include/bsp.h
index ed503a1faa..df39b02150 100644
--- a/bsps/mips/csb350/include/bsp.h
+++ b/bsps/mips/csb350/include/bsp.h
@@ -1,8 +1,9 @@
 /**
- *  @file
- *  
- *  This include file contains some definitions specific to the
- *  Cogent CSB350 Board.
+ * @file
+ *
+ * @ingroup RTEMSBSPsMIPSCSB350
+ *
+ * @brief Global BSP definitions.
  */
 
 /*
@@ -17,6 +18,16 @@
 #ifndef LIBBSP_MIPS_CSB350_BSP_H
 #define LIBBSP_MIPS_CSB350_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsMIPSCSB350 CSB350
+ *
+ * @ingroup RTEMSBSPsMIPS
+ *
+ * @brief CSB350 Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 
@@ -44,4 +55,6 @@ int rtems_au1x00_emac_attach(struct rtems_bsdnet_ifconfig *config,
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/mips/hurricane/include/bsp.h b/bsps/mips/hurricane/include/bsp.h
index 1c9dc652f0..02fd04d8de 100644
--- a/bsps/mips/hurricane/include/bsp.h
+++ b/bsps/mips/hurricane/include/bsp.h
@@ -1,5 +1,9 @@
 /**
- *  @file
+ * @file
+ *
+ * @ingroup RTEMSBSPsMIPSHurricane
+ *
+ * @brief Global BSP definitions.
  */
 
 /*
@@ -14,6 +18,16 @@
 #ifndef LIBBSP_MIPS_HURRICANE_BSP_H
 #define LIBBSP_MIPS_HURRICANE_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsMIPSHurricane Hurricane
+ *
+ * @ingroup RTEMSBSPsMIPS
+ *
+ * @brief Hurricane Board Support Package.
+ *
+ * @{
+ */
+
 #ifndef ASM
 
 #include <bspopts.h>
@@ -76,4 +90,6 @@ void resettlb(int i);
 
 #endif /* !ASM */
 
+/** @} */
+
 #endif	/* __HURRICANE_BSP_h */
diff --git a/bsps/mips/jmr3904/include/bsp.h b/bsps/mips/jmr3904/include/bsp.h
index 52696b3987..99ca25582a 100644
--- a/bsps/mips/jmr3904/include/bsp.h
+++ b/bsps/mips/jmr3904/include/bsp.h
@@ -1,8 +1,9 @@
 /**
- *  @file
- *  
- *  This include file contains some definitions specific to the
- *  JMR3904 simulator in gdb.
+ * @file
+ *
+ * @ingroup RTEMSBSPsMIPSJMR3904
+ *
+ * @brief Global BSP definitions.
  */
 
 /*
@@ -17,6 +18,16 @@
 #ifndef LIBBSP_MIPS_JMR3904_BSP_H
 #define LIBBSP_MIPS_JMR3904_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsMIPSJMR3904 JMR3904
+ *
+ * @ingroup RTEMSBSPsMIPS
+ *
+ * @brief JMR3904 Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 
@@ -34,4 +45,6 @@ extern "C" {
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/mips/malta/include/bsp.h b/bsps/mips/malta/include/bsp.h
index c1169cd0a4..ae0e2fddc4 100644
--- a/bsps/mips/malta/include/bsp.h
+++ b/bsps/mips/malta/include/bsp.h
@@ -1,8 +1,9 @@
 /**
- *  @file
+ * @file
  *
- *  This include file contains some definitions specific to the
- *  MIPS Malta Board.
+ * @ingroup RTEMSBSPsMIPSMalta
+ *
+ * @brief Global BSP definitions.
  */
 
 /*
@@ -17,6 +18,16 @@
 #ifndef LIBBSP_MIPS_MALTA_BSP_H
 #define LIBBSP_MIPS_MALTA_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsMIPSMalta Malta
+ *
+ * @ingroup RTEMSBSPsMIPS
+ *
+ * @brief Malta Board Support Package.
+ *
+ * @{
+ */
+
 #ifndef ASM
 
 #include <bspopts.h>
@@ -110,4 +121,6 @@ void resettlb(int i);
 
 #endif /* !ASM */
 
+/** @} */
+
 #endif
diff --git a/bsps/mips/rbtx4925/include/bsp.h b/bsps/mips/rbtx4925/include/bsp.h
index ef5d6ef07f..b758f48c90 100644
--- a/bsps/mips/rbtx4925/include/bsp.h
+++ b/bsps/mips/rbtx4925/include/bsp.h
@@ -1,7 +1,9 @@
 /**
- *  @file
- *  
- *  This include file contains some definitions specific to the RBTX4925.
+ * @file
+ *
+ * @ingroup RTEMSBSPsMIPSRBTX4925
+ *
+ * @brief Global BSP definitions.
  */
 
 /*
@@ -16,6 +18,16 @@
 #ifndef LIBBSP_MIPS_RBTX4925_BSP_H
 #define LIBBSP_MIPS_RBTX4925_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsMIPSRBTX4925 RBTX4925
+ *
+ * @ingroup RTEMSBSPsMIPS
+ *
+ * @brief RBTX4925 Board Support Package.
+ *
+ * @{
+ */
+
 #ifndef ASM
 
 #include <bspopts.h>
@@ -43,4 +55,6 @@ void resettlb(int i);
 
 #endif /* !ASM */
 
+/** @} */
+
 #endif
diff --git a/bsps/mips/rbtx4938/include/bsp.h b/bsps/mips/rbtx4938/include/bsp.h
index b57a60f2df..d71e4d4913 100644
--- a/bsps/mips/rbtx4938/include/bsp.h
+++ b/bsps/mips/rbtx4938/include/bsp.h
@@ -1,7 +1,9 @@
 /**
- *  @file
- *  
- *  This include file contains some definitions specific to the RBTX4938.
+ * @file
+ *
+ * @ingroup RTEMSBSPsMIPSRBTX4938
+ *
+ * @brief Global BSP definitions.
  */
 
 /*
@@ -16,6 +18,16 @@
 #ifndef LIBBSP_MIPS_RBTX4938_BSP_H
 #define LIBBSP_MIPS_RBTX4938_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsMIPSRBTX4938 RBTX4938
+ *
+ * @ingroup RTEMSBSPsMIPS
+ *
+ * @brief RBTX4938 Board Support Package.
+ *
+ * @{
+ */
+
 #ifndef ASM
 
 #include <bspopts.h>
@@ -43,4 +55,6 @@ void resettlb(int i);
 
 #endif /* !ASM */
 
+/** @} */
+
 #endif
diff --git a/bsps/moxie/moxiesim/include/bsp.h b/bsps/moxie/moxiesim/include/bsp.h
index 276693c97a..31de7f11eb 100644
--- a/bsps/moxie/moxiesim/include/bsp.h
+++ b/bsps/moxie/moxiesim/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsMoxieMoxieSim
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*
  *  This include file contains some definitions specific to the
  *  moxie simulator in gdb.
@@ -15,6 +23,16 @@
 #ifndef LIBBSP_MOXIE_MOXIESIM_BSP_H
 #define LIBBSP_MOXIE_MOXIESIM_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsMoxieMoxieSim Simulator
+ *
+ * @ingroup RTEMSBSPsMoxie
+ *
+ * @brief Simulator Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 
 #include <rtems.h>
@@ -32,4 +50,6 @@ void *clock_driver_sim_idle_body(uintptr_t);
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/nios2/nios2_iss/include/bsp.h b/bsps/nios2/nios2_iss/include/bsp.h
index 3883e39ab6..17a89a0ef9 100644
--- a/bsps/nios2/nios2_iss/include/bsp.h
+++ b/bsps/nios2/nios2_iss/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsNios2ISS
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*  bsp.h
  *
  *  This include file contains all board IO definitions.
@@ -15,6 +23,16 @@
 #ifndef LIBBSP_NIOS2_NIOS2_ISS_BSP_H
 #define LIBBSP_NIOS2_NIOS2_ISS_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsNios2ISS ISS
+ *
+ * @ingroup RTEMSBSPsNios2
+ *
+ * @brief ISS Board Support Package.
+ *
+ * @{
+ */
+
 #include <stdint.h>
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
@@ -126,5 +144,7 @@ rtems_isr_entry set_vector(                     /* returns old vector */
 }
 #endif
 
+/** @} */
+
 #endif
 /* end of include file */
diff --git a/bsps/no_cpu/no_bsp/include/bsp.h b/bsps/no_cpu/no_bsp/include/bsp.h
index 97064425d7..46a20fc831 100644
--- a/bsps/no_cpu/no_bsp/include/bsp.h
+++ b/bsps/no_cpu/no_bsp/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsNoCPUNoBsp
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*  bsp.h
  *
  *  This include file contains all board IO definitions.
@@ -17,6 +25,12 @@
 #ifndef LIBBSP_NO_CPU_NO_BSP_BSP_H
 #define LIBBSP_NO_CPU_NO_BSP_BSP_H
 
+/**
+ * @addtogroup RTEMSBSPsNoCPU
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 
@@ -38,4 +52,6 @@ rtems_isr_entry set_vector(                     /* returns old vector */
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/or1k/generic_or1k/btimer/btimer.c b/bsps/or1k/generic_or1k/btimer/btimer.c
index 872f1af7be..d665fb66cf 100644
--- a/bsps/or1k/generic_or1k/btimer/btimer.c
+++ b/bsps/or1k/generic_or1k/btimer/btimer.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup generic_or1k
+ * @ingroup RTEMSBSPsOR1K
  *
  * @brief Benchmark timer support.
  */
diff --git a/bsps/or1k/generic_or1k/include/bsp.h b/bsps/or1k/generic_or1k/include/bsp.h
index 16839930a4..3a6dd2ee71 100644
--- a/bsps/or1k/generic_or1k/include/bsp.h
+++ b/bsps/or1k/generic_or1k/include/bsp.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup generic_or1k
+ * @ingroup RTEMSBSPsOR1K
  *
  * @brief Global BSP definitions.
  */
@@ -17,6 +17,12 @@
 #ifndef LIBBSP_GENERIC_OR1K_H
 #define LIBBSP_GENERIC_OR1K_H
 
+/**
+ * @addtogroup RTEMSBSPsOR1K
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <rtems.h>
 #include <bsp/generic_or1k.h>
@@ -33,13 +39,7 @@ extern "C" {
 }
 #endif /* __cplusplus */
 
+/** @} */
+
 #endif /* LIBBSP_GENERIC_OR1K_H */
 
-/**
- * @defgroup generic_or1k support
- *
- * @ingroup bsp_or1k
- *
- * @brief generic_or1k support package
- *
- */
diff --git a/bsps/or1k/generic_or1k/include/bsp/generic_or1k.h b/bsps/or1k/generic_or1k/include/bsp/generic_or1k.h
index e4d9760640..901e9acac1 100644
--- a/bsps/or1k/generic_or1k/include/bsp/generic_or1k.h
+++ b/bsps/or1k/generic_or1k/include/bsp/generic_or1k.h
@@ -22,7 +22,7 @@
 /**
  * @defgroup generic_or1k_reg Register Definitions
  *
- * @ingroup generic_or1k
+ * @ingroup RTEMSBSPsOR1K
  *
  * @brief Shared register definitions for or1k systems.
  *
diff --git a/bsps/or1k/generic_or1k/include/bsp/uart.h b/bsps/or1k/generic_or1k/include/bsp/uart.h
index dbf3bbf9ef..7cfe38f087 100644
--- a/bsps/or1k/generic_or1k/include/bsp/uart.h
+++ b/bsps/or1k/generic_or1k/include/bsp/uart.h
@@ -17,7 +17,7 @@
 /**
  * @defgroup generic_or1k_uart UART Support
  *
- * @ingroup generic_or1k
+ * @ingroup RTEMSBSPsOR1K
  *
  * @brief Universal Asynchronous Receiver/Transmitter (UART) Support
  */
diff --git a/bsps/or1k/generic_or1k/start/bspstart.c b/bsps/or1k/generic_or1k/start/bspstart.c
index 35a536ef0b..5950d4cbeb 100644
--- a/bsps/or1k/generic_or1k/start/bspstart.c
+++ b/bsps/or1k/generic_or1k/start/bspstart.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup generic_or1k
+ * @ingroup RTEMSBSPsOR1K
  *
  * @brief Benchmark timer support.
  */
diff --git a/bsps/or1k/shared/doxygen.h b/bsps/or1k/shared/doxygen.h
index 5025c13fae..d380bfa744 100644
--- a/bsps/or1k/shared/doxygen.h
+++ b/bsps/or1k/shared/doxygen.h
@@ -3,5 +3,5 @@
  *
  * @ingroup RTEMSBSPs
  *
- * @brief OpenRISC 1000 Board Support Packages.
+ * @brief OpenRISC 1000 Board Support Package.
  */
diff --git a/bsps/powerpc/beatnik/include/bsp.h b/bsps/powerpc/beatnik/include/bsp.h
index fa29d373e5..477f03345d 100644
--- a/bsps/powerpc/beatnik/include/bsp.h
+++ b/bsps/powerpc/beatnik/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsPowerPCBeatnik
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*
  *  bsp.h  -- contain BSP API definition.
  */
@@ -17,6 +25,16 @@
 #ifndef LIBBSP_BEATNIK_BSP_H
 #define LIBBSP_BEATNIK_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsPowerPCBeatnik Beatnik (MVME5500 and MVME6100)
+ *
+ * @ingroup RTEMSBSPsPowerPC
+ *
+ * @brief Beatnik (MVME5500 and MVME6100) Board Support Package.
+ *
+ * @{
+ */
+
 #ifndef ASM
 
 #include <bspopts.h>
@@ -296,4 +314,6 @@ uint32_t probeMemoryEnd(void);
 
 #endif /* !ASM */
 
+/** @} */
+
 #endif
diff --git a/bsps/powerpc/gen5200/include/bsp.h b/bsps/powerpc/gen5200/include/bsp.h
index 015a8b1f3b..57e50ad2bb 100644
--- a/bsps/powerpc/gen5200/include/bsp.h
+++ b/bsps/powerpc/gen5200/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsPowerPCGen5200
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*===============================================================*\
 | Project: RTEMS generic MPC5200 BSP                              |
 +-----------------------------------------------------------------+
@@ -23,6 +31,16 @@
 #ifndef LIBBSP_POWERPC_GEN5200_BSP_H
 #define LIBBSP_POWERPC_GEN5200_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsPowerPCGen5200 NXP MPC5200
+ *
+ * @ingroup RTEMSBSPsPowerPC
+ *
+ * @brief NXP MPC5200 Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 
 #include <libcpu/powerpc-utility.h>
@@ -259,4 +277,6 @@ int mpc5200_eth_mii_read(
 
 #endif /* ASM */
 
+/** @} */
+
 #endif /* GEN5200 */
diff --git a/bsps/powerpc/gen5200/include/bsp/bestcomm.h b/bsps/powerpc/gen5200/include/bsp/bestcomm.h
index b545010f06..2c379d4bbe 100644
--- a/bsps/powerpc/gen5200/include/bsp/bestcomm.h
+++ b/bsps/powerpc/gen5200/include/bsp/bestcomm.h
@@ -32,7 +32,7 @@ extern "C" {
 /**
  * @defgroup BestComm BestComm Support
  *
- * @ingroup BestCommm
+ * @ingroup RTEMSBSPsPowerPCGen5200
  *
  * @brief BestComm support.
  *
diff --git a/bsps/powerpc/gen5200/include/bsp/mscan-base.h b/bsps/powerpc/gen5200/include/bsp/mscan-base.h
index a2b8737d8e..be4c0d73b1 100644
--- a/bsps/powerpc/gen5200/include/bsp/mscan-base.h
+++ b/bsps/powerpc/gen5200/include/bsp/mscan-base.h
@@ -27,7 +27,9 @@
 #include <bsp/mpc5200.h>
 
 /**
- * @defgroup m MSCAN
+ * @defgroup RTEMSBSPsPowerPCGen5200MSCAN MSCAN
+ *
+ * @ingroup RTEMSBSPsPowerPCGen5200
  *
  * @{
  */
diff --git a/bsps/powerpc/gen83xx/include/bsp.h b/bsps/powerpc/gen83xx/include/bsp.h
index 682dfc2986..db9a763cb5 100644
--- a/bsps/powerpc/gen83xx/include/bsp.h
+++ b/bsps/powerpc/gen83xx/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsPowerPCGen83XX
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*===============================================================*\
 | Project: RTEMS generic MPC83xx BSP                              |
 +-----------------------------------------------------------------+
@@ -21,6 +29,16 @@
 #ifndef LIBBSP_POWERPC_GEN83XX_BSP_H
 #define LIBBSP_POWERPC_GEN83XX_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsPowerPCGen83XX NXP MPC83XX
+ *
+ * @ingroup RTEMSBSPsPowerPC
+ *
+ * @brief NXP MPC83XX Board Support Package.
+ *
+ * @{
+ */
+
 #define BSP_FEATURE_IRQ_EXTENSION
 
 #include <bspopts.h>
@@ -156,4 +174,6 @@ void bsp_restart(void *addr);
 
 #endif /* ASM */
 
+/** @} */
+
 #endif /* GEN83xx */
diff --git a/bsps/powerpc/haleakala/include/bsp.h b/bsps/powerpc/haleakala/include/bsp.h
index b26e739e60..71ea09b545 100644
--- a/bsps/powerpc/haleakala/include/bsp.h
+++ b/bsps/powerpc/haleakala/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsPowerPCHaleakala
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*  bsp.h
  *
  *  Generic 405EX bsp.h
@@ -45,6 +53,16 @@
 #ifndef LIBBSP_POWERPC_HALEAKALA_BSP_H
 #define LIBBSP_POWERPC_HALEAKALA_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsPowerPCHaleakala Haleakala
+ *
+ * @ingroup RTEMSBSPsPowerPC
+ *
+ * @brief Haleakala Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 
 #ifdef ASM
@@ -84,4 +102,6 @@
   #endif
 #endif /* ASM */
 
+/** @} */
+
 #endif /* BSP_H */
diff --git a/bsps/powerpc/motorola_powerpc/include/bsp.h b/bsps/powerpc/motorola_powerpc/include/bsp.h
index 6475902f47..62e740272a 100644
--- a/bsps/powerpc/motorola_powerpc/include/bsp.h
+++ b/bsps/powerpc/motorola_powerpc/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsPowerPCMotorola
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*
  *
  *  The license and distribution terms for this file may be
@@ -7,6 +15,16 @@
 #ifndef LIBBSP_POWERPC_MOTOROLA_POWERPC_BSP_H
 #define LIBBSP_POWERPC_MOTOROLA_POWERPC_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsPowerPCMotorola Motorola
+ *
+ * @ingroup RTEMSBSPsPowerPC
+ *
+ * @brief Motorola Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 
@@ -251,4 +269,6 @@ void VIA_isa_bridge_interrupts_setup(void);
 };
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/powerpc/mpc55xxevb/clock/clock-config.c b/bsps/powerpc/mpc55xxevb/clock/clock-config.c
index 3274aa714f..f43bc97389 100644
--- a/bsps/powerpc/mpc55xxevb/clock/clock-config.c
+++ b/bsps/powerpc/mpc55xxevb/clock/clock-config.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief Clock driver configuration.
  */
diff --git a/bsps/powerpc/mpc55xxevb/include/bsp.h b/bsps/powerpc/mpc55xxevb/include/bsp.h
index 9379356f96..6af987cacc 100644
--- a/bsps/powerpc/mpc55xxevb/include/bsp.h
+++ b/bsps/powerpc/mpc55xxevb/include/bsp.h
@@ -1,9 +1,9 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
- * @brief Global BSP variables and functions
+ * @brief Global BSP definitions.
  */
 
 /*
@@ -23,6 +23,16 @@
 #ifndef LIBBSP_POWERPC_MPC55XXEVB_BSP_H
 #define LIBBSP_POWERPC_MPC55XXEVB_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsPowerPCMPC55XX NXP MPC55XX and MPC56XX
+ *
+ * @ingroup RTEMSBSPsPowerPC
+ *
+ * @brief NXP MPC55XX and MPC56XX Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 
 #define BSP_FEATURE_IRQ_EXTENSION
@@ -99,4 +109,6 @@ LINKER_SYMBOL(bsp_section_sysram_load_end)
 
 #endif /* ASM */
 
+/** @} */
+
 #endif /* LIBBSP_POWERPC_MPC55XXEVB_BSP_H */
diff --git a/bsps/powerpc/mpc55xxevb/include/bsp/irq.h b/bsps/powerpc/mpc55xxevb/include/bsp/irq.h
index 4efa92219e..c923859dec 100644
--- a/bsps/powerpc/mpc55xxevb/include/bsp/irq.h
+++ b/bsps/powerpc/mpc55xxevb/include/bsp/irq.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief IRQ
  */
diff --git a/bsps/powerpc/mpc55xxevb/include/bsp/mpc55xx-config.h b/bsps/powerpc/mpc55xxevb/include/bsp/mpc55xx-config.h
index b432b9cecd..5354df2729 100644
--- a/bsps/powerpc/mpc55xxevb/include/bsp/mpc55xx-config.h
+++ b/bsps/powerpc/mpc55xxevb/include/bsp/mpc55xx-config.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief Low-level configuration.
  */
diff --git a/bsps/powerpc/mpc55xxevb/include/bsp/smsc9218i.h b/bsps/powerpc/mpc55xxevb/include/bsp/smsc9218i.h
index e4366b039c..5ec64df710 100644
--- a/bsps/powerpc/mpc55xxevb/include/bsp/smsc9218i.h
+++ b/bsps/powerpc/mpc55xxevb/include/bsp/smsc9218i.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief SMSC - LAN9218i
  */
diff --git a/bsps/powerpc/mpc55xxevb/include/mpc55xx/dspi.h b/bsps/powerpc/mpc55xxevb/include/mpc55xx/dspi.h
index 8ad98274ef..eab6dad36c 100644
--- a/bsps/powerpc/mpc55xxevb/include/mpc55xx/dspi.h
+++ b/bsps/powerpc/mpc55xxevb/include/mpc55xx/dspi.h
@@ -22,7 +22,7 @@
 /**
  * @defgroup mpc55xx_dspi Deserial Serial Peripheral Interface (DSPI)
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  */
 
 #ifndef LIBCPU_POWERPC_MPC55XX_DSPI_H
diff --git a/bsps/powerpc/mpc55xxevb/include/mpc55xx/edma.h b/bsps/powerpc/mpc55xxevb/include/mpc55xx/edma.h
index 281cdf1c28..8b7d65d3b6 100644
--- a/bsps/powerpc/mpc55xxevb/include/mpc55xx/edma.h
+++ b/bsps/powerpc/mpc55xxevb/include/mpc55xx/edma.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief Enhanced Direct Memory Access (eDMA).
  */
diff --git a/bsps/powerpc/mpc55xxevb/include/mpc55xx/emios.h b/bsps/powerpc/mpc55xxevb/include/mpc55xx/emios.h
index d6ccadc07b..3e37556818 100644
--- a/bsps/powerpc/mpc55xxevb/include/mpc55xx/emios.h
+++ b/bsps/powerpc/mpc55xxevb/include/mpc55xx/emios.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief Enhanced Modular Input Output Subsystem (eMIOS).
  */
diff --git a/bsps/powerpc/mpc55xxevb/include/mpc55xx/mpc55xx.h b/bsps/powerpc/mpc55xxevb/include/mpc55xx/mpc55xx.h
index 634be30e18..61d70eef07 100644
--- a/bsps/powerpc/mpc55xxevb/include/mpc55xx/mpc55xx.h
+++ b/bsps/powerpc/mpc55xxevb/include/mpc55xx/mpc55xx.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief Documentation for this file
  */
@@ -20,14 +20,10 @@
  * http://www.rtems.org/license/LICENSE.
  */
 
-/**
- * @defgroup mpc55xx BSP for MPC55xx boards
- */
-
 /**
  * @defgroup mpc55xx_config Configuration files
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * Makefiles, configure scripts etc.
  */
diff --git a/bsps/powerpc/mpc55xxevb/include/mpc55xx/reg-defs.h b/bsps/powerpc/mpc55xxevb/include/mpc55xx/reg-defs.h
index 2d66f6a8d0..ef893ac5ca 100644
--- a/bsps/powerpc/mpc55xxevb/include/mpc55xx/reg-defs.h
+++ b/bsps/powerpc/mpc55xxevb/include/mpc55xx/reg-defs.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief Register definitions.
  */
diff --git a/bsps/powerpc/mpc55xxevb/include/mpc55xx/regs-edma.h b/bsps/powerpc/mpc55xxevb/include/mpc55xx/regs-edma.h
index 804730ccd8..fda47dc1e6 100644
--- a/bsps/powerpc/mpc55xxevb/include/mpc55xx/regs-edma.h
+++ b/bsps/powerpc/mpc55xxevb/include/mpc55xx/regs-edma.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  */
 
 /*
diff --git a/bsps/powerpc/mpc55xxevb/include/mpc55xx/regs-mmu.h b/bsps/powerpc/mpc55xxevb/include/mpc55xx/regs-mmu.h
index e03047c4ad..1a0d7eedb1 100644
--- a/bsps/powerpc/mpc55xxevb/include/mpc55xx/regs-mmu.h
+++ b/bsps/powerpc/mpc55xxevb/include/mpc55xx/regs-mmu.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  */
 
 /*
diff --git a/bsps/powerpc/mpc55xxevb/include/mpc55xx/regs.h b/bsps/powerpc/mpc55xxevb/include/mpc55xx/regs.h
index 3a4e737f1a..6b8891a078 100644
--- a/bsps/powerpc/mpc55xxevb/include/mpc55xx/regs.h
+++ b/bsps/powerpc/mpc55xxevb/include/mpc55xx/regs.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief Register definitions for the MPC55xx and MPC56xx microcontroller
  * family.
diff --git a/bsps/powerpc/mpc55xxevb/include/mpc55xx/siu.h b/bsps/powerpc/mpc55xxevb/include/mpc55xx/siu.h
index 3495750145..17f85d9290 100644
--- a/bsps/powerpc/mpc55xxevb/include/mpc55xx/siu.h
+++ b/bsps/powerpc/mpc55xxevb/include/mpc55xx/siu.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief System Integration Unit Access (SIU).
  */
diff --git a/bsps/powerpc/mpc55xxevb/include/mpc55xx/watchdog.h b/bsps/powerpc/mpc55xxevb/include/mpc55xx/watchdog.h
index d5a8af794e..8a878d2d41 100644
--- a/bsps/powerpc/mpc55xxevb/include/mpc55xx/watchdog.h
+++ b/bsps/powerpc/mpc55xxevb/include/mpc55xx/watchdog.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief Header file for the watchdog timer.
  */
diff --git a/bsps/powerpc/mpc55xxevb/net/smsc9218i.c b/bsps/powerpc/mpc55xxevb/net/smsc9218i.c
index 1914c24022..d88aa8ae39 100644
--- a/bsps/powerpc/mpc55xxevb/net/smsc9218i.c
+++ b/bsps/powerpc/mpc55xxevb/net/smsc9218i.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief SMSC - LAN9218i
  */
diff --git a/bsps/powerpc/mpc55xxevb/start/bspgetworkarea.c b/bsps/powerpc/mpc55xxevb/start/bspgetworkarea.c
index c7267eddd3..cb7cf6c7ec 100644
--- a/bsps/powerpc/mpc55xxevb/start/bspgetworkarea.c
+++ b/bsps/powerpc/mpc55xxevb/start/bspgetworkarea.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  */
 
 /*
diff --git a/bsps/powerpc/mpc55xxevb/start/bspreset.c b/bsps/powerpc/mpc55xxevb/start/bspreset.c
index a99b3856d3..39ac37d5fe 100644
--- a/bsps/powerpc/mpc55xxevb/start/bspreset.c
+++ b/bsps/powerpc/mpc55xxevb/start/bspreset.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief BSP reset.
  */
diff --git a/bsps/powerpc/mpc55xxevb/start/bspstart.c b/bsps/powerpc/mpc55xxevb/start/bspstart.c
index 0da53cab2b..1618f1e82a 100644
--- a/bsps/powerpc/mpc55xxevb/start/bspstart.c
+++ b/bsps/powerpc/mpc55xxevb/start/bspstart.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief BSP startup code.
  */
diff --git a/bsps/powerpc/mpc55xxevb/start/edma.c b/bsps/powerpc/mpc55xxevb/start/edma.c
index c5d47705ec..c34624ed10 100644
--- a/bsps/powerpc/mpc55xxevb/start/edma.c
+++ b/bsps/powerpc/mpc55xxevb/start/edma.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief Enhanced Direct Memory Access (eDMA).
  */
diff --git a/bsps/powerpc/mpc55xxevb/start/emios.c b/bsps/powerpc/mpc55xxevb/start/emios.c
index 89873b4c67..5b8e960a60 100644
--- a/bsps/powerpc/mpc55xxevb/start/emios.c
+++ b/bsps/powerpc/mpc55xxevb/start/emios.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief Enhanced Modular Input Output Subsystem (eMIOS).
  */
diff --git a/bsps/powerpc/mpc55xxevb/start/exc-vector-base.S b/bsps/powerpc/mpc55xxevb/start/exc-vector-base.S
index 9d9e79f351..3ba9ce4df4 100644
--- a/bsps/powerpc/mpc55xxevb/start/exc-vector-base.S
+++ b/bsps/powerpc/mpc55xxevb/start/exc-vector-base.S
@@ -23,7 +23,7 @@
 /**
  * @defgroup mpc55xx_asm Assembler files
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  */
 
 #include <bspopts.h>
diff --git a/bsps/powerpc/mpc55xxevb/start/flash_support.c b/bsps/powerpc/mpc55xxevb/start/flash_support.c
index 1d94fda205..c7382ca4d4 100644
--- a/bsps/powerpc/mpc55xxevb/start/flash_support.c
+++ b/bsps/powerpc/mpc55xxevb/start/flash_support.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  *  @brief MPC55XX flash memory support.
  *
diff --git a/bsps/powerpc/mpc55xxevb/start/get-system-clock.c b/bsps/powerpc/mpc55xxevb/start/get-system-clock.c
index 42e2b38327..cd32b8a1e6 100644
--- a/bsps/powerpc/mpc55xxevb/start/get-system-clock.c
+++ b/bsps/powerpc/mpc55xxevb/start/get-system-clock.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief System clock calculation.
  */
diff --git a/bsps/powerpc/mpc55xxevb/start/idle-thread.c b/bsps/powerpc/mpc55xxevb/start/idle-thread.c
index 45bea8e418..bf751b22bf 100644
--- a/bsps/powerpc/mpc55xxevb/start/idle-thread.c
+++ b/bsps/powerpc/mpc55xxevb/start/idle-thread.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief bsp_idle_thread() implementation.
  */
diff --git a/bsps/powerpc/mpc55xxevb/start/irq.c b/bsps/powerpc/mpc55xxevb/start/irq.c
index 53c30f171e..283c54cdcc 100644
--- a/bsps/powerpc/mpc55xxevb/start/irq.c
+++ b/bsps/powerpc/mpc55xxevb/start/irq.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief Source file for MPC55XX interrupt support.
  */
diff --git a/bsps/powerpc/mpc55xxevb/start/sd-card-init.c b/bsps/powerpc/mpc55xxevb/start/sd-card-init.c
index f6e0484122..64ffc7e9f3 100644
--- a/bsps/powerpc/mpc55xxevb/start/sd-card-init.c
+++ b/bsps/powerpc/mpc55xxevb/start/sd-card-init.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief SD Card initialization code.
  */
diff --git a/bsps/powerpc/mpc55xxevb/start/siu.c b/bsps/powerpc/mpc55xxevb/start/siu.c
index 9801270a80..8dc756b635 100644
--- a/bsps/powerpc/mpc55xxevb/start/siu.c
+++ b/bsps/powerpc/mpc55xxevb/start/siu.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief System Integration Unit Access (SIU).
  */
diff --git a/bsps/powerpc/mpc55xxevb/start/start-clock.c b/bsps/powerpc/mpc55xxevb/start/start-clock.c
index 85468d5cb0..6b4ce107da 100644
--- a/bsps/powerpc/mpc55xxevb/start/start-clock.c
+++ b/bsps/powerpc/mpc55xxevb/start/start-clock.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief Clock and FMPLL initialization code.
  */
diff --git a/bsps/powerpc/mpc55xxevb/start/start-config-clock.c b/bsps/powerpc/mpc55xxevb/start/start-config-clock.c
index d820af3755..e29f3366c3 100644
--- a/bsps/powerpc/mpc55xxevb/start/start-config-clock.c
+++ b/bsps/powerpc/mpc55xxevb/start/start-config-clock.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief Clock and FMPLL configuration.
  */
diff --git a/bsps/powerpc/mpc55xxevb/start/start-config-ebi-cs-cal.c b/bsps/powerpc/mpc55xxevb/start/start-config-ebi-cs-cal.c
index 69f9b61a7d..1e2f345d48 100644
--- a/bsps/powerpc/mpc55xxevb/start/start-config-ebi-cs-cal.c
+++ b/bsps/powerpc/mpc55xxevb/start/start-config-ebi-cs-cal.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief EBI calibration chip-select configuration.
  */
diff --git a/bsps/powerpc/mpc55xxevb/start/start-config-ebi-cs.c b/bsps/powerpc/mpc55xxevb/start/start-config-ebi-cs.c
index d12d0fa059..3167cd7973 100644
--- a/bsps/powerpc/mpc55xxevb/start/start-config-ebi-cs.c
+++ b/bsps/powerpc/mpc55xxevb/start/start-config-ebi-cs.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief EBI chip-select configuration.
  */
diff --git a/bsps/powerpc/mpc55xxevb/start/start-config-ebi.c b/bsps/powerpc/mpc55xxevb/start/start-config-ebi.c
index 1ce2b297d8..485e7855b3 100644
--- a/bsps/powerpc/mpc55xxevb/start/start-config-ebi.c
+++ b/bsps/powerpc/mpc55xxevb/start/start-config-ebi.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief EBI configuration.
  */
diff --git a/bsps/powerpc/mpc55xxevb/start/start-config-mmu-early.c b/bsps/powerpc/mpc55xxevb/start/start-config-mmu-early.c
index 84e638d55c..ef82806429 100644
--- a/bsps/powerpc/mpc55xxevb/start/start-config-mmu-early.c
+++ b/bsps/powerpc/mpc55xxevb/start/start-config-mmu-early.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief MMU early configuration.
  */
diff --git a/bsps/powerpc/mpc55xxevb/start/start-config-mmu.c b/bsps/powerpc/mpc55xxevb/start/start-config-mmu.c
index 7cf319edd3..9475b3c816 100644
--- a/bsps/powerpc/mpc55xxevb/start/start-config-mmu.c
+++ b/bsps/powerpc/mpc55xxevb/start/start-config-mmu.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief MMU configuration.
  */
diff --git a/bsps/powerpc/mpc55xxevb/start/start-config-siu-pcr.c b/bsps/powerpc/mpc55xxevb/start/start-config-siu-pcr.c
index 8355e647ca..65fddab42e 100644
--- a/bsps/powerpc/mpc55xxevb/start/start-config-siu-pcr.c
+++ b/bsps/powerpc/mpc55xxevb/start/start-config-siu-pcr.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief SIU PCR configuration.
  */
diff --git a/bsps/powerpc/mpc55xxevb/start/start-early.c b/bsps/powerpc/mpc55xxevb/start/start-early.c
index e1a0b3da09..e502645769 100644
--- a/bsps/powerpc/mpc55xxevb/start/start-early.c
+++ b/bsps/powerpc/mpc55xxevb/start/start-early.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief Early initialization code.
  */
diff --git a/bsps/powerpc/mpc55xxevb/start/start-prologue.c b/bsps/powerpc/mpc55xxevb/start/start-prologue.c
index 872a96edfd..713c27ebaa 100644
--- a/bsps/powerpc/mpc55xxevb/start/start-prologue.c
+++ b/bsps/powerpc/mpc55xxevb/start/start-prologue.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief Start prologue.
  */
diff --git a/bsps/powerpc/mpc55xxevb/start/start-watchdog.c b/bsps/powerpc/mpc55xxevb/start/start-watchdog.c
index 7cf36ef02f..d585829ff9 100644
--- a/bsps/powerpc/mpc55xxevb/start/start-watchdog.c
+++ b/bsps/powerpc/mpc55xxevb/start/start-watchdog.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup mpc55xx
+ * @ingroup RTEMSBSPsPowerPCMPC55XX
  *
  * @brief Watchdog initialization code.
  */
diff --git a/bsps/powerpc/mpc8260ads/include/bsp.h b/bsps/powerpc/mpc8260ads/include/bsp.h
index c207a2ec99..9be6746505 100644
--- a/bsps/powerpc/mpc8260ads/include/bsp.h
+++ b/bsps/powerpc/mpc8260ads/include/bsp.h
@@ -1,7 +1,25 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsPowerPCMPC8260ADS
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*
  *  This include file contains all board IO definitions.
  */
 
+/**
+ * @defgroup RTEMSBSPsPowerPCMPC8260ADS NXP MPC8260ADS
+ *
+ * @ingroup RTEMSBSPsPowerPC
+ *
+ * @brief NXP MPC8260ADS Board Support Package.
+ *
+ * @{
+ */
+
 /*
  *  COPYRIGHT (c) 1989-2014.
  *  On-Line Applications Research Corporation (OAR).
@@ -83,4 +101,6 @@ int mbx8xx_console_get_configuration(void);
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/powerpc/mvme3100/include/bsp.h b/bsps/powerpc/mvme3100/include/bsp.h
index 671c8180f4..367aa1ecd1 100644
--- a/bsps/powerpc/mvme3100/include/bsp.h
+++ b/bsps/powerpc/mvme3100/include/bsp.h
@@ -1,9 +1,9 @@
 /**
- *  @file
+ * @file
  *
- *  @ingroup mvme3100_bsp
+ * @ingroup RTEMSBSPsPowerPCMVME3100
  *
- *  @brief This file contains BSP API definition.
+ * @brief Global BSP definitions.
  */
 
 /*
@@ -28,11 +28,13 @@
 #include <bsp/vectors.h>
 
 /**
- *  @defgroup mvme3100_bsp confdefs.h overrides
+ * @defgroup RTEMSBSPsPowerPCMVME3100 MVME3100
  *
- *  @ingroup powerpc_mvme3100
+ * @ingroup RTEMSBSPsPowerPC
  *
- *  @brief confdefs.h overrides for this BSP:
+ * @brief MVME3100 Board Support Package.
+ *
+ * @{
  */
 
 #define BSP_INTERRUPT_STACK_SIZE          (16 * 1024)
@@ -337,4 +339,6 @@ extern void BSP_pciConfigDump_early( void );
 
 #endif /* !ASM */
 
+/** @} */
+
 #endif
diff --git a/bsps/powerpc/mvme3100/include/bsp/VMEConfig.h b/bsps/powerpc/mvme3100/include/bsp/VMEConfig.h
index 10b424c2a8..238ccb9593 100644
--- a/bsps/powerpc/mvme3100/include/bsp/VMEConfig.h
+++ b/bsps/powerpc/mvme3100/include/bsp/VMEConfig.h
@@ -110,7 +110,7 @@ extern int BSP_VMEIrqMgrInstall(void);
 /**
  *  @defgroup powerpc_vme BSP_VME_INSTALL_IRQ_MGR Support
  *
- *  @ingroup powerpc_mvme3100
+ *  @ingroup RTEMSBSPsPowerPCMVME3100
  *
  *  @brief BSP_VME_INSTALL_IRQ_MGR Support Package
  */
diff --git a/bsps/powerpc/mvme3100/include/bsp/if_tsec_pub.h b/bsps/powerpc/mvme3100/include/bsp/if_tsec_pub.h
index 7eb0358eae..fa671f6301 100644
--- a/bsps/powerpc/mvme3100/include/bsp/if_tsec_pub.h
+++ b/bsps/powerpc/mvme3100/include/bsp/if_tsec_pub.h
@@ -71,7 +71,7 @@ struct tsec_private;
 /**
  *  @defgroup powerpc_iftsecpub Low-level Driver API
  *
- *  @ingroup powerpc_mvme3100
+ *  @ingroup RTEMSBSPsPowerPCMVME3100
  *
  *  @brief This API provides driver access to applications that
  * want to use e.g., the second ethernet interface
diff --git a/bsps/powerpc/mvme3100/include/bsp/irq.h b/bsps/powerpc/mvme3100/include/bsp/irq.h
index 0158e05149..fb11951959 100644
--- a/bsps/powerpc/mvme3100/include/bsp/irq.h
+++ b/bsps/powerpc/mvme3100/include/bsp/irq.h
@@ -42,7 +42,7 @@ extern "C" {
 /**
  *  @defgroup powerpc_irq Definitions
  *
- *  @ingroup powerpc_mvme3100
+ *  @ingroup RTEMSBSPsPowerPCMVME3100
  *
  *  @brief rtems_irq_number Definitions
  */
diff --git a/bsps/powerpc/mvme5500/include/bsp.h b/bsps/powerpc/mvme5500/include/bsp.h
index dbf0afec41..bbc113cd7e 100644
--- a/bsps/powerpc/mvme5500/include/bsp.h
+++ b/bsps/powerpc/mvme5500/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsPowerPCMVME5500
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*
  *  Copyright (C) 1999 Eric Valette. valette at crf.canon.fr
  *
@@ -11,6 +19,16 @@
 #ifndef LIBBSP_POWERPC_MVME5500_BSP_H
 #define LIBBSP_POWERPC_MVME5500_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsPowerPCMVME5500 MVME5500
+ *
+ * @ingroup RTEMSBSPsPowerPC
+ *
+ * @brief MVME5500 Board Support Package.
+ *
+ * @{
+ */
+
 #ifndef ASM
 
 #include <bspopts.h>
@@ -205,4 +223,6 @@ static inline void ioBar(void)
 
 #endif
 
+/** @} */
+
 #endif /* !ASM */
diff --git a/bsps/powerpc/psim/include/bsp.h b/bsps/powerpc/psim/include/bsp.h
index cffc9632e7..9b004a2c80 100644
--- a/bsps/powerpc/psim/include/bsp.h
+++ b/bsps/powerpc/psim/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsPowerPCPSIM
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*  bsp.h
  *
  *  This include file contains all Papyrus board IO definitions.
@@ -30,6 +38,16 @@
 #ifndef LIBBSP_POWERPC_PSIM_BSP_H
 #define LIBBSP_POWERPC_PSIM_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsPowerPCPSIM PSIM
+ *
+ * @ingroup RTEMSBSPsPowerPC
+ *
+ * @brief PSIM Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 
 #ifdef ASM
@@ -87,4 +105,6 @@ int BSP_connect_clock_handler(void);
 
 #define BSP_HAS_NO_VME
 
+/** @} */
+
 #endif
diff --git a/bsps/powerpc/qemuppc/include/bsp.h b/bsps/powerpc/qemuppc/include/bsp.h
index 240cfd3bea..4aebe89eec 100644
--- a/bsps/powerpc/qemuppc/include/bsp.h
+++ b/bsps/powerpc/qemuppc/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsPowerPCQemu
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*
  *  This include file contains some definitions specific to the
  *  qemu powerpc Prep simulator
@@ -15,6 +23,16 @@
 #ifndef LIBBSP_POWERPC_QEMUPPC_BSP_H
 #define LIBBSP_POWERPC_QEMUPPC_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsPowerPCQemu Qemu
+ *
+ * @ingroup RTEMSBSPsPowerPC
+ *
+ * @brief Qemu Board Support Package.
+ *
+ * @{
+ */
+
 #ifndef ASM
 
 #include <bspopts.h>
@@ -44,4 +62,6 @@ void cmain(void);
 
 #endif /* !ASM */
 
+/** @} */
+
 #endif
diff --git a/bsps/powerpc/qoriq/btimer/btimer.c b/bsps/powerpc/qoriq/btimer/btimer.c
index e8927c1194..47ef6eedb9 100644
--- a/bsps/powerpc/qoriq/btimer/btimer.c
+++ b/bsps/powerpc/qoriq/btimer/btimer.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup QorIQ
+ * @ingroup RTEMSBSPsPowerPCQorIQ
  *
  * @brief QorIQ benchmark timer.
  */
diff --git a/bsps/powerpc/qoriq/clock/clock-config.c b/bsps/powerpc/qoriq/clock/clock-config.c
index 6fb28ce266..be2dc7b57d 100644
--- a/bsps/powerpc/qoriq/clock/clock-config.c
+++ b/bsps/powerpc/qoriq/clock/clock-config.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup QorIQ
+ * @ingroup RTEMSBSPsPowerPCQorIQ
  *
  * @brief QorIQ clock configuration.
  */
diff --git a/bsps/powerpc/qoriq/console/console-config.c b/bsps/powerpc/qoriq/console/console-config.c
index 4c1ca1d3f6..c8f0b4119b 100644
--- a/bsps/powerpc/qoriq/console/console-config.c
+++ b/bsps/powerpc/qoriq/console/console-config.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup QorIQ
+ * @ingroup RTEMSBSPsPowerPCQorIQ
  *
  * @brief Console configuration.
  */
diff --git a/bsps/powerpc/qoriq/console/uart-bridge-master.c b/bsps/powerpc/qoriq/console/uart-bridge-master.c
index 588e0a42ad..3239bb0b99 100644
--- a/bsps/powerpc/qoriq/console/uart-bridge-master.c
+++ b/bsps/powerpc/qoriq/console/uart-bridge-master.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup QorIQUartBridge
+ * @ingroup RTEMSBSPsPowerPCQorIQUartBridge
  *
  * @brief UART bridge master implementation.
  */
diff --git a/bsps/powerpc/qoriq/console/uart-bridge-slave.c b/bsps/powerpc/qoriq/console/uart-bridge-slave.c
index 44d4cfb712..ea97bc5e83 100644
--- a/bsps/powerpc/qoriq/console/uart-bridge-slave.c
+++ b/bsps/powerpc/qoriq/console/uart-bridge-slave.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup QorIQUartBridge
+ * @ingroup RTEMSBSPsPowerPCQorIQUartBridge
  *
  * @brief UART bridge slave implementation.
  */
diff --git a/bsps/powerpc/qoriq/include/bsp.h b/bsps/powerpc/qoriq/include/bsp.h
index 1c292f6767..1f5ca7f35d 100644
--- a/bsps/powerpc/qoriq/include/bsp.h
+++ b/bsps/powerpc/qoriq/include/bsp.h
@@ -1,9 +1,9 @@
 /**
  * @file
  *
- * @ingroup QorIQ
+ * @ingroup RTEMSBSPsPowerPCQorIQ
  *
- * @brief BSP API.
+ * @brief Global BSP definitions.
  */
 
 /*
@@ -23,6 +23,16 @@
 #ifndef LIBBSP_POWERPC_QORIQ_BSP_H
 #define LIBBSP_POWERPC_QORIQ_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsPowerPCQorIQ NXP QorIQ
+ *
+ * @ingroup RTEMSBSPsPowerPC
+ *
+ * @brief NXP QorIQ Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 
 #ifdef QORIQ_IS_HYPERVISOR_GUEST
@@ -127,4 +137,6 @@ extern uint32_t qoriq_clock_frequency;
 
 #endif /* ASM */
 
+/** @} */
+
 #endif /* LIBBSP_POWERPC_QORIQ_BSP_H */
diff --git a/bsps/powerpc/qoriq/include/bsp/intercom.h b/bsps/powerpc/qoriq/include/bsp/intercom.h
index 39b2ba938e..c78d4c2ab0 100644
--- a/bsps/powerpc/qoriq/include/bsp/intercom.h
+++ b/bsps/powerpc/qoriq/include/bsp/intercom.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup QorIQInterCom
+ * @ingroup RTEMSBSPsPowerPCQorIQInterCom
  *
  * @brief Inter-Processor Communication API.
  */
@@ -33,7 +33,7 @@ extern "C" {
 /**
  * @defgroup QorIQInterCom QorIQ - Inter-Processor Communication Support
  *
- * @ingroup QorIQ
+ * @ingroup RTEMSBSPsPowerPCQorIQ
  *
  * @brief Inter-processor communication support.
  *
diff --git a/bsps/powerpc/qoriq/include/bsp/irq.h b/bsps/powerpc/qoriq/include/bsp/irq.h
index e178057950..13589051d5 100644
--- a/bsps/powerpc/qoriq/include/bsp/irq.h
+++ b/bsps/powerpc/qoriq/include/bsp/irq.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup QorIQInterrupt
+ * @ingroup RTEMSBSPsPowerPCQorIQInterrupt
  *
  * @brief Interrupt API.
  */
@@ -148,7 +148,7 @@ extern "C" {
 /**
  * @defgroup QoriqInterruptP1020 QorIQ - P1020 Internal Interrupt Sources
  *
- * @ingroup QorIQInterrupt
+ * @ingroup RTEMSBSPsPowerPCQorIQInterrupt
  *
  * @brief P1020 internal interrupt sources.
  *
@@ -172,7 +172,7 @@ extern "C" {
 /**
  * @defgroup QoriqInterruptP2020 QorIQ - P2020 Internal Interrupt Sources
  *
- * @ingroup QorIQInterrupt
+ * @ingroup RTEMSBSPsPowerPCQorIQInterrupt
  *
  * @brief P2020 internal interrupt sources.
  *
@@ -198,7 +198,7 @@ extern "C" {
 /**
  * @defgroup QoriqInterruptAll QorIQ - Internal Interrupt Sources
  *
- * @ingroup QorIQInterrupt
+ * @ingroup RTEMSBSPsPowerPCQorIQInterrupt
  *
  * @brief Internal interrupt sources.
  *
@@ -246,7 +246,7 @@ extern "C" {
 /**
  * @defgroup QoriqInterruptExternal QorIQ - External Interrupt Sources
  *
- * @ingroup QorIQInterrupt
+ * @ingroup RTEMSBSPsPowerPCQorIQInterrupt
  *
  * @brief External interrupt sources.
  *
@@ -271,7 +271,7 @@ extern "C" {
 /**
  * @defgroup QoriqInterruptIPI QorIQ - Interprocessor Interrupts
  *
- * @ingroup QorIQInterrupt
+ * @ingroup RTEMSBSPsPowerPCQorIQInterrupt
  *
  * @brief Interprocessor interrupts.
  *
@@ -289,7 +289,7 @@ extern "C" {
 /**
  * @defgroup QoriqInterruptIPI QorIQ - Message Interrupts
  *
- * @ingroup QorIQInterrupt
+ * @ingroup RTEMSBSPsPowerPCQorIQInterrupt
  *
  * @brief Message interrupts.
  *
@@ -311,7 +311,7 @@ extern "C" {
 /**
  * @defgroup QoriqInterruptIPI QorIQ - Shared Message Signaled Interrupts
  *
- * @ingroup QorIQInterrupt
+ * @ingroup RTEMSBSPsPowerPCQorIQInterrupt
  *
  * @brief Shared message signaled interrupts.
  *
@@ -333,7 +333,7 @@ extern "C" {
 /**
  * @defgroup QoriqInterruptIPI QorIQ - Global Timer Interrupts
  *
- * @ingroup QorIQInterrupt
+ * @ingroup RTEMSBSPsPowerPCQorIQInterrupt
  *
  * @brief Global Timer interrupts.
  *
@@ -357,9 +357,9 @@ extern "C" {
 #endif /* QORIQ_IS_HYPERVISOR_GUEST */
 
 /**
- * @defgroup QorIQInterrupt QorIQ - Interrupt Support
+ * @defgroup RTEMSBSPsPowerPCQorIQInterrupt QorIQ - Interrupt Support
  *
- * @ingroup QorIQ
+ * @ingroup RTEMSBSPsPowerPCQorIQ
  *
  * @brief Interrupt support.
  *
diff --git a/bsps/powerpc/qoriq/include/bsp/mmu.h b/bsps/powerpc/qoriq/include/bsp/mmu.h
index 4cacb1b375..8c8822f901 100644
--- a/bsps/powerpc/qoriq/include/bsp/mmu.h
+++ b/bsps/powerpc/qoriq/include/bsp/mmu.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup QorIQMMU
+ * @ingroup RTEMSBSPsPowerPCQorIQMMU
  *
  * @brief MMU API.
  */
@@ -35,7 +35,7 @@ extern "C" {
 /**
  * @defgroup QorIQMMU QorIQ - MMU Support
  *
- * @ingroup QorIQ
+ * @ingroup RTEMSBSPsPowerPCQorIQ
  *
  * @brief MMU support.
  *
diff --git a/bsps/powerpc/qoriq/include/bsp/qoriq.h b/bsps/powerpc/qoriq/include/bsp/qoriq.h
index 09bc229231..361dbed2f1 100644
--- a/bsps/powerpc/qoriq/include/bsp/qoriq.h
+++ b/bsps/powerpc/qoriq/include/bsp/qoriq.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup QorIQ
+ * @ingroup RTEMSBSPsPowerPCQorIQ
  *
  * @brief QorIQ Configuration, Control and Status Registers.
  */
diff --git a/bsps/powerpc/qoriq/include/bsp/tsec-config.h b/bsps/powerpc/qoriq/include/bsp/tsec-config.h
index b1a70e7486..24f7e7611b 100644
--- a/bsps/powerpc/qoriq/include/bsp/tsec-config.h
+++ b/bsps/powerpc/qoriq/include/bsp/tsec-config.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup QorIQ
+ * @ingroup RTEMSBSPsPowerPCQorIQ
  *
  * @brief TSEC configuration.
  */
diff --git a/bsps/powerpc/qoriq/include/bsp/uart-bridge.h b/bsps/powerpc/qoriq/include/bsp/uart-bridge.h
index 97e6553b7c..3233cf5bef 100644
--- a/bsps/powerpc/qoriq/include/bsp/uart-bridge.h
+++ b/bsps/powerpc/qoriq/include/bsp/uart-bridge.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup QorIQUartBridge
+ * @ingroup RTEMSBSPsPowerPCQorIQUartBridge
  *
  * @brief UART to Intercom bridge API.
  */
@@ -34,7 +34,7 @@ extern "C" {
 /**
  * @defgroup QorIQUartBridge QorIQ - UART to Intercom Bridge Support
  *
- * @ingroup QorIQ
+ * @ingroup RTEMSBSPsPowerPCQorIQ
  *
  * @brief UART to Intercom bridge support.
  *
diff --git a/bsps/powerpc/qoriq/include/tm27.h b/bsps/powerpc/qoriq/include/tm27.h
index e1084a1d3c..5753d6b049 100644
--- a/bsps/powerpc/qoriq/include/tm27.h
+++ b/bsps/powerpc/qoriq/include/tm27.h
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup QorIQ
+ * @ingroup RTEMSBSPsPowerPCQorIQ
  *
  * @brief Support file for Timer Test 27.
  */
diff --git a/bsps/powerpc/qoriq/irq/irq.c b/bsps/powerpc/qoriq/irq/irq.c
index 18ca0741e0..0fa69934dd 100644
--- a/bsps/powerpc/qoriq/irq/irq.c
+++ b/bsps/powerpc/qoriq/irq/irq.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup QorIQ
+ * @ingroup RTEMSBSPsPowerPCQorIQ
  *
  * @brief Interrupt implementation.
  */
diff --git a/bsps/powerpc/qoriq/mpci/intercom-mpci.c b/bsps/powerpc/qoriq/mpci/intercom-mpci.c
index 2cc45dd079..f0b48e589d 100644
--- a/bsps/powerpc/qoriq/mpci/intercom-mpci.c
+++ b/bsps/powerpc/qoriq/mpci/intercom-mpci.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup QorIQInterCom
+ * @ingroup RTEMSBSPsPowerPCQorIQInterCom
  *
  * @brief Inter-Processor Communication implementation.
  */
diff --git a/bsps/powerpc/qoriq/mpci/intercom.c b/bsps/powerpc/qoriq/mpci/intercom.c
index e7e0d5650f..7f31d38c71 100644
--- a/bsps/powerpc/qoriq/mpci/intercom.c
+++ b/bsps/powerpc/qoriq/mpci/intercom.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup QorIQInterCom
+ * @ingroup RTEMSBSPsPowerPCQorIQInterCom
  *
  * @brief Inter-Processor Communication implementation.
  */
diff --git a/bsps/powerpc/qoriq/mpci/lock.S b/bsps/powerpc/qoriq/mpci/lock.S
index c6e72a7533..4b33b4baf1 100644
--- a/bsps/powerpc/qoriq/mpci/lock.S
+++ b/bsps/powerpc/qoriq/mpci/lock.S
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup QorIQInterCom
+ * @ingroup RTEMSBSPsPowerPCQorIQInterCom
  *
  * @brief qoriq_spin_lock() and qoriq_spin_unlock() implementation.
  */
diff --git a/bsps/powerpc/qoriq/net/network.c b/bsps/powerpc/qoriq/net/network.c
index 15eeef0705..46ab2bae58 100644
--- a/bsps/powerpc/qoriq/net/network.c
+++ b/bsps/powerpc/qoriq/net/network.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup QorIQ
+ * @ingroup RTEMSBSPsPowerPCQorIQ
  *
  * @brief Network configuration.
  */
diff --git a/bsps/powerpc/qoriq/rtc/rtc-config.c b/bsps/powerpc/qoriq/rtc/rtc-config.c
index c3e39e0830..3d47a04a44 100644
--- a/bsps/powerpc/qoriq/rtc/rtc-config.c
+++ b/bsps/powerpc/qoriq/rtc/rtc-config.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup QorIQ
+ * @ingroup RTEMSBSPsPowerPCQorIQ
  *
  * @brief RTC configuration.
  */
diff --git a/bsps/powerpc/qoriq/start/bspreset.c b/bsps/powerpc/qoriq/start/bspreset.c
index 545aa28ee3..26d7614719 100644
--- a/bsps/powerpc/qoriq/start/bspreset.c
+++ b/bsps/powerpc/qoriq/start/bspreset.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup QorIQ
+ * @ingroup RTEMSBSPsPowerPCQorIQ
  *
  * @brief BSP reset.
  */
diff --git a/bsps/powerpc/qoriq/start/bsprestart.c b/bsps/powerpc/qoriq/start/bsprestart.c
index 36e751e50d..283b242a0f 100644
--- a/bsps/powerpc/qoriq/start/bsprestart.c
+++ b/bsps/powerpc/qoriq/start/bsprestart.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup QorIQ
+ * @ingroup RTEMSBSPsPowerPCQorIQ
  *
  * @brief BSP restart.
  */
diff --git a/bsps/powerpc/qoriq/start/bspstart.c b/bsps/powerpc/qoriq/start/bspstart.c
index 09e80a3e13..3c75ecf020 100644
--- a/bsps/powerpc/qoriq/start/bspstart.c
+++ b/bsps/powerpc/qoriq/start/bspstart.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup QorIQ
+ * @ingroup RTEMSBSPsPowerPCQorIQ
  *
  * @brief BSP startup.
  */
diff --git a/bsps/powerpc/qoriq/start/mmu-config.c b/bsps/powerpc/qoriq/start/mmu-config.c
index 8a047a83bd..d13325fbd2 100644
--- a/bsps/powerpc/qoriq/start/mmu-config.c
+++ b/bsps/powerpc/qoriq/start/mmu-config.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup QorIQMMU
+ * @ingroup RTEMSBSPsPowerPCQorIQMMU
  *
  * @brief MMU implementation.
  */
diff --git a/bsps/powerpc/qoriq/start/mmu-tlb1.S b/bsps/powerpc/qoriq/start/mmu-tlb1.S
index 2dd06e2ed8..1d60a0e459 100644
--- a/bsps/powerpc/qoriq/start/mmu-tlb1.S
+++ b/bsps/powerpc/qoriq/start/mmu-tlb1.S
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup QorIQMMU
+ * @ingroup RTEMSBSPsPowerPCQorIQMMU
  *
  * @brief qoriq_tlb1_write() and qoriq_tlb1_invalidate() implementation.
  */
diff --git a/bsps/powerpc/qoriq/start/mmu.c b/bsps/powerpc/qoriq/start/mmu.c
index 2629c9f999..87ffc11cc2 100644
--- a/bsps/powerpc/qoriq/start/mmu.c
+++ b/bsps/powerpc/qoriq/start/mmu.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup QorIQMMU
+ * @ingroup RTEMSBSPsPowerPCQorIQMMU
  *
  * @brief MMU implementation.
  */
diff --git a/bsps/powerpc/shared/doxygen.h b/bsps/powerpc/shared/doxygen.h
index 6638615989..4f28235883 100644
--- a/bsps/powerpc/shared/doxygen.h
+++ b/bsps/powerpc/shared/doxygen.h
@@ -1,5 +1,5 @@
 /**
- * @defgroup RTEMSBSPsPowerPc PowerPC
+ * @defgroup RTEMSBSPsPowerPC PowerPC
  *
  * @ingroup RTEMSBSPs
  *
diff --git a/bsps/powerpc/ss555/include/bsp.h b/bsps/powerpc/ss555/include/bsp.h
index 3226f5eaf0..b6d9814075 100644
--- a/bsps/powerpc/ss555/include/bsp.h
+++ b/bsps/powerpc/ss555/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsPowerPCSS555
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*
  *  This file includes definitions for the Intec SS555.
  */
@@ -19,6 +27,16 @@
 #ifndef LIBBSP_POWERPC_SS555_BSP_H
 #define LIBBSP_POWERPC_SS555_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsPowerPCSS555 SS555
+ *
+ * @ingroup RTEMSBSPsPowerPC
+ *
+ * @brief SS555 Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 
 #ifdef ASM
@@ -95,4 +113,6 @@ void _InitSS555(void);
 
 #endif /* !ASM */
 
+/** @} */
+
 #endif
diff --git a/bsps/powerpc/t32mppc/include/bsp.h b/bsps/powerpc/t32mppc/include/bsp.h
index c27f235ef6..e7dfc7cb08 100644
--- a/bsps/powerpc/t32mppc/include/bsp.h
+++ b/bsps/powerpc/t32mppc/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsPowerPCT32MPPC
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*
  * Copyright (c) 2012, 2017 embedded brains GmbH.  All rights reserved.
  *
@@ -15,6 +23,16 @@
 #ifndef LIBBSP_POWERPC_T32MPPC_BSP_H
 #define LIBBSP_POWERPC_T32MPPC_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsPowerPCT32MPPC t32mppc
+ *
+ * @ingroup RTEMSBSPsPowerPC
+ *
+ * @brief Lauterbach Trace32 Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 
 #ifndef ASM
@@ -39,4 +57,6 @@ void t32mppc_decrementer_dispatch(void);
 }
 #endif /* __cplusplus */
 
+/** @} */
+
 #endif /* LIBBSP_POWERPC_T32MPPC_BSP_H */
diff --git a/bsps/powerpc/tqm8xx/include/bsp.h b/bsps/powerpc/tqm8xx/include/bsp.h
index 8e84ee883e..e934cf23ff 100644
--- a/bsps/powerpc/tqm8xx/include/bsp.h
+++ b/bsps/powerpc/tqm8xx/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsPowerPCTQM8XX
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*
  *  RTEMS TQM8xx BSP
  *  This include file contains all board IO definitions.
@@ -24,6 +32,16 @@
 #ifndef LIBBSP_POWERPC_TQM8XX_BSP_H
 #define LIBBSP_POWERPC_TQM8XX_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsPowerPCTQM8XX TQM8XX
+ *
+ * @ingroup RTEMSBSPsPowerPC
+ *
+ * @brief TQM8XX Board Support Package.
+ *
+ * @{
+ */
+
 /*
  * indicate, that BSP is booted via TQMMon
  */
@@ -162,4 +180,7 @@ void cpu_init(void);
 #endif
 
 #endif
+
+/** @} */
+
 #endif
diff --git a/bsps/powerpc/virtex/include/bsp.h b/bsps/powerpc/virtex/include/bsp.h
index 17af5214c2..b55e1a61f3 100644
--- a/bsps/powerpc/virtex/include/bsp.h
+++ b/bsps/powerpc/virtex/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsPowerPCVirtex
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*  bsp.h
  *
  *  This include file contains all GEN405 board IO definitions.
@@ -41,6 +49,16 @@
 #ifndef LIBBSP_POWERPC_VIRTEX_BSP_H
 #define LIBBSP_POWERPC_VIRTEX_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsPowerPCVirtex Xilinx Virtex
+ *
+ * @ingroup RTEMSBSPsPowerPC
+ *
+ * @brief Xilinx Virtex Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 
 #ifdef ASM
@@ -76,4 +94,6 @@ extern int xilTemac_driver_attach(struct rtems_bsdnet_ifconfig*, int );
 
 #endif /* ASM */
 
+/** @} */
+
 #endif
diff --git a/bsps/powerpc/virtex4/include/bsp.h b/bsps/powerpc/virtex4/include/bsp.h
index 33ea704da8..d0ab96813d 100644
--- a/bsps/powerpc/virtex4/include/bsp.h
+++ b/bsps/powerpc/virtex4/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsPowerPCVirtex4
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*
  *  This include file contains all Virtex4 board IO definitions.
  */
@@ -42,6 +50,16 @@
 #ifndef LIBBSP_POWERPC_VIRTEX4_BSP_H
 #define LIBBSP_POWERPC_VIRTEX4_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsPowerPCVirtex4 Xilinx Virtex-4
+ *
+ * @ingroup RTEMSBSPsPowerPC
+ *
+ * @brief Xilinx Virtex-4 Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 
 /*
@@ -76,4 +94,6 @@ void zero_bss(void);
 
 #endif /* ASM */
 
+/** @} */
+
 #endif
diff --git a/bsps/powerpc/virtex4/include/bsp/mmu.h b/bsps/powerpc/virtex4/include/bsp/mmu.h
index 3e2710b95c..68772002e2 100644
--- a/bsps/powerpc/virtex4/include/bsp/mmu.h
+++ b/bsps/powerpc/virtex4/include/bsp/mmu.h
@@ -3,7 +3,7 @@
 /**
  * @file
  *
- * @ingroup Virtex4MMU
+ * @ingroup RTEMSBSPsPowerPCVirtex4MMU
  *
  * @brief Routines to manipulate the PPC 405 MMU.
  */
@@ -66,7 +66,7 @@ extern "C" {
 /**
  * @defgroup Virtex4MMU Virtex 4 - MMU Support
  *
- * @ingroup Virtex4
+ * @ingroup RTEMSBSPsPowerPCVirtex4
  *
  * @brief MMU support.
  *
diff --git a/bsps/powerpc/virtex4/start/mmu.c b/bsps/powerpc/virtex4/start/mmu.c
index 92b4dbde38..e96619796b 100644
--- a/bsps/powerpc/virtex4/start/mmu.c
+++ b/bsps/powerpc/virtex4/start/mmu.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup Virtex4MMU
+ * @ingroup RTEMSBSPsPowerPCVirtex4MMU
  *
  * @brief Implementation of routines to manipulate the PPC 405 mmu.
  *
diff --git a/bsps/powerpc/virtex5/include/bsp.h b/bsps/powerpc/virtex5/include/bsp.h
index c1be0a11d7..97a3da9bd7 100644
--- a/bsps/powerpc/virtex5/include/bsp.h
+++ b/bsps/powerpc/virtex5/include/bsp.h
@@ -1,6 +1,9 @@
-/*  @file
+/**
+ * @file
  *
- *  This include file contains all GEN405 board IO definitions.
+ * @ingroupRTEMSBSPsPowerPCVirtex5
+ *
+ * @brief Global BSP definitions.
  */
 
 /*
@@ -43,6 +46,16 @@
 #ifndef LIBBSP_POWERPC_VIRTEX5_BSP_H
 #define LIBBSP_POWERPC_VIRTEX5_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsPowerPCVirtex5 Xilinx Virtex-5
+ *
+ * @ingroup RTEMSBSPsPowerPC
+ *
+ * @brief Xilinx Virtex-5 Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 
 /*
@@ -101,4 +114,6 @@ void BSP_ask_for_reset(void);
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/powerpc/virtex5/include/bsp/mmu.h b/bsps/powerpc/virtex5/include/bsp/mmu.h
index a3fb32b662..7c2295f900 100644
--- a/bsps/powerpc/virtex5/include/bsp/mmu.h
+++ b/bsps/powerpc/virtex5/include/bsp/mmu.h
@@ -3,7 +3,7 @@
 /**
  * @file
  *
- * @ingroup Virtex5MMU
+ * @ingroup RTEMSBSPsPowerPCVirtex5MMU
  *
  * @brief Routines to manipulate the PPC 440 MMU.
  */
@@ -66,7 +66,7 @@ extern "C" {
 /**
  * @defgroup Virtex5MMU Virtex 5 - MMU Support
  *
- * @ingroup Virtex5
+ * @ingroup RTEMSBSPsPowerPCVirtex5
  *
  * @brief MMU support.
  *
diff --git a/bsps/powerpc/virtex5/start/mmu.c b/bsps/powerpc/virtex5/start/mmu.c
index 990cb99bd0..874c57ee6f 100644
--- a/bsps/powerpc/virtex5/start/mmu.c
+++ b/bsps/powerpc/virtex5/start/mmu.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup Virtex5MMU
+ * @ingroup RTEMSBSPsPowerPCVirtex5MMU
  *
  * @brief Implementation of routines to manipulate the PPC 440 MMU.
  *
diff --git a/bsps/riscv/griscv/include/amba.h b/bsps/riscv/griscv/include/amba.h
index e1c5c00464..8833cdfba6 100644
--- a/bsps/riscv/griscv/include/amba.h
+++ b/bsps/riscv/griscv/include/amba.h
@@ -1,8 +1,7 @@
 /**
  * @file
- * @defgroup amba AMBA Driver Handler
- * @ingroup sparc_leon3
- * @brief AMBA Plag & Play Bus Driver Macros
+ *
+ * @ingroup RTEMSBSPsRISCVGRLIBAMBA
  */
 
 /*
@@ -21,6 +20,18 @@
 #ifndef __AMBA_H__
 #define __AMBA_H__
 
+/**
+ * @defgroup RTEMSBSPsRISCVGRLIBAMBA RISC-V AMBA Driver Handler
+ *
+ * @ingroup RTEMSBSPsRISCVGRLIB
+ *
+ * @ingroup RTEMSBSPsSharedGRLIB
+ *
+ * @brief AMBA Plag & Play Bus Driver Macros
+ *
+ * @{
+ */
+
 #ifndef GRLIB_IO_AREA
 #define GRLIB_IO_AREA 0xfff00000
 #endif
@@ -140,4 +151,6 @@ static inline uint32_t grlib_get_cpu_count(
 }
 #endif
 
+/** @} */
+
 #endif /* __AMBA_H__ */
diff --git a/bsps/riscv/griscv/include/bsp.h b/bsps/riscv/griscv/include/bsp.h
index 185bd5bb23..320316f723 100644
--- a/bsps/riscv/griscv/include/bsp.h
+++ b/bsps/riscv/griscv/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsRISCVGRLIB
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*
  *
  * Copyright (c) 2015 University of York.
@@ -31,6 +39,17 @@
 #ifndef LIBBSP_RISCV_GRISCV_H
 #define LIBBSP_RISCV_GRISCV_H
 
+/**
+ * @defgroup RTEMSBSPsRISCVGRLIB GRLIB
+ *
+ * @ingroup RTEMSBSPsRISCV
+ *
+ * @brief GRLIB RISC-V Board Support Package.
+ *
+ * @{
+ */
+
+
 #include <rtems.h>
 #include <rtems/clockdrv.h>
 #include <rtems/console.h>
@@ -63,4 +82,6 @@ extern void BSP_shared_interrupt_unmask(int irq);
 }
 #endif
 
+/** @} */
+
 #endif /* LIBBSP_RISCV_GRISCV_H */
diff --git a/bsps/riscv/riscv/include/bsp.h b/bsps/riscv/riscv/include/bsp.h
index d8d0347da8..d19f0d03a5 100644
--- a/bsps/riscv/riscv/include/bsp.h
+++ b/bsps/riscv/riscv/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsRISCVGeneric
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*
  *
  * Copyright (c) 2015 University of York.
@@ -31,6 +39,16 @@
 #ifndef LIBBSP_RISCV_GENERIC_H
 #define LIBBSP_RISCV_GENERIC_H
 
+/**
+ * @defgroup RTEMSBSPsRISCVGeneric Generic
+ *
+ * @ingroup RTEMSBSPsRISCV
+ *
+ * @brief Generic RISC-V Board Support Package.
+ *
+ * @{
+ */
+
 #include <rtems.h>
 #include <rtems/clockdrv.h>
 #include <rtems/console.h>
@@ -52,4 +70,6 @@ extern "C" {
 }
 #endif
 
+/** @} */
+
 #endif /* LIBBSP_RISCV_GENERIC_H */
diff --git a/bsps/sh/gensh1/include/bsp.h b/bsps/sh/gensh1/include/bsp.h
index b70e8382a5..7fe7c3c0c5 100644
--- a/bsps/sh/gensh1/include/bsp.h
+++ b/bsps/sh/gensh1/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsSH1
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*
  *  generic sh1
  *
@@ -25,6 +33,16 @@
 #ifndef LIBBSP_SH_GENSH1_BSP_H
 #define LIBBSP_SH_GENSH1_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsSH1 SH-1
+ *
+ * @ingroup RTEMSBSPsSH
+ *
+ * @brief SH-1 Board Support Package.
+ *
+ * @{
+ */
+
 #include <rtems.h>
 #include <termios.h> /* for tcflag_t */
 
@@ -63,4 +81,6 @@ int _sci_get_brparms(
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/sh/gensh2/include/bsp.h b/bsps/sh/gensh2/include/bsp.h
index 38e2c49208..082ea8169a 100644
--- a/bsps/sh/gensh2/include/bsp.h
+++ b/bsps/sh/gensh2/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsSH2
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*
  *  generic sh2
  *
@@ -36,6 +44,16 @@
 #ifndef LIBBSP_SH_GENSH2_BSP_H
 #define LIBBSP_SH_GENSH2_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsSH2 SH-2
+ *
+ * @ingroup RTEMSBSPsSH
+ *
+ * @brief SH-2 Board Support Package.
+ *
+ * @{
+ */
+
 #include <rtems.h>
 
 #include <bspopts.h>
@@ -77,4 +95,6 @@ int _sci_get_brparms(
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/sh/gensh4/include/bsp.h b/bsps/sh/gensh4/include/bsp.h
index f29957cfa5..294e8e3ea1 100644
--- a/bsps/sh/gensh4/include/bsp.h
+++ b/bsps/sh/gensh4/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsSH4
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*
  *  generic sh4 BSP
  *
@@ -40,6 +48,16 @@
 #ifndef LIBBSP_SH_GENSH4_BSP_H
 #define LIBBSP_SH_GENSH4_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsSH4 SH-4
+ *
+ * @ingroup RTEMSBSPsSH
+ *
+ * @brief SH-4 Board Support Package.
+ *
+ * @{
+ */
+
 #include <rtems.h>
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
@@ -82,4 +100,6 @@ void bsp_cache_on(void);
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/sh/shsim/include/bsp.h b/bsps/sh/shsim/include/bsp.h
index ff63b3849b..80e2f096ea 100644
--- a/bsps/sh/shsim/include/bsp.h
+++ b/bsps/sh/shsim/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsSHSim
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*
  *  SH-gdb simulator BSP
  *
@@ -24,6 +32,16 @@
 #ifndef LIBBSP_SH_SHSIM_BSP_H
 #define LIBBSP_SH_SHSIM_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsSHSim Simulator
+ *
+ * @ingroup RTEMSBSPsSH
+ *
+ * @brief Simulator Board Support Package.
+ *
+ * @{
+ */
+
 #ifndef ASM
 
 #include <rtems.h>
@@ -56,4 +74,7 @@ void bsp_hw_init(void);
 #endif
 
 #endif /* !ASM */
+
+/** @} */
+
 #endif
diff --git a/bsps/sparc/erc32/include/bsp.h b/bsps/sparc/erc32/include/bsp.h
index 2941db0be4..6347c58da3 100644
--- a/bsps/sparc/erc32/include/bsp.h
+++ b/bsps/sparc/erc32/include/bsp.h
@@ -1,9 +1,9 @@
 /**
  * @file
  *
- * @ingroup sparc_erc32
+ * @ingroup RTEMSBSPsSPARCERC32
  *
- * @brief Global BSP Definitions.
+ * @brief Global BSP definitions.
  */
 
 /*
@@ -25,6 +25,16 @@
 #ifndef LIBBSP_SPARC_ERC32_BSP_H
 #define LIBBSP_SPARC_ERC32_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsSPARCERC32 ERC32
+ *
+ * @ingroup RTEMSBSPsSPARC
+ *
+ * @brief ERC32 Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 
@@ -36,14 +46,6 @@
 extern "C" {
 #endif
 
-/**
- * @defgroup sparc_erc32 ERC32 Support
- *
- * @ingroup RTEMSBSPsSPARC
- *
- * @brief ERC32 Support Package
- */
-
 /*
  *  BSP provides its own Idle thread body
  */
@@ -181,4 +183,6 @@ int console_inbyte_nonblocking(int port);
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/sparc/leon2/btimer/btimer.c b/bsps/sparc/leon2/btimer/btimer.c
index de115c965a..352821e05b 100644
--- a/bsps/sparc/leon2/btimer/btimer.c
+++ b/bsps/sparc/leon2/btimer/btimer.c
@@ -1,6 +1,6 @@
 /**
  * @file
- * @ingroup sparc_leon2
+ * @ingroup RTEMSBSPsSPARCLEON2
  * @brief Implement a benchmark timer using timer 2
  */
 
diff --git a/bsps/sparc/leon2/clock/ckinit.c b/bsps/sparc/leon2/clock/ckinit.c
index 2707c7daa2..ba97894861 100644
--- a/bsps/sparc/leon2/clock/ckinit.c
+++ b/bsps/sparc/leon2/clock/ckinit.c
@@ -1,6 +1,6 @@
 /**
  * @file
- * @ingroup sparc_leon2
+ * @ingroup RTEMSBSPsSPARCLEON2
  * @brief Clock Tick Device Driver
  *
  *  This routine initializes LEON timer 1 which used for the clock tick.
diff --git a/bsps/sparc/leon2/console/console.c b/bsps/sparc/leon2/console/console.c
index 4e8a42afc5..579792a06a 100644
--- a/bsps/sparc/leon2/console/console.c
+++ b/bsps/sparc/leon2/console/console.c
@@ -1,6 +1,6 @@
 /**
  * @file
- * @ingroup sparc_leon2
+ * @ingroup RTEMSBSPsSPARCLEON2
  * @brief TTY driver driver for the serial ports on the LEON console
  *
  *  This file contains the TTY driver for the serial ports on the LEON.
diff --git a/bsps/sparc/leon2/console/debugputs.c b/bsps/sparc/leon2/console/debugputs.c
index 87567b00b5..0694be2af4 100644
--- a/bsps/sparc/leon2/console/debugputs.c
+++ b/bsps/sparc/leon2/console/debugputs.c
@@ -1,6 +1,6 @@
 /**
  * @file
- * @ingroup sparc_leon2
+ * @ingroup RTEMSBSPsSPARCLEON2
  * @brief TTY driver for the serial ports on the LEON
  */
 
diff --git a/bsps/sparc/leon2/gnatsupp/gnatsupp.c b/bsps/sparc/leon2/gnatsupp/gnatsupp.c
index 1df950039a..d1745535ec 100644
--- a/bsps/sparc/leon2/gnatsupp/gnatsupp.c
+++ b/bsps/sparc/leon2/gnatsupp/gnatsupp.c
@@ -1,7 +1,7 @@
 /**
  * @file
  *
- * @ingroup sparc_leon2
+ * @ingroup RTEMSBSPsSPARCLEON2
  *
  * @brief Support for gnat/rtems iterrupts and exception handling
  */
diff --git a/bsps/sparc/leon2/include/bsp.h b/bsps/sparc/leon2/include/bsp.h
index 82f7728ff9..5fe39d09d2 100644
--- a/bsps/sparc/leon2/include/bsp.h
+++ b/bsps/sparc/leon2/include/bsp.h
@@ -1,9 +1,9 @@
 /**
  * @file
  *
- * @ingroup sparc_leon2
+ * @ingroup RTEMSBSPsSPARCLEON2
  *
- * @brief Global BSP Definitions.
+ * @brief Global BSP definitions.
  */
 
 /*  bsp.h
@@ -40,12 +40,13 @@ extern "C" {
 #endif
 
 /**
- *  @defgroup sparc_leon2 LEON2 Support
+ * @defgroup RTEMSBSPsSPARCLEON2 LEON2
  *
- *  @ingroup RTEMSBSPsSPARC
+ * @ingroup RTEMSBSPsSPARC
  *
- *  @brief LEON2 Support Package
+ * @brief LEON2 Board Support Package.
  *
+ * @{
  */
 
 /* SPARC CPU variant: LEON2 */
@@ -221,4 +222,6 @@ int console_inbyte_nonblocking( int port );
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/sparc/leon2/include/bsp/irq.h b/bsps/sparc/leon2/include/bsp/irq.h
index 086bf253c4..169f3cb598 100644
--- a/bsps/sparc/leon2/include/bsp/irq.h
+++ b/bsps/sparc/leon2/include/bsp/irq.h
@@ -1,6 +1,6 @@
 /**
  * @file
- * @ingroup sparc_leon2
+ * @ingroup RTEMSBSPsSPARCLEON2
  * @brief Interrupts definitions
  *
  * Based on libbsp/shared/include/irq.h.
diff --git a/bsps/sparc/leon2/include/leon.h b/bsps/sparc/leon2/include/leon.h
index 7ec6b1dcf9..2b3379f713 100644
--- a/bsps/sparc/leon2/include/leon.h
+++ b/bsps/sparc/leon2/include/leon.h
@@ -1,10 +1,7 @@
 /**
- * @defgroup leon1 Leon-1 Handler
- * @ingroup sparc_leon2
- *
  * @file
- * @ingroup leon1
- * @brief Handlers Leon-1
+ *
+ * @ingroup RTEMSBSPsSPARCLEON2
  *
  *  This include file contains information pertaining to the LEON-1.
  *  The LEON-1 is a custom SPARC V7 implementation.
diff --git a/bsps/sparc/leon2/include/tm27.h b/bsps/sparc/leon2/include/tm27.h
index 0d28641b9b..7b1afe96af 100644
--- a/bsps/sparc/leon2/include/tm27.h
+++ b/bsps/sparc/leon2/include/tm27.h
@@ -1,6 +1,6 @@
 /**
  * @file
- * @ingroup sparc_leon2
+ * @ingroup RTEMSBSPsSPARCLEON2
  * @brief Implementations for interrupt mechanisms for Time Test 27
  */
 
diff --git a/bsps/sparc/leon2/net/leon_open_eth.c b/bsps/sparc/leon2/net/leon_open_eth.c
index 326850e248..7191e378e9 100644
--- a/bsps/sparc/leon2/net/leon_open_eth.c
+++ b/bsps/sparc/leon2/net/leon_open_eth.c
@@ -1,6 +1,6 @@
 /**
  * @file
- * @ingroup sparc_leon2
+ * @ingroup RTEMSBSPsSPARCLEON2
  * @brief LEON2 Opencores Ethernet MAC Configuration Information
  */
 
diff --git a/bsps/sparc/leon2/net/leon_smc91111.c b/bsps/sparc/leon2/net/leon_smc91111.c
index 68c359edda..cf0f81fd01 100644
--- a/bsps/sparc/leon2/net/leon_smc91111.c
+++ b/bsps/sparc/leon2/net/leon_smc91111.c
@@ -1,6 +1,6 @@
 /**
  * @file
- * @ingroup sparc_leon2
+ * @ingroup RTEMSBSPsSPARCLEON2
  * @brief SMC91111 Driver
  */
 
diff --git a/bsps/sparc/leon2/start/bspdelay.c b/bsps/sparc/leon2/start/bspdelay.c
index 5ee8123157..fe64929228 100644
--- a/bsps/sparc/leon2/start/bspdelay.c
+++ b/bsps/sparc/leon2/start/bspdelay.c
@@ -1,6 +1,6 @@
 /**
  * @file
- * @ingroup sparc_leon2
+ * @ingroup RTEMSBSPsSPARCLEON2
  * @brief LEON2 BSP Delay Method
  */
 
diff --git a/bsps/sparc/leon2/start/bspidle.c b/bsps/sparc/leon2/start/bspidle.c
index 8f11f66fb1..0e44b459c9 100644
--- a/bsps/sparc/leon2/start/bspidle.c
+++ b/bsps/sparc/leon2/start/bspidle.c
@@ -1,6 +1,6 @@
 /**
  * @file
- * @ingroup sparc_leon2
+ * @ingroup RTEMSBSPsSPARCLEON2
  * @brief LEON2 Idle Thread 
  */
 
diff --git a/bsps/sparc/leon2/start/bspstart.c b/bsps/sparc/leon2/start/bspstart.c
index f2ed8ae16c..e3b9141bf5 100644
--- a/bsps/sparc/leon2/start/bspstart.c
+++ b/bsps/sparc/leon2/start/bspstart.c
@@ -1,6 +1,6 @@
 /**
  * @file
- * @ingroup sparc_leon2
+ * @ingroup RTEMSBSPsSPARCLEON2
  * @brief LEON2 Cache Snooping Support
  */
 
diff --git a/bsps/sparc/leon2/start/setvec.c b/bsps/sparc/leon2/start/setvec.c
index e2d839c2e4..3e4120611d 100644
--- a/bsps/sparc/leon2/start/setvec.c
+++ b/bsps/sparc/leon2/start/setvec.c
@@ -1,6 +1,6 @@
 /**
  * @file
- * @ingroup sparc_leon2
+ * @ingroup RTEMSBSPsSPARCLEON2
  * @brief Installs an interrupt vector on the SPARC simulator
  */
 
diff --git a/bsps/sparc/leon2/start/spurious.c b/bsps/sparc/leon2/start/spurious.c
index 971c3cd44b..0d5fb1631c 100644
--- a/bsps/sparc/leon2/start/spurious.c
+++ b/bsps/sparc/leon2/start/spurious.c
@@ -1,6 +1,6 @@
 /**
  * @file
- * @ingroup sparc_leon2
+ * @ingroup RTEMSBSPsSPARCLEON2
  * @brief LEON Spurious Trap Handler
  */
 
diff --git a/bsps/sparc/leon3/include/amba.h b/bsps/sparc/leon3/include/amba.h
index 2d11096034..c41c70a5a7 100644
--- a/bsps/sparc/leon3/include/amba.h
+++ b/bsps/sparc/leon3/include/amba.h
@@ -1,8 +1,7 @@
 /**
  * @file
- * @defgroup amba AMBA Driver Handler
- * @ingroup sparc_leon3
- * @brief AMBA Plag & Play Bus Driver Macros
+ *
+ * @ingroup RTEMSBSPsSPARCLEON3AMBA
  */
 
 /*
@@ -21,6 +20,18 @@
 #ifndef __AMBA_H__
 #define __AMBA_H__
 
+/**
+ * @defgroup RTEMSBSPsSPARCLEON3AMBA LEON3 AMBA Driver Handler
+ *
+ * @ingroup RTEMSBSPsSPARCLEON3
+ *
+ * @ingroup RTEMSBSPsSharedGRLIB
+ *
+ * @brief AMBA Plag & Play Bus Driver Macros
+ *
+ * @{
+ */
+
 #define LEON3_IO_AREA 0xfff00000
 #define LEON3_CONF_AREA 0xff000
 #define LEON3_AHB_SLAVE_CONF_AREA (1 << 11)
@@ -45,4 +56,6 @@ extern struct ambapp_bus ambapp_plb;
 }
 #endif
 
+/** @} */
+
 #endif /* __AMBA_H__ */
diff --git a/bsps/sparc/leon3/include/bsp.h b/bsps/sparc/leon3/include/bsp.h
index c35e537d0a..100dd9624c 100644
--- a/bsps/sparc/leon3/include/bsp.h
+++ b/bsps/sparc/leon3/include/bsp.h
@@ -1,9 +1,9 @@
 /**
  * @file
  *
- * @ingroup sparc_leon3
+ * @ingroup RTEMSBSPsSPARCLEON3
  *
- * @brief Global BSP Definitions.
+ * @brief Global BSP definitions.
  */
 
 /*  bsp.h
@@ -40,12 +40,13 @@ extern "C" {
 #endif
 
 /**
- *  @defgroup sparc_leon3 LEON3 Support
+ * @defgroup RTEMSBSPsSPARCLEON3 LEON3 and LEON4
  *
- *  @ingroup RTEMSBSPsSPARC
+ * @ingroup RTEMSBSPsSPARC
  *
- *  @brief LEON3 support package
+ * @brief LEON3 and LEON4 Board Support Package.
  *
+ * @{
  */
 
 /* SPARC CPU variant: LEON3 */
@@ -247,4 +248,6 @@ extern const unsigned char LEON3_irq_to_cpu[32];
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/sparc64/niagara/include/bsp.h b/bsps/sparc64/niagara/include/bsp.h
index 81058270a9..f72d017484 100644
--- a/bsps/sparc64/niagara/include/bsp.h
+++ b/bsps/sparc64/niagara/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsSPARC64Niagara
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*  bsp.h
  *
  *  This include file contains all SPARC64 simulator definitions.
@@ -12,6 +20,16 @@
 #ifndef LIBBSP_SPARC64_NIAGARA_BSP_H
 #define LIBBSP_SPARC64_NIAGARA_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsSPARC64Niagara Niagara
+ *
+ * @ingroup RTEMSBSPsSPARC64
+ *
+ * @brief Niagara
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 
@@ -38,4 +56,6 @@ rtems_isr_entry set_vector(                     /* returns old vector */
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/sparc64/usiii/include/bsp.h b/bsps/sparc64/usiii/include/bsp.h
index 8051db3987..d378de4dde 100644
--- a/bsps/sparc64/usiii/include/bsp.h
+++ b/bsps/sparc64/usiii/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsSPARC64USIII
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*  bsp.h
  *
  *  This include file contains all SPARC64 simulator definitions.
@@ -13,6 +21,16 @@
 #ifndef LIBBSP_SPARC64_USIII_BSP_H
 #define LIBBSP_SPARC64_USIII_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsSPARC64USIII USIII
+ *
+ * @ingroup RTEMSBSPsSPARC64
+ *
+ * @brief USIII Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 
@@ -39,4 +57,6 @@ rtems_isr_entry set_vector(                     /* returns old vector */
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/v850/gdbv850sim/include/bsp.h b/bsps/v850/gdbv850sim/include/bsp.h
index ac8b43024f..4a45943666 100644
--- a/bsps/v850/gdbv850sim/include/bsp.h
+++ b/bsps/v850/gdbv850sim/include/bsp.h
@@ -1,3 +1,10 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsV850GDBSim
+ *
+ * @brief Global BSP definitions.
+ */
 /*
  *  This include file contains some definitions specific to the
  *  GDB simulator in gdb.
@@ -15,6 +22,16 @@
 #ifndef LIBBSP_V850_GDBV850SIM_BSP_H
 #define LIBBSP_V850_GDBV850SIM_BSP_H
 
+/**
+ * @defgroup RTEMSBSPsV850GDBSim GDB Simulator
+ *
+ * @ingroup RTEMSBSPsV850
+ *
+ * @brief GDB Simulator Board Support Package.
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 
@@ -32,4 +49,6 @@ void *clock_driver_sim_idle_body(uintptr_t);
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/x86_64/amd64/include/bsp.h b/bsps/x86_64/amd64/include/bsp.h
index 2fa6da42a0..647afe5f66 100644
--- a/bsps/x86_64/amd64/include/bsp.h
+++ b/bsps/x86_64/amd64/include/bsp.h
@@ -1,3 +1,11 @@
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsX8664Amd64
+ *
+ * @brief Global BSP definitions.
+ */
+
 /*  bsp.h
  *
  *  This include file contains all board IO definitions.
@@ -35,6 +43,12 @@
 #ifndef LIBBSP_X86_64_AMD64_BSP_H
 #define LIBBSP_X86_64_AMD64_BSP_H
 
+/**
+ * @addtogroup RTEMSBSPsX8664
+ *
+ * @{
+ */
+
 #include <bspopts.h>
 #include <bsp/default-initial-extension.h>
 
@@ -48,4 +62,6 @@ extern "C" {
 }
 #endif
 
+/** @} */
+
 #endif
diff --git a/bsps/x86_64/shared/doxygen.h b/bsps/x86_64/shared/doxygen.h
index 6d0e46428c..7cb74a1017 100644
--- a/bsps/x86_64/shared/doxygen.h
+++ b/bsps/x86_64/shared/doxygen.h
@@ -3,5 +3,5 @@
  *
  * @ingroup RTEMSBSPs
  *
- * @brief x86-64 Board Support Packages.
+ * @brief x86-64 Board Support Package.
  */
-- 
2.16.4




More information about the devel mailing list