source: rtems/c/src/lib/libbsp/riscv/riscv/configure.ac @ a7f5e42c

5
Last change on this file since a7f5e42c was a7f5e42c, checked in by Pragnesh Patel <pragnesh.patel@…>, on 10/22/19 at 10:20:05

riscv: add freedom E310 Arty A7 bsp

Added support for Sifive Freedom FE310 soc on Arty A7 FPGA board.
Update #3785.

Signed-off-by: Pragnesh Patel <pragnesh.patel@…>

  • Property mode set to 100644
File size: 3.1 KB
Line 
1##
2#
3# @file
4#
5# @brief Configure script of LibBSP for riscv BSP.
6#
7
8AC_PREREQ([2.69])
9AC_INIT([rtems-c-src-lib-libbsp-riscv],[_RTEMS_VERSION],[http://www.rtems.org/bugzilla])
10RTEMS_TOP(../../../../../..)
11RTEMS_SOURCE_TOP
12RTEMS_BUILD_TOP
13
14RTEMS_CANONICAL_TARGET_CPU
15AM_INIT_AUTOMAKE([no-define nostdinc foreign 1.12.2])
16RTEMS_BSP_CONFIGURE
17
18RTEMS_BSPOPTS_SET([BSP_START_COPY_FDT_FROM_U_BOOT],[*],[1])
19RTEMS_BSPOPTS_HELP([BSP_START_COPY_FDT_FROM_U_BOOT],[copy the U-Boot provided FDT to an internal storage])
20
21RTEMS_BSPOPTS_SET([BSP_FDT_BLOB_SIZE_MAX],[*],[65536])
22RTEMS_BSPOPTS_HELP([BSP_FDT_BLOB_SIZE_MAX],[maximum size of the FDT blob in bytes])
23
24RTEMS_BSPOPTS_SET([BSP_FDT_BLOB_READ_ONLY],[*],[1])
25RTEMS_BSPOPTS_HELP([BSP_FDT_BLOB_READ_ONLY],[place the FDT blob into the read-only data area])
26
27RTEMS_BSPOPTS_SET([BSP_FDT_BLOB_COPY_TO_READ_ONLY_LOAD_AREA],[*],[1])
28RTEMS_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()])
29
30RTEMS_BSPOPTS_SET([BSP_CONSOLE_BAUD],[*],[115200])
31RTEMS_BSPOPTS_HELP([BSP_CONSOLE_BAUD],[default baud for console driver devices (default 115200)])
32
33RTEMS_BSPOPTS_SET([RISCV_MAXIMUM_EXTERNAL_INTERRUPTS],[*],[64])
34RTEMS_BSPOPTS_HELP([RISCV_MAXIMUM_EXTERNAL_INTERRUPTS],[maximum number of external interrupts supported by the BSP (default 64)])
35
36RTEMS_BSPOPTS_SET([RISCV_ENABLE_HTIF_SUPPORT],[*],[])
37RTEMS_BSPOPTS_HELP([RISCV_ENABLE_HTIF_SUPPORT],[enables the HTIF support if defined to a non-zero value, otherwise it is disabled (disabled by default)])
38
39RTEMS_BSPOPTS_SET([RISCV_CONSOLE_MAX_NS16550_DEVICES],[frdme310arty*],[])
40RTEMS_BSPOPTS_SET([RISCV_CONSOLE_MAX_NS16550_DEVICES],[*],[2])
41RTEMS_BSPOPTS_HELP([RISCV_CONSOLE_MAX_NS16550_DEVICES],[maximum number of NS16550 devices supported by the console driver (2 by default)])
42
43RTEMS_BSPOPTS_SET([RISCV_ENABLE_FRDME310ARTY_SUPPORT],[frdme310arty*],[1])
44RTEMS_BSPOPTS_SET([RISCV_ENABLE_FRDME310ARTY_SUPPORT],[*],[])
45RTEMS_BSPOPTS_HELP([RISCV_ENABLE_FRDME310ARTY_SUPPORT],[enables support sifive Freedom E310 Arty board if defined to a non-zero value,otherwise it is disabled (disabled by default)])
46
47RTEMS_BSP_CLEANUP_OPTIONS
48
49case "${RTEMS_BSP}" in
50  rv64*medany)
51    RISCV_RAM_REGION_BEGIN_DEFAULT=0x80000000
52    ;;
53  rv64*)
54    RISCV_RAM_REGION_BEGIN_DEFAULT=0x70000000
55    ;;
56  *)
57    RISCV_RAM_REGION_BEGIN_DEFAULT=0x80000000
58    ;;
59esac
60
61case "${RTEMS_BSP}" in
62  frdm*310arty)
63    RISCV_RAM_REGION_SIZE_DEFAULT=0x10000000
64    ;;
65  *)
66    RISCV_RAM_REGION_SIZE_DEFAULT=0x04000000
67    ;;
68esac
69
70AC_DEFUN([RISCV_LINKCMD],[
71AC_ARG_VAR([$1],[$2])dnl
72[$1]=[$]{[$1]:-[$3]}
73])
74
75RISCV_LINKCMD([RISCV_RAM_REGION_BEGIN],[begin of the RAM region for linker command file (default is 0x70000000 for 64-bit with -mcmodel=medlow and 0x80000000 for all other)],[${RISCV_RAM_REGION_BEGIN_DEFAULT}])
76RISCV_LINKCMD([RISCV_RAM_REGION_SIZE],[size of the RAM region for linker command file (default is 256 MiB for frdme310arty and 64 MiB for all other)],[${RISCV_RAM_REGION_SIZE_DEFAULT}])
77
78AC_CONFIG_FILES([
79Makefile
80linkcmds:../../../../../../bsps/riscv/riscv/start/linkcmds.in
81])
82AC_OUTPUT
Note: See TracBrowser for help on using the repository browser.