Mercurial > ecos-v3_0-branch
changeset 1849:96dbe76109eb
Make PLL multiplier configurable for the LPC platforms
| author | jani |
|---|---|
| date | Fri, 19 Nov 2004 13:32:34 +0000 |
| parents | 09b23f8491d4 |
| children | ab3832848094 |
| files | packages/hal/arm/lpc2xxx/mcb2100/current/ChangeLog packages/hal/arm/lpc2xxx/mcb2100/current/cdl/hal_arm_lpc2xxx_mcb2100.cdl packages/hal/arm/lpc2xxx/mcb2100/current/include/hal_platform_setup.h packages/hal/arm/lpc2xxx/p2106/current/ChangeLog packages/hal/arm/lpc2xxx/p2106/current/cdl/hal_arm_lpc2xxx_p2106.cdl packages/hal/arm/lpc2xxx/p2106/current/include/hal_platform_setup.h |
| diffstat | 6 files changed, 46 insertions(+), 12 deletions(-) [+] |
line wrap: on
line diff
--- a/packages/hal/arm/lpc2xxx/mcb2100/current/ChangeLog +++ b/packages/hal/arm/lpc2xxx/mcb2100/current/ChangeLog @@ -1,3 +1,9 @@ +2004-11-19 Jani Monoses <jani@iv.ro> + + * cdl/hal_arm_lpc2xxx_mcb2100.cdl: + * include/hal_platform_setup.h: + Make PLL multiplier value configurable. + 2004-11-19 Jani Monoses <jani@iv.ro> * include/hal_platform_setup.h:
--- a/packages/hal/arm/lpc2xxx/mcb2100/current/cdl/hal_arm_lpc2xxx_mcb2100.cdl +++ b/packages/hal/arm/lpc2xxx/mcb2100/current/cdl/hal_arm_lpc2xxx_mcb2100.cdl @@ -128,12 +128,23 @@ cdl_package CYGPKG_HAL_ARM_LPC2XXX_MCB21 } # Real-time clock/counter specifics + cdl_option CYGNUM_HAL_ARM_LPC2XXX_XTAL_FREQ { + display "CPU clock speed" + flavor data + default_value {12000000} + } + + cdl_option CYGNUM_HAL_ARM_LPC2XXX_PLL_MUL { + display "CPU clock speed" + flavor data + default_value {5} + } + cdl_option CYGNUM_HAL_ARM_LPC2XXX_CLOCK_SPEED { display "CPU clock speed" flavor data - default_value {60000000} + calculated { CYGNUM_HAL_ARM_LPC2XXX_PLL_MUL * CYGNUM_HAL_ARM_LPC2XXX_XTAL_FREQ } } - cdl_component CYGBLD_GLOBAL_OPTIONS { display "Global build options"
--- a/packages/hal/arm/lpc2xxx/mcb2100/current/include/hal_platform_setup.h +++ b/packages/hal/arm/lpc2xxx/mcb2100/current/include/hal_platform_setup.h @@ -53,6 +53,7 @@ // //===========================================================================*/ +#include <pkgconf/system.h> #include <cyg/hal/var_io.h> //===========================================================================*/ @@ -80,9 +81,8 @@ mov r1,#1 // enable PLL str r1,[r0,#CYGARC_HAL_LPC2XXX_REG_PLLCON] - mov r1,#0x24 - // set M and P:core runs at 60MHz (5 times 12MHz xtal frequency) - str r1,[r0,#CYGARC_HAL_LPC2XXX_REG_PLLCFG] + mov r1,#(0x20 | (CYGNUM_HAL_ARM_LPC2XXX_PLL_MUL - 1)) + str r1,[r0,#CYGARC_HAL_LPC2XXX_REG_PLLCFG] str r2,[r0,#CYGARC_HAL_LPC2XXX_REG_PLLFEED] // update PLL registers str r3,[r0,#CYGARC_HAL_LPC2XXX_REG_PLLFEED]
--- a/packages/hal/arm/lpc2xxx/p2106/current/ChangeLog +++ b/packages/hal/arm/lpc2xxx/p2106/current/ChangeLog @@ -1,3 +1,9 @@ +2004-11-19 Jani Monoses <jani@iv.ro> + + * cdl/hal_arm_lpc2xxx_p2106.cdl: + * include/hal_platform_setup.h: + Make PLL multiplier value configurable. + 2004-11-15 Jani Monoses <jani@iv.ro> * include/hal_platform_setup.h:
--- a/packages/hal/arm/lpc2xxx/p2106/current/cdl/hal_arm_lpc2xxx_p2106.cdl +++ b/packages/hal/arm/lpc2xxx/p2106/current/cdl/hal_arm_lpc2xxx_p2106.cdl @@ -123,15 +123,27 @@ cdl_package CYGPKG_HAL_ARM_LPC2XXX_P2106 description " This option controls the baud rate used for the GDB connection." } - + # Real-time clock/counter specifics + cdl_option CYGNUM_HAL_ARM_LPC2XXX_XTAL_FREQ { + display "CPU clock speed" + flavor data + default_value {14745600} + } + + cdl_option CYGNUM_HAL_ARM_LPC2XXX_PLL_MUL { + display "CPU clock speed" + flavor data + default_value {4} + } + cdl_option CYGNUM_HAL_ARM_LPC2XXX_CLOCK_SPEED { display "CPU clock speed" flavor data - default_value {58982400} + calculated { CYGNUM_HAL_ARM_LPC2XXX_PLL_MUL * CYGNUM_HAL_ARM_LPC2XXX_XTAL_FREQ } } - - cdl_component CYGBLD_GLOBAL_OPTIONS { + + cdl_component CYGBLD_GLOBAL_OPTIONS { display "Global build options" flavor none parent CYGPKG_NONE
--- a/packages/hal/arm/lpc2xxx/p2106/current/include/hal_platform_setup.h +++ b/packages/hal/arm/lpc2xxx/p2106/current/include/hal_platform_setup.h @@ -53,6 +53,7 @@ // //===========================================================================*/ +#include <pkgconf/system.h> #include <cyg/hal/var_io.h> //===========================================================================*/ @@ -80,9 +81,7 @@ mov r1,#1 // enable PLL str r1,[r0,#CYGARC_HAL_LPC2XXX_REG_PLLCON] - mov r1,#0x23 - // set M and P:core runs at 58.9824MHz (4 times 14.7456MHz - // xtal frequency) + mov r1,#(0x20 | (CYGNUM_HAL_ARM_LPC2XXX_PLL_MUL - 1)) str r1,[r0,#CYGARC_HAL_LPC2XXX_REG_PLLCFG] str r2,[r0,#CYGARC_HAL_LPC2XXX_REG_PLLFEED] // update PLL registers
