source: rtems/c/src/lib/libbsp/i386/pc386/configure.ac @ dcbc0a89

4.9
Last change on this file since dcbc0a89 was dcbc0a89, checked in by Joel Sherrill <joel.sherrill@…>, on 12/03/08 at 17:28:30

2008-12-03 Joel Sherrill <joel.sherrill@…>

Michael South <msouth@…>

PR 1344/bsps

  • configure.ac, clock/ckinit.c, timer/timer.c: Add use of TSC for nanoseconds granularity. i8254 is very slow on some systems. TSC use is auto-detected by default.
  • Property mode set to 100644
File size: 3.5 KB
Line 
1## Process this file with autoconf to produce a configure script.
2##
3## $Id$
4
5AC_PREREQ(2.60)
6AC_INIT([rtems-c-src-lib-libbsp-i386-pc386],[_RTEMS_VERSION],[http://www.rtems.org/bugzilla])
7AC_CONFIG_SRCDIR([bsp_specs])
8RTEMS_TOP(../../../../../..)
9
10RTEMS_CANONICAL_TARGET_CPU
11AM_INIT_AUTOMAKE([no-define nostdinc foreign 1.10])
12RTEMS_BSP_CONFIGURE
13
14RTEMS_PROG_CC_FOR_TARGET([-ansi -fasm])
15RTEMS_CANONICALIZE_TOOLS
16RTEMS_CHECK_TOOL(OBJCOPY,objcopy,:)
17RTEMS_PROG_CCAS
18
19RTEMS_CHECK_NETWORKING
20
21RTEMS_BSPOPTS_SET([USE_COM1_AS_CONSOLE],[*],[0])
22RTEMS_BSPOPTS_HELP([USE_COM1_AS_CONSOLE],
23[Determines, whether the console will be associated with the standard
24 VGA display or with the COM1 serial port.  Currently only the VGA
25 display and COM1 support printk.])
26
27RTEMS_BSPOPTS_SET([IDE_USE_PRIMARY_INTERFACE],[*],[1])
28RTEMS_BSPOPTS_HELP([IDE_USE_PRIMARY_INTERFACE],
29[Determines, whether RTEMS will try to use the primary IDE interface.
30 Disable it, if:
31 - you have no primary IDE interface
32 - or you have no disk attached to this interface 
33 - or you do not want to access disks attached to this interface])
34
35RTEMS_BSPOPTS_SET([IDE_USE_SECONDARY_INTERFACE],[*],[0])
36RTEMS_BSPOPTS_HELP([IDE_USE_SECONDARY_INTERFACE],
37[Determines, whether RTEMS will try to use the secondary IDE interface.
38 Enable it, if:
39 - you have a secondary IDE interface
40 - and you have at least one disk attached to this interface 
41 - and you do want to access disks attached to this interface])
42
43RTEMS_BSPOPTS_SET([BSP_PRESS_KEY_FOR_RESET],[*],[1])
44RTEMS_BSPOPTS_HELP([BSP_PRESS_KEY_FOR_RESET],
45[Determines, whether this BSP will wait for a key to be pressed
46 before rebooting the PC.  This is useful for unattended PC deployments
47])
48
49RTEMS_BSPOPTS_SET([CLOCK_DRIVER_USE_TSC],[*],[0])
50RTEMS_BSPOPTS_HELP([CLOCK_DRIVER_USE_TSC],
51[If enabled, the clock driver will use the TSC register available
52 with Pentium-class CPUs to report close to nanosecond-accuracy
53 clock times.
54 Enable it, if:
55 - you have nanosecond timing enabled (you do NOT have
56   USE_TICKS_FOR_CPU_USAGE_STATISTICS enabled)
57 - you do NOT have CLOCK_DRIVER_USE_8254 enabled (use one, the other,
58   or neither)
59 - you have a Pentium which supports TSC (all Intels, and probably
60   all or most clones)
61 - you do not have a variable-speed CPU clock. Note that some
62   motherboard BIOS will automatically vary clock speed for thermal
63   control. Note also, however, that really new Pentium-class chips
64   from Intel and AMD will maintain a constant-rate TSC regardless.
65])
66
67RTEMS_BSPOPTS_SET([CLOCK_DRIVER_USE_8254],[*],[0])
68RTEMS_BSPOPTS_HELP([CLOCK_DRIVER_USE_8254],
69[If enabled, the clock driver will use the good old 8254 chip
70 to report microsecond-accuracy clock times.
71 Enable it, if:
72 - you have nanosecond timing enabled (you do NOT have
73   USE_TICKS_FOR_CPU_USAGE_STATISTICS enabled)
74 - you do NOT have CLOCK_DRIVER_USE_TSC enabled (use one, the other,
75   or neither)
76 - you do not mind adding roughly 5 microseconds to each context switch.
77])
78
79if test X${CLOCK_DRIVER_USE_TSC} = X1 -a X${CLOCK_DRIVER_USE_8254} = X1 ; then
80  AC_MSG_ERROR([pc386 both TSC and 8254 specified for clock driver])
81fi
82
83#define CLOCK_DRIVER_USE_8254 $CLOCK_DRIVER_USE_8254
84## if this is an i386, does gas have good code16 support?
85RTEMS_I386_GAS_CODE16
86AM_CONDITIONAL(RTEMS_GAS_CODE16,[test "$RTEMS_GAS_CODE16" = "yes"])
87
88AM_CONDITIONAL(HAS_NETWORKING,[test "$HAS_NETWORKING" = "yes"])
89
90AC_SUBST([RTEMS_ROOT],[${rtems_updir}'$(top_builddir)'])
91
92RTEMS_CONFIG_BUILD_SUBDIRS(tools)
93
94AC_SUBST(RTEMS_BSP)
95
96# Explicitly list all Makefiles here
97AC_CONFIG_FILES([Makefile])
98AC_OUTPUT
Note: See TracBrowser for help on using the repository browser.