bsps/zynq: Add BSP_ARM_A9MPCORE_UARTCLK to set the UART clock rate.

This value can be found the xparameters.h file generated by the
Xilinx tools.
This commit is contained in:
Chris Johns
2014-05-22 16:15:34 +10:00
parent eae0863a1c
commit 18bd35bcb3
2 changed files with 8 additions and 1 deletions

View File

@@ -29,6 +29,11 @@ RTEMS_BSPOPTS_SET([BSP_ARM_A9MPCORE_PERIPHCLK],[xilinx_zynq_zedboard*],[66666666
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_UARTCLK],[xilinx_zynq_zc702*],[50000000UL])
RTEMS_BSPOPTS_SET([BSP_ARM_A9MPCORE_UARTCLK],[xilinx_zynq_zedboard*],[50000000UL])
RTEMS_BSPOPTS_SET([BSP_ARM_A9MPCORE_UARTCLK],[*],[50000000UL])
RTEMS_BSPOPTS_HELP([BSP_ARM_A9MPCORE_UARTCLK],[ARM Cortex-A9 MPCore UART 0 clock frequency in Hz])
USE_FAST_IDLE=0
AS_IF([test "x${RTEMS_BSP}" == xxilinx_zynq_a9_qemu], [USE_FAST_IDLE=1])

View File

@@ -15,6 +15,8 @@
#include <bsp/zynq-uart.h>
#include <bsp/zynq-uart-regs.h>
#include <bspopts.h>
#include <libchip/sersupp.h>
static volatile zynq_uart *zynq_uart_get_regs(int minor)
@@ -32,7 +34,7 @@ uint32_t zynq_uart_input_clock(void) __attribute__ ((weak));
uint32_t zynq_uart_input_clock(void)
{
return 100000000UL;
return BSP_ARM_A9MPCORE_UARTCLK;
}
static int zynq_cal_baud_rate(uint32_t baudrate,