diff options
-rw-r--r-- | bsps/arm/altera-cyclone-v/include/bsp.h | 6 | ||||
-rw-r--r-- | bsps/arm/altera-cyclone-v/start/bspstart.c | 7 | ||||
-rw-r--r-- | c/src/lib/libbsp/arm/altera-cyclone-v/configure.ac | 5 |
3 files changed, 15 insertions, 3 deletions
diff --git a/bsps/arm/altera-cyclone-v/include/bsp.h b/bsps/arm/altera-cyclone-v/include/bsp.h index 06e68bbfe1..523f667142 100644 --- a/bsps/arm/altera-cyclone-v/include/bsp.h +++ b/bsps/arm/altera-cyclone-v/include/bsp.h @@ -43,6 +43,12 @@ extern "C" { #define BSP_ARM_A9MPCORE_GT_BASE ( BSP_ARM_A9MPCORE_SCU_BASE + 0x00000200 ) +#ifndef BSP_ARM_A9MPCORE_PERIPHCLK +extern uint32_t altera_cyclone_v_a9mpcore_periphclk; +#define BSP_ARM_A9MPCORE_PERIPHCLK altera_cyclone_v_a9mpcore_periphclk +#define ALTERA_CYCLONE_V_NEED_A9MPCORE_PERIPHCLK +#endif + #define BSP_ARM_GIC_DIST_BASE ( BSP_ARM_A9MPCORE_SCU_BASE + 0x00001000 ) #define BSP_ARM_L2C_310_BASE 0xfffef000 diff --git a/bsps/arm/altera-cyclone-v/start/bspstart.c b/bsps/arm/altera-cyclone-v/start/bspstart.c index ac84f54147..55a069f9ad 100644 --- a/bsps/arm/altera-cyclone-v/start/bspstart.c +++ b/bsps/arm/altera-cyclone-v/start/bspstart.c @@ -93,11 +93,18 @@ static void update_clocks(void) } #endif +#ifdef ALTERA_CYCLONE_V_NEED_A9MPCORE_PERIPHCLK +uint32_t altera_cyclone_v_a9mpcore_periphclk; +#endif + void bsp_start(void) { #ifdef BSP_FDT_IS_SUPPORTED update_clocks(); #endif +#ifdef ALTERA_CYCLONE_V_NEED_A9MPCORE_PERIPHCLK + alt_clk_freq_get(ALT_CLK_MPU_PERIPH, &altera_cyclone_v_a9mpcore_periphclk); +#endif bsp_interrupt_initialize(); rtems_cache_coherent_add_area( bsp_section_nocacheheap_begin, diff --git a/c/src/lib/libbsp/arm/altera-cyclone-v/configure.ac b/c/src/lib/libbsp/arm/altera-cyclone-v/configure.ac index 0fa7f66af5..ad08d92ebc 100644 --- a/c/src/lib/libbsp/arm/altera-cyclone-v/configure.ac +++ b/c/src/lib/libbsp/arm/altera-cyclone-v/configure.ac @@ -42,9 +42,8 @@ RTEMS_BSPOPTS_HELP([BSP_FDT_BLOB_READ_ONLY],[place the FDT blob into the read-on RTEMS_BSPOPTS_SET([BSP_FDT_BLOB_COPY_TO_READ_ONLY_LOAD_AREA],[*],[1]) RTEMS_BSPOPTS_HELP([BSP_FDT_BLOB_COPY_TO_READ_ONLY_LOAD_AREA],[copy the FDT blob into the read-only load area via bsp_fdt_copy()]) -RTEMS_BSPOPTS_SET([BSP_ARM_A9MPCORE_PERIPHCLK],[altcycv_devkit*],[200000000U]) -RTEMS_BSPOPTS_SET([BSP_ARM_A9MPCORE_PERIPHCLK],[*],[100000000U]) -RTEMS_BSPOPTS_HELP([BSP_ARM_A9MPCORE_PERIPHCLK],[ARM Cortex-A9 MPCore PERIPHCLK clock frequency in Hz]) +RTEMS_BSPOPTS_SET([BSP_ARM_A9MPCORE_PERIPHCLK],[*],[]) +RTEMS_BSPOPTS_HELP([BSP_ARM_A9MPCORE_PERIPHCLK],[define to set ARM Cortex-A9 MPCore PERIPHCLK clock frequency in Hz, otherwise alt_clk_freq_get() is used]) RTEMS_BSPOPTS_SET([CLOCK_DRIVER_USE_FAST_IDLE],[*qemu],[1]) RTEMS_BSPOPTS_HELP([CLOCK_DRIVER_USE_FAST_IDLE], |