We want to simplify the maintenance burden and confusion of having more than one driver for the same kernel timer peripheral used on all Microchip MEC parts. The XEC version of the driver was converted register definitions in the driver. Register access is performed using Zephyr sys_read/write architecture specific inline routines. Driver DT YAML was updated to use phandle for the 32-bit basic timer used for ARCH_HAS_CUSTOM_BUSY_WAIT support, basic timer max value property, and GIRQ interrtup aggregator hardware information. SoC part Kconfigs, chip level/board level DTSI updated to use the unified driver. Signed-off-by: Scott Worley <scott.worley@microchip.com>
36 lines
816 B
YAML
36 lines
816 B
YAML
# Copyright (c) 2025 Microchip Technology Inc.
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
description: Microchip XEC basic timer properties
|
|
|
|
compatible: "microchip,xec-basic-timer"
|
|
|
|
include: ["base.yaml", "microchip,dmec-ecia-girq.yaml"]
|
|
|
|
properties:
|
|
reg:
|
|
required: true
|
|
|
|
interrupts:
|
|
required: true
|
|
|
|
clock-frequency:
|
|
type: int
|
|
required: true
|
|
const: 48000000
|
|
description: Basic timer input clock is 48 MHz.
|
|
|
|
max-value:
|
|
type: int
|
|
required: true
|
|
description: |
|
|
Counter maximum value. The SoC contains multiple instances
|
|
of the basic timer. Some are 16-bit, others 32-bit.
|
|
|
|
prescaler:
|
|
type: int
|
|
required: true
|
|
description: |
|
|
Basic timer implements a 16-bit clock prescale value.
|
|
Count frequency is clock-frequency divided by (prescaler + 1).
|