[U-Boot-Users] [PATCH 1/1] hwmon: Cleaning hwmon devices

monstr at seznam.cz monstr at seznam.cz
Fri Jul 11 11:50:53 CEST 2008


From: Michal Simek <monstr at monstr.eu>

Clean Makefile
Move device specific values to driver for better reading

Signed-off-by: Michal Simek <monstr at monstr.eu>
---
 drivers/hwmon/Makefile  |   12 ++++----
 drivers/hwmon/adm1021.c |   35 +++++++++++++++++++--
 drivers/hwmon/ds1621.c  |   12 +++++--
 drivers/hwmon/ds1722.c  |    5 ---
 drivers/hwmon/ds1775.c  |    8 ++--
 drivers/hwmon/lm73.c    |    6 ++++
 drivers/hwmon/lm75.c    |    8 ++--
 drivers/hwmon/lm81.c    |    8 +++--
 include/dtt.h           |   77 +---------------------------------------------
 9 files changed, 66 insertions(+), 105 deletions(-)

diff --git a/drivers/hwmon/Makefile b/drivers/hwmon/Makefile
index 065433a..61b028f 100644
--- a/drivers/hwmon/Makefile
+++ b/drivers/hwmon/Makefile
@@ -30,13 +30,13 @@ include $(TOPDIR)/config.mk
 
 LIB	= $(obj)libhwmon.a
 
-COBJS-y += adm1021.o
-COBJS-y += ds1621.o
-COBJS-y += ds1722.o
-COBJS-y += ds1775.o
+COBJS-$(CONFIG_DTT_ADM1021) += adm1021.o
+COBJS-$(CONFIG_DTT_DS1621) += ds1621.o
+COBJS-$(CONFIG_DS1722) += ds1722.o
+COBJS-$(CONFIG_DTT_DS1775) += ds1775.o
 COBJS-$(CONFIG_DTT_LM73) += lm73.o
-COBJS-y += lm75.o
-COBJS-y += lm81.o
+COBJS-$(CONFIG_DTT_LM75) += lm75.o
+COBJS-$(CONFIG_DTT_LM81) += lm81.o
 
 COBJS	:= $(COBJS-y)
 SRCS	:= $(COBJS:.o=.c)
diff --git a/drivers/hwmon/adm1021.c b/drivers/hwmon/adm1021.c
index 9f65cfb..b791ec0 100644
--- a/drivers/hwmon/adm1021.c
+++ b/drivers/hwmon/adm1021.c
@@ -33,11 +33,40 @@
 
 #include <common.h>
 
-#ifdef CONFIG_DTT_ADM1021
-
 #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 */
@@ -170,5 +199,3 @@ dtt_get_temp (int sensor)
 
 	return (int) val;
 } /* dtt_get_temp() */
-
-#endif /* CONFIG_DTT_ADM1021 */
diff --git a/drivers/hwmon/ds1621.c b/drivers/hwmon/ds1621.c
index 4948181..749aa26 100644
--- a/drivers/hwmon/ds1621.c
+++ b/drivers/hwmon/ds1621.c
@@ -27,7 +27,6 @@
 
 #include <common.h>
 
-#ifdef CONFIG_DTT_DS1621
 #if !defined(CFG_EEPROM_PAGE_WRITE_ENABLE) || \
 	(CFG_EEPROM_PAGE_WRITE_BITS < 1)
 # error "CFG_EEPROM_PAGE_WRITE_ENABLE must be defined and CFG_EEPROM_PAGE_WRITE_BITS must be greater than 1 to use CONFIG_DTT_DS1621"
@@ -39,6 +38,14 @@
  * 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
 
 int dtt_read(int sensor, int reg)
 {
@@ -185,6 +192,3 @@ int dtt_get_temp(int sensor)
 
     return (dtt_read(sensor, DTT_READ_TEMP) / 256);
 } /* dtt_get_temp() */
-
-
-#endif /* CONFIG_DTT_DS1621 */
diff --git a/drivers/hwmon/ds1722.c b/drivers/hwmon/ds1722.c
index c19ee01..7e2f1ed 100644
--- a/drivers/hwmon/ds1722.c
+++ b/drivers/hwmon/ds1722.c
@@ -1,8 +1,5 @@
 
 #include <common.h>
-
-#ifdef CONFIG_DS1722
-
 #include <ssi.h>
 
 static void ds1722_select(int dev)
@@ -138,5 +135,3 @@ int ds1722_probe(int dev)
 	printf("%d.%d deg C\n\n", (char)(temp >> 8), temp & 0xff);
 	return 0;
 }
-
-#endif
diff --git a/drivers/hwmon/ds1775.c b/drivers/hwmon/ds1775.c
index 0fbb0b4..6a4d8e5 100644
--- a/drivers/hwmon/ds1775.c
+++ b/drivers/hwmon/ds1775.c
@@ -21,11 +21,14 @@
 
 #include <common.h>
 
-#ifdef CONFIG_DTT_DS1775
 #include <i2c.h>
 #include <dtt.h>
 
 #define DTT_I2C_DEV_CODE	CFG_I2C_DTT_ADDR /* 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)
 {
@@ -151,6 +154,3 @@ int dtt_get_temp(int sensor)
 {
 	return (dtt_read(sensor, DTT_READ_TEMP) / 256);
 }
-
-
-#endif /* CONFIG_DTT_DS1775 */
diff --git a/drivers/hwmon/lm73.c b/drivers/hwmon/lm73.c
index 98e8bd2..dd24683 100644
--- a/drivers/hwmon/lm73.c
+++ b/drivers/hwmon/lm73.c
@@ -38,6 +38,12 @@
  * 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)
 {
diff --git a/drivers/hwmon/lm75.c b/drivers/hwmon/lm75.c
index e29b294..0d24d4a 100644
--- a/drivers/hwmon/lm75.c
+++ b/drivers/hwmon/lm75.c
@@ -27,7 +27,6 @@
 
 #include <common.h>
 
-#ifdef CONFIG_DTT_LM75
 #if !defined(CFG_EEPROM_PAGE_WRITE_ENABLE) || \
 	(CFG_EEPROM_PAGE_WRITE_BITS < 1)
 # error "CFG_EEPROM_PAGE_WRITE_ENABLE must be defined and CFG_EEPROM_PAGE_WRITE_BITS must be greater than  1 to use CONFIG_DTT_LM75"
@@ -36,11 +35,14 @@
 #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)
 {
@@ -187,5 +189,3 @@ int dtt_get_temp(int sensor)
     }
     return (int)((int16_t) ret / 256);
 } /* dtt_get_temp() */
-
-#endif /* CONFIG_DTT_LM75 */
diff --git a/drivers/hwmon/lm81.c b/drivers/hwmon/lm81.c
index 03bc53d..9349eb6 100644
--- a/drivers/hwmon/lm81.c
+++ b/drivers/hwmon/lm81.c
@@ -32,7 +32,6 @@
 
 #include <common.h>
 
-#ifdef CONFIG_DTT_LM81
 #if !defined(CFG_EEPROM_PAGE_WRITE_ENABLE) || \
 	(CFG_EEPROM_PAGE_WRITE_BITS < 1)
 # error "CFG_EEPROM_PAGE_WRITE_ENABLE must be defined and CFG_EEPROM_PAGE_WRITE_BITS must be greater than  1 to use CONFIG_DTT_LM81"
@@ -45,6 +44,11 @@
  * 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)
 {
@@ -144,5 +148,3 @@ int dtt_get_temp(int sensor)
 
 	return (TEMP_FROM_REG((val << 1) + ((tmpcnf & 0x80) >> 7))) / 10;
 } /* dtt_get_temp() */
-
-#endif /* CONFIG_DTT_LM81 */
diff --git a/include/dtt.h b/include/dtt.h
index 4e8aaad..34053d1 100644
--- a/include/dtt.h
+++ b/include/dtt.h
@@ -40,9 +40,11 @@
 #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 CFG_DTT_MAX_TEMP
 #define CFG_DTT_MAX_TEMP DTT_COMMERCIAL_MAX_TEMP
 #endif
+
 #ifndef CFG_DTT_HYSTERESIS
 #define CFG_DTT_HYSTERESIS	5		/* 5 C */
 #endif
@@ -54,79 +56,4 @@ extern int dtt_write(int sensor, int reg, int val);
 extern int dtt_get_temp(int sensor);
 #endif
 
-#if defined(CONFIG_DTT_LM75)
-#define DTT_READ_TEMP		0x0
-#define DTT_CONFIG		0x1
-#define DTT_TEMP_HYST		0x2
-#define DTT_TEMP_SET		0x3
-#endif
-
-#if defined(CONFIG_DTT_LM81)
-#define DTT_READ_TEMP		0x27
-#define DTT_CONFIG_TEMP		0x4b
-#define DTT_TEMP_MAX		0x39
-#define DTT_TEMP_HYST		0x3a
-#define DTT_CONFIG		0x40
-#endif
-
-#if defined(CONFIG_DTT_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
-#endif
-
-#if defined(CONFIG_DTT_DS1775)
-#define DTT_READ_TEMP		0x0
-#define DTT_CONFIG		0x1
-#define DTT_TEMP_HYST		0x2
-#define DTT_TEMP_OS		0x3
-#endif
-
-#if defined(CONFIG_DTT_ADM1021)
-#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
-#endif
-
-#if defined(CONFIG_DTT_LM73)
-#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
-#endif
-
 #endif /* _DTT_H_ */
-- 
1.5.4.GIT





More information about the U-Boot mailing list