diff --git a/os/hal/hal.dox b/os/hal/hal.dox index 77dc49a46..fc5514594 100644 --- a/os/hal/hal.dox +++ b/os/hal/hal.dox @@ -52,7 +52,6 @@ * - @ref ADC. * - @ref CAN. * - @ref MAC. - * - @ref MII. * - @ref MMC_SPI. * - @ref SPI. * . @@ -310,27 +309,6 @@ * @ingroup MAC */ -/** - * @defgroup MII MII Driver - * @brief Generic MII driver. - * @details This module implements a generic interface for MII (Media - * Independent Interface) drivers. - * The MII/RMII/GMII/RGMII/SGMII buses are standard interfaces meant - * to connect a MAC block to a PHY transceiver.
- * A @ref MII is usually used from within a @ref MAC and is not - * meant to be used directly from the application code. - * - * @ingroup IO - */ - -/** - * @defgroup MII_LLD MII Low Level Driver - * @brief @ref MII low level driver template. - * @details This file is a template for a MII low level driver. - * - * @ingroup MII - */ - /** * @defgroup MMC_SPI MMC over SPI Driver * @brief Generic MMC driver. diff --git a/os/hal/include/mii.h b/os/hal/include/mii.h index c72a5f96d..91f31e185 100644 --- a/os/hal/include/mii.h +++ b/os/hal/include/mii.h @@ -22,7 +22,7 @@ * Copyright (C) 1996, 1999, 2001 David S. Miller (davem@redhat.com) */ -/** +/*-* * @file mii.h * @brief MII Driver macros and structures. * @addtogroup MII @@ -185,4 +185,4 @@ #endif /* _MII_H_ */ -/** @} */ +/*-* @} */ diff --git a/os/hal/platforms/AT91SAM7/platform.dox b/os/hal/platforms/AT91SAM7/platform.dox index 60940201d..2b87f64bd 100644 --- a/os/hal/platforms/AT91SAM7/platform.dox +++ b/os/hal/platforms/AT91SAM7/platform.dox @@ -25,10 +25,18 @@ * - EMAC driver with MII support. * - A demo supporting the kernel test suite. * - A Web server demo using the uIP TCP/IP stack. + * - A Web server demo using the lwIP TCP/IP stack. * . * @ingroup ARM7 */ +/** + * @defgroup AT91SAM7_HAL AT91SAM7 HAL Support + * @brief HAL support. + * + * @ingroup AT91SAM7 + */ + /** * @defgroup AT91SAM7_PAL AT91SAM7 I/O Ports Support * @brief I/O Ports peripherals support. @@ -76,10 +84,10 @@ /** * @defgroup AT91SAM7_MII AT91SAM7 MII Support - * @brief EMAC peripheral support. - * @details the @ref MII supports the AT91SAM7 EMAC peripheral communicating + * @brief EMAC+PHY peripheral support. + * @details This driver supports the AT91SAM7 EMAC peripheral communicating * with an external PHY transceiver. The driver currently supports - * only the Micrel KS8721 PHY module. + * the Micrel KS8721 PHY and the Davicom DV9161 modules. * * @ingroup AT91SAM7 */ diff --git a/os/hal/platforms/STM32/platform.dox b/os/hal/platforms/STM32/platform.dox index 1ffad7616..e26a72620 100644 --- a/os/hal/platforms/STM32/platform.dox +++ b/os/hal/platforms/STM32/platform.dox @@ -31,6 +31,13 @@ * @ingroup ARMCM3 */ +/** + * @defgroup STM32_HAL STM32 HAL Support + * @brief HAL support. + * + * @ingroup STM32 + */ + /** * @defgroup STM32_PAL STM32 I/O Ports Support * @brief I/O Ports peripherals support. @@ -83,15 +90,6 @@ * @ingroup STM32 */ -/** - * @defgroup STM32_SPI STM32 SPI Support - * @brief SPI peripherals support. - * @details The serial driver supports the STM32 SPIs using DMA channels for - * improved performance. - * - * @ingroup STM32 - */ - /** * @defgroup STM32_ADC STM32 ADC Support * @brief ADC peripherals support. @@ -100,4 +98,21 @@ * * @ingroup STM32 */ + +/** + * @defgroup STM32_CAN STM32 CAN Support + * @brief CAN peripheral support. + * @details The CAN driver supports the STM32 bxCAN unit. + * + * @ingroup STM32 + */ + +/** + * @defgroup STM32_SPI STM32 SPI Support + * @brief SPI peripherals support. + * @details The serial driver supports the STM32 SPIs using DMA channels for + * improved performance. + * + * @ingroup STM32 + */ \ No newline at end of file diff --git a/os/hal/templates/mii_lld.c b/os/hal/templates/mii_lld.c deleted file mode 100644 index 2381c4f1e..000000000 --- a/os/hal/templates/mii_lld.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - ChibiOS/RT - Copyright (C) 2006-2007 Giovanni Di Sirio. - - This file is part of ChibiOS/RT. - - ChibiOS/RT is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - ChibiOS/RT is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . -*/ - -/** - * @file templates/mii_lld.c - * @brief MII Driver subsystem low level driver source template - * @addtogroup MII_LLD - * @{ - */ - -#include "ch.h" -#include "mac.h" -#include "mii.h" - -/** - * @brief Low level MII driver initialization. - */ -void mii_lld_init(void) { - -} - -/** - * Resets a PHY device. - * - * @param[in] macp pointer to the @p MACDriver object - */ -void mii_lld_reset(MACDriver *macp) { - -} - -/** - * @brief Reads a PHY register through the MII interface. - * - * @param[in] macp pointer to the @p MACDriver object - * @param addr the register address - * @return The register value. - */ -phyreg_t mii_lld_get(MACDriver *macp, phyaddr_t addr) { - - return 0; -} - -/** - * @brief Writes a PHY register through the MII interface. - * - * @param[in] macp pointer to the @p MACDriver object - * @param addr the register address - * @param value the new register value - */ -void mii_lld_put(MACDriver *macp, phyaddr_t addr, phyreg_t value) { - -} - -/** @} */ diff --git a/os/hal/templates/mii_lld.h b/os/hal/templates/mii_lld.h deleted file mode 100644 index 974588363..000000000 --- a/os/hal/templates/mii_lld.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - ChibiOS/RT - Copyright (C) 2006-2007 Giovanni Di Sirio. - - This file is part of ChibiOS/RT. - - ChibiOS/RT is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - ChibiOS/RT is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . -*/ - -/** - * @file templates/mii_lld.h - * @brief MII Driver subsystem low level driver header template - * @addtogroup MII_LLD - * @{ - */ - -#ifndef _MII_LLD_H_ -#define _MII_LLD_H_ - -/*===========================================================================*/ -/* Driver pre-compile time settings. */ -/*===========================================================================*/ - -/*===========================================================================*/ -/* Driver data structures and types. */ -/*===========================================================================*/ - -/** - * @brief Type of a PHY register value. - */ -typedef uint16_t phyreg_t; - -/** - * @brief Type of a PHY register address. - */ -typedef uint8_t phyaddr_t; - -/*===========================================================================*/ -/* External declarations. */ -/*===========================================================================*/ - -#ifdef __cplusplus -extern "C" { -#endif - void mii_lld_init(void); - void mii_lld_reset(MACDriver *macp); - phyreg_t mii_lld_get(MACDriver *macp, phyaddr_t addr); - void mii_lld_put(MACDriver *macp, phyaddr_t addr, phyreg_t value); -#ifdef __cplusplus -} -#endif - -#endif /* _MII_LLD_H_ */ - -/** @} */ diff --git a/readme.txt b/readme.txt index 9c0e9301b..86da352ef 100644 --- a/readme.txt +++ b/readme.txt @@ -4,6 +4,10 @@ *** 1.3.5 *** - FIX: Fixed some problems in the MMC_SPI driver (bugs 2901084 and 2901172). +- NEW: Unified the initialization of the various drivers from a single HAL + driver. The single drivers can be enabled or disabled from a HAL + configuration file halconf.h. +- NEW: New CAN driver model. - NEW: STM32 ADC driver implementation with DMA support. - NEW: Added AT91SAM7S support and support for all the memory sizes in both AT91SAM7S and AT91SAM7X families.