st,stm32fx-pll-clock
Description
PLL node binding for STM32F2, STM32F4 and STM32F7 device
This binding can be used to describe any PLL present on these SoCs:
- PLL
- PLLI2S
- PLLSAI
Takes one of clk_hse or clk_hsi as input clock.
The PLL can have up to 3 output clocks and for each output clock, the
frequency can be computed with the following formulae:
f(PLL_P) = f(VCO clock) / PLLP
f(PLL_Q) = f(VCO clock) / PLLQ
f(PLL_R) = f(VCO clock) / PLLR
with f(VCO clock) = f(PLL clock input) × (PLLN / PLLM)
An additional divisor is available on some SoCs for the Q and R outputs.
The PLL clock input is shared between PLLs (PLL / PLLI2S / PLLSAI) of the
SoC hence all PLLs must have the same source set.
Properties
Properties not inherited from the base binding file.
Name |
Type |
Details |
|---|---|---|
|
|
Number of items to expect in a Clock specifier
This property is required. |
|
|
Division factor for the PLL input clock.
On STM32F411, F412, F413, F423 and F446, the division M
factor is independent from other PLLs.
On all other SoCs, the division factor M is shared between
PLL, PLLSAI and PLLI2S, hence same value must be used
for those PLLs when used together.
Valid range: 2 - 63
This property is required. |
|
|
Multiplication factor for VCO.
Valid range:
- 192 - 432 for STM32F2x and STM32F401
- 50 - 432 for other STM32F4x and for STM32F7x
This property is required. |
|
|
Division factor for PLL_P.
Available on all SoCs for main PLL.
Available only on STM32F446 and on STM32F74x and higher for PLLI2S.
Available only on STM32F446, F469, F479 and on all STM32F7x for PLLSAI.
Legal values: |
|
|
Division factor for PLL_Q
Available on all SoCs for main PLL.
Available only on STM32F412, F413, F423, F427, F429, F437, F439, F446, F469, F479
and on all STM32F7x for PLLI2S.
Available only on STM32F427, F429, F437, F439, F446, F469, F479
and on all STM32F7x for PLLSAI.
Valid range: 2 - 15
|
|
|
Division factor after PLL_Q.
Available only on STM32F427, F429, F437, F439, F446, F469, F479
and on all STM32F7x for PLLI2S.
Available only on STM32F427, F429, F437, F439, F446, F469, F479
and on all STM32F7x for PLLSAI.
If the div-q property is used and this property is applicable for the SoC, then it is
required to define it.
Valid range: 1 - 32
|
|
|
Division factor for PLL_R.
Available only on STM32F410, F412, F413, F423, F446, F469, F479, F769 and F779 for main PLL.
Available on all SoCs except STM32F410 for PLLI2S.
Available only on STM32F427, F429, F437, F439, F469, F479
and on STM32F74x and higher for PLLSAI.
Valid range: 2 - 7
|
|
|
Division factor after PLL_R.
Available only on STM32F413 and F423 for main PLL.
Available only on STM32F413 and F423 for PLLI2S.
Available only on STM32F427, F429, F437, F439, F469, F479
and on STM32F74x and higher for PLLSAI.
If the div-r property is used and this property is applicable for the SoC, then it is
required to define it.
Legal values: |
Deprecated properties not inherited from the base binding file.
(None)
Properties inherited from the base binding file, which defines common properties that may be set on many nodes. Not all of these may apply to the “st,stm32fx-pll-clock” compatible.
Name |
Type |
Details |
|---|---|---|
|
|
Information about the device's clock providers. In general, this property
should follow conventions established in the dt-schema binding:
https://github.com/devicetree-org/dt-schema/blob/main/dtschema/schemas/clock/clock.yaml
This property is required. |
|
|
Indicates the operational status of the hardware or other
resource that the node represents. In particular:
- "okay" means the resource is operational and, for example,
can be used by device drivers
- "disabled" means the resource is not operational and the system
should treat it as if it is not present
For details, see "2.3.4 status" in Devicetree Specification v0.4.
Legal values: See Important properties for more information. |
|
|
This property is a list of strings that essentially define what
type of hardware or other resource this devicetree node
represents. Each device driver checks for specific compatible
property values to find the devicetree nodes that represent
resources that the driver should manage.
The recommended format is "vendor,device", The "vendor" part is
an abbreviated name of the vendor. The "device" is usually from
the datasheet.
The compatible property can have multiple values, ordered from
most- to least-specific. Having additional values is useful when the
device is a specific instance of a more general family, to allow the
system to match the most specific driver available.
For details, see "2.3.1 compatible" in Devicetree Specification v0.4.
This property is required. See Important properties for more information. |
|
|
Information used to address the device. The value is specific to
the device (i.e. is different depending on the compatible
property).
The "reg" property is typically a sequence of (address, length) pairs.
Each pair is called a "register block". Values are
conventionally written in hex.
For details, see "2.3.6 reg" in Devicetree Specification v0.4.
See Important properties for more information. |
|
|
Optional names given to each register block in the "reg" property.
For example:
/ {
soc {
#address-cells = <1>;
#size-cells = <1>;
uart@1000 {
reg = <0x1000 0x2000>, <0x3000 0x4000>;
reg-names = "foo", "bar";
};
};
};
The uart@1000 node has two register blocks:
- one with base address 0x1000, size 0x2000, and name "foo"
- another with base address 0x3000, size 0x4000, and name "bar"
|
|
|
Information about interrupts generated by the device, encoded as an array
of one or more interrupt specifiers. The format of the data in this property
varies by where the device appears in the interrupt tree. Devices with the same
"interrupt-parent" will use the same format in their interrupts properties.
For details, see "2.4 Interrupts and Interrupt Mapping" in
Devicetree Specification v0.4.
See Important properties for more information. |
|
|
Extended interrupt specifier for device, used as an alternative to
the "interrupts" property.
For details, see "2.4 Interrupts and Interrupt Mapping" in
Devicetree Specification v0.4.
|
|
|
Optional names given to each interrupt generated by a device.
The interrupts themselves are defined in either "interrupts" or
"interrupts-extended" properties.
For details, see "2.4 Interrupts and Interrupt Mapping" in
Devicetree Specification v0.4.
|
|
|
If present, this refers to the node which handles interrupts generated
by this device.
For details, see "2.4 Interrupts and Interrupt Mapping" in
Devicetree Specification v0.4.
|
|
|
Human readable string describing the device. Use of this property is
deprecated except as needed on a case-by-case basis.
For details, see "4.1.2 Miscellaneous Properties" in Devicetree
Specification v0.4.
See Important properties for more information. |
|
|
Optional names given to each clock provider in the "clocks" property.
|
|
|
This property encodes the number of <u32> cells used by address fields
in "reg" properties in this node's children.
For details, see "2.3.5 #address-cells and #size-cells" in Devicetree
Specification v0.4.
|
|
|
This property encodes the number of <u32> cells used by size fields in
"reg" properties in this node's children.
For details, see "2.3.5 #address-cells and #size-cells" in Devicetree
Specification v0.4.
|
|
|
DMA channel specifiers relevant to the device.
|
|
|
Optional names given to the DMA channel specifiers in the "dmas" property.
|
|
|
IO channel specifiers relevant to the device.
|
|
|
Optional names given to the IO channel specifiers in the "io-channels" property.
|
|
|
Mailbox / IPM channel specifiers relevant to the device.
|
|
|
Optional names given to the mbox specifiers in the "mboxes" property.
|
|
|
Power domain specifiers relevant to the device.
|
|
|
Optional names given to the power domain specifiers in the "power-domains" property.
|
|
|
Number of cells in power-domains property
|
|
|
HW spinlock id relevant to the device.
|
|
|
Optional names given to the hwlock specifiers in the "hwlocks" property.
|
|
|
Do not initialize device automatically on boot. Device should be manually
initialized using device_init().
|
|
|
Property to identify that a device can be used as wake up source.
When this property is provided a specific flag is set into the
device that tells the system that the device is capable of
wake up the system.
Wake up capable devices are disabled (interruptions will not wake up
the system) by default but they can be enabled at runtime if necessary.
|
|
|
Automatically configure the device for runtime power management after the
init function runs.
|
|
|
List of power states that will disable this device power.
|