1# Copyright (c) 2024 STMicroelectronics 2# SPDX-License-Identifier: Apache-2.0 3 4description: STM32WB0 power controller 5 6compatible: "st,stm32wb0-pwr" 7 8include: "st,stm32-pwr.yaml" 9 10properties: 11 smps-mode: 12 type: string 13 required: true 14 description: | 15 SMPS mode selection 16 17 OFF: 18 - SMPS converter disabled 19 - LDOs supply voltage: VDD 20 21 WARNING: The SMPS must not be disabled on board using the 22 'SMPS supply configuration', so this mode should NEVER be 23 selected on these boards. Only use this mode if your board 24 is using the 'NOSMPS supply configuration'. 25 26 Refer to RM0505 §5.5 "SMPS step down regulator" for details. 27 28 PRECHARGE: (also called BYPASS) 29 - SMPS converter enabled - clock disabled 30 - LDOs supply voltage: VDD (though SMPS) 31 - Current supplied to LDOs can be limited 32 (feature only supported on STM32WB05 / STM32WB09) 33 34 RUN: (also called ON) 35 - SMPS converter enabled - clock enabled 36 - LDOs supply voltage: regulated SMPS output 37 - Target output voltage can be programmed 38 enum: 39 - "OFF" 40 - "PRECHARGE" 41 - "RUN" 42 43 smps-bom: 44 type: int 45 description: | 46 SMPS L/C BOM selection 47 48 Indicates which L/C BOM is present on the board: 49 1: 1.5µH inductance, 2.2µF output capacitance 50 2: 2.2µH inductance, 4.7µF output capacitance 51 3: 10µH inductance, 4.7µF output capacitance 52 Refer to RM0505 §5.5 for more details about L/C BOM. 53 54 This property is required if `smps-mode` is not "OFF". 55 enum: 56 - 1 57 - 2 58 - 3 59 60 smps-clock-prescaler: 61 type: int 62 default: 4 63 description: | 64 SMPS clock prescaler factor 65 66 The SMPS clock, CLK_SMPS, comes from a 16 MHz source that 67 goes through one of two prescalers, with a respective 68 division factor of 2 and 4. This property selects which 69 prescaler should be used. 70 71 Setting this property to 2 results in CLK_SMPS = 8 MHz. 72 Setting this property to 4 results in CLK_SMPS = 4 MHz. 73 74 All features of the SMPS can be used regardless of which 75 prescaler has been chosen. Since a slower clock results 76 in less power consumption, this property defaults to 4. 77 78 This property is only used if `smps-mode` is not "OFF". 79 enum: 80 - 2 81 - 4 82 83 smps-lp-floating: 84 type: boolean 85 description: | 86 Floating SMPS output in low-power state 87 88 If this property is set, the SMPS output pin (VFBSD) 89 is left floating when the SoC is in low-power state. 90 91 If this property is not set, the SMPS is placed in 92 PRECHARGE mode when the SoC is in low-power state. 93 (i.e., VFBSD voltage is equal to VDD) 94 95 smps-current-limit: 96 type: string 97 default: "20" 98 description: | 99 SMPS output current limit (in mA) 100 101 The default value of 20 mA corresponds to the maximal 102 output current allowed for the SMPS, and is also equal 103 to the hardware reset configuration. 104 105 On STM32WB06 and STM32WB07, this property is ignored as 106 the output current limitation feature is not available. 107 108 This property is only used if `smps-mode` is "PRECHARGE". 109 enum: 110 - "2_5" 111 - "5" 112 - "10" 113 - "20" 114 115 smps-output-voltage: 116 type: string 117 default: "1V40" 118 description: | 119 SMPS regulated output voltage 120 121 The default value corresponds to the hardware reset 122 configuration of 1.40V regulated output. 123 124 This property is only used if `smps-mode` is "RUN". 125 enum: 126 - "1V20" 127 - "1V25" 128 - "1V30" 129 - "1V35" 130 - "1V40" 131 - "1V45" 132 - "1V50" 133 - "1V55" 134 - "1V60" 135 - "1V65" 136 - "1V70" 137 - "1V75" 138 - "1V80" 139 - "1V85" 140 - "1V90" 141 - "1V95" 142