212 lines
5.7 KiB
Plaintext
212 lines
5.7 KiB
Plaintext
#
|
|
# For a description of the syntax of this configuration file,
|
|
# see the file kconfig-language.txt in the NuttX tools repository.
|
|
#
|
|
|
|
menu "Timer Driver Support"
|
|
|
|
menuconfig TIMER
|
|
bool "Timer Support"
|
|
default n
|
|
---help---
|
|
This selection enables building of the "upper-half" timer
|
|
driver. See include/nuttx/timers/timer.h for further timer driver
|
|
information.
|
|
|
|
menuconfig RTC
|
|
bool "RTC Driver Support"
|
|
default n
|
|
---help---
|
|
This selection enables configuration of a real time clock (RTCdriver.
|
|
See include/nuttx/timers/rtc.h for further RTC driver information.
|
|
Most RTC drivers are MCU specific and may require other specific
|
|
settings.
|
|
|
|
if RTC
|
|
|
|
config RTC_DATETIME
|
|
bool "Date/Time RTC Support"
|
|
default n
|
|
---help---
|
|
There are two general types of RTC: (1) A simple battery backed
|
|
counter that keeps the time when power is down, and (2) a full
|
|
date / time RTC the provides the date and time information, often in
|
|
BCD format. If RTC_DATETIME is selected, it specifies this second kind
|
|
of RTC. In this case, the RTC is used to "seed" the normal NuttX timer
|
|
and the NuttX system timer provides for higher resolution time.
|
|
|
|
if !RTC_DATETIME
|
|
|
|
config RTC_HIRES
|
|
bool "Hi-Res RTC Support"
|
|
default n
|
|
---help---
|
|
If RTC_DATETIME not selected, then the simple, battery backed counter
|
|
is used. There are two different implementations of such simple
|
|
counters based on the time resolution of the counter: The typical RTC
|
|
keeps time to resolution of 1 second, usually supporting a 32-bit
|
|
time_t value. In this case, the RTC is used to "seed" the normal NuttX
|
|
timer and the NuttX timer provides for higherresoution time.
|
|
|
|
If RTC_HIRES is enabled in the NuttX configuration, then the RTC
|
|
provides higher resolution time and completely replaces the system
|
|
timer for purpose of date and time.
|
|
|
|
config RTC_FREQUENCY
|
|
int "Hi-Res RTC frequency"
|
|
default 1
|
|
depends on RTC_HIRES
|
|
---help---
|
|
If RTC_HIRES is defined, then the frequency of the high resolution RTC
|
|
must be provided. If RTC_HIRES is not defined, RTC_FREQUENCY is
|
|
assumed to be one Hz.
|
|
|
|
endif # !RTC_DATETIME
|
|
|
|
config RTC_ALARM
|
|
bool "RTC Alarm Support"
|
|
default n
|
|
---help---
|
|
Enable if the RTC hardware supports setting of an alarm. A callback
|
|
function will be executed when the alarm goes off.
|
|
|
|
config RTC_DRIVER
|
|
bool "RTC Driver Support"
|
|
default n
|
|
---help---
|
|
This selection enables building of the "upper-half" RTC
|
|
driver. See include/nuttx/timers/rtc.h for further RTC driver
|
|
information.
|
|
|
|
if RTC_DRIVER
|
|
|
|
config RTC_PERIODIC
|
|
bool "RTC Periodic Interrupts"
|
|
default n
|
|
depends on EXPERIMENTAL
|
|
---help---
|
|
Add interrupt controls for RTCs that support periodic interrupts.
|
|
|
|
config RTC_ONESEC
|
|
bool "RTC Once-per-second interrupts"
|
|
default n
|
|
depends on EXPERIMENTAL
|
|
---help---
|
|
Add interrupt controls for RTCs that support once-per-second interrupts.
|
|
|
|
config RTC_EPOCHYEAR
|
|
bool "RTC epoch year"
|
|
default n
|
|
depends on EXPERIMENTAL
|
|
---help---
|
|
Add controls for RTCs that support epoch year settings.
|
|
|
|
Many RTCs encode the year in an 8-bit register which is either interpreted
|
|
as an 8-bit binary number or as a BCD number. In both cases, the number is
|
|
interpreted relative to this RTC's Epoch. The RTC's Epoch is initialized to
|
|
1900 on most systems but on Alpha and MIPS it might also be initialized to
|
|
1952, 1980, or 2000, depending on the value of an RTC register for the year.
|
|
With some RTCs, these operations can be used to read or to set the RTC's
|
|
Epoch, respectively.
|
|
|
|
config RTC_IOCTL
|
|
bool "RTC IOCTLs"
|
|
default n
|
|
---help---
|
|
Support the RTC interface ioctl() method. This allows you to add
|
|
architecture-specific RTC operations to the RTC interface
|
|
|
|
endif # RTC_DRIVER
|
|
|
|
config RTC_EXTERNAL
|
|
bool "External RTC Support"
|
|
default n
|
|
---help---
|
|
In modern MCUs, the RTC is usually implement as an internal
|
|
peripheral to the MCU. An option is to use an external RTC
|
|
connected to the MCU typically via SPI or I2C.
|
|
|
|
If an external RTC is connect to the MCU through some bus, then the
|
|
RTC will not be available to the system until after the system
|
|
fully boots up and is able to access the bus. In that case, this
|
|
setting must be included to suppress attempts to initialize the RTC
|
|
early in the boot sequence.
|
|
|
|
config RTC_DSXXXX
|
|
bool "DS1307/DS323x RTC Driver"
|
|
default n
|
|
select I2C
|
|
select I2C_TRANSFER
|
|
select RTC_EXTERNAL
|
|
select RTC_DATETIME
|
|
---help---
|
|
Enables support for the Maxim Integrated DS3231 I2C RTC timer.
|
|
|
|
if RTC_DSXXXX
|
|
|
|
choice
|
|
prompt "Maxim Integrated RTC"
|
|
default RTC_DS3231
|
|
|
|
config RTC_DS1307
|
|
bool "DS1307"
|
|
---help---
|
|
Enables support for the Maxim Integrated DS1307 I2C RTC timer.
|
|
|
|
config RTC_DS3231
|
|
bool "DS3231"
|
|
---help---
|
|
Enables support for the Maxim Integrated DS3231 I2C RTC timer.
|
|
|
|
config RTC_DS3234
|
|
bool "DS3234"
|
|
depends on EXPERIMENTAL
|
|
---help---
|
|
Enables support for the Maxim Integrated DS3234 SPI RTC timer.
|
|
|
|
Not yet implemented.
|
|
|
|
endchoice # Maxim Integrated RTC
|
|
|
|
config DS3231_I2C_FREQUENCY
|
|
int "DS1307/DS323x I2C frequency"
|
|
default 400000
|
|
range 1 4000000
|
|
|
|
endif # RTC_DSXXXX
|
|
endif # RTC
|
|
|
|
menuconfig WATCHDOG
|
|
bool "Watchdog Timer Support"
|
|
default n
|
|
---help---
|
|
This selection enables building of the "upper-half" watchdog timer
|
|
driver. See include/nuttx/timers/watchdog.h for further watchdog timer driver
|
|
information.
|
|
|
|
if WATCHDOG
|
|
|
|
config WATCHDOG_DEVPATH
|
|
string "Watchdog Device Path"
|
|
default "/dev/watchdog0"
|
|
|
|
endif # WATCHDOG
|
|
|
|
config TIMERS_CS2100CP
|
|
bool "CS2100-CP Fraction-N Clock Multiplier"
|
|
depends on I2C
|
|
select I2C_TRANSFER
|
|
|
|
if TIMERS_CS2100CP
|
|
|
|
config CS2100CP_DEBUG
|
|
bool "Enable CS2100-CP Debug Features"
|
|
depends on DEBUG
|
|
|
|
config CS2100CP_REGDEBUG
|
|
bool "Enable CS2100-CP Register Debug"
|
|
depends on DEBUG
|
|
|
|
endif # TIMERS_CS2100CP
|
|
endmenu # Timer Driver Support
|