1 # ====================================================================
3 # lpc2xxx_wallclock.cdl
5 # eCos configuration data for LPC2xxx internal RTC
7 # ====================================================================
8 #####ECOSGPLCOPYRIGHTBEGIN####
9 ## -------------------------------------------
10 ## This file is part of eCos, the Embedded Configurable Operating System.
11 ## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
12 ## Copyright (C) 2003 Gary Thomas
13 ## Copyright (C) 2004 eCosCentric Ltd
15 ## eCos is free software; you can redistribute it and/or modify it under
16 ## the terms of the GNU General Public License as published by the Free
17 ## Software Foundation; either version 2 or (at your option) any later version.
19 ## eCos is distributed in the hope that it will be useful, but WITHOUT ANY
20 ## WARRANTY; without even the implied warranty of MERCHANTABILITY or
21 ## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
24 ## You should have received a copy of the GNU General Public License along
25 ## with eCos; if not, write to the Free Software Foundation, Inc.,
26 ## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
28 ## As a special exception, if other files instantiate templates or use macros
29 ## or inline functions from this file, or you compile this file and link it
30 ## with other works to produce a work based on this file, this file does not
31 ## by itself cause the resulting work to be covered by the GNU General Public
32 ## License. However the source code for this file must still be made available
33 ## in accordance with section (3) of the GNU General Public License.
35 ## This exception does not invalidate any other reasons why a work based on
36 ## this file might be covered by the GNU General Public License.
37 ## -------------------------------------------
38 #####ECOSGPLCOPYRIGHTEND####
39 # ====================================================================
40 ######DESCRIPTIONBEGIN####
42 # Author(s): Hans Rosenfeld <rosenfeld@grumpf.hope-2000.org>
46 #####DESCRIPTIONEND####
48 # ====================================================================
50 cdl_package CYGPKG_DEVICES_WALLCLOCK_ARM_LPC2XXX {
51 display "LPC2xxx Real-time clock"
52 description "RTC driver for the LPC2xxx controller"
54 parent CYGPKG_IO_WALLCLOCK
55 active_if CYGPKG_IO_WALLCLOCK
56 active_if CYGPKG_HAL_ARM_LPC2XXX
58 requires { CYGHWR_HAL_ARM_LPC2XXX_IDLE_PWRSAVE == 0 }
59 compile lpc2xxx_wallclock.cxx
61 implements CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS
62 active_if CYGIMP_WALLCLOCK_HARDWARE
63 implements CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED
65 cdl_option CYGIMP_WALLCLOCK_HARDWARE {
66 parent CYGPKG_IO_WALLCLOCK_IMPLEMENTATION
67 display "Hardware wallclock"
69 implements CYGINT_WALLCLOCK_IMPLEMENTATIONS
72 cdl_option CYGNUM_HAL_ARM_LPC2XXX_RTCDEV_PREINT {
73 display "RTC prescaler integer portion"
75 calculated { ((CYGNUM_HAL_ARM_LPC2XXX_CLOCK_SPEED /
76 CYGNUM_HAL_ARM_LPC2XXX_VPBDIV) / 32768) - 1 }
79 cdl_option CYGNUM_HAL_ARM_LPC2XXX_RTCDEV_PREFRAC {
80 display "RTC prescaler fractional portion"
82 calculated { ((CYGNUM_HAL_ARM_LPC2XXX_CLOCK_SPEED /
83 CYGNUM_HAL_ARM_LPC2XXX_VPBDIV) -
84 ((CYGNUM_HAL_ARM_LPC2XXX_RTCDEV_PREINT + 1) * 32768)) }