| # 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 |