Browse Source

Plan 9 from Bell Labs 2004-01-18

David du Colombier 20 years ago
parent
commit
78ef6025b7
3 changed files with 19 additions and 5 deletions
  1. 2 2
      dist/replica/plan9.db
  2. 2 0
      dist/replica/plan9.log
  3. 15 3
      sys/src/9/pc/devarch.c

+ 2 - 2
dist/replica/plan9.db

@@ -539,7 +539,7 @@
 386/lib/libmach.a - 664 sys sys 1073851272 746962
 386/lib/libmemdraw.a - 664 sys sys 1073851273 291288
 386/lib/libmemlayer.a - 664 sys sys 1073851273 47636
-386/lib/libmp.a - 664 sys sys 1074237203 77700
+386/lib/libmp.a - 664 sys sys 1074320139 81428
 386/lib/libndb.a - 664 sys sys 1073851273 54474
 386/lib/libplumb.a - 664 sys sys 1073851274 18876
 386/lib/libregexp.a - 664 sys sys 1073851274 37502
@@ -5275,7 +5275,7 @@ sys/src/9/pc/archmp.c - 664 sys sys 1067722683 2323
 sys/src/9/pc/audio.h - 664 sys sys 1015014513 343
 sys/src/9/pc/cga.c - 664 sys sys 1015014513 1843
 sys/src/9/pc/dat.h - 664 sys sys 1071245548 6177
-sys/src/9/pc/devarch.c - 664 sys sys 1071320330 18127
+sys/src/9/pc/devarch.c - 664 sys sys 1074350950 18361
 sys/src/9/pc/devether.c - 664 sys sys 1048644042 10178
 sys/src/9/pc/devfloppy.c - 664 sys sys 1055689885 20024
 sys/src/9/pc/devi82365.c - 664 sys sys 1020284820 19987

+ 2 - 0
dist/replica/plan9.log

@@ -13410,3 +13410,5 @@
 1074238290 0 c 386/bin/stats - 775 sys sys 1074237203 188651
 1074238290 1 c 386/lib/libmp.a - 664 sys sys 1074237203 77700
 1074281491 0 c sys/man/1/jpg - 664 sys sys 1074280543 4758
+1074321097 0 c 386/lib/libmp.a - 664 sys sys 1074320139 81428
+1074351701 0 c sys/src/9/pc/devarch.c - 664 sys sys 1074350950 18361

+ 15 - 3
sys/src/9/pc/devarch.c

@@ -610,6 +610,14 @@ static X86type x86winchip[] =
 	{ -1,	-1,	23,	"unknown", },	/* total default */
 };
 
+/*
+ * SiS 55x
+ */
+static X86type x86sis[] =
+{
+	{5,	0,	23,	"SiS 55x",},	/* guesswork */
+	{ -1,	-1,	23,	"unknown", },	/* total default */
+};
 
 static X86type *cputype;
 
@@ -652,6 +660,8 @@ cpuidentify(void)
 		tab = x86amd;
 	else if(strncmp(m->cpuidid, "CentaurHauls", 12) == 0)
 		tab = x86winchip;
+	else if(strncmp(m->cpuidid, "SiS SiS SiS ", 12) == 0)
+		tab = x86sis;
 	else
 		tab = x86intel;
 	
@@ -668,9 +678,11 @@ cpuidentify(void)
 	/*
 	 *  if there is one, set tsc to a known value
 	 */
-	m->havetsc = t->family >= 5;
-	if(m->havetsc)
-		wrmsr(0x10, 0);
+	if(m->cpuiddx & 0x10){
+		m->havetsc = 1;
+		if(m->cpuiddx & 0x20)
+			wrmsr(0x10, 0);
+	}
 
 	/*
  	 *  use i8253 to guess our cpu speed