* Elimar Riesebieter said: > is there a tool to check /sys/devices/temperatures? > I just created a primitive shell script as attached. Hi, I've created a patch for Tormso (http://torsmo.sourceforge.net/) to show the cpu temperature and fan speed. patch is attached. (use at your own risc) :P Apply the patch and put $adt746xcpu and $adt746xfan in your ~/.torsmorc
--- torsmo-0.17-orig/torsmo.c 2004-08-11 04:08:25.000000000 +0200
+++ torsmo-0.17/torsmo.c 2004-08-11 14:27:19.630737176 +0200
@@ -419,6 +419,8 @@
enum text_object_type {
OBJ_acpiacadapter,
+ OBJ_adt746xcpu,
+ OBJ_adt746xfan,
OBJ_acpifan,
OBJ_acpitemp,
OBJ_battery,
@@ -570,6 +572,10 @@
END
OBJ(acpiacadapter)
END
+ OBJ(adt746xcpu)
+ END
+ OBJ(adt746xfan)
+ END
OBJ(acpifan)
END
OBJ(battery)
@@ -1000,6 +1006,12 @@
/* does anyone have decimals in acpi temperature? */
snprintf(p, n, "%d", (int) get_acpi_temperature(obj->data.i));
}
+ OBJ(adt746xcpu) {
+ snprintf(p, n, "%s", get_adt746x_cpu());
+ }
+ OBJ(adt746xfan) {
+ snprintf(p, n, "%s", get_adt746x_fan());
+ }
OBJ(acpifan) {
snprintf(p, n, "%s", get_acpi_fan());
}
--- torsmo-0.17-orig/torsmo.h 2004-08-11 04:08:25.000000000 +0200
+++ torsmo-0.17/torsmo.h 2004-08-11 14:27:44.657932464 +0200
@@ -40,6 +40,9 @@
int open_i2c_sensor(const char *dev, const char *type, int n, int *div);
double get_i2c_info(int fd, int arg);
+char* get_adt746x_cpu(void);
+char* get_adt746x_fan(void);
+
int open_acpi_temperature(const char *name);
double get_acpi_temperature(int fd);
char* get_acpi_ac_adapter(void);
--- torsmo-0.17-orig/linux.c 2004-08-11 04:08:25.000000000 +0200
+++ torsmo-0.17/linux.c 2004-08-11 14:25:51.905073504 +0200
@@ -330,6 +330,50 @@
#endif
}
+#define ADT746X_FAN "/sys/devices/temperatures/cpu_fan_speed"
+
+static char *adt746x_fan_state;
+
+char* get_adt746x_fan() {
+ static int rep;
+ FILE *fp;
+
+ if (adt746x_fan_state == NULL) {
+ adt746x_fan_state = (char*)malloc(100);
+ assert(adt746x_fan_state!=NULL);
+ }
+
+ fp = open_file(ADT746X_FAN, &rep);
+ if (!fp) {
+ strcpy(adt746x_fan_state,"No fan found! Hey, you don't have one?");
+ return adt746x_fan_state;
+ }
+ fscanf(fp, "%s", adt746x_fan_state);
+ fclose(fp);
+
+ return adt746x_fan_state;
+}
+
+#define ADT746X_CPU "/sys/devices/temperatures/cpu_temperature"
+
+static char *adt746x_cpu_state;
+
+char* get_adt746x_cpu() {
+ static int rep;
+ FILE *fp;
+
+ if (adt746x_cpu_state == NULL) {
+ adt746x_cpu_state = (char*)malloc(100);
+ assert(adt746x_cpu_state!=NULL);
+ }
+
+ fp = open_file(ADT746X_CPU, &rep);
+ fscanf(fp, "%s", adt746x_cpu_state);
+ fclose(fp);
+
+ return adt746x_cpu_state;
+}
+
#define ACPI_FAN "/proc/acpi/fan/FAN/state"
static char *acpi_fan_state;
--- torsmo-0.17-orig/torsmorc.sample 2004-08-11 04:08:25.000000000 +0200
+++ torsmo-0.17/torsmorc.sample 2004-08-11 14:21:23.680849784 +0200
@@ -69,6 +69,8 @@
# acpiacadapter ACPI ac adapter state.
# acpifan ACPI fan state
# acpitemp ACPI temperature.
+# adt746x_cpu CPU temperature from therm_adt746x
+# adt746x_fan Fan speed from therm_adt746x
# battery (num) Remaining capasity in ACPI or APM
# battery. ACPI battery number can be
# given as argument (default is BAT0).
Attachment:
pgpdxSrgokHnh.pgp
Description: PGP signature