Drop digital thermometer and thermostat (DTT) drivers

This subsystem is quite old. It has been replaced with a driver-model
version (UCLASS_THERMAL). Boards are free to convert to that if required,
but here is a removal patch that could be applied in the meantime.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Heiko Schocher <hs@denx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
master
Simon Glass 7 years ago committed by Tom Rini
parent ab3c4fbe8a
commit 853eaa4f30
  1. 6
      README
  2. 10
      board/gdsys/405ep/dlvision-10g.c
  3. 10
      board/gdsys/405ep/io.c
  4. 10
      board/gdsys/405ep/neo.c
  5. 10
      board/gdsys/405ex/io64.c
  6. 1
      cmd/Makefile
  7. 120
      cmd/dtt.c
  8. 2
      drivers/Kconfig
  9. 1
      drivers/Makefile
  10. 0
      drivers/hwmon/Kconfig
  11. 22
      drivers/hwmon/Makefile
  12. 164
      drivers/hwmon/adm1021.c
  13. 73
      drivers/hwmon/adt7460.c
  14. 155
      drivers/hwmon/ds1621.c
  15. 137
      drivers/hwmon/ds1722.c
  16. 126
      drivers/hwmon/ds1775.c
  17. 65
      drivers/hwmon/ds620.c
  18. 160
      drivers/hwmon/lm63.c
  19. 146
      drivers/hwmon/lm73.c
  20. 139
      drivers/hwmon/lm75.c
  21. 111
      drivers/hwmon/lm81.c
  22. 1
      include/config_cmd_all.h
  23. 21
      include/configs/PMC440.h
  24. 8
      include/configs/TQM834x.h
  25. 21
      include/configs/UCP1020.h
  26. 9
      include/configs/acadia.h
  27. 11
      include/configs/canyonlands.h
  28. 8
      include/configs/dlvision-10g.h
  29. 1
      include/configs/dlvision.h
  30. 2
      include/configs/exynos5-common.h
  31. 8
      include/configs/intip.h
  32. 6
      include/configs/io.h
  33. 9
      include/configs/io64.h
  34. 25
      include/configs/katmai.h
  35. 4
      include/configs/kilauea.h
  36. 1
      include/configs/km/km-powerpc.h
  37. 7
      include/configs/km/km83xx-common.h
  38. 7
      include/configs/km82xx.h
  39. 5
      include/configs/makalu.h
  40. 8
      include/configs/motionpro.h
  41. 8
      include/configs/neo.h
  42. 1
      include/configs/odroid_xu3.h
  43. 9
      include/configs/sequoia.h
  44. 8
      include/configs/socrates.h
  45. 10
      include/configs/tqma6.h
  46. 2
      include/configs/tqma6_mba6.h
  47. 4
      include/configs/tqma6_wru4.h
  48. 8
      include/configs/work_92105.h
  49. 1
      include/configs/xilinx-ppc.h
  50. 3
      include/configs/xpedite517x.h
  51. 3
      include/configs/xpedite537x.h
  52. 3
      include/configs/xpedite550x.h
  53. 9
      include/configs/yosemite.h
  54. 47
      include/dtt.h
  55. 3
      include/i2c.h
  56. 22
      scripts/config_whitelist.txt

@ -830,7 +830,6 @@ The following options need to be configured:
CONFIG_CMD_CRC32 * crc32
CONFIG_CMD_DHCP * DHCP support
CONFIG_CMD_DIAG * Diagnostics
CONFIG_CMD_DTT * Digital Therm and Thermostat
CONFIG_CMD_ECHO echo arguments
CONFIG_CMD_EDITENV edit env variable
CONFIG_CMD_EEPROM * EEPROM read/write support
@ -2324,11 +2323,6 @@ The following options need to be configured:
If defined, then this indicates the I2C bus number for the RTC.
If not defined, then U-Boot assumes that RTC is on I2C bus 0.
CONFIG_SYS_DTT_BUS_NUM
If defined, then this indicates the I2C bus number for the DTT.
If not defined, then U-Boot assumes that DTT is on I2C bus 0.
CONFIG_SOFT_I2C_READ_REPEATED_START
defining this will force the i2c_read() function in

@ -10,7 +10,6 @@
#include <asm/processor.h>
#include <asm/io.h>
#include <asm/ppc4xx-gpio.h>
#include <dtt.h>
#include "405ep.h"
#include <gdsys_fpga.h>
@ -61,8 +60,13 @@ struct ihs_fpga *fpga_ptr[] = CONFIG_SYS_FPGA_PTR;
int misc_init_r(void)
{
/* startup fans */
dtt_init();
/*
* Note: DTT has been removed. Please use UCLASS_THERMAL.
*
* startup fans
*
* dtt_init();
*/
return 0;
}

@ -11,7 +11,6 @@
#include <asm/io.h>
#include <asm/ppc4xx-gpio.h>
#include <dtt.h>
#include <miiphy.h>
#include "405ep.h"
@ -41,8 +40,13 @@ struct ihs_fpga *fpga_ptr[] = CONFIG_SYS_FPGA_PTR;
int misc_init_r(void)
{
/* startup fans */
dtt_init();
/*
* Note: DTT has been removed. Please use UCLASS_THERMAL.
*
* startup fans
*
* dtt_init();
*/
return 0;
}

@ -10,7 +10,6 @@
#include <asm/processor.h>
#include <asm/io.h>
#include <asm/ppc4xx-gpio.h>
#include <dtt.h>
#include "405ep.h"
#include <gdsys_fpga.h>
@ -32,8 +31,13 @@ struct ihs_fpga *fpga_ptr[] = CONFIG_SYS_FPGA_PTR;
int misc_init_r(void)
{
/* startup fans */
dtt_init();
/*
* Note: DTT has been removed. Please use UCLASS_THERMAL.
*
* startup fans
*
* dtt_init();
*/
return 0;
}

@ -26,7 +26,6 @@
#include <miiphy.h>
#include <i2c.h>
#include <dtt.h>
DECLARE_GLOBAL_DATA_PTR;
@ -70,8 +69,13 @@ static inline void blank_string(int size)
*/
int misc_init_r(void)
{
/* startup fans */
dtt_init();
/*
* Note: DTT has been removed. Please use UCLASS_THERMAL.
*
* startup fans
*
* dtt_init();
*/
#ifdef CONFIG_ENV_IS_IN_FLASH
/* Monitor protection ON by default */

@ -43,7 +43,6 @@ ifdef CONFIG_POST
obj-$(CONFIG_CMD_DIAG) += diag.o
endif
obj-$(CONFIG_CMD_DISPLAY) += display.o
obj-$(CONFIG_CMD_DTT) += dtt.o
obj-$(CONFIG_CMD_ECHO) += echo.o
obj-$(CONFIG_ENV_IS_IN_EEPROM) += eeprom.o
obj-$(CONFIG_CMD_EEPROM) += eeprom.o

@ -1,120 +0,0 @@
/*
* (C) Copyright 2001
* Erik Theisen, Wave 7 Optics, etheisen@mindspring.com
*
* SPDX-License-Identifier: GPL-2.0+
*/
#include <common.h>
#include <config.h>
#include <command.h>
#include <dtt.h>
#include <i2c.h>
#include <tmu.h>
#include <linux/bug.h>
#if defined CONFIG_DTT_SENSORS
static unsigned long sensor_initialized;
static void _initialize_dtt(void)
{
int i;
unsigned char sensors[] = CONFIG_DTT_SENSORS;
for (i = 0; i < sizeof(sensors); i++) {
if ((sensor_initialized & (1 << i)) == 0) {
if (dtt_init_one(sensors[i]) != 0) {
printf("DTT%d: Failed init!\n", i);
continue;
}
sensor_initialized |= (1 << i);
}
}
}
void dtt_init(void)
{
int old_bus;
/* switch to correct I2C bus */
old_bus = I2C_GET_BUS();
I2C_SET_BUS(CONFIG_SYS_DTT_BUS_NUM);
_initialize_dtt();
/* switch back to original I2C bus */
I2C_SET_BUS(old_bus);
}
#endif
int dtt_i2c(void)
{
#if defined CONFIG_DTT_SENSORS
int i;
unsigned char sensors[] = CONFIG_DTT_SENSORS;
int old_bus;
/* Force a compilation error, if there are more then 32 sensors */
BUILD_BUG_ON(sizeof(sensors) > 32);
/* switch to correct I2C bus */
#ifdef CONFIG_SYS_I2C
old_bus = i2c_get_bus_num();
i2c_set_bus_num(CONFIG_SYS_DTT_BUS_NUM);
#else
old_bus = I2C_GET_BUS();
I2C_SET_BUS(CONFIG_SYS_DTT_BUS_NUM);
#endif
_initialize_dtt();
/*
* Loop through sensors, read
* temperature, and output it.
*/
for (i = 0; i < sizeof(sensors); i++)
printf("DTT%d: %i C\n", i + 1, dtt_get_temp(sensors[i]));
/* switch back to original I2C bus */
#ifdef CONFIG_SYS_I2C
i2c_set_bus_num(old_bus);
#else
I2C_SET_BUS(old_bus);
#endif
#endif
return 0;
}
int dtt_tmu(void)
{
#if defined CONFIG_TMU_CMD_DTT
int cur_temp;
/* Sense and return latest thermal info */
if (tmu_monitor(&cur_temp) == TMU_STATUS_INIT) {
puts("TMU is in unknown state, temperature is invalid\n");
return -1;
}
printf("Current temperature: %u degrees Celsius\n", cur_temp);
#endif
return 0;
}
int do_dtt(cmd_tbl_t *cmdtp, int flag, int argc, char *const argv[])
{
int err = 0;
err |= dtt_i2c();
err |= dtt_tmu();
return err;
} /* do_dtt() */
/***************************************************/
U_BOOT_CMD(
dtt, 1, 1, do_dtt,
"Read temperature from Digital Thermometer and Thermostat",
""
);

@ -30,8 +30,6 @@ source "drivers/fpga/Kconfig"
source "drivers/gpio/Kconfig"
source "drivers/hwmon/Kconfig"
source "drivers/i2c/Kconfig"
source "drivers/input/Kconfig"

@ -74,7 +74,6 @@ obj-$(CONFIG_CPU) += cpu/
obj-y += crypto/
obj-y += firmware/
obj-$(CONFIG_FPGA) += fpga/
obj-y += hwmon/
obj-y += misc/
obj-$(CONFIG_MMC) += mmc/
obj-y += pcmcia/

@ -1,22 +0,0 @@
#
# (C) Copyright 2006
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
#
# (C) Copyright 2001
# Erik Theisen, Wave 7 Optics, etheisen@mindspring.com.
#
# SPDX-License-Identifier: GPL-2.0+
#
#ccflags-y += -DDEBUG
obj-$(CONFIG_DTT_ADM1021) += adm1021.o
obj-$(CONFIG_DTT_ADT7460) += adt7460.o
obj-$(CONFIG_DTT_DS1621) += ds1621.o
obj-$(CONFIG_DTT_DS1722) += ds1722.o
obj-$(CONFIG_DTT_DS1775) += ds1775.o
obj-$(CONFIG_DTT_DS620) += ds620.o
obj-$(CONFIG_DTT_LM63) += lm63.o
obj-$(CONFIG_DTT_LM73) += lm73.o
obj-$(CONFIG_DTT_LM75) += lm75.o
obj-$(CONFIG_DTT_LM81) += lm81.o

@ -1,164 +0,0 @@
/*
* (C) Copyright 2003
* Murray Jensen, CSIRO-MIT, Murray.Jensen@csiro.au
*
* based on dtt/lm75.c which is ...
*
* (C) Copyright 2001
* Bill Hunter, Wave 7 Optics, williamhunter@mediaone.net
*
* SPDX-License-Identifier: GPL-2.0+
*/
/*
* Analog Devices's ADM1021
* "Low Cost Microprocessor System Temperature Monitor"
*/
#include <common.h>
#include <i2c.h>
#include <dtt.h>
#define DTT_READ_LOC_VALUE 0x00
#define DTT_READ_REM_VALUE 0x01
#define DTT_READ_STATUS 0x02
#define DTT_READ_CONFIG 0x03
#define DTT_READ_CONVRATE 0x04
#define DTT_READ_LOC_HIGHLIM 0x05
#define DTT_READ_LOC_LOWLIM 0x06
#define DTT_READ_REM_HIGHLIM 0x07
#define DTT_READ_REM_LOWLIM 0x08
#define DTT_READ_DEVID 0xfe
#define DTT_WRITE_CONFIG 0x09
#define DTT_WRITE_CONVRATE 0x0a
#define DTT_WRITE_LOC_HIGHLIM 0x0b
#define DTT_WRITE_LOC_LOWLIM 0x0c
#define DTT_WRITE_REM_HIGHLIM 0x0d
#define DTT_WRITE_REM_LOWLIM 0x0e
#define DTT_WRITE_ONESHOT 0x0f
#define DTT_STATUS_BUSY 0x80 /* 1=ADC Converting */
#define DTT_STATUS_LHIGH 0x40 /* 1=Local High Temp Limit Tripped */
#define DTT_STATUS_LLOW 0x20 /* 1=Local Low Temp Limit Tripped */
#define DTT_STATUS_RHIGH 0x10 /* 1=Remote High Temp Limit Tripped */
#define DTT_STATUS_RLOW 0x08 /* 1=Remote Low Temp Limit Tripped */
#define DTT_STATUS_OPEN 0x04 /* 1=Remote Sensor Open-Circuit */
#define DTT_CONFIG_ALERT_MASKED 0x80 /* 0=ALERT Enabled, 1=ALERT Masked */
#define DTT_CONFIG_STANDBY 0x40 /* 0=Run, 1=Standby */
#define DTT_ADM1021_DEVID 0x41
typedef
struct {
uint i2c_addr:7; /* 7bit i2c chip address */
uint conv_rate:3; /* conversion rate */
uint enable_alert:1; /* enable alert output pin */
uint enable_local:1; /* enable internal temp sensor */
uint max_local:8; /* internal temp maximum */
uint min_local:8; /* internal temp minimum */
uint enable_remote:1; /* enable remote temp sensor */
uint max_remote:8; /* remote temp maximum */
uint min_remote:8; /* remote temp minimum */
}
dtt_cfg_t;
dtt_cfg_t dttcfg[] = CONFIG_SYS_DTT_ADM1021;
int
dtt_read (int sensor, int reg)
{
dtt_cfg_t *dcp = &dttcfg[sensor >> 1];
uchar data;
if (i2c_read(dcp->i2c_addr, reg, 1, &data, 1) != 0)
return -1;
return (int)data;
} /* dtt_read() */
int
dtt_write (int sensor, int reg, int val)
{
dtt_cfg_t *dcp = &dttcfg[sensor >> 1];
uchar data;
data = (uchar)(val & 0xff);
if (i2c_write(dcp->i2c_addr, reg, 1, &data, 1) != 0)
return 1;
return 0;
} /* dtt_write() */
int
dtt_init_one(int sensor)
{
dtt_cfg_t *dcp = &dttcfg[sensor >> 1];
int reg, val;
if (((sensor & 1) == 0 ? dcp->enable_local : dcp->enable_remote) == 0)
return 1; /* sensor is disabled (or rather ignored) */
/*
* Setup High Limit register
*/
if ((sensor & 1) == 0) {
reg = DTT_WRITE_LOC_HIGHLIM;
val = dcp->max_local;
}
else {
reg = DTT_WRITE_REM_HIGHLIM;
val = dcp->max_remote;
}
if (dtt_write (sensor, reg, val) != 0)
return 1;
/*
* Setup Low Limit register
*/
if ((sensor & 1) == 0) {
reg = DTT_WRITE_LOC_LOWLIM;
val = dcp->min_local;
}
else {
reg = DTT_WRITE_REM_LOWLIM;
val = dcp->min_remote;
}
if (dtt_write (sensor, reg, val) != 0)
return 1;
/* shouldn't hurt if the rest gets done twice */
/*
* Setup Conversion Rate register
*/
if (dtt_write (sensor, DTT_WRITE_CONVRATE, dcp->conv_rate) != 0)
return 1;
/*
* Setup configuraton register
*/
val = 0; /* running */
if (dcp->enable_alert == 0)
val |= DTT_CONFIG_ALERT_MASKED; /* mask ALERT pin */
if (dtt_write (sensor, DTT_WRITE_CONFIG, val) != 0)
return 1;
return 0;
} /* dtt_init_one() */
int
dtt_get_temp (int sensor)
{
signed char val;
if ((sensor & 1) == 0)
val = dtt_read(sensor, DTT_READ_LOC_VALUE);
else
val = dtt_read(sensor, DTT_READ_REM_VALUE);
return (int) val;
} /* dtt_get_temp() */

@ -1,73 +0,0 @@
/*
* (C) Copyright 2008
* Ricado Ribalda-Universidad Autonoma de Madrid, ricardo.ribalda@gmail.com
* This work has been supported by: QTechnology http://qtec.com/
* SPDX-License-Identifier: GPL-2.0+
*/
#include <common.h>
#include <i2c.h>
#include <dtt.h>
#define ADT7460_ADDRESS 0x2c
#define ADT7460_INVALID 128
#define ADT7460_CONFIG 0x40
#define ADT7460_REM1_TEMP 0x25
#define ADT7460_LOCAL_TEMP 0x26
#define ADT7460_REM2_TEMP 0x27
int dtt_read(int sensor, int reg)
{
u8 dir = reg;
u8 data;
if (i2c_read(ADT7460_ADDRESS, dir, 1, &data, 1) == -1)
return -1;
if (data == ADT7460_INVALID)
return -1;
return data;
}
int dtt_write(int sensor, int reg, int val)
{
u8 dir = reg;
u8 data = val;
if (i2c_write(ADT7460_ADDRESS, dir, 1, &data, 1) == -1)
return -1;
return 0;
}
int dtt_init_one(int sensor)
{
printf("ADT7460 at I2C address 0x%2x\n", ADT7460_ADDRESS);
if (dtt_write(0, ADT7460_CONFIG, 1) == -1) {
puts("Error initialiting ADT7460\n");
return -1;
}
return 0;
}
int dtt_get_temp(int sensor)
{
int aux;
u8 table[] =
{ ADT7460_REM1_TEMP, ADT7460_LOCAL_TEMP, ADT7460_REM2_TEMP };
if (sensor > 2) {
puts("DTT sensor does not exist\n");
return -1;
}
aux = dtt_read(0, table[sensor]);
if (aux == -1) {
puts("DTT temperature read failed\n");
return -1;
}
return aux;
}

@ -1,155 +0,0 @@
/*
* (C) Copyright 2001
* Erik Theisen, Wave 7 Optics, etheisen@mindspring.com.
*
* SPDX-License-Identifier: GPL-2.0+
*/
/*
* Dallas Semiconductor's DS1621/1631 Digital Thermometer and Thermostat.
*/
#include <common.h>
#include <i2c.h>
#include <dtt.h>
/*
* Device code
*/
#define DTT_I2C_DEV_CODE 0x48 /* Dallas Semi's DS1621 */
#define DTT_READ_TEMP 0xAA
#define DTT_READ_COUNTER 0xA8
#define DTT_READ_SLOPE 0xA9
#define DTT_WRITE_START_CONV 0xEE
#define DTT_WRITE_STOP_CONV 0x22
#define DTT_TEMP_HIGH 0xA1
#define DTT_TEMP_LOW 0xA2
#define DTT_CONFIG 0xAC
/*
* Config register bits
*/
#define DTT_CONFIG_1SHOT 0x01
#define DTT_CONFIG_POLARITY 0x02
#define DTT_CONFIG_R0 0x04 /* ds1631 only */
#define DTT_CONFIG_R1 0x08 /* ds1631 only */
#define DTT_CONFIG_NVB 0x10
#define DTT_CONFIG_TLF 0x20
#define DTT_CONFIG_THF 0x40
#define DTT_CONFIG_DONE 0x80
int dtt_read(int sensor, int reg)
{
int dlen;
uchar data[2];
/* Calculate sensor address and command */
sensor = DTT_I2C_DEV_CODE + (sensor & 0x07); /* Calculate addr of ds1621*/
/* Prepare to handle 2 byte result */
switch(reg) {
case DTT_READ_TEMP:
case DTT_TEMP_HIGH:
case DTT_TEMP_LOW:
dlen = 2;
break;
default:
dlen = 1;
}
/* Now try to read the register */
if (i2c_read(sensor, reg, 1, data, dlen) != 0)
return 1;
/* Handle 2 byte result */
if (dlen == 2)
return (short)((data[0] << 8) | data[1]);
return (int)data[0];
}
int dtt_write(int sensor, int reg, int val)
{
int dlen;
uchar data[2];
/* Calculate sensor address and register */
sensor = DTT_I2C_DEV_CODE + (sensor & 0x07);
/* Handle various data sizes. */
switch(reg) {
case DTT_READ_TEMP:
case DTT_TEMP_HIGH:
case DTT_TEMP_LOW:
dlen = 2;
data[0] = (char)((val >> 8) & 0xff); /* MSB first */
data[1] = (char)(val & 0xff);
break;
case DTT_WRITE_START_CONV:
case DTT_WRITE_STOP_CONV:
dlen = 0;
data[0] = (char)0;
data[1] = (char)0;
break;
default:
dlen = 1;
data[0] = (char)(val & 0xff);
}
/* Write value to device */
if (i2c_write(sensor, reg, 1, data, dlen) != 0)
return 1;
/* Poll NV memory busy bit in case write was to register stored in EEPROM */
while(i2c_reg_read(sensor, DTT_CONFIG) & DTT_CONFIG_NVB)
;
return 0;
}
int dtt_init_one(int sensor)
{
int val;
/* Setup High Temp */
val = ((CONFIG_SYS_DTT_MAX_TEMP * 2) << 7) & 0xff80;
if (dtt_write(sensor, DTT_TEMP_HIGH, val) != 0)
return 1;
/* Setup Low Temp - hysteresis */
val = (((CONFIG_SYS_DTT_MAX_TEMP - CONFIG_SYS_DTT_HYSTERESIS) * 2) << 7) & 0xff80;
if (dtt_write(sensor, DTT_TEMP_LOW, val) != 0)
return 1;
/*
* Setup configuraton register
*
* Clear THF & TLF, Reserved = 1, Polarity = Active Low, One Shot = YES
*
* We run in polled mode, since there isn't any way to know if this
* lousy device is ready to provide temperature readings on power up.
*/
val = 0x9;
if (dtt_write(sensor, DTT_CONFIG, val) != 0)
return 1;
return 0;
}
int dtt_get_temp(int sensor)
{
int i;
/* Start a conversion, may take up to 1 second. */
dtt_write(sensor, DTT_WRITE_START_CONV, 0);
for (i = 0; i <= 10; i++) {
udelay(100000);
if (dtt_read(sensor, DTT_CONFIG) & DTT_CONFIG_DONE)
break;
}
return (dtt_read(sensor, DTT_READ_TEMP) / 256);
}

@ -1,137 +0,0 @@
#include <common.h>
#include <asm/ic/ssi.h>
#include <ds1722.h>
static void ds1722_select(int dev)
{
ssi_set_interface(4096, 0, 0, 0);
ssi_chip_select(0);
udelay(1);
ssi_chip_select(dev);
udelay(1);
}
u8 ds1722_read(int dev, int addr)
{
u8 res;
ds1722_select(dev);
ssi_tx_byte(addr);
res = ssi_rx_byte();
ssi_chip_select(0);
return res;
}
void ds1722_write(int dev, int addr, u8 data)
{
ds1722_select(dev);
ssi_tx_byte(0x80|addr);
ssi_tx_byte(data);
ssi_chip_select(0);
}
u16 ds1722_temp(int dev, int resolution)
{
static int useconds[] = {
75000, 150000, 300000, 600000, 1200000
};
char temp;
u16 res;
/* set up the desired resulotion ... */
ds1722_write(dev, 0, 0xe0 | (resolution << 1));
/* wait while the chip measures the tremperature */
udelay(useconds[resolution]);
res = (temp = ds1722_read(dev, 2)) << 8;
if (temp < 0) {
temp = (16 - (ds1722_read(dev, 1) >> 4)) & 0x0f;
} else {
temp = (ds1722_read(dev, 1) >> 4);
}
switch (temp) {
case 0:
/* .0000 */
break;
case 1:
/* .0625 */
res |=1;
break;
case 2:
/* .1250 */
res |=1;
break;
case 3:
/* .1875 */
res |=2;
break;
case 4:
/* .2500 */
res |=3;
break;
case 5:
/* .3125 */
res |=3;
break;
case 6:
/* .3750 */
res |=4;
break;
case 7:
/* .4375 */
res |=4;
break;
case 8:
/* .5000 */
res |=5;
break;
case 9:
/* .5625 */
res |=6;
break;
case 10:
/* .6250 */
res |=6;
break;
case 11:
/* .6875 */
res |=7;
break;
case 12:
/* .7500 */
res |=8;
break;
case 13:
/* .8125 */
res |=8;
break;
case 14:
/* .8750 */
res |=9;
break;
case 15:
/* .9375 */
res |=9;
break;
}
return res;
}
int ds1722_probe(int dev)
{
u16 temp = ds1722_temp(dev, DS1722_RESOLUTION_12BIT);
printf("%d.%d deg C\n\n", (char)(temp >> 8), temp & 0xff);
return 0;
}

@ -1,126 +0,0 @@
/*
* SPDX-License-Identifier: GPL-2.0+
*/
/*
* Dallas Semiconductor's DS1775 Digital Thermometer and Thermostat
*/
#include <common.h>
#include <i2c.h>
#include <dtt.h>
#define DTT_I2C_DEV_CODE 0x48 /* Dallas Semi's DS1775 device code */
#define DTT_READ_TEMP 0x0
#define DTT_CONFIG 0x1
#define DTT_TEMP_HYST 0x2
#define DTT_TEMP_OS 0x3
int dtt_read(int sensor, int reg)
{
int dlen;
uchar data[2];
/*
* Calculate sensor address and command
*/
sensor = DTT_I2C_DEV_CODE + (sensor & 0x07); /* Calculate addr of ds1775 */
/*
* Prepare to handle 2 byte result
*/
if ((reg == DTT_READ_TEMP) ||
(reg == DTT_TEMP_OS) || (reg == DTT_TEMP_HYST))
dlen = 2;
else
dlen = 1;
/*
* Now try to read the register
*/
if (i2c_read(sensor, reg, 1, data, dlen) != 0)
return 1;
/*
* Handle 2 byte result
*/
if (dlen == 2)
return ((int)((short)data[1] + (((short)data[0]) << 8)));
return (int) data[0];
}
int dtt_write(int sensor, int reg, int val)
{
int dlen;
uchar data[2];
/*
* Calculate sensor address and register
*/
sensor = DTT_I2C_DEV_CODE + (sensor & 0x07);
/*
* Handle various data sizes
*/
if ((reg == DTT_READ_TEMP) ||
(reg == DTT_TEMP_OS) || (reg == DTT_TEMP_HYST)) {
dlen = 2;
data[0] = (char)((val >> 8) & 0xff); /* MSB first */
data[1] = (char)(val & 0xff);
} else {
dlen = 1;
data[0] = (char)(val & 0xff);
}
/*
* Write value to device
*/
if (i2c_write(sensor, reg, 1, data, dlen) != 0)
return 1;
return 0;
}
int dtt_init_one(int sensor)
{
int val;
/*
* Setup High Temp
*/
val = ((CONFIG_SYS_DTT_MAX_TEMP * 2) << 7) & 0xff80;
if (dtt_write(sensor, DTT_TEMP_OS, val) != 0)
return 1;
udelay(50000); /* Max 50ms */
/*
* Setup Low Temp - hysteresis
*/
val = (((CONFIG_SYS_DTT_MAX_TEMP - CONFIG_SYS_DTT_HYSTERESIS) * 2) << 7) & 0xff80;
if (dtt_write(sensor, DTT_TEMP_HYST, val) != 0)
return 1;
udelay(50000); /* Max 50ms */
/*
* Setup configuraton register
*
* Fault Tolerance limits 4, Thermometer resolution bits is 9,
* Polarity = Active Low,continuous conversion mode, Thermostat
* mode is interrupt mode
*/
val = 0xa;
if (dtt_write(sensor, DTT_CONFIG, val) != 0)
return 1;
udelay(50000); /* Max 50ms */
return 0;
}
int dtt_get_temp(int sensor)
{
return (dtt_read(sensor, DTT_READ_TEMP) / 256);
}

@ -1,65 +0,0 @@
/*
* DS620 DTT support
*
* (C) Copyright 2014 3ADEV <http://www.3adev.com>
* Written-by: Albert ARIBAUD <albert.aribaud@3adev.fr>
*
* SPDX-License-Identifier: GPL-2.0+
*/
/*
* Dallas Semiconductor's DS1621/1631 Digital Thermometer and Thermostat.
*/
#include <common.h>
#include <i2c.h>
#include <dtt.h>
/*
* Device code
*/
#define DTT_I2C_DEV_CODE 0x48
#define DTT_START_CONVERT 0x51
#define DTT_TEMP 0xAA
#define DTT_CONFIG 0xAC
/*
* Config register MSB bits
*/
#define DTT_CONFIG_1SHOT 0x01
#define DTT_CONFIG_AUTOC 0x02
#define DTT_CONFIG_R0 0x04 /* always 1 */
#define DTT_CONFIG_R1 0x08 /* always 1 */
#define DTT_CONFIG_TLF 0x10
#define DTT_CONFIG_THF 0x20
#define DTT_CONFIG_NVB 0x40
#define DTT_CONFIG_DONE 0x80
#define CHIP(sensor) (DTT_I2C_DEV_CODE + (sensor & 0x07))
int dtt_init_one(int sensor)
{
uint8_t config = DTT_CONFIG_1SHOT
| DTT_CONFIG_R0
| DTT_CONFIG_R1;
return i2c_write(CHIP(sensor), DTT_CONFIG, 1, &config, 1);
}
int dtt_get_temp(int sensor)
{
uint8_t status;
uint8_t temp[2];
/* Start a conversion, may take up to 1 second. */
i2c_write(CHIP(sensor), DTT_START_CONVERT, 1, NULL, 0);
do {
if (i2c_read(CHIP(sensor), DTT_CONFIG, 1, &status, 1))
/* bail out if I2C error */
status |= DTT_CONFIG_DONE;
} while (!(status & DTT_CONFIG_DONE));
if (i2c_read(CHIP(sensor), DTT_TEMP, 1, temp, 2))
/* bail out if I2C error */
return -274; /* below absolute zero == error */
return ((int16_t)(temp[1] | (temp[0] << 8))) >> 7;
}

@ -1,160 +0,0 @@
/*
* (C) Copyright 2007-2008
* Dirk Eibach, Guntermann & Drunck GmbH, eibach@gdsys.de
* based on lm75.c by Bill Hunter
*
* SPDX-License-Identifier: GPL-2.0+
*/
/*
* National LM63/LM64 Temperature Sensor
* Main difference: LM 64 has -16 Kelvin temperature offset
*/
#include <common.h>
#include <i2c.h>
#include <dtt.h>
#define DTT_I2C_LM63_ADDR 0x4C /* National LM63 device */
#define DTT_READ_TEMP_RMT_MSB 0x01
#define DTT_CONFIG 0x03
#define DTT_READ_TEMP_RMT_LSB 0x10
#define DTT_TACHLIM_LSB 0x48
#define DTT_TACHLIM_MSB 0x49
#define DTT_FAN_CONFIG 0x4A
#define DTT_PWM_FREQ 0x4D
#define DTT_PWM_LOOKUP_BASE 0x50
struct pwm_lookup_entry {
u8 temp;
u8 pwm;
};
/*
* Device code
*/
int dtt_read(int sensor, int reg)
{
int dlen;
uchar data[2];
/*
* Calculate sensor address and register.
*/
if (!sensor)
sensor = DTT_I2C_LM63_ADDR; /* legacy config */
dlen = 1;
/*
* Now try to read the register.
*/
if (i2c_read(sensor, reg, 1, data, dlen) != 0)
return -1;
return (int)data[0];
} /* dtt_read() */
int dtt_write(int sensor, int reg, int val)
{
int dlen;
uchar data[2];
/*
* Calculate sensor address and register.
*/
if (!sensor)
sensor = DTT_I2C_LM63_ADDR; /* legacy config */
dlen = 1;
data[0] = (char)(val & 0xff);
/*
* Write value to register.
*/
if (i2c_write(sensor, reg, 1, data, dlen) != 0)
return 1;
return 0;
} /* dtt_write() */
static int is_lm64(int sensor)
{
return sensor && (sensor != DTT_I2C_LM63_ADDR);
}
int dtt_init_one(int sensor)
{
int i;
int val;
struct pwm_lookup_entry pwm_lookup[] = CONFIG_DTT_PWM_LOOKUPTABLE;
/*
* Set PWM Frequency to 2.5% resolution
*/
val = 20;
if (dtt_write(sensor, DTT_PWM_FREQ, val) != 0)
return 1;
/*
* Set Tachometer Limit
*/
val = CONFIG_DTT_TACH_LIMIT;
if (dtt_write(sensor, DTT_TACHLIM_LSB, val & 0xff) != 0)
return 1;
if (dtt_write(sensor, DTT_TACHLIM_MSB, (val >> 8) & 0xff) != 0)
return 1;
/*
* Make sure PWM Lookup-Table is writeable
*/
if (dtt_write(sensor, DTT_FAN_CONFIG, 0x20) != 0)
return 1;
/*
* Setup PWM Lookup-Table
*/
for (i = 0; i < ARRAY_SIZE(pwm_lookup); i++) {
int address = DTT_PWM_LOOKUP_BASE + 2 * i;
val = pwm_lookup[i].temp;
if (is_lm64(sensor))
val -= 16;
if (dtt_write(sensor, address, val) != 0)
return 1;
val = dtt_read(sensor, address);
val = pwm_lookup[i].pwm;
if (dtt_write(sensor, address + 1, val) != 0)
return 1;
}
/*
* Enable PWM Lookup-Table, PWM Clock 360 kHz, Tachometer Mode 2
*/
val = 0x02;
if (dtt_write(sensor, DTT_FAN_CONFIG, val) != 0)
return 1;
/*
* Enable Tach input
*/
val = dtt_read(sensor, DTT_CONFIG) | 0x04;
if (dtt_write(sensor, DTT_CONFIG, val) != 0)
return 1;
return 0;
}
int dtt_get_temp(int sensor)
{
s16 temp = (dtt_read(sensor, DTT_READ_TEMP_RMT_MSB) << 8)
| (dtt_read(sensor, DTT_READ_TEMP_RMT_LSB));
if (is_lm64(sensor))
temp += 16 << 8;
/* Ignore LSB for now, U-Boot only prints natural numbers */
return temp >> 8;
}

@ -1,146 +0,0 @@
/*
* (C) Copyright 2007-2008
* Larry Johnson, lrj@acm.org
*
* based on dtt/lm75.c which is ...
*
* (C) Copyright 2001
* Bill Hunter, Wave 7 Optics, williamhunter@mediaone.net
*
* SPDX-License-Identifier: GPL-2.0+
*/
/*
* National Semiconductor LM73 Temperature Sensor
*/
#include <common.h>
#include <i2c.h>
#include <dtt.h>
/*
* Device code
*/
#define DTT_I2C_DEV_CODE 0x48 /* National Semi's LM73 device */
#define DTT_READ_TEMP 0x0
#define DTT_CONFIG 0x1
#define DTT_TEMP_HIGH 0x2
#define DTT_TEMP_LOW 0x3
#define DTT_CONTROL 0x4
#define DTT_ID 0x7
int dtt_read(int const sensor, int const reg)
{
int dlen;
uint8_t data[2];
/*
* Validate 'reg' param and get register size.
*/
switch (reg) {
case DTT_CONFIG:
case DTT_CONTROL:
dlen = 1;
break;
case DTT_READ_TEMP:
case DTT_TEMP_HIGH:
case DTT_TEMP_LOW:
case DTT_ID:
dlen = 2;
break;
default:
return -1;
}
/*
* Try to read the register at the calculated sensor address.
*/
if (0 !=
i2c_read(DTT_I2C_DEV_CODE + (sensor & 0x07), reg, 1, data, dlen))
return -1;
/*
* Handle 2 byte result.
*/
if (2 == dlen)
return (int)((unsigned)data[0] << 8 | (unsigned)data[1]);
return (int)data[0];
} /* dtt_read() */
int dtt_write(int const sensor, int const reg, int const val)
{
int dlen;
uint8_t data[2];
/*
* Validate 'reg' param and handle register size
*/
switch (reg) {
case DTT_CONFIG:
case DTT_CONTROL:
dlen = 1;
data[0] = (uint8_t) val;
break;
case DTT_TEMP_HIGH:
case DTT_TEMP_LOW:
dlen = 2;
data[0] = (uint8_t) (val >> 8); /* MSB first */
data[1] = (uint8_t) val;
break;
default:
return -1;
}
/*
* Write value to register at the calculated sensor address.
*/
return 0 != i2c_write(DTT_I2C_DEV_CODE + (sensor & 0x07), reg, 1, data,
dlen);
} /* dtt_write() */
int dtt_init_one(int const sensor)
{
int val;
/*
* Validate the Identification register
*/
if (0x0190 != dtt_read(sensor, DTT_ID))
return -1;
/*
* Setup THIGH (upper-limit) and TLOW (lower-limit) registers
*/
val = CONFIG_SYS_DTT_MAX_TEMP << 7;
if (dtt_write(sensor, DTT_TEMP_HIGH, val))
return -1;
val = CONFIG_SYS_DTT_MIN_TEMP << 7;
if (dtt_write(sensor, DTT_TEMP_LOW, val))
return -1;
/*
* Setup configuraton register
*/
/* config = alert active low, disabled, and reset */
val = 0x64;
if (dtt_write(sensor, DTT_CONFIG, val))
return -1;
/*
* Setup control/status register
*/
/* control = temp resolution 0.25C */
val = 0x00;
if (dtt_write(sensor, DTT_CONTROL, val))
return -1;
dtt_read(sensor, DTT_CONTROL); /* clear temperature flags */
return 0;
} /* dtt_init_one() */
int dtt_get_temp(int const sensor)
{
int const ret = dtt_read(sensor, DTT_READ_TEMP);
if (ret < 0) {
printf("DTT temperature read failed.\n");
return 0;
}
return (int)((int16_t) ret + 0x0040) >> 7;
} /* dtt_get_temp() */

@ -1,139 +0,0 @@
/*
* (C) Copyright 2001
* Bill Hunter, Wave 7 Optics, williamhunter@mediaone.net
*
* SPDX-License-Identifier: GPL-2.0+
*/
/*
* On Semiconductor's LM75 Temperature Sensor
*/
#include <common.h>
#include <i2c.h>
#include <dtt.h>
/*
* Device code
*/
#define DTT_I2C_DEV_CODE 0x48 /* ON Semi's LM75 device */
#define DTT_READ_TEMP 0x0
#define DTT_CONFIG 0x1
#define DTT_TEMP_HYST 0x2
#define DTT_TEMP_SET 0x3
int dtt_read(int sensor, int reg)
{
int dlen;
uchar data[2];
#ifdef CONFIG_DTT_AD7414
/*
* On AD7414 the first value upon bootup is not read correctly.
* This is most likely because of the 800ms update time of the
* temp register in normal update mode. To get current values
* each time we issue the "dtt" command including upon powerup
* we switch into one-short mode.
*
* Issue one-shot mode command
*/
dtt_write(sensor, DTT_CONFIG, 0x64);
#endif
/* Validate 'reg' param */
if((reg < 0) || (reg > 3))
return -1;
/* Calculate sensor address and register. */
sensor = DTT_I2C_DEV_CODE + (sensor & 0x07);
/* Prepare to handle 2 byte result. */
if ((reg == DTT_READ_TEMP) ||
(reg == DTT_TEMP_HYST) ||
(reg == DTT_TEMP_SET))
dlen = 2;
else
dlen = 1;
/* Now try to read the register. */
if (i2c_read(sensor, reg, 1, data, dlen) != 0)
return -1;
/* Handle 2 byte result. */
if (dlen == 2)
return ((int)((short)data[1] + (((short)data[0]) << 8)));
return (int)data[0];
} /* dtt_read() */
int dtt_write(int sensor, int reg, int val)
{
int dlen;
uchar data[2];
/* Validate 'reg' param */
if ((reg < 0) || (reg > 3))
return 1;
/* Calculate sensor address and register. */
sensor = DTT_I2C_DEV_CODE + (sensor & 0x07);
/* Handle 2 byte values. */
if ((reg == DTT_READ_TEMP) ||
(reg == DTT_TEMP_HYST) ||
(reg == DTT_TEMP_SET)) {
dlen = 2;
data[0] = (char)((val >> 8) & 0xff); /* MSB first */
data[1] = (char)(val & 0xff);
} else {
dlen = 1;
data[0] = (char)(val & 0xff);
}
/* Write value to register. */
if (i2c_write(sensor, reg, 1, data, dlen) != 0)
return 1;
return 0;
} /* dtt_write() */
int dtt_init_one(int sensor)
{
int val;
/* Setup TSET ( trip point ) register */
val = ((CONFIG_SYS_DTT_MAX_TEMP * 2) << 7) & 0xff80; /* trip */
if (dtt_write(sensor, DTT_TEMP_SET, val) != 0)
return 1;
/* Setup THYST ( untrip point ) register - Hysteresis */
val = (((CONFIG_SYS_DTT_MAX_TEMP - CONFIG_SYS_DTT_HYSTERESIS) * 2) << 7) & 0xff80;
if (dtt_write(sensor, DTT_TEMP_HYST, val) != 0)
return 1;
/* Setup configuraton register */
#ifdef CONFIG_DTT_AD7414
/* config = alert active low and disabled */
val = 0x60;
#else
/* config = 6 sample integration, int mode, active low, and enable */
val = 0x18;
#endif
if (dtt_write(sensor, DTT_CONFIG, val) != 0)
return 1;
return 0;
} /* dtt_init_one() */
int dtt_get_temp(int sensor)
{
int const ret = dtt_read(sensor, DTT_READ_TEMP);
if (ret < 0) {
printf("DTT temperature read failed.\n");
return 0;
}
return (int)((int16_t) ret / 256);
} /* dtt_get_temp() */

@ -1,111 +0,0 @@
/*
* (C) Copyright 2006
* Heiko Schocher, DENX Software Enginnering <hs@denx.de>
*
* based on dtt/lm75.c which is ...
*
* (C) Copyright 2001
* Bill Hunter, Wave 7 Optics, williamhunter@mediaone.net
*
* SPDX-License-Identifier: GPL-2.0+
*/
/*
* On Semiconductor's LM81 Temperature Sensor
*/
#include <common.h>
#include <i2c.h>
#include <dtt.h>
/*
* Device code
*/
#define DTT_I2C_DEV_CODE 0x2c /* ON Semi's LM81 device */
#define DTT_READ_TEMP 0x27
#define DTT_CONFIG_TEMP 0x4b
#define DTT_TEMP_MAX 0x39
#define DTT_TEMP_HYST 0x3a
#define DTT_CONFIG 0x40
int dtt_read(int sensor, int reg)
{
int dlen = 1;
uchar data[2];
/*
* Calculate sensor address and register.
*/
sensor = DTT_I2C_DEV_CODE + (sensor & 0x03); /* calculate address of lm81 */
/*
* Now try to read the register.
*/
if (i2c_read(sensor, reg, 1, data, dlen) != 0)
return -1;
return (int)data[0];
} /* dtt_read() */
int dtt_write(int sensor, int reg, int val)
{
uchar data;
/*
* Calculate sensor address and register.
*/
sensor = DTT_I2C_DEV_CODE + (sensor & 0x03); /* calculate address of lm81 */
data = (char)(val & 0xff);
/*
* Write value to register.
*/
if (i2c_write(sensor, reg, 1, &data, 1) != 0)
return 1;
return 0;
} /* dtt_write() */
#define DTT_MANU 0x3e
#define DTT_REV 0x3f
#define DTT_CONFIG 0x40
#define DTT_ADR 0x48
int dtt_init_one(int sensor)
{
int man;
int adr;
int rev;
if (dtt_write (sensor, DTT_CONFIG, 0x01) < 0)
return 1;
/* The LM81 needs 400ms to get the correct values ... */
udelay (400000);
man = dtt_read (sensor, DTT_MANU);
if (man != 0x01)
return 1;
adr = dtt_read (sensor, DTT_ADR);
if (adr < 0)
return 1;
rev = dtt_read (sensor, DTT_REV);
if (rev < 0)
return 1;
debug ("DTT: Found LM81@%x Rev: %d\n", adr, rev);
return 0;
} /* dtt_init_one() */
#define TEMP_FROM_REG(temp) \
((temp)<256?((((temp)&0x1fe) >> 1) * 10) + ((temp) & 1) * 5: \
((((temp)&0x1fe) >> 1) -255) * 10 - ((temp) & 1) * 5) \
int dtt_get_temp(int sensor)
{
int val = dtt_read (sensor, DTT_READ_TEMP);
int tmpcnf = dtt_read (sensor, DTT_CONFIG_TEMP);
return (TEMP_FROM_REG((val << 1) + ((tmpcnf & 0x80) >> 7))) / 10;
} /* dtt_get_temp() */

@ -13,7 +13,6 @@
* Alphabetical list of all possible commands.
*/
#define CONFIG_CMD_DTT /* Digital Therm and Thermostat */
#define CONFIG_CMD_EEPROM /* EEPROM read/write support */
#define CONFIG_CMD_FDC /* Floppy Disk Support */
#define CONFIG_CMD_FUSE /* Device fuse support */

@ -163,26 +163,6 @@
#define CONFIG_SYS_EEPROM_WREN 1
#define CONFIG_SYS_I2C_BOOT_EEPROM_ADDR 0x52
/*
* standard dtt sensor configuration - bottom bit will determine local or
* remote sensor of the TMP401
*/
#define CONFIG_DTT_SENSORS { 0, 1 }
/*
* The PMC440 uses a TI TMP401 temperature sensor. This part
* is basically compatible to the ADM1021 that is supported
* by U-Boot.
*
* - i2c addr 0x4c
* - conversion rate 0x02 = 0.25 conversions/second
* - ALERT ouput disabled
* - local temp sensor enabled, min set to 0 deg, max set to 70 deg
* - remote temp sensor enabled, min set to 0 deg, max set to 70 deg
*/
#define CONFIG_DTT_ADM1021
#define CONFIG_SYS_DTT_ADM1021 { { 0x4c, 0x02, 0, 1, 70, 0, 1, 70, 0} }
#define CONFIG_PREBOOT "echo Add \\\"run fpga\\\" and " \
"\\\"painit\\\" to preboot command"
@ -258,7 +238,6 @@
/* Partitions */
#define CONFIG_CMD_DTT
#define CONFIG_CMD_EEPROM
#define CONFIG_CMD_NAND
#define CONFIG_CMD_PCI

@ -184,13 +184,6 @@
#define CONFIG_RTC_DS1337 /* use ds1337 rtc via i2c */
#define CONFIG_SYS_I2C_RTC_ADDR 0x68 /* at address 0x68 */
/* I2C SYSMON (LM75) */
#define CONFIG_DTT_LM75 1 /* ON Semi's LM75 */
#define CONFIG_DTT_SENSORS {0} /* Sensor addresses */
#define CONFIG_SYS_DTT_MAX_TEMP 70
#define CONFIG_SYS_DTT_LOW_TEMP -30
#define CONFIG_SYS_DTT_HYSTERESIS 3
/*
* TSEC
*/
@ -280,7 +273,6 @@
/*
* Command line configuration.
*/
#define CONFIG_CMD_DTT
#define CONFIG_CMD_EEPROM
#define CONFIG_CMD_JFFS2
#define CONFIG_CMD_REGINFO

@ -129,27 +129,6 @@
#define CONFIG_HWCONFIG
#define CONFIG_DTT_ADM1021 1 /* ADM1021 temp sensor support */
#define CONFIG_SYS_DTT_BUS_NUM 1 /* The I2C bus for DTT */
#define CONFIG_DTT_SENSORS { 0, 1 } /* Sensor index */
/*
* ADM1021/NCT72 temp sensor configuration (see dtt/adm1021.c for details).
* there will be one entry in this array for each two (dummy) sensors in
* CONFIG_DTT_SENSORS.
*
* For uCP1020 module:
* - only one ADM1021/NCT72
* - i2c addr 0x41
* - conversion rate 0x02 = 0.25 conversions/second
* - ALERT output disabled
* - local temp sensor enabled, min set to 0 deg, max set to 85 deg
* - remote temp sensor enabled, min set to 0 deg, max set to 85 deg
*/
#define CONFIG_SYS_DTT_ADM1021 { { CONFIG_SYS_I2C_NCT72_ADDR, \
0x02, 0, 1, 0, 85, 1, 0, 85} }
#define CONFIG_CMD_DTT
/*
* These can be toggled for performance analysis, otherwise use default.
*/

@ -124,14 +124,6 @@
#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3
#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 10
/* I2C SYSMON (LM75, AD7414 is almost compatible) */
#define CONFIG_DTT_LM75 1 /* ON Semi's LM75 */
#define CONFIG_DTT_AD7414 1 /* use AD7414 */
#define CONFIG_DTT_SENSORS {0} /* Sensor addresses */
#define CONFIG_SYS_DTT_MAX_TEMP 70
#define CONFIG_SYS_DTT_LOW_TEMP -30
#define CONFIG_SYS_DTT_HYSTERESIS 3
/*-----------------------------------------------------------------------
* Ethernet
*----------------------------------------------------------------------*/
@ -160,7 +152,6 @@
/*
* Commands additional to the ones defined in amcc-common.h
*/
#define CONFIG_CMD_DTT
#define CONFIG_CMD_NAND
/*-----------------------------------------------------------------------

@ -261,14 +261,6 @@
#define CONFIG_4xx_CONFIG_I2C_EEPROM_OFFSET 0
#define CONFIG_4xx_CONFIG_BLOCKSIZE 16
/* I2C SYSMON (LM75, AD7414 is almost compatible) */
#define CONFIG_DTT_LM75 /* ON Semi's LM75 */
#define CONFIG_DTT_AD7414 /* use AD7414 */
#define CONFIG_DTT_SENSORS {0} /* Sensor addresses */
#define CONFIG_SYS_DTT_MAX_TEMP 70
#define CONFIG_SYS_DTT_LOW_TEMP -30
#define CONFIG_SYS_DTT_HYSTERESIS 3
#if !defined(CONFIG_ARCHES)
/* RTC configuration */
#define CONFIG_RTC_M41T62
@ -369,17 +361,14 @@
* Commands additional to the ones defined in amcc-common.h
*/
#if defined(CONFIG_ARCHES)
#define CONFIG_CMD_DTT
#define CONFIG_CMD_PCI
#define CONFIG_CMD_SDRAM
#elif defined(CONFIG_CANYONLANDS)
#define CONFIG_CMD_DTT
#define CONFIG_CMD_NAND
#define CONFIG_CMD_PCI
#define CONFIG_CMD_SATA
#define CONFIG_CMD_SDRAM
#elif defined(CONFIG_GLACIER)
#define CONFIG_CMD_DTT
#define CONFIG_CMD_NAND
#define CONFIG_CMD_PCI
#define CONFIG_CMD_SDRAM

@ -54,7 +54,6 @@
/*
* Commands additional to the ones defined in amcc-common.h
*/
#define CONFIG_CMD_DTT
#undef CONFIG_CMD_EEPROM
#undef CONFIG_CMD_IRQ
@ -108,13 +107,6 @@
#define CONFIG_SYS_SPD_BUS_NUM 4
/* Temp sensor/hwmon/dtt */
#define CONFIG_SYS_DTT_BUS_NUM 4
#define CONFIG_DTT_LM63 1 /* National LM63 */
#define CONFIG_DTT_SENSORS { 0x4c, 0x4e, 0x18 } /* Sensor addresses */
#define CONFIG_DTT_PWM_LOOKUPTABLE \
{ { 46, 10 }, { 48, 14 }, { 50, 19 }, { 52, 23 },\
{ 54, 27 }, { 56, 31 }, { 58, 36 }, { 60, 40 } }
#define CONFIG_DTT_TACH_LIMIT 0xa10
#define CONFIG_SYS_ICS8N3QV01_I2C {1, 3}
#define CONFIG_SYS_SIL1178_I2C {0, 2}

@ -52,7 +52,6 @@
/*
* Commands additional to the ones defined in amcc-common.h
*/
#define CONFIG_CMD_DTT
#undef CONFIG_CMD_EEPROM
#undef CONFIG_CMD_IRQ

@ -45,8 +45,6 @@
/* Thermal Management Unit */
#define CONFIG_EXYNOS_TMU
#define CONFIG_CMD_DTT
#define CONFIG_TMU_CMD_DTT
/* MMC SPL */
#define COPY_BL2_FNPTR_ADDR 0x02020030

@ -218,13 +218,6 @@
#define CONFIG_4xx_CONFIG_I2C_EEPROM_OFFSET 0
#define CONFIG_4xx_CONFIG_BLOCKSIZE 16
/* I2C SYSMON */
#define CONFIG_DTT_LM63 1 /* National LM63 */
#define CONFIG_DTT_SENSORS { 0 } /* Sensor addresses */
#define CONFIG_DTT_PWM_LOOKUPTABLE \
{ { 40, 10 }, { 50, 20 }, { 60, 40 } }
#define CONFIG_DTT_TACH_LIMIT 0xa10
/* RTC configuration */
#define CONFIG_RTC_DS1337 1
#define CONFIG_SYS_I2C_RTC_ADDR 0x68
@ -272,7 +265,6 @@
/*
* Commands additional to the ones defined in amcc-common.h
*/
#define CONFIG_CMD_DTT
#define CONFIG_CMD_PCI
#define CONFIG_CMD_SDRAM

@ -54,7 +54,6 @@
/*
* Commands additional to the ones defined in amcc-common.h
*/
#define CONFIG_CMD_DTT
#undef CONFIG_CMD_EEPROM
#undef CONFIG_CMD_IRQ
@ -90,11 +89,6 @@
#define CONFIG_SYS_I2C_PPC4XX_SPEED_0 100000
/* Temp sensor/hwmon/dtt */
#define CONFIG_DTT_LM63 1 /* National LM63 */
#define CONFIG_DTT_SENSORS { 0 } /* Sensor addresses */
#define CONFIG_DTT_PWM_LOOKUPTABLE \
{ { 40, 10 }, { 50, 20 }, { 60, 40 } }
#define CONFIG_DTT_TACH_LIMIT 0xa10
/*
* FLASH organization

@ -327,14 +327,6 @@
#define CONFIG_4xx_CONFIG_I2C_EEPROM_OFFSET 0
#define CONFIG_4xx_CONFIG_BLOCKSIZE 16
/* Temp sensor/hwmon/dtt */
#define CONFIG_DTT_LM63 1 /* National LM63 */
#define CONFIG_DTT_SENSORS { 0x18, 0x4c, 0x4e } /* Sensor addresses */
#define CONFIG_DTT_PWM_LOOKUPTABLE \
{ { 40, 10 }, { 43, 13 }, { 46, 16 }, \
{ 50, 20 }, { 53, 27 }, { 56, 34 }, { 60, 40 } }
#define CONFIG_DTT_TACH_LIMIT 0xa10
/*-----------------------------------------------------------------------
* Ethernet
*----------------------------------------------------------------------*/
@ -373,7 +365,6 @@
/*
* Commands additional to the ones defined in amcc-common.h
*/
#define CONFIG_CMD_DTT
#define CONFIG_SYS_POST_MEMORY_ON CONFIG_SYS_POST_MEMORY

@ -123,31 +123,6 @@
#define CONFIG_SYS_I2C_RTC_ADDR 0x68
#define CONFIG_SYS_M41T11_BASE_YEAR 1900 /* play along with linux */
/* I2C DTT */
#define CONFIG_DTT_ADM1021 1 /* ADM1021 temp sensor support */
#define CONFIG_SYS_DTT_BUS_NUM 1 /* The I2C bus for DTT */
/*
* standard dtt sensor configuration - bottom bit will determine local or
* remote sensor of the ADM1021, the rest determines index into
* CONFIG_SYS_DTT_ADM1021 array below.
*/
#define CONFIG_DTT_SENSORS { 0, 1 }
/*
* ADM1021 temp sensor configuration (see dtt/adm1021.c for details).
* there will be one entry in this array for each two (dummy) sensors in
* CONFIG_DTT_SENSORS.
*
* For Katmai board:
* - only one ADM1021
* - i2c addr 0x18
* - conversion rate 0x02 = 0.25 conversions/second
* - ALERT ouput disabled
* - local temp sensor enabled, min set to 0 deg, max set to 85 deg
* - remote temp sensor enabled, min set to 0 deg, max set to 85 deg
*/
#define CONFIG_SYS_DTT_ADM1021 { { 0x18, 0x02, 0, 1, 0, 85, 1, 0, 58} }
/*-----------------------------------------------------------------------
* Environment
*----------------------------------------------------------------------*/

@ -317,10 +317,6 @@
#define CONFIG_4xx_CONFIG_I2C_EEPROM_OFFSET 0
#define CONFIG_4xx_CONFIG_BLOCKSIZE 16
/* Standard DTT sensor configuration */
#define CONFIG_DTT_DS1775 1
#define CONFIG_DTT_SENSORS { 0 }
/* RTC configuration */
#define CONFIG_RTC_DS1338 1
#define CONFIG_SYS_I2C_RTC_ADDR 0x68

@ -14,7 +14,6 @@
#define CONFIG_BOOTCOUNT_LIMIT
#define CONFIG_CMD_DTT
#define CONFIG_JFFS2_CMDLINE
/* standard km ethernet_present for piggy */

@ -215,13 +215,6 @@
#define CONFIG_KM_IVM_BUS 2 /* I2C2 (Mux-Port 1)*/
/* I2C SYSMON (LM75, AD7414 is almost compatible) */
#define CONFIG_DTT_LM75 /* ON Semi's LM75 */
#define CONFIG_DTT_SENSORS {0, 1, 2, 3} /* Sensor addresses */
#define CONFIG_SYS_DTT_MAX_TEMP 70
#define CONFIG_SYS_DTT_HYSTERESIS 3
#define CONFIG_SYS_DTT_BUS_NUM 1
#if defined(CONFIG_CMD_NAND)
#define CONFIG_NAND_KMETER1
#define CONFIG_SYS_MAX_NAND_DEVICE 1

@ -268,13 +268,6 @@ int get_sda(void);
int get_scl(void);
#endif
/* I2C SYSMON (LM75, AD7414 is almost compatible) */
#define CONFIG_DTT_LM75 /* ON Semi's LM75 */
#define CONFIG_DTT_SENSORS {0} /* Sensor addresses */
#define CONFIG_SYS_DTT_MAX_TEMP 70
#define CONFIG_SYS_DTT_HYSTERESIS 3
#define CONFIG_SYS_DTT_BUS_NUM 2
#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1
#define CONFIG_SYS_IMMR 0xF0000000

@ -189,10 +189,6 @@
#define CONFIG_SYS_I2C_EEPROM_ADDR 0x52 /* I2C boot EEPROM (24C02BN) */
#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1 /* Bytes of address */
/* Standard DTT sensor configuration */
#define CONFIG_DTT_DS1775 1
#define CONFIG_DTT_SENSORS { 0 }
/* RTC configuration */
#define CONFIG_RTC_X1205 1
#define CONFIG_SYS_I2C_RTC_ADDR 0x6f
@ -231,7 +227,6 @@
/*
* Commands additional to the ones defined in amcc-common.h
*/
#define CONFIG_CMD_DTT
#define CONFIG_CMD_PCI
/* POST support */

@ -33,7 +33,6 @@
/*
* Command line configuration.
*/
#define CONFIG_CMD_DTT
#define CONFIG_CMD_IDE
#define CONFIG_CMD_IMMAP
#define CONFIG_CMD_JFFS2
@ -268,6 +267,13 @@
#define LED_ON 0x00000010
/*
<<<<<<< 4ba57299158b7a7020d2bd3b8d8369884696a0ae
=======
* Temperature sensor
*/
/*
>>>>>>> Drop digital thermometer and thermostat (DTT) drivers
* Environment settings
*/
#define CONFIG_ENV_IS_IN_FLASH 1

@ -54,7 +54,6 @@
/*
* Commands additional to the ones defined in amcc-common.h
*/
#define CONFIG_CMD_DTT
#undef CONFIG_CMD_EEPROM
#undef CONFIG_CMD_IRQ
@ -97,13 +96,6 @@
#define CONFIG_RTC_DS1337
#define CONFIG_SYS_I2C_RTC_ADDR 0x68
/* Temp sensor/hwmon/dtt */
#define CONFIG_DTT_LM63 1 /* National LM63 */
#define CONFIG_DTT_SENSORS { 0 } /* Sensor addresses */
#define CONFIG_DTT_PWM_LOOKUPTABLE \
{ { 40, 10 }, { 50, 20 }, { 60, 40 } }
#define CONFIG_DTT_TACH_LIMIT 0xa10
/*
* FLASH organization
*/

@ -61,7 +61,6 @@
/* FIXME: MUST BE REMOVED AFTER TMU IS TURNED ON */
#undef CONFIG_EXYNOS_TMU
#undef CONFIG_TMU_CMD_DTT
#define CONFIG_DFU_ALT_SYSTEM \
"uImage fat 0 1;" \

@ -159,14 +159,6 @@
#define CONFIG_4xx_CONFIG_I2C_EEPROM_OFFSET 0
#define CONFIG_4xx_CONFIG_BLOCKSIZE 16
/* I2C SYSMON (LM75, AD7414 is almost compatible) */
#define CONFIG_DTT_LM75 1 /* ON Semi's LM75 */
#define CONFIG_DTT_AD7414 1 /* use AD7414 */
#define CONFIG_DTT_SENSORS {0} /* Sensor addresses */
#define CONFIG_SYS_DTT_MAX_TEMP 70
#define CONFIG_SYS_DTT_LOW_TEMP -30
#define CONFIG_SYS_DTT_HYSTERESIS 3
/*
* Default environment variables
*/
@ -219,7 +211,6 @@
/*
* Commands additional to the ones defined in amcc-common.h
*/
#define CONFIG_CMD_DTT
#define CONFIG_CMD_NAND
#define CONFIG_CMD_PCI
#define CONFIG_CMD_SDRAM

@ -210,13 +210,6 @@
/* I2C W83782G HW-Monitoring IC */
#define CONFIG_SYS_I2C_W83782G_ADDR 0x28 /* W83782G address */
/* I2C temp sensor */
/* Socrates uses Maxim's DS75, which is compatible with LM75 */
#define CONFIG_DTT_LM75 1
#define CONFIG_DTT_SENSORS {4} /* Sensor addresses */
#define CONFIG_SYS_DTT_MAX_TEMP 125
#define CONFIG_SYS_DTT_LOW_TEMP -55
#define CONFIG_SYS_DTT_HYSTERESIS 3
#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 4
/*
@ -286,7 +279,6 @@
/*
* Command line configuration.
*/
#define CONFIG_CMD_DTT
#undef CONFIG_CMD_EEPROM
#define CONFIG_CMD_SDRAM
#define CONFIG_CMD_REGINFO

@ -57,13 +57,6 @@
#define CONFIG_I2C_MULTI_BUS
#define CONFIG_SYS_I2C_SPEED 100000
/* I2C SYSMON (LM75) */
#define CONFIG_DTT_LM75
#define CONFIG_DTT_MAX_TEMP 70
#define CONFIG_DTT_MIN_TEMP -30
#define CONFIG_DTT_HYSTERESIS 3
#define CONFIG_CMD_DTT
/* I2C EEPROM (M24C64) */
#define CONFIG_SYS_I2C_EEPROM_ADDR 0x50
#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 2
@ -371,8 +364,5 @@
#endif
/* Support at least the sensor on TQMa6 SOM */
#if !defined(CONFIG_DTT_SENSORS)
#define CONFIG_DTT_SENSORS { 0 }
#endif
#endif /* __CONFIG_H */

@ -10,8 +10,6 @@
#ifndef __CONFIG_TQMA6_MBA6_H
#define __CONFIG_TQMA6_MBA6_H
#define CONFIG_DTT_SENSORS { 0, 1 }
#define CONFIG_FEC_XCV_TYPE RGMII
#define CONFIG_ETHPRIME "FEC"

@ -7,10 +7,6 @@
#ifndef __CONFIG_TQMA6_WRU4_H
#define __CONFIG_TQMA6_WRU4_H
/* DTT sensors */
#define CONFIG_DTT_SENSORS { 0, 1 }
#define CONFIG_SYS_DTT_BUS_NUM 2
/* Ethernet */
#define CONFIG_FEC_XCV_TYPE RMII
#define CONFIG_ETHPRIME "FEC"

@ -85,14 +85,6 @@
#define CONFIG_RTC_DS1374
/*
* I2C Temperature Sensor (DTT)
*/
#define CONFIG_CMD_DTT
#define CONFIG_DTT_SENSORS { 0, 1 }
#define CONFIG_DTT_DS620
/*
* U-Boot General Configurations
*/
#define CONFIG_SYS_LONGHELP

@ -28,7 +28,6 @@
#define CONFIG_CMD_REGINFO
#undef CONFIG_CMD_JFFS2
#undef CONFIG_CMD_MTDPARTS
#undef CONFIG_CMD_DTT
#undef CONFIG_CMD_EEPROM
/*Misc*/

@ -233,8 +233,6 @@ extern unsigned long get_board_sys_clk(unsigned long dummy);
/* I2C DS1631 temperature sensor */
#define CONFIG_SYS_I2C_DS1621_ADDR 0x48
#define CONFIG_DTT_DS1621
#define CONFIG_DTT_SENSORS { 0 }
#define CONFIG_SYS_I2C_LM90_ADDR 0x4c
/* I2C EEPROM - AT24C128B */
@ -501,7 +499,6 @@ extern unsigned long get_board_sys_clk(unsigned long dummy);
/*
* Command configuration.
*/
#define CONFIG_CMD_DTT
#define CONFIG_CMD_EEPROM
#define CONFIG_CMD_IRQ
#define CONFIG_CMD_JFFS2

@ -230,8 +230,6 @@ extern unsigned long get_board_ddr_clk(unsigned long dummy);
/* I2C DS1631 temperature sensor */
#define CONFIG_SYS_I2C_DS1621_ADDR 0x48
#define CONFIG_DTT_DS1621
#define CONFIG_DTT_SENSORS { 0 }
#define CONFIG_SYS_I2C_LM90_ADDR 0x4c
/* I2C EEPROM - AT24C128B */
@ -353,7 +351,6 @@ extern unsigned long get_board_ddr_clk(unsigned long dummy);
/*
* Command configuration.
*/
#define CONFIG_CMD_DTT
#define CONFIG_CMD_EEPROM
#define CONFIG_CMD_JFFS2
#define CONFIG_CMD_NAND

@ -219,8 +219,6 @@ extern unsigned long get_board_ddr_clk(unsigned long dummy);
#define CONFIG_SYS_FSL_I2C2_OFFSET 0x3100
/* I2C DS7505 temperature sensor */
#define CONFIG_DTT_LM75
#define CONFIG_DTT_SENSORS { 0 }
#define CONFIG_SYS_I2C_LM75_ADDR 0x48
/* I2C ADT7461 temperature sensor */
@ -338,7 +336,6 @@ extern unsigned long get_board_ddr_clk(unsigned long dummy);
/*
* Command configuration.
*/
#define CONFIG_CMD_DTT
#define CONFIG_CMD_EEPROM
#define CONFIG_CMD_JFFS2
#define CONFIG_CMD_NAND

@ -131,14 +131,6 @@
#define CONFIG_ENV_OFFSET 0x0
#endif /* CONFIG_ENV_IS_IN_EEPROM */
/* I2C SYSMON (LM75, AD7414 is almost compatible) */
#define CONFIG_DTT_LM75 1 /* ON Semi's LM75 */
#define CONFIG_DTT_AD7414 1 /* use AD7414 */
#define CONFIG_DTT_SENSORS {0} /* Sensor addresses */
#define CONFIG_SYS_DTT_MAX_TEMP 70
#define CONFIG_SYS_DTT_LOW_TEMP -30
#define CONFIG_SYS_DTT_HYSTERESIS 3
/*
* Default environment variables
*/
@ -184,7 +176,6 @@
/*
* Commands additional to the ones defined in amcc-common.h
*/
#define CONFIG_CMD_DTT
#define CONFIG_CMD_PCI
#ifdef CONFIG_440EP

@ -1,47 +0,0 @@
/*
* (C) Copyright 2001
* Erik Theisen, Wave 7 Optics, etheisen@mindspring.com.
*
* SPDX-License-Identifier: GPL-2.0+
*/
/*
* Digital Thermometers and Thermostats.
*/
#ifndef _DTT_H_
#define _DTT_H_
#if defined(CONFIG_DTT_ADM1021) || \
defined(CONFIG_DTT_ADT7460) || \
defined(CONFIG_DTT_DS1621) || \
defined(CONFIG_DTT_DS1775) || \
defined(CONFIG_DTT_DS620) || \
defined(CONFIG_DTT_LM63) || \
defined(CONFIG_DTT_LM73) || \
defined(CONFIG_DTT_LM75) || \
defined(CONFIG_DTT_LM81)
#define CONFIG_DTT /* We have a DTT */
#ifndef CONFIG_DTT_ADM1021
#define DTT_COMMERCIAL_MAX_TEMP 70 /* 0 - +70 C */
#define DTT_INDUSTRIAL_MAX_TEMP 85 /* -40 - +85 C */
#define DTT_AUTOMOTIVE_MAX_TEMP 105 /* -40 - +105 C */
#ifndef CONFIG_SYS_DTT_MAX_TEMP
#define CONFIG_SYS_DTT_MAX_TEMP DTT_COMMERCIAL_MAX_TEMP
#endif
#ifndef CONFIG_SYS_DTT_HYSTERESIS
#define CONFIG_SYS_DTT_HYSTERESIS 5 /* 5 C */
#endif
#endif /* CONFIG_DTT_ADM1021 */
extern void dtt_init(void);
extern int dtt_init_one(int);
extern int dtt_read(int sensor, int reg);
extern int dtt_write(int sensor, int reg, int val);
extern int dtt_get_temp(int sensor);
#endif
#endif /* _DTT_H_ */

@ -571,9 +571,6 @@ void i2c_dump_msgs(struct i2c_msg *msg, int nmsgs);
#if !defined(CONFIG_SYS_RTC_BUS_NUM)
#define CONFIG_SYS_RTC_BUS_NUM 0
#endif
#if !defined(CONFIG_SYS_DTT_BUS_NUM)
#define CONFIG_SYS_DTT_BUS_NUM 0
#endif
#if !defined(CONFIG_SYS_SPD_BUS_NUM)
#define CONFIG_SYS_SPD_BUS_NUM 0
#endif

@ -383,7 +383,6 @@ CONFIG_CM922T_XA10
CONFIG_CMDLINE_EDITING
CONFIG_CMDLINE_PS_SUPPORT
CONFIG_CMDLINE_TAG
CONFIG_CMD_DTT
CONFIG_CMD_ECCTEST
CONFIG_CMD_EECONFIG
CONFIG_CMD_EEPROM
@ -682,20 +681,6 @@ CONFIG_DRIVE_SATA
CONFIG_DRIVE_TYPES
CONFIG_DRIVE_USB
CONFIG_DSP_CLUSTER_START
CONFIG_DTT
CONFIG_DTT_AD7414
CONFIG_DTT_ADM1021
CONFIG_DTT_DS1621
CONFIG_DTT_DS1775
CONFIG_DTT_DS620
CONFIG_DTT_HYSTERESIS
CONFIG_DTT_LM63
CONFIG_DTT_LM75
CONFIG_DTT_MAX_TEMP
CONFIG_DTT_MIN_TEMP
CONFIG_DTT_PWM_LOOKUPTABLE
CONFIG_DTT_SENSORS
CONFIG_DTT_TACH_LIMIT
CONFIG_DUOVERO
CONFIG_DV_USBPHY_CTL
CONFIG_DWC2_DFLT_SPEED_FULL
@ -3450,12 +3435,6 @@ CONFIG_SYS_DSPI_CTAR4
CONFIG_SYS_DSPI_CTAR5
CONFIG_SYS_DSPI_CTAR6
CONFIG_SYS_DSPI_CTAR7
CONFIG_SYS_DTT_ADM1021
CONFIG_SYS_DTT_BUS_NUM
CONFIG_SYS_DTT_HYSTERESIS
CONFIG_SYS_DTT_LOW_TEMP
CONFIG_SYS_DTT_MAX_TEMP
CONFIG_SYS_DTT_MIN_TEMP
CONFIG_SYS_DUART_RST
CONFIG_SYS_DV_CLKMODE
CONFIG_SYS_DV_NOR_BOOT_CFG
@ -6115,7 +6094,6 @@ CONFIG_TIZEN
CONFIG_TI_KEYSTONE_SERDES
CONFIG_TI_KSNAV
CONFIG_TI_SPI_MMAP
CONFIG_TMU_CMD_DTT
CONFIG_TMU_TIMER
CONFIG_TOTAL5200
CONFIG_TPL_DRIVERS_MISC_SUPPORT

Loading…
Cancel
Save