27 Apr, 2020
6 commits
-
Update TMU driver for imx8mp thermal which has two probes and supports
temperature range from -40 to 125. The driver still uses default 1p HW
calibration at 25C and loads calibration parameters from fuse.Reviewed-by: Peng Fan
Signed-off-by: Ye Li
(cherry picked from commit 2deda4eb4f5bc0b749e5cef1395a0b436448d4fa) -
On iMX8MM, the V flag in TRISTR register only reflect the state of SNSR
value, not the calibrated TEMP value. So checking this flag is not
reliable. Per IC suggestion, change to read the TEMP/AVG_TEMP directly
and check whether it in valid range 10-125C.Signed-off-by: Ye Li
(cherry picked from commit fe41c5fa6af88cce7f5a9723c82d6ad4e61357ce)
(cherry picked from commit f0a7dde8ebdaa408aa2bc3405bd0d41aeae652ae) -
When the temperature is out of sensor's range, the Valid bit won't be
set in TRITSR register. So the polling loop won't go out.Change the codes to retry 10 times with 100ms interval for the Valid bit.
If the timeout, we give a warning for the invalid data.Signed-off-by: Ye Li
Reviewed-by: Bai Ping
(cherry picked from commit 7ea2168e06d4f77a872f51a167ee1ed6bf2b0632)
(cherry picked from commit a68898c8519fabd239b7b4ffe8c3c53810b563be) -
Since imx8mm TMU needs to load some registers from fuse, this is arch
dependent operation and may vary on different platforms. So add
a interface for arch level initialization.Signed-off-by: Ye Li
(cherry picked from commit 1a66350d1baeef355d51da609c505aebb233cefb)
(cherry picked from commit e8daa1d1e4f0419a222759564b68b2f93d61a3e8) -
The analog sensors on iMX8MM are new, used for 14LPP process. So the
Temperature Sensor Monitoring Unit (TMU) has some change accordingly.
We use version 2 in TMU driver to represent the new TMU, so the one driver
can service for both MQ and MM.Signed-off-by: Ye Li
(cherry picked from commit 86fab918e607221249acc5c9a8f8eca01c17ec37)
(cherry picked from commit f68b8d4e0b256d376fd4ea8f1f4be0334327eca1)
(cherry picked from commit e6df5719ae56587acc466d83c7bdc745a6670dcc) -
Porting the TMU driver from kernel and supporting DM in the driver.
Users need to provide the TMU node and sensors nodes in DTB.Signed-off-by: Ye Li
Acked-by: Peng Fan
(cherry picked from commit f883de99b93de8c2fadd382d8cf961667bacd038)
(cherry picked from commit 8e09d0f0ab33d9a52098546b147d41c4c2598c0d)
(cherry picked from commit 327d5a951adde39428eeab877a85fe43b51977aa)
23 Apr, 2020
1 commit
-
Add iMX8QM thermal compatible string and its driver data.
Signed-off-by: Ye Li
20 Jan, 2020
1 commit
-
The CORE_TEMP_SENSOR_MPU register gives a raw adc value which needs to
be indexed into a lookup table to get the actual temperature. Fix the
naming and datatype of the adc value variable.Signed-off-by: Faiz Abbas
Signed-off-by: Lokesh Vutla
19 Jul, 2019
1 commit
-
Add i.MX8 thermal driver to support get temperature from SCU.
Signed-off-by: Peng Fan
07 May, 2018
1 commit
-
When U-Boot started using SPDX tags we were among the early adopters and
there weren't a lot of other examples to borrow from. So we picked the
area of the file that usually had a full license text and replaced it
with an appropriate SPDX-License-Identifier: entry. Since then, the
Linux Kernel has adopted SPDX tags and they place it as the very first
line in a file (except where shebangs are used, then it's second line)
and with slightly different comment styles than us.In part due to community overlap, in part due to better tag visibility
and in part for other minor reasons, switch over to that style.This commit changes all instances where we have a single declared
license in the tag as both the before and after are identical in tag
contents. There's also a few places where I found we did not have a tag
and have introduced one.Signed-off-by: Tom Rini
21 Nov, 2017
1 commit
-
The dra7xx series of SOCs contain a temperature sensor and an
associated analog-to-digital converter (ADC) which produces
an output which is proportional to the SOC temperature.
Add support for this temperature sensor.Signed-off-by: Faiz Abbas
Reviewed-by: Simon Glass
18 May, 2017
2 commits
-
Fix calculation. do_div can not handle negative values.
Use div_s64_rem to handle the calculation.Signed-off-by: Peng Fan
Cc: Stefano Babic -
>From IC guys:
"
After a thorough accuracy study of the Temp sense circuit,
we found that with our current equation, an average part can
read 7 degrees lower than a known forced temperature.
We also found out that the standard variance was around 2C;
which is the tightest distribution that we could create.
We need to change the temp sense equation to center the average
part around the target temperature.
"New equation:
Tmeas = (Nmeas - n1) / slope + t1 + offset
n1= fused room count
t1= 25
offset=3.580661
slope= 0.4148468 – 0.0015423*n1According the new equation, update the thermal driver.
c1 and c2 changed to u64 type and update comments.Signed-off-by: Peng Fan
Cc: Stefano Babic
03 Jan, 2017
1 commit
-
The thermal drivers support i.MX6 and i.MX7, add MX7 in Kconfig file.
Signed-off-by: Peng Fan
Cc: Stefano Babic
26 Oct, 2016
1 commit
-
Added kconfig for IMX_THERMAL driver.
Cc: Simon Glass
Cc: Fabio Estevam
Cc: Stefano Babic
Cc: Peng Fan
Cc: Matteo Lisi
Cc: Michael Trimarchi
Signed-off-by: Jagan Teki
06 May, 2016
1 commit
-
Spelling corrections for (among other things):
* environment
* override
* variable
* ftd (should be "fdt", for flattened device tree)
* embedded
* FTDI
* emulation
* controller
08 Jan, 2016
1 commit
-
To TO1.0, we can not rely on finish bit to read temperature. But to
TO1.1, the issue was fixed by IC, we can rely on finish bit for
temperature reading for TO1.1.Signed-off-by: Peng Fan
Cc: Stefano Babic
Cc: Tim Harvey
Cc: Fabio Estevam
Cc: Adrian Alonso
13 Sep, 2015
3 commits
-
It is not very useful to have the message below on every boot
(especially when we are using early silicon):U-Boot 2015.10-rc2-23945-g37cf215 (Sep 08 2015 - 14:12:14 -0300)
CPU: Freescale i.MX6UL rev1.0 792 MHz (running at 396 MHz)
CPU: Commercial temperature grade (0C to 95C)CPU: Thermal invalid data, fuse: 0x0
- invalid sensor device, so turn the error message into debug level.
Signed-off-by: Fabio Estevam
-
Add imx7 SoC thermal driver support
Signed-off-by: Adrian Alonso
-
Rework imx_thermal driver to be used across i.MX
processor that support thermal sensorSigned-off-by: Adrian Alonso
Signed-off-by: Peng Fan
10 Jul, 2015
2 commits
-
The temperature calculation must be typecasted to keep the compiler
from sign extending a negative value prior to division.This fixes an issue where if the CPU temperature is
Cc: Jason Liu
Signed-off-by: Tim Harvey -
Remove the check for temperature being within the min/max range and enter the
busywait cooling loop whenever the CPU temperature is over the critical temp.
This fixes the issue where if a board was booted at a temp greater than
the CPU temperature max, it would skip the loop and never indicate or try
to address the overtemp issue.Cc: Ye Li
Cc: Jason Liu
Signed-off-by: Tim Harvey
26 May, 2015
1 commit
-
The CPU temperature grade from OTP is now used to define the critical
threshold at which point we busyloop until we are below, however this
threshold is still too low.Instead of 20C below the max CPU temperature, change it to 5C defined now
by TEMPERATURE_HOT_DETLA for clarity. Rename 'passive' to 'critical'
as that better defines our use case here. Additionally change the output
of the busyloop message to show the max CPU temperature as well as current.Before:
CPU Temperature is 101 C, too hot to boot, waiting...
CPU Temperature is 101 C, too hot to boot, waiting...After:
CPU Temperature (101C) too close to max (105C) waiting...
CPU Temperature (101C) too close to max (105C) waiting...Cc: Stefan Roese
Cc: Eric Nelson
Cc: Heiko Schocher
Cc: Nikita Kiryanov
Cc: Jon Nettleton
Cc: Jason Liu
Cc: Ye Li
Cc: Fabio Estevam
Cc: Christian Gmeiner
Cc: Markus Niebel
Cc: Peng Fan
Signed-off-by: Tim Harvey
19 May, 2015
1 commit
-
Replace the hard-coded values for min/max/passive with values derived from
the CPU temperature grade.Signed-off-by: Tim Harvey
13 Feb, 2015
1 commit
-
Expand the help messages for each driver. Add missing Kconfig for I2C,
SPI flash and thermal.Signed-off-by: Simon Glass
Reviewed-by: Masahiro Yamada
01 Dec, 2014
1 commit
-
Printing the calibration data on every boot does not provide really useful
information:U-Boot 2015.01-rc1-18266-ge7eb277 (Nov 24 2014 - 11:29:51)
CPU: Freescale i.MX6Q rev1.2 at 792 MHz
CPU: Thermal calibration data: 0x5d85067d
CPU: Temperature 33 C
Reset cause: POR
Board: MX6-SabreSDDo not display the calibration data in order to have a cleaner boot log.
Signed-off-by: Fabio Estevam
21 Nov, 2014
1 commit
-
Add a new thermal uclass for thermal sensor and implement the imx
thermal driver basing on this uclass.Signed-off-by: Ye.Li
Acked-by: Stefano Babic