# Copyright (c) 2018 Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0

description: Nordic nRF RTC (Real-Time Counter)

compatible: "nordic,nrf-rtc"

include: rtc.yaml

properties:
  reg:
    required: true

  cc-num:
    type: int
    required: true
    description: |
      Number of compare (CC) registers available.

      On nRF53 these registers can also be used for capture.

  # If enabled, overflow different than full range (24 bits) is handled
  # through PPI channel which ensures precise timing. If disabled then
  # counter is cleared in the interrupt which results in accumulative error
  # of counter period if top value is different than maximal.
  ppi-wrap:
    type: boolean
    description: Enable wrapping with PPI

  # If enabled then counter based on nRF RTC peripheral supports only maximal
  # top value. That results in code optimizations and availability of one more
  # channel
  fixed-top:
    type: boolean
    description: Enable fixed top value

  zli:
    type: boolean
    description: Enable event handler in the ZLI (Zero latency interrupt) context
