Date: Mon, 26 Sep 2016 15:52:33 +0300 From: Daniel Braniss <danny@cs.huji.ac.il> To: Jared McNeill <jmcneill@invisible.ca> Cc: arm@freebsd.org Subject: Re: ALL WINNER high temp. stop Message-ID: <6E63B10F-86C5-45EE-8D8B-2192D8C8A63C@cs.huji.ac.il> In-Reply-To: <F9921024-17CF-4654-83B1-CD4D705DA25D@cs.huji.ac.il> References: <B11041B2-0EDD-4E20-8684-CB471C17D81B@cs.huji.ac.il> <20160917171911.a2ec80da747ba373ba3d1b4a@bidouilliste.com> <5ADFE16E-FD60-45B1-8CF1-6FFC10BABBDE@cs.huji.ac.il> <20160917195544.a2a8bbdb113029700fa7642d@bidouilliste.com> <588E44BB-40BF-40B8-9C5A-BA025AB87E00@cs.huji.ac.il> <alpine.DEB.2.11.1609180930230.641@dis.invisible.ca> <4F7891B0-FBD7-451C-BA42-50F872804C95@cs.huji.ac.il> <08E5651B-A28E-4BE8-803B-650CD2434979@cs.huji.ac.il> <01D85517-15ED-46FF-8C11-5A774EC1262F@cs.huji.ac.il> <alpine.DEB.2.11.1609210745050.641@dis.invisible.ca> <7BFD291A-E619-4DE4-9BBB-C1F40E81F12A@cs.huji.ac.il> <F9921024-17CF-4654-83B1-CD4D705DA25D@cs.huji.ac.il>
index | next in thread | previous in thread | raw e-mail
> On 21 Sep 2016, at 14:22, Daniel Braniss <danny@cs.huji.ac.il> wrote: > >> >> On 21 Sep 2016, at 14:13, Daniel Braniss <danny@cs.huji.ac.il <mailto:danny@cs.huji.ac.il>> wrote: >> >> >>> On 21 Sep 2016, at 13:49, Jared McNeill <jmcneill@invisible.ca> wrote: >>> >>> CPU frequency scaling is supported now. Have you added operating points to the dts? Without a heatsink or fan, you need to set a reasonable set of operating points. >>> >>> 64C does seem quite low, the thermal driver uses the power-on default temperature for the shutdown temperature though (which should be > 100C). >>> >>> Are you sure you are using the correct compat string for the thermal driver in your dts? Different SoCs use a different formula for reading the temperature. >> >> I’m using what you sent me :-) >> https://github.com/jaredmcneill/freebsd/blob/allwinner-h3/sys/boot/fdt/dts/arm/orangepi-plus-2e.dts#L12 <https://github.com/jaredmcneill/freebsd/blob/allwinner-h3/sys/boot/fdt/dts/arm/orangepi-plus-2e.dts#L12> <https://github.com/jaredmcneill/freebsd/blob/allwinner-h3/sys/boot/fdt/dts/arm/orangepi-plus-2e.dts#L121 <https://github.com/jaredmcneill/freebsd/blob/allwinner-h3/sys/boot/fdt/dts/arm/orangepi-plus-2e.dts#L121>> >> > > here is my dts for the orange-one: > /*- > * Copyright (c) 2016 Jared McNeill <jmcneill@invisible.ca <mailto:jmcneill@invisible.ca>> > * All rights reserved. > * > * Redistribution and use in source and binary forms, with or without > * modification, are permitted provided that the following conditions > * are met: > * 1. Redistributions of source code must retain the above copyright > * notice, this list of conditions and the following disclaimer. > * 2. Redistributions in binary form must reproduce the above copyright > * notice, this list of conditions and the following disclaimer in the > * documentation and/or other materials provided with the distribution. > * > * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND > * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE > * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE > * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE > * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL > * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS > * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) > * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT > * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY > * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF > * SUCH DAMAGE. > * > * $FreeBSD$ > */ > #include "sun8i-h3-orangepi-one.dts" > > / { > clocks { > ths_clk: clk@1c20074 { > #clock-cells = <0>; > compatible = "allwinner,sun8i-h3-ths-clk"; > reg = <0x01c20074 0x4>; > clocks = <&osc24M>; > clock-output-names = "ths"; > }; > }; > soc { > emac: ethernet@1c30000 { > compatible = "allwinner,sun8i-h3-emac"; > reg = <0x01c30000 0x104>, <0x01c00030 0x4>; > reg-names = "emac", "syscon"; > interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>; > resets = <&ahb_rst 17>; > reset-names = "ahb"; > clocks = <&bus_gates 17>; > clock-names = "ahb"; > #address-cells = <1>; > #size-cells = <0>; > status = "disabled"; > }; > > sid: eeprom@01c14000 { > compatible = "allwinner,sun8i-h3-sid"; > reg = <0x01c14000 0x400>; > }; > > rtp: rtp@1c25000 { > compatible = "allwinner,sun8i-h3-ts"; > reg = <0x01c25000 0x400>; > interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; > clocks = <&bus_gates 72>,<&ths_clk>; > clock-names = "ahb", "ths"; > resets = <&apb1_rst 8>; > #thermal-sensor-cells = <0>; > }; > > }; > }; > > &mmc0_pins_a { > allwinner,pull = <SUN4I_PINCTRL_PULL_UP>; > }; > > &pio { > emac_pins_rgmii_a: emac_rgmii@0 { > allwinner,pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", > "PD7", "PD8", "PD9", "PD10", "PD12", "PD13", > "PD15", "PD16", "PD17"; > allwinner,function = "emac"; > allwinner,drive = <SUN4I_PINCTRL_40_MA>; > allwinner,pull = <SUN4I_PINCTRL_NO_PULL>; > }; > > emac_phy_reset_pin: emac_phy_reset_pin@0 { > allwinner,pins = "PD6"; > allwinner,function = "gpio_out"; > allwinner,drive = <SUN4I_PINCTRL_10_MA>; > allwinner,pull = <SUN4I_PINCTRL_NO_PULL>; > }; > }; > > > /* > * Board-specific stuff here > */ > > / { > /* > model = "Xunlong Orange Pi One"; > compatible = "xunlong,orangepi-one", "allwinner,sun8i-h3"; > */ > reg_gmac_3v3: gmac-3v3 { > compatible = "regulator-fixed"; > pinctrl-names = "default"; > pinctrl-0 = <&emac_phy_reset_pin>; > regulator-name = "gmac-3v3"; > regulator-min-microvolt = <3300000>; > regulator-max-microvolt = <3300000>; > startup-delay-us = <100000>; > enable-active-high; > gpio = <&pio 3 6 GPIO_ACTIVE_HIGH>; > }; > }; > > &emac { > phy-supply = <®_gmac_3v3>; > phy-mode = "mii"; > phy = <&phy1>; > > allwinner,leds-active-low; > status = "okay"; > > allwinner,use-internal-phy; > resets = <&ahb_rst 17>,<&ahb_rst 66>; > reset-names = "ahb", "ephy"; > clocks = <&bus_gates 17>,<&bus_gates 128>; > clock-names = "ahb","ephy"; > > phy1: ethernet-phy@1 { > reg = <1>; > }; > }; > > &ehci2 { > status = "okay"; > }; > > >> >>> >>> Cheers, >>> Jared >>> >>> On Wed, 21 Sep 2016, Daniel Braniss wrote: >>> >>>> hi all, >>>> now that there is thermal control, trying to compile e.g. from ports >>>> portmaster, heats up the cpu, which somewhere around 64C >>>> decides to halt. >>>> Now, I remember some weeks ago, with a kernel version >>>> without the thermal stuff compiling python and all went ok, >>>> so >>>> Q: what is the thermal high water mark? >>>> Q: are the latest changes overheating the cpu, or is the thermal driver over >>>> cautious? >>>> >>>> danny >>>> >>>> >>>> I added a printf to see what is read off the thermal sensor, and the first surprise is that it prints it twice for each sysctl call, next, if I apply the formula from the docs: temp = (val - 2794) / -14.882 the numbers are much higher! val C C’ 5ef: 32C 85.67C 5f4: 32C 85.34C 5e0: 34C 86.68C 5e6: 34C 86.28C 5de: 35C 86.82C 5d2: 36C 87.62C 5ca: 37C 88.16C 5ba: 39C 89.24C 5ae: 40C 90.04C 5a9: 41C 90.38C 59d: 42C 91.18C 581: 46C 93.07C 549: 53C 96.83C 541: 54C 97.37C 536: 55C 98.11C 51e: 58C 99.72C 516: 59C 100.26C 509: 60C 101.13C 502: 61C 101.60C 4f7: 62C 102.34C 4ef: 63C 102.88C 4f4: 63C 102.54C 4ea: 64C 103.21C 4eb: 64C 103.14C Accordingly, the the SHUT0_T_HOT is 0x4E9, and so it shuts down at ~ 64/103, but I checking the temperature externally and when it shows 35C, sysctl says 38C but val is 0x5C0 so what the f…. is going on here? dannyhome | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6E63B10F-86C5-45EE-8D8B-2192D8C8A63C>
