52 lines
1.5 KiB
YAML
52 lines
1.5 KiB
YAML
# Copyright (c) 2023 Gerson Fernando Budke <nandojve@gmail.com>
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
description: |
|
|
Atmel Power Management Controller (PMC)
|
|
|
|
The Power Management Controller (PMC) optimizes power consumption by
|
|
controlling all system and user peripheral clocks. The PMC enables/disables
|
|
the clock inputs to many of the peripherals and the processor.
|
|
|
|
To specify the clocks in a peripheral, the standard clocks property needs
|
|
to be used, e.g.:
|
|
|
|
uart: uart@xxx {
|
|
...
|
|
clocks = <&pmc PMC_TYPE_PERIPHERAL p-id>;
|
|
...
|
|
};
|
|
|
|
In this example the clock-type was defined as PMC_TYPE_PERIPHERAL and the
|
|
peripheral-id was defined as p-id. The p-id number should be consulted on
|
|
datasheet, usually it is available at Product Mapping figure.
|
|
|
|
NOTE: The predefined clock type cell is defined at
|
|
include/zephyr/drivers/clock_clontrol/atmel_sam_pmc.h header file.
|
|
|
|
The clock-type constants are:
|
|
PMC_TYPE_CORE
|
|
PMC_TYPE_SYSTEM
|
|
PMC_TYPE_PERIPHERAL
|
|
PMC_TYPE_GCK
|
|
PMC_TYPE_PROGRAMMABLE
|
|
|
|
compatible: "atmel,sam-pmc"
|
|
|
|
include: [clock-controller.yaml, base.yaml]
|
|
|
|
properties:
|
|
reg:
|
|
required: true
|
|
|
|
"#clock-cells":
|
|
const: 2
|
|
description: |
|
|
from common clock binding; shall be set to 2. The first entry is the type
|
|
of the clock (core, system, peripheral or generated) and the second entry
|
|
it's the peripheral identification index as provided by the datasheet.
|
|
|
|
clock-cells:
|
|
- clock-type
|
|
- peripheral-id
|