/* ChibiOS/RT - Copyright (C) 2006,2007,2008,2009,2010 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 . */ /** * @defgroup AT91SAM7 AT91SAM7 Drivers * @brief AT91SAM7 specific support. * @details The AT91SAM7 support includes: * - Buffered, interrupt driven, serial driver. * - 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 platforms */ /** * @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. * @details This module supports the AT91SAM7 PIO controller. The controller * supports the following features (see @ref PAL): * - 32 bits wide ports. * - Atomic set/reset functions. * - Output latched regardless of the pad setting. * - Direct read of input pads regardless of the pad setting. * . *

Supported Setup Modes

* - @p PAL_MODE_RESET. * - @p PAL_MODE_UNCONNECTED. * - @p PAL_MODE_INPUT. * - @p PAL_MODE_INPUT_ANALOG (same as @p PAL_MODE_INPUT). * - @p PAL_MODE_INPUT_PULLUP. * - @p PAL_MODE_OUTPUT_PUSHPULL. * - @p PAL_MODE_OUTPUT_OPENDRAIN. * . * Any attempt to setup an invalid mode is ignored. * *

Suboptimal Behavior

* Some PIO features are less than optimal: * - Pad/port toggling operations are not atomic. * - Pad/group mode setup is not atomic. * . * @ingroup AT91SAM7 */ /** * @defgroup AT91SAM7_SERIAL AT91SAM7 USART Support * @brief USART peripherals support. * @details The serial driver supports the AT91SAM7 USART peripherals. * * @ingroup AT91SAM7 */ /** * @defgroup AT91SAM7_SPI AT91SAM7 SPI Support * @brief SPI peripheral support. * @details The SPI driver supports the AT91SAM7 SPI, the driver works in * polling mode. * * @ingroup AT91SAM7 */ /** * @defgroup AT91SAM7_MAC AT91SAM7 EMAC Support * @brief EMAC peripheral support. * @details the @ref MAC supports the AT91SAM7 EMAC peripheral. * * @ingroup AT91SAM7 */ /** * @defgroup AT91SAM7_MII AT91SAM7 MII Support * @brief EMAC+PHY peripheral support. * @details This driver supports the AT91SAM7 EMAC peripheral communicating * with an external PHY transceiver. The driver currently supports * the Micrel KS8721 PHY and the Davicom DV9161 modules. * * @ingroup AT91SAM7 */