#! /bin/sh -e ## 24-sh4-support.dpatch by Nobuhiro Iwamatsu ## ## All lines beginning with `## DP:' are a description of the patch. ## DP: Renesas SuperH support. [ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts patch_opts="${patch_opts:--f --no-backup-if-mismatch ${2:+-d $2}}" if [ $# -lt 1 ]; then echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" exit 1 fi case "$1" in -patch) patch $patch_opts -p1 < $0;; -unpatch) patch $patch_opts -p1 -R < $0;; *) echo >&2 "`basename $0`: script expects -patch|-unpatch as argum&ent" exit 1;; esac exit 0 @DPATCH@ diff -urN linuxinfo-1.1.8/Makefile.in linuxinfo-1.1.8/Makefile.in --- linuxinfo-1.1.8/Makefile.in 2010-02-01 03:23:39.000000000 +0000 +++ linuxinfo-1.1.8/Makefile.in 2010-02-01 03:04:05.000000000 +0000 @@ -64,7 +64,7 @@ PACKAGE = @PACKAGE@ bin_PROGRAMS = linuxinfo -linuxinfo_SOURCES = linuxinfo.c linuxinfo.h linuxinfo_common.c linuxinfo_arm.c linuxinfo_alpha.c linuxinfo_ia64.c linuxinfo_intel.c linuxinfo_m68k.c linuxinfo_ppc.c linuxinfo_hppa.c linuxinfo_s390.c linuxinfo_mips.c linuxinfo_sparc.c linuxinfo_unknown.c +linuxinfo_SOURCES = linuxinfo.c linuxinfo.h linuxinfo_common.c linuxinfo_arm.c linuxinfo_alpha.c linuxinfo_ia64.c linuxinfo_intel.c linuxinfo_m68k.c linuxinfo_ppc.c linuxinfo_hppa.c linuxinfo_s390.c linuxinfo_mips.c linuxinfo_sparc.c linuxinfo_sh.c linuxinfo_unknown.c man_MANS = linuxinfo.1 EXTRA_DIST = linuxinfo.1 CREDITS @@ -82,7 +82,7 @@ linuxinfo_OBJECTS = linuxinfo.o linuxinfo_common.o linuxinfo_arm.o \ linuxinfo_alpha.o linuxinfo_ia64.o linuxinfo_intel.o linuxinfo_m68k.o \ linuxinfo_ppc.o linuxinfo_hppa.o linuxinfo_s390.o linuxinfo_sparc.o \ -linuxinfo_mips.o linuxinfo_unknown.o +linuxinfo_mips.o linuxinfo_sh.o linuxinfo_unknown.o linuxinfo_LDADD = $(LDADD) linuxinfo_DEPENDENCIES = linuxinfo_LDFLAGS = @@ -107,7 +107,7 @@ .deps/linuxinfo_arm.P .deps/linuxinfo_common.P .deps/linuxinfo_hppa.P \ .deps/linuxinfo_ia64.P .deps/linuxinfo_intel.P .deps/linuxinfo_m68k.P \ .deps/linuxinfo_ppc.P .deps/linuxinfo_s390.P .deps/linuxinfo_sparc.P \ -.deps/linuxinfo_mips.P .deps/linuxinfo_unknown.P +.deps/linuxinfo_mips.P .deps/linuxinfo_sh.P .deps/linuxinfo_unknown.P SOURCES = $(linuxinfo_SOURCES) OBJECTS = $(linuxinfo_OBJECTS) Binary files linuxinfo-1.1.8/linuxinfo and linuxinfo-1.1.8/linuxinfo differ diff -urN linuxinfo-1.1.8/linuxinfo.h linuxinfo-1.1.8/linuxinfo.h --- linuxinfo-1.1.8/linuxinfo.h 2010-02-01 03:23:41.000000000 +0000 +++ linuxinfo-1.1.8/linuxinfo.h 2010-02-01 03:08:01.000000000 +0000 @@ -71,6 +71,10 @@ #define system_mips #endif +#if defined(__sh__) +#define system_sh +#endif + #if (SIZEOF_LONG > 4) #define LONGLONG long int #define LONGSPEC "%ld" diff -urN linuxinfo-1.1.8/linuxinfo_sh.c linuxinfo-1.1.8/linuxinfo_sh.c --- linuxinfo-1.1.8/linuxinfo_sh.c 1970-01-01 00:00:00.000000000 +0000 +++ linuxinfo-1.1.8/linuxinfo_sh.c 2010-02-01 03:18:08.000000000 +0000 @@ -0,0 +1,68 @@ +/* + linuxinfo_sh.c + + Copyright (C) 2004-2006, 2010 + All Rights Reserved. + + Nobuhiro Iwamatsu , + Helge Kreutzmann , + based on linuxinfo_m68k.c from Alex Buell + + Version Author Date Comments + ---------------------------------------------------------------------- + 1.0.0 KRE 20040522 Initial development + 1.0.1 KRE 20051118 Include + 1.0.2 KRE 20060309 Fix detection if no endian info is given + 1.0.3 KRE 20060409 Do not look for endianess + + This is the sh port of linuxinfo +*/ + +#include +#include +#include + +#include "linuxinfo.h" + +#ifdef system_sh + +void GetHardwareInfo(int fd, struct hw_stat *hw) +{ + int processors = 0; + float bogomips = 0.0, tempbogo; + char temp_string[BUFSIZ], temp_string2[BUFSIZ]; + char chip[BUFSIZ] = "Unknown"; + char family[BUFSIZ]="Unknown"; + char clock[BUFSIZ]="Unknown"; + + while (read_line(fd, temp_string, BUFSIZ) != 0) + { + splitstring(temp_string, temp_string2); + + /* CPU count */ + if (strncmp(temp_string, "processor", strlen("processor")) == 0) + processors++; + + /* "cpu type" -> chip */ + if (!(strncmp(temp_string, "cpu type", strlen("cpu type")))) + strcpy(chip, temp_string2); + + /* cpu family */ + if (!(strncmp(temp_string, "cpu family", strlen("cpu family")))) + strcpy(family, temp_string2); + + /* bogomips and clock */ + if (!(strncmp(temp_string, "bogomips", strlen("bogomips")))) { + strcpy(clock, temp_string2); + sscanf(temp_string2, "%f", &tempbogo); + bogomips += tempbogo; + } + } + + sprintf(hw->hw_memory, LONGSPEC, getphysicalmemory()); + hw->hw_processors = processors; + sprintf(hw->hw_cpuinfo, "%s %s", family, chip); + sprintf(hw->hw_bogomips, "%0.2f", bogomips); + sprintf(hw->hw_megahertz, "%s", clock); +} +#endif /* system_sh */