> Am 09.09.2019 um 18:54 schrieb H. Nikolaus Schaller <hns@xxxxxxxxxxxxx>: > > Hi Tony, > >> Am 09.09.2019 um 18:32 schrieb Tony Lindgren <tony@xxxxxxxxxxx>: >> >> Hi, >> >> * H. Nikolaus Schaller <hns@xxxxxxxxxxxxx> [190909 14:57]: >>> Another question that came up by private mail from André was if we >>> should better disable the turbo OPPs of omap34xx and 36xx by default >>> (status = "disabled";) because there are concerns about overheating >>> the chips and we have no thermal regulation like for omap4 & 5. >>> >>> But this would mean that every board DTS would have to set it explicitly >>> to "enabled". >> >> Yes I started thinking about that too. I think there is a requirement >> to do the scaling via the voltage processor for the higher modes. > > It depends on how you read the little footnotes... > > Table 4-18. Processor Voltages Without SmartReflex: > > • This table defines the safe VDD1 (vdd_mpu_iva) voltage ranges to be used before using the SmartReflex AVS feature for OPPs calibration. > • Values are defined when SmartReflexTM feature is deactivated. They can be lower when SmartReflexTM is activated. > • OPP130 and OPP1G are not available above TJ of 90C. > • (6) OPP1G is a high performance operating point which has following requirements: > • – ABB LDO must be set to FBB (Forward Body Bias) mode when switching to this OPP. It requires having a 1 F capacitor connected to cap_vdd_bb_mpu_iva. > • – AVS (Adaptive Voltage Scaling) power technique must be used to achieve optimum operating voltage. > > So I read this as: > > * OPP130 and OPP1G should be guarded by 90°C thermal framework > * OPP1G should also set the ABB LDO to FBB mode > * AVS does only reduce voltage levels (to save energy = heat = problem) > * only if we want "optimum operating voltage" (read as: "lowest possible voltage" = "highest energy saving") we must use AVS > > I.e. we do not necessarily need AVS or SmartReflex or help from the > twl4030 (except for changing the voltage). > >> And there needs to be some way to automatically change to a lower >> OPP in some cases. > > That should probably be done through the thermal framework like > on omap4 & omap5? > >> >> For normal OPPs, using the twl regulator directly should be OK. > > Maybe for the turbo OPPs as well. > >> For the higher modes, maybe we could pass the callback functions >> from arch/arm/mach-omap2/voltage.c for the twl regulator so the >> voltage processor hardware can handle them directly. Or add a >> separate regulator driver operating the voltages like Nishanth >> posted patches for earlier. > > So in my (limited) understanding it would suffice to set the ABB LDO > to FBB mode for OPP1G. Ok, we have to check if the ti,abb-v2 "LDO" driver drivers/regulator/ti-abb-regulator.c can handle that with a DT entry similar to: https://elixir.bootlin.com/linux/latest/source/arch/arm/boot/dts/omap5.dtsi#L365 Needs a little time to add to a new version of the patch set. > And make sure that the TJ does not exceed 90°C by reducing the cpufreq > through the thermal framework. But: the thermal sensors of the omap3 > are quite odd (they seem to jump up by 10° after first use). I'll leave this out for the moment for future study. BR and thanks, Nikolaus