fireinfo: Import latest patches
authorMichael Tremer <michael.tremer@ipfire.org>
Mon, 15 Dec 2014 22:27:25 +0000 (23:27 +0100)
committerMichael Tremer <michael.tremer@ipfire.org>
Mon, 15 Dec 2014 22:27:25 +0000 (23:27 +0100)
config/rootfiles/core/86/filelists/fireinfo [new symlink]
lfs/fireinfo
src/patches/fireinfo/0001-bogomips-Don-t-crash-when-no-bogomips-are-available.patch
src/patches/fireinfo/0002-ARM-Read-board-model-from-device-tree-in-proc.patch
src/patches/fireinfo/0003-Revert-vendor-model-for-ARM-to-old-behaviour.patch [new file with mode: 0644]

diff --git a/config/rootfiles/core/86/filelists/fireinfo b/config/rootfiles/core/86/filelists/fireinfo
new file mode 120000 (symlink)
index 0000000..c461155
--- /dev/null
@@ -0,0 +1 @@
+../../../common/fireinfo
\ No newline at end of file
index 0bc8d44..78a5e37 100644 (file)
@@ -73,6 +73,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
 
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/fireinfo/0001-bogomips-Don-t-crash-when-no-bogomips-are-available.patch
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/fireinfo/0002-ARM-Read-board-model-from-device-tree-in-proc.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/fireinfo/0003-Revert-vendor-model-for-ARM-to-old-behaviour.patch
 
        cd $(DIR_APP) && [ -x "configure" ] || sh ./autogen.sh
        cd $(DIR_APP) && ./configure --prefix=/usr
index f228d52..c1f8a77 100644 (file)
@@ -1,7 +1,7 @@
 From a9401d9542fae575d9ce2bb534cd4e598e9c7b8e Mon Sep 17 00:00:00 2001
 From: Michael Tremer <michael.tremer@ipfire.org>
 Date: Tue, 28 Oct 2014 21:14:41 +0100
-Subject: [PATCH 1/2] bogomips: Don't crash when no bogomips are available
+Subject: [PATCH 1/3] bogomips: Don't crash when no bogomips are available
 
 The RPi doesn't provide bogomips in /proc/cpuinfo any more
 and fireinfo crashed when trying to read that file
index de65400..5ea1e44 100644 (file)
@@ -1,7 +1,7 @@
 From b9a068e26261007d4a0592fcb47f82658af2c775 Mon Sep 17 00:00:00 2001
 From: Michael Tremer <michael.tremer@ipfire.org>
 Date: Mon, 3 Nov 2014 21:33:45 +0100
-Subject: [PATCH 2/2] ARM: Read board model from device-tree in /proc
+Subject: [PATCH 2/3] ARM: Read board model from device-tree in /proc
 
 ---
  src/fireinfo/system.py | 35 +++++++++--------------------------
diff --git a/src/patches/fireinfo/0003-Revert-vendor-model-for-ARM-to-old-behaviour.patch b/src/patches/fireinfo/0003-Revert-vendor-model-for-ARM-to-old-behaviour.patch
new file mode 100644 (file)
index 0000000..66fbfe1
--- /dev/null
@@ -0,0 +1,70 @@
+From 810fe43289f5b003cbf80ebb1d9a79f52a767cdb Mon Sep 17 00:00:00 2001
+From: Michael Tremer <michael.tremer@ipfire.org>
+Date: Mon, 15 Dec 2014 22:48:26 +0100
+Subject: [PATCH 3/3] Revert vendor/model for ARM to old behaviour
+
+---
+ src/fireinfo/system.py | 33 +++++++++++++++++++++++++++++----
+ 1 file changed, 29 insertions(+), 4 deletions(-)
+
+diff --git a/src/fireinfo/system.py b/src/fireinfo/system.py
+index 195832e9f7eb..ce33837af747 100644
+--- a/src/fireinfo/system.py
++++ b/src/fireinfo/system.py
+@@ -304,6 +304,27 @@ class System(object):
+               """
+               return read_from_file("/sys/class/dmi/id/bios_vendor")
++      def vendor_model_tuple(self):
++              try:
++                      s = self.__cpuinfo["Hardware"]
++              except KeyError:
++                      return (None, None)
++
++              if s.startswith("ARM-Versatile"):
++                      return ("ARM", s)
++
++              try:
++                      v, m = s.split(" ", 1)
++              except ValueError:
++                      if s.startswith("BCM"):
++                              v = "Broadcom"
++                              m = s
++                      else:
++                              v = None
++                              m = s
++
++              return v, m
++
+       @property
+       def vendor(self):
+               """
+@@ -316,10 +337,10 @@ class System(object):
+                               break
+               if ret is None:
+-                      try:
+-                              return self.__cpuinfo["Hardware"]
+-                      except KeyError:
+-                              pass
++                      if os.path.exists("/proc/device-tree"):
++                              ret = self.__cpuinfo.get("Hardware", None)
++                      else:
++                              ret, m = self.vendor_model_tuple()
+               return ret
+@@ -340,6 +361,10 @@ class System(object):
+                       # replace the NULL byte with which the DT string ends
+                       ret = ret.replace(u"\u0000", "")
++              # Fall back to read /proc/cpuinfo
++              if not ret:
++                      v, ret = self.vendor_model_tuple()
++
+               return ret
+       @property
+-- 
+1.9.3
+