1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
|
# Description: Add support for S390
# Author: Gerhard Tonn <gt@debian.org>
# Last-Update: 2006-03-15
Index: linuxinfo-1.1.8-29/linuxinfo_s390.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linuxinfo-1.1.8-29/linuxinfo_s390.c 2010-02-01 21:33:54.514279000 +0100
@@ -0,0 +1,67 @@
+/*
+ linuxinfo_s390.c
+
+ Copyright (C) 1998-2000
+ All Rights Reserved.
+
+ Alex Buell <alex.buell@tahallah.demon.co.uk>
+
+ Advanced Buell Software Engineering Ltd
+ Hampshire, GU31 5DG
+ United Kingdom
+
+ Version Author Date Comments
+ ----------------------------------------------------------------------
+ 1.0.0 AIB 199803?? Initial development
+ 1.0.1 AIB 20000405 Rewritten
+ 1.0.2 KRE 20051118 Include <string.h>
+ 1.0.3 KRE 20060315 Fix memory reporting
+
+ This is the S/390 port of linuxinfo
+*/
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <sys/stat.h>
+#include <string.h>
+
+#include "linuxinfo.h"
+
+#ifdef system_s390
+
+void GetHardwareInfo(int fd, struct hw_stat *hw)
+{
+ LONGLONG memory = 0;
+ int processors = 0;
+ int megahertz = 0;
+ float tempbogo;
+
+ char temp_string[BUFSIZ], temp_string2[BUFSIZ];
+ char chip[BUFSIZ], vendor[BUFSIZ], model[BUFSIZ];
+
+ struct stat st_buf;
+
+ while (read_line(fd, temp_string, BUFSIZ) != 0)
+ {
+ splitstring(temp_string, temp_string2);
+
+ if (!(strncmp(temp_string, "vendor_id", strlen("vendor_id"))))
+ strcpy(vendor, temp_string2);
+
+ if (!(strncmp(temp_string, "# processors", strlen("# processors"))))
+ processors = atoi(temp_string2);
+
+ if (!(strncmp(temp_string, "bogomips per cpu", strlen("bogomips per cp"))))
+ {
+ sscanf(temp_string2, "%f", &tempbogo);
+ }
+ }
+
+ memory = getphysicalmemory();
+ sprintf(hw->hw_memory, "%ld", memory);
+ hw->hw_processors = processors;
+
+ sprintf(hw->hw_cpuinfo, "%s", vendor);
+ sprintf(hw->hw_bogomips, "%0.2f", tempbogo * processors);
+}
+#endif /* system_s390 */
|