Mercurial > ecos-v3_0-branch
view packages/hal/arm/lpc2xxx/var/current/include/lpc2xxx_misc.h @ 2508:db4d5a0ddeb4
* cdl/hal_arm_lpc2xxx.cdl: Added option
CYGHWR_HAL_ARM_LPC2XXX_VARIANT_VERSION to identify the variant version
because some on-chip peripherals changed slightly in newer veriants.
CYGNUM_HAL_ARM_LPC2XXX_PCLK is the pre calculated peripheral clock
value. CYGNUM_HAL_ARM_LPC2XXX_XCLK is the pre calculated XCLK
value.
* include/lpc2xxx_misc.h: Added HAL_LPC2XXX_INIT_CAN() macro fo
initialisation of CAN channels (required by CAN driver). Added
CYGNUM_HAL_ARM_LPC2XXX_CAN_CLK to define the CAN peripheral clock
for CAN driver.
* include/lpc2xxx_misc.c: Removed functions hal_lpc_get_cclk()
hal_lpc_get_pclk() and hal_lpc_get_xclk() because they are not
required and all clock values (CCLK, PCLK and XCLK) are
configuration values and pre calculated in CDL file.
Added hal_lpc_can_init() function for initialisation of CAN
channels.
* cdl/hal_arm_lpc2xxx.cdl: add suffix option to denote
different versions of LPC2XXX
* : dos2unix everything....
| author | asl |
|---|---|
| date | Tue, 22 Jul 2008 18:52:16 +0000 |
| parents | 2d74b1f822f7 |
| children | 74dbf4c3f2e1 |
line wrap: on
line source
#ifndef CYGONCE_HAL_ARM_LPC2XXX_VAR_LPC2XXX_MISC_H #define CYGONCE_HAL_ARM_LPC2XXX_VAR_LPC2XXX_MISC_H //============================================================================= // // lpc2xxx_misc.h // // HAL misc variant support code for Philips LPC2xxx header file // //============================================================================= //####ECOSGPLCOPYRIGHTBEGIN#### // ------------------------------------------- // This file is part of eCos, the Embedded Configurable Operating System. // Copyright (C) 2006 eCosCentric Limited // // eCos 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 2 or (at your option) any later version. // // eCos 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 eCos; if not, write to the Free Software Foundation, Inc., // 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. // // As a special exception, if other files instantiate templates or use macros // or inline functions from this file, or you compile this file and link it // with other works to produce a work based on this file, this file does not // by itself cause the resulting work to be covered by the GNU General Public // License. However the source code for this file must still be made available // in accordance with section (3) of the GNU General Public License. // // This exception does not invalidate any other reasons why a work based on // this file might be covered by the GNU General Public License. // ------------------------------------------- //####ECOSGPLCOPYRIGHTEND#### //============================================================================= //#####DESCRIPTIONBEGIN#### // // Author(s): andyj // Contributors: jani // Date: 2006-02-04 // Purpose: LPC2XXX specific miscellaneous support header file // Description: // Usage: #include <cyg/hal/lpc2xxx_misc.h> // //####DESCRIPTIONEND#### // //============================================================================= //----------------------------------------------------------------------------- // Macros to derive the baudrate divider values for the internal UARTs //----------------------------------------------------------------------------- #define CYG_HAL_ARM_LPC2XXX_BAUD_GENERATOR(baud) \ (CYGNUM_HAL_ARM_LPC2XXX_PCLK/((baud)*16)) //----------------------------------------------------------------------------- // LPX2xxx varaint specific initialisatio of CAN channels // This function configures the pin functions for CAN use //----------------------------------------------------------------------------- #ifdef CYGPKG_DEVS_CAN_LPC2XXX externC void hal_lpc_can_init(cyg_uint8 can_chan_no); #define HAL_LPC2XXX_INIT_CAN(_can_chan_no_) hal_lpc_can_init(_can_chan_no_) #define CYGNUM_HAL_ARM_LPC2XXX_CAN_CLK CYGNUM_HAL_ARM_LPC2XXX_PCLK #endif // CYGPKG_DEVS_CAN_LPC2XXX //----------------------------------------------------------------------------- // LPX2xxx watchdog support //----------------------------------------------------------------------------- externC void hal_lpc_watchdog_reset(void); #define HAL_PLATFORM_RESET() hal_lpc_watchdog_reset() #define HAL_PLATFORM_RESET_ENTRY 0 //----------------------------------------------------------------------------- // end of lpc2xxx_misc.h #endif // CYGONCE_HAL_ARM_LPC2XXX_VAR_LPC2XXX_MISC_H
