NetBSD Problem Report #48148

From www@NetBSD.org  Thu Aug 22 18:36:30 2013
Return-Path: <www@NetBSD.org>
Received: from mail.netbsd.org (mail.netbsd.org [149.20.53.66])
	(using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
	(Client CN "mail.NetBSD.org", Issuer "Postmaster NetBSD.org" (verified OK))
	by mollari.NetBSD.org (Postfix) with ESMTPS id 34DE0714BC
	for <gnats-bugs@gnats.NetBSD.org>; Thu, 22 Aug 2013 18:36:30 +0000 (UTC)
Message-Id: <20130822183627.6021671960@mollari.NetBSD.org>
Date: Thu, 22 Aug 2013 18:36:27 +0000 (UTC)
From: nullnilaki@gmail.com
Reply-To: nullnilaki@gmail.com
To: gnats-bugs@NetBSD.org
Subject: NetBSD/alpha fails to install on AlphaStaion DS15
X-Send-Pr-Version: www-1.0

>Number:         48148
>Category:       port-alpha
>Synopsis:       NetBSD/alpha fails to install on AlphaStaion DS15
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    tsutsui
>State:          closed
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Aug 22 18:40:00 +0000 2013
>Closed-Date:    Sun Oct 06 08:17:48 +0000 2013
>Last-Modified:  Sun Oct 06 08:17:48 +0000 2013
>Originator:     nullnilaki
>Release:        NetBSD 6.1.1
>Organization:
Japan
>Environment:
NetBSD HARUTE 6.1.1 NetBSD 6.1.1 (GENERIC-$Revision: 1.343 $) #41: Thu Aug 22 15:51:20 UTC 2013  naruaki@:/usr/obj.alpha/sys/arch/alpha/compile/GENERIC alpha
>Description:
NetBSD/alpha fails to install on AlphaStaion DS15
=======================================================================
AlphaStation DS15 Console V7.2-2, built on Jun 9 2006 at 15:45:46
>>>boot dqa0
(boot dqa0.0.0.13.0 -flags a)
block 0 of dqa0.0.0.13.0 is a valid boot block
reading 13 blocks from dqa0.0.0.13.0
bootstrap code read in
base = 2be000, image_start = 0, image_bytes = 1a00(6656)
initializing HWRPB at 2000
initializing page table at 1fff0000
initializing machine state
setting affinity to the primary CPU
jumping to bootstrap code

NetBSD/alpha 6.1.1 ISO 9660 Primary Bootstrap
Jumping to entry point...

NetBSD/alpha 6.1.1 Secondary Bootstrap, Revision 1.13

VMS PAL rev: 0x1000700010162
OSF PAL rev: 0x100070002015c
Switch to OSF PAL code succeeded.

Boot flags: a
10205376+201944=0x9ed480

Entering netbsd at 0xfffffc0000431230...

NetBSD does not yet support system type 38 (???).

panic: platform not supported
Stopped in pid 0.1 (system) at fffffc0000496e18: ret zero,(ra)
db>
========================================================================
>How-To-Repeat:

>Fix:
Ported from OpenBSD:
========================================================================
diff -Narbu alpha.orig/alpha/.DS_Store alpha/alpha/.DS_Store
diff -Narbu alpha.orig/alpha/cpuconf.c alpha/alpha/cpuconf.c
--- alpha.orig/alpha/cpuconf.c	2012-02-06 02:14:10.000000000 +0000
+++ alpha/alpha/cpuconf.c	2013-08-22 22:16:00.000000000 +0000
@@ -233,6 +233,7 @@
 	cpu_notsupp(ST_DEC_EV56_PBP, "EV56 Passive Backplane Board"),
 	cpu_notsupp(ST_DEC_ALPHAVME_320, "AlphaVME 320"),
 	cpu_init(ST_DEC_6600, dec_6600_init, "DEC_6600"),
+	cpu_init(ST_DEC_TITAN, dec_6600_init, "DEC_6600"), 
 	cpu_init(ST_API_NAUTILUS, api_up1000_init, "API_UP1000"),
 };
 static const int ncpuinit = (sizeof(cpuinit) / sizeof(cpuinit[0]));
diff -Narbu alpha.orig/include/rpb.h alpha/include/rpb.h
--- alpha.orig/include/rpb.h	2012-02-06 02:14:13.000000000 +0000
+++ alpha/include/rpb.h	2013-08-22 22:21:48.000000000 +0000
@@ -452,7 +452,7 @@
 		u_long		mddt_p_bitaddr;	/*  20: bitmap phys addr */
 		int64_t		mddt_bit_cksum;	/*  28: bitmap checksum */

-#define	MDDT_NONVOLATILE		0x10	/* cluster is non-volatile */
+#define MDDT_NONVOLATILE    		0x02    /* cluster is non-volatile */ 
 #define	MDDT_PALCODE			0x01	/* console and PAL only */
 #define	MDDT_SYSTEM			0x00	/* system software only */
 #define	MDDT_mbz	  0xfffffffffffffffc	/* 2:63 -- must be zero */
diff -Narbu alpha.orig/pci/tsc.c alpha/pci/tsc.c
--- alpha.orig/pci/tsc.c	2011-05-17 17:34:47.000000000 +0000
+++ alpha/pci/tsc.c	2013-08-22 22:46:14.000000000 +0000
@@ -66,7 +66,7 @@

 extern struct cfdriver tsc_cd;

-struct tsp_config tsp_configuration[2];
+struct tsp_config tsp_configuration[4];

 static int tscprint(void *, const char *pnp);

@@ -91,9 +91,15 @@
 {
 	struct mainbus_attach_args *ma = aux;

-	return cputype == ST_DEC_6600
-	    && strcmp(ma->ma_name, tsc_cd.cd_name) == 0
-	    && !tscfound;
+	switch (cputype) {
+	case ST_DEC_6600:
+	case ST_DEC_TITAN:
+		return strcmp(ma->ma_name, tsc_cd.cd_name) == 0 && !tscfound;
+	default:
+		return 0;
+	}
+	
+
 }

 static void
@@ -104,15 +110,17 @@
 	uint64_t csc, aar;
 	struct tsp_attach_args tsp;
 	struct mainbus_attach_args *ma = aux;
+	int titan = cputype == ST_DEC_TITAN;
+

 	tscfound = 1;

 	csc = LDQP(TS_C_CSC);

 	nbus = 1 + (CSC_BC(csc) >= 2);
-	printf(": 21272 Core Logic Chipset, Cchip rev %d\n"
+	printf(": 2127%c Core Logic Chipset, Cchip rev %d\n"
 		"%s%d: %c Dchips, %d memory bus%s of %d bytes\n",
-		(int)MISC_REV(LDQP(TS_C_MISC)),
+		titan ? '4' : '2', (int)MISC_REV(LDQP(TS_C_MISC)),
 		ma->ma_name, ma->ma_slot, "2448"[CSC_BC(csc)],
 		nbus, nbus > 1 ? "es" : "", 16 + 16 * ((csc & CSC_AW) != 0));
 	printf("%s%d: arrays present: ", ma->ma_name, ma->ma_slot);
@@ -123,20 +131,29 @@
 	}
 	printf(", Dchip 0 rev %d\n", (int)LDQP(TS_D_DREV) & 0xf);

-	memset(&tsp, 0, sizeof tsp);
 	tsp.tsp_name = "tsp";
-	config_found(self, &tsp, NULL);
+	tsp.tsp_slot = 0; 
+	
+	config_found(self, &tsp, tscprint);
+	if (titan) {
+		tsp.tsp_slot += 2;
+		config_found(self, &tsp, tscprint);
+	}

-	if(LDQP(TS_C_CSC) & CSC_P1P) {
-		++tsp.tsp_slot;
+        if (csc & CSC_P1P) {
+		tsp.tsp_slot = 1;
+		config_found(self, &tsp, tscprint);
+		if (titan) {
+			tsp.tsp_slot += 2;
 		config_found(self, &tsp, tscprint);
 	}
+	}
 }

 static int
 tscprint(void *aux, const char *p)
 {
-	register struct tsp_attach_args *tsp = aux;
+	struct tsp_attach_args *tsp = aux;

 	if(p)
 		aprint_normal("%s%d at %s", tsp->tsp_name, tsp->tsp_slot, p);
@@ -150,8 +167,13 @@
 {
 	struct tsp_attach_args *t = aux;

-	return  cputype == ST_DEC_6600
-	    && strcmp(t->tsp_name, tsp_cd.cd_name) == 0;
+	switch (cputype) {
+	case ST_DEC_6600:
+	case ST_DEC_TITAN:
+		return strcmp(t->tsp_name, tsp_cd.cd_name) == 0;
+	default:
+		return 0;
+	}
 }

 static void
@@ -193,12 +215,24 @@
 	/* n:	 Pchip number */
 {
 	struct tsp_config *pcp;
+	int titan = cputype == ST_DEC_TITAN;

-	KASSERT((n | 1) == 1);
+	KASSERT(n >= 0 && n < nitems(tsp_configuration));
 	pcp = &tsp_configuration[n];
 	pcp->pc_pslot = n;
 	pcp->pc_iobase = TS_Pn(n, 0);
-	pcp->pc_csr = S_PAGE(TS_Pn(n, P_CSRBASE));
+	pcp->pc_csr = S_PAGE(TS_Pn(n & 1, P_CSRBASE));
+	if (n & 2) {
+		/* `A' port of PA Chip */
+		pcp->pc_csr++;
+	}
+	if (titan) {
+		/* same address on G and A ports */
+		pcp->pc_tlbia = &pcp->pc_csr->port.g.tsp_tlbia.tsg_r;
+	} else {
+		pcp->pc_tlbia = &pcp->pc_csr->port.p.tsp_tlbia.tsg_r;
+	}
+
 	if (!pcp->pc_initted) {
 		tsp_bus_io_init(&pcp->pc_iot, pcp);
 		tsp_bus_mem_init(&pcp->pc_memt, pcp);
diff -Narbu alpha.orig/pci/tsp_dma.c alpha/pci/tsp_dma.c
--- alpha.orig/pci/tsp_dma.c	2012-02-06 02:14:15.000000000 +0000
+++ alpha/pci/tsp_dma.c	2013-08-22 22:51:42.000000000 +0000
@@ -118,10 +118,10 @@
 	static struct map_expected {
 		uint32_t base, mask, enables;
 	} premap[4] = {
-		{ 0x800000, 		   0x700000, WSBA_ENA | WSBA_SG },
-		{ 0x80000000 | WSBA_ENA, 0x3ff00000, WSBA_ENA           },
-		{ 0, 0 },
-		{ 0, 0 }
+		{ 0x00800000, 0x00700000, WSBA_ENA | WSBA_SG },
+		{ 0x80000000, 0x3ff00000, WSBA_ENA           },
+		{ 0, 0, 0 },
+		{ 0, 0, 0 }
 	};

 	alpha_mb();
@@ -207,6 +207,14 @@
 	alpha_mb();

 	/*
+	 * Enable window 1 in direct mode.
+	 */
+	alpha_mb();
+	pccsr->tsp_wsba[1].tsg_r =
+	    (pccsr->tsp_wsba[1].tsg_r & ~WSBA_SG) | WSBA_ENA;
+	alpha_mb();
+
+	/*
 	 * Check windows for sanity, especially if we later decide to
 	 * use the firmware's initialization in some cases.
 	 */
@@ -354,6 +362,6 @@
 {

 	alpha_mb();
-	pcp->pc_csr->tsp_tlbia.tsg_r = 0;
+	*pcp->pc_tlbia = 0;
 	alpha_mb();
 }
diff -Narbu alpha.orig/pci/tsreg.h alpha/pci/tsreg.h
--- alpha.orig/pci/tsreg.h	2012-02-06 02:14:15.000000000 +0000
+++ alpha/pci/tsreg.h	2013-08-22 22:56:40.000000000 +0000
@@ -186,7 +186,7 @@
  */

 #define	P_CSRBASE	 0x001##8000##0000UL
-#define	P_PCI_MEM	 0
+#define	P_PCI_MEM	 0x800##0000##0000UL
 #define	P_PCI_IO	 0x001##fc00##0000UL
 #define	P_PCI_CONFIG	 0x001##fe00##0000UL

@@ -198,6 +198,7 @@
 #define	TS_P1(offs)	(0x102##0000##0000UL + (offs))
 #define	TS_Pn(n, offs)	(0x100##0000##0000UL + 0x2##0000##0000UL * (n) + (offs))

+
 /*
  * Tsunami Generic Register Type
  */
@@ -209,15 +210,8 @@
 /*
  * Tsunami Pchip
  */
-struct	ts_pchip {
-	TS_GR	tsp_wsba[4];	/* Window Space Base Address */
-
-	TS_GR	tsp_wsm[4];	/* Window Space Mask */
-
-	TS_GR	tsp_tba[4];	/* Translated Base Address */

-	TS_GR	tsp_pctl;	/* Pchip Control */
-	TS_GR	tsp_plat;	/* Pchip Latency */
+struct	ts_pport {
 	TS_GR	tsp_resA;
 	TS_GR	tsp_error;	/* Pchip Error */

@@ -232,6 +226,56 @@
 	TS_GR	tsp_resC;

 	TS_GR	tsp_resD_K[8];
+};
+
+struct	ts_gport {
+	TS_GR	tsp_resA[2];
+	TS_GR	tsp_serror;
+	TS_GR	tsp_serrmask;
+	TS_GR	tsp_serrset;
+	TS_GR	tsp_resB;
+	TS_GR	tsp_gperrmask;
+	TS_GR	tsp_gperren;
+	TS_GR	tsp_gperrset;
+	TS_GR	tsp_resC;
+	TS_GR	tsp_tlbiv;
+	TS_GR	tsp_tlbia;
+	TS_GR	tsp_resD[2];
+	TS_GR	tsp_sctl;
+	TS_GR	tsp_resE[3];
+};
+
+struct	ts_aport {
+	TS_GR	tsp_resA[2];
+	TS_GR	tsp_agperror;
+	TS_GR	tsp_agperrmask;
+	TS_GR	tsp_agperrset;
+	TS_GR	tsp_agplastwr;
+	TS_GR	tsp_aperror;
+	TS_GR	tsp_aperrmask;
+	TS_GR	tsp_aperrset;
+	TS_GR	tsp_resB;
+	TS_GR	tsp_tlbiv;
+	TS_GR	tsp_tlbia;
+	TS_GR	tsp_resC[6];
+};
+
+struct	ts_pchip {
+	TS_GR	tsp_wsba[4];	/* Window Space Base Address */
+
+	TS_GR	tsp_wsm[4];	/* Window Space Mask */
+
+	TS_GR	tsp_tba[4];	/* Translated Base Address */
+
+	TS_GR	tsp_pctl;	/* Pchip Control */
+	TS_GR	tsp_plat;	/* Pchip Latency */
+
+	union {
+		struct ts_pport	p;
+		struct ts_gport	g;
+		struct ts_aport	a;
+	} port;

 	TS_GR	tsp_sprts;	/* ??? */
+	TS_GR   tsp_res[31];
 };
diff -Narbu alpha.orig/pci/tsvar.h alpha/pci/tsvar.h
--- alpha.orig/pci/tsvar.h	2012-02-06 02:14:15.000000000 +0000
+++ alpha/pci/tsvar.h	2013-08-22 22:57:50.000000000 +0000
@@ -44,6 +44,7 @@
 	int	pc_initted;		/* Initialized */
 	uint64_t pc_iobase;		/* All Pchip space starts here */
 	struct	ts_pchip *pc_csr;	/* Pchip CSR space starts here */
+	volatile uint64_t *pc_tlbia;  	/* Pchip TLBIA register address */ 

 	struct	alpha_bus_space pc_iot, pc_memt;
 	struct	alpha_pci_chipset pc_pc;
========================================================================
Taking a picture(NetBSD 6.1):
http://twitpic.com/d92b4e
========================================================================
Boot log:
>>>boot dka0
(boot dka0.0.0.8.0 -flags a)
block 0 of dka0.0.0.8.0 is a valid boot block
reading 13 blocks from dka0.0.0.8.0
bootstrap code read in
base = 2be000, image_start = 0, image_bytes = 1a00(6656)
initializing HWRPB at 2000
initializing page table at 1fff0000
initializing machine state
setting affinity to the primary CPU
jumping to bootstrap code

NetBSD/alpha 6.1.1 FFS Primary Bootstrap
Jumping to entry point...

NetBSD/alpha 6.1.1 Secondary Bootstrap, Revision 1.13 (Thu Aug 22 15:43:13 UTC 2013)

VMS PAL rev: 0x1000700010162
OSF PAL rev: 0x100070002015c
Switch to OSF PAL code succeeded.

Boot flags: a
10392704+285360 [570384+380142]=0xb17830

Entering netbsd at 0xfffffc0000431230...
Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
    2006, 2007, 2008, 2009, 2010, 2011, 2012
    The NetBSD Foundation, Inc.  All rights reserved.
Copyright (c) 1982, 1986, 1989, 1991, 1993
    The Regents of the University of California.  All rights reserved.

NetBSD 6.1.1 (GENERIC-$Revision: 1.343 $) #43: Thu Aug 22 17:37:31 UTC 2013
        naruaki@:/usr/obj.alpha/sys/arch/alpha/compile/GENERIC
AlphaStation DS15, 1000MHz, s/n AY42501857
8192 byte page size, 1 processor.
total memory = 512 MB
(2880 KB reserved for PROM, 509 MB used by NetBSD)
avail memory = 490 MB
mainbus0 (root)
cpu0 at mainbus0: ID 0 (primary), 21264C-6
cpu0: Architecture extensions: 0x1307<PAT,MVI,CIX,FIX,BWX>
tsc0 at mainbus0: 21274 Core Logic Chipset, Cchip rev 0
tsc0: 2 Dchips, 1 memory bus of 16 bytes
tsc0: arrays present: 512MB, 0MB, 0MB, 0MB, Dchip 0 rev 1
tsp0 at tsc0
pci0 at tsp0 bus 0
sio0 at pci0 dev 7 function 0: Acer Labs M1533 PCI-ISA Bridge (rev. 0xc3)
ahc0 at pci0 dev 8 function 0: Adaptec aic7899 Ultra160 SCSI adapter
ahc0: interrupting at dec 6600 irq 13
ahc0: aic7899: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs
scsibus0 at ahc0: 16 targets, 8 luns per target
ahc1 at pci0 dev 8 function 1: Adaptec aic7899 Ultra160 SCSI adapter
ahc1: interrupting at dec 6600 irq 12
ahc1: aic7899: Ultra160 Wide Channel B, SCSI Id=7, 32/253 SCBs
scsibus1 at ahc1: 16 targets, 8 luns per target
fxp0 at pci0 dev 9 function 0: Intel i82559ER Ethernet (rev. 0x09)
fxp0: interrupting at dec 6600 irq 28
fxp0: Ethernet address 00:0f:20:2b:e1:24
inphy0 at fxp0 phy 1: i82555 10/100 media interface, rev. 4
inphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
fxp1 at pci0 dev 10 function 0: Intel i82559ER Ethernet (rev. 0x09)
fxp1: interrupting at dec 6600 irq 4
fxp1: Ethernet address 00:0f:20:2b:e1:23
inphy1 at fxp1 phy 1: i82555 10/100 media interface, rev. 4
inphy1: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
aceride0 at pci0 dev 13 function 0: Acer Labs M5229 UDMA IDE Controller (rev. 0xc1)
aceride0: primary channel interrupting at isa irq 14
atabus0 at aceride0 channel 0
aceride0: secondary channel interrupting at isa irq 15
atabus1 at aceride0 channel 1
isa0 at sio0
com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo
com0: console
com1 at isa0 port 0x2f8-0x2ff irq 3: ns16550a, working fifo
pckbc0 at isa0 port 0x60-0x64
attimer0 at isa0 port 0x40-0x43
pcppi0 at isa0 port 0x61
midi0 at pcppi0: PC speaker
spkr0 at pcppi0
isabeep0 at pcppi0
fdc0 at isa0 port 0x3f0-0x3f7 irq 6 drq 2
mcclock0 at isa0 port 0x70-0x71: mc146818 compatible time-of-day clock
attimer0: attached to pcppi0
tsp1 at tsc0
pci1 at tsp1 bus 0
radeonfb0 at pci1 dev 7 function 0: ATI Technologies Radeon 7500 QW (rev. 0x00)
radeonfb0: 64 MB aperture at 0x40000000, 64 KB registers at 0x01020000
radeonfb0: display 0: initial virtual resolution 640x480 at 8 bpp
radeonfb0: port 0: physical 1024x768 60Hz
radeonfb0: port 1: physical 1024x768 60Hz
wsdisplay0 at radeonfb0 kbdmux 1
drm at radeonfb0 not configured
scsibus0: waiting 2 seconds for devices to settle...
scsibus1: waiting 2 seconds for devices to settle...
atapibus0 at atabus0: 2 targets
cd0 at atapibus0 drive 0: <HL-DT-ST RW/DVD GCC-4480B, , 2.06> cdrom removable
sd0 at scsibus0 target 0 lun 0: <FUJITSU, MAU3073NP, 3502> disk fixed
sd0: 70007 MB, 49158 cyl, 4 head, 729 sec, 512 bytes/sect x 143374744 sectors
sd0: sync (12.50ns offset 127), 16-bit (160.000MB/s) transfers, tagged queueing
root on sd0a dumps on sd0b
root file system type: ffs
Fri Aug 23 02:47:30 JST 2013
Starting root file system check:
/dev/rsd0a: file system is clean; not checking
swapctl: setting dump device to /dev/sd0b
swapctl: adding /dev/sd0b as swap device at priority 0
Starting file system checks:
Setting tty flags.
Setting sysctl variables:
ddb.onpanic: 1 -> 0
Starting network.
Hostname: HARUTE
IPv6 mode: host
Configuring network interfaces: fxp0.
Adding interface aliases:.
add net default: gateway 192.168.1.1
Building databases: devcprng sysctl: WARNING pseudorandom rekeying.
, utmp, utmpx.
Starting syslogd.
Mounting all filesystems...
Clearing temporary files.
Updating fontconfig cache: done.
Checking quotas: done.
Loaded entropy from disk.
Setting securelevel: kern.securelevel: 0 -> 1
swapctl: setting dump device to /dev/sd0b
Starting virecover.
Checking for core dump...
savecore: no core dump
Starting local daemons:.
Updating motd.
Starting inetd.
Starting cron.
Fri Aug 23 02:47:42 JST 2013

NetBSD/alpha (HARUTE) (console)

login:
========================================================================
Build pkgsrc:
bootstrap-mk-files-20130727 *.mk files for the bootstrap bmake utility
bmake-20110606nb1   Portable (autoconf) version of NetBSD 'make' utility
pkg_install-20130131nb1 Package management and administration tools for pkgsrc
digest-20121220     Message digest wrapper utility
libtool-base-2.4.2nb4 Generic shared library support script (the script itself)
libyaml-0.1.4       YAML 1.1 parser and emitter written in C
ruby193-base-1.9.3p448nb3 Ruby 1.9.3 release minimum base package
ruby193-args_parser-0.1.4 Parse ARGV from command line with DSL
ruby193-parallel-0.6.4 Run any kind of code in parallel processes
ruby193-rainbow-1.1.4 Extends ruby String class enabling coloring text on ANSI terminals
ruby193-simple_oauth-0.2.0 Simple builds and verifies OAuth headers
ruby193-multi_json-1.7.0 General-purpose swappable JSON backend library
ruby193-multipart-post-1.2.0 Multipart form post accessory for Net::HTTP
ruby193-faraday-0.8.8 HTTP/REST API client library
ruby193-twitter-4.6.2 Ruby interface to the Twitter API
ruby193-hashie-1.2.0 Small collection of tools that make hashes more powerful
ruby193-oauth-0.4.7 OAuth Core Ruby implementation
ruby193-yajl-1.1.0  Ruby C binding to YAJL JSON library
ruby193-userstream-1.3.0 Simple twitter userstream library
ruby193-json-1.8.0  Native extension implementation of JSON for Ruby
ruby193-tw-0.4.2    CUI Twitter Client
========================================================================
Notice!:
Do not use radeonfb because Display blackout and panic.
========================================================================

That's very nice of you!

>Release-Note:

>Audit-Trail:

Responsible-Changed-From-To: port-alpha-maintainer->tsutsui
Responsible-Changed-By: tsutsui@NetBSD.org
Responsible-Changed-When: Sun, 15 Sep 2013 11:06:20 +0000
Responsible-Changed-Why:
I'm asking the submitter about details of his patch.


From: Izumi Tsutsui <tsutsui@ceres.dti.ne.jp>
To: gnats-bugs@NetBSD.org
Cc: netbsd-bugs@netbsd.org, tsutsui@ceres.dti.ne.jp
Subject: Re: port-alpha/48148: NetBSD/alpha fails to install on AlphaStaion
	 DS15
Date: Sun, 22 Sep 2013 02:37:12 +0900

 > >Synopsis:       NetBSD/alpha fails to install on AlphaStaion DS15

 I've discussed with the submitter and reviewed his patch.
 I'd note results in the PR for reference (since I'm not an alpha guy).

 > --- alpha.orig/alpha/cpuconf.c	2012-02-06 02:14:10.000000000 +0000
 > +++ alpha/alpha/cpuconf.c	2013-08-22 22:16:00.000000000 +0000
 > @@ -233,6 +233,7 @@
 >  	cpu_notsupp(ST_DEC_EV56_PBP, "EV56 Passive Backplane Board"),
 >  	cpu_notsupp(ST_DEC_ALPHAVME_320, "AlphaVME 320"),
 >  	cpu_init(ST_DEC_6600, dec_6600_init, "DEC_6600"),
 > +	cpu_init(ST_DEC_TITAN, dec_6600_init, "DEC_6600"), 
 >  	cpu_init(ST_API_NAUTILUS, api_up1000_init, "API_UP1000"),

 I wonder if it's better to change strings "DEC_TITAN"
 but it's easier to sync with the original OpenBSD's code.

 > --- alpha.orig/include/rpb.h	2012-02-06 02:14:13.000000000 +0000
 > +++ alpha/include/rpb.h	2013-08-22 22:21:48.000000000 +0000
 > @@ -452,7 +452,7 @@
 >  		u_long		mddt_p_bitaddr;	/*  20: bitmap phys addr */
 >  		int64_t		mddt_bit_cksum;	/*  28: bitmap checksum */
 >  
 > -#define	MDDT_NONVOLATILE		0x10	/* cluster is non-volatile */
 > +#define MDDT_NONVOLATILE    		0x02    /* cluster is non-volatile */ 
 >  #define	MDDT_PALCODE			0x01	/* console and PAL only */

 This change is not necessary for DS15 support and
 taken from a different change in OpenBSD:
 http://www.openbsd.org/cgi-bin/cvsweb/src/sys/arch/alpha/include/rpb.h#rev1.11
 It looks correct but it should be in a separate commit.

 > --- alpha.orig/pci/tsc.c	2011-05-17 17:34:47.000000000 +0000
 > +++ alpha/pci/tsc.c	2013-08-22 22:46:14.000000000 +0000
  :
 > +	switch (cputype) {
 > +	case ST_DEC_6600:
 > +	case ST_DEC_TITAN:
 > +		return strcmp(ma->ma_name, tsc_cd.cd_name) == 0 && !tscfound;
 > +	default:
 > +		return 0;
 > +	}
 > +	
 > +
 >  }
 >  
 >  static void
 > @@ -104,15 +110,17 @@
 >  	uint64_t csc, aar;
 >  	struct tsp_attach_args tsp;
 >  	struct mainbus_attach_args *ma = aux;
 > +	int titan = cputype == ST_DEC_TITAN;
 > +
 >  

 Extra lines should not be added.

 > @@ -123,20 +131,29 @@
 >  	}
 >  	printf(", Dchip 0 rev %d\n", (int)LDQP(TS_D_DREV) & 0xf);
 >  
 > -	memset(&tsp, 0, sizeof tsp);

 I'd like to leave this memset() for sanity.
 (though all members are initialized later)

 >  	tsp.tsp_name = "tsp";
 > -	config_found(self, &tsp, NULL);
 > +	tsp.tsp_slot = 0; 
 > +	
 > +	config_found(self, &tsp, tscprint);
 > +	if (titan) {
 > +		tsp.tsp_slot += 2;
 > +		config_found(self, &tsp, tscprint);
 > +	}
 >  
 > -	if(LDQP(TS_C_CSC) & CSC_P1P) {
 > -		++tsp.tsp_slot;
 > +        if (csc & CSC_P1P) {

 Tab vs space.

 > +		tsp.tsp_slot = 1;
 > +		config_found(self, &tsp, tscprint);
 > +		if (titan) {
 > +			tsp.tsp_slot += 2;
 >  		config_found(self, &tsp, tscprint);
 >  	}
 > +	}

 Bad indent.

 >  }
 >  
 >  static int
 >  tscprint(void *aux, const char *p)
 >  {
 > -	register struct tsp_attach_args *tsp = aux;
 > +	struct tsp_attach_args *tsp = aux;

 Removing register declarations should be done in a separate commit.

 > @@ -193,12 +215,24 @@
 >  	/* n:	 Pchip number */
 >  {
 >  	struct tsp_config *pcp;
 > +	int titan = cputype == ST_DEC_TITAN;

 Probably bool is better than int, but for now we'll sync with OpenBSD.

 > -	KASSERT((n | 1) == 1);
 > +	KASSERT(n >= 0 && n < nitems(tsp_configuration));

 nitems() is OpenBSD specific so it should be __arraycount() on NetBSD.
 (note submitter said he tried only kernels without DIAGNOSTIC)

 > --- alpha.orig/pci/tsreg.h	2012-02-06 02:14:15.000000000 +0000
 > +++ alpha/pci/tsreg.h	2013-08-22 22:56:40.000000000 +0000

 I'll remove extra lines to clarify diff.

 As a result of review, I'll commit the following patch to head:

 ---
 Index: alpha/cpuconf.c
 ===================================================================
 RCS file: /cvsroot/src/sys/arch/alpha/alpha/cpuconf.c,v
 retrieving revision 1.35
 diff -u -p -r1.35 cpuconf.c
 --- alpha/cpuconf.c	6 Feb 2012 02:14:10 -0000	1.35
 +++ alpha/cpuconf.c	16 Sep 2013 15:05:42 -0000
 @@ -233,6 +233,7 @@ static const struct cpuinit cpuinit[] = 
  	cpu_notsupp(ST_DEC_EV56_PBP, "EV56 Passive Backplane Board"),
  	cpu_notsupp(ST_DEC_ALPHAVME_320, "AlphaVME 320"),
  	cpu_init(ST_DEC_6600, dec_6600_init, "DEC_6600"),
 +	cpu_init(ST_DEC_TITAN, dec_6600_init, "DEC_6600"), 
  	cpu_init(ST_API_NAUTILUS, api_up1000_init, "API_UP1000"),
  };
  static const int ncpuinit = (sizeof(cpuinit) / sizeof(cpuinit[0]));
 Index: pci/tsc.c
 ===================================================================
 RCS file: /cvsroot/src/sys/arch/alpha/pci/tsc.c,v
 retrieving revision 1.19
 diff -u -p -r1.19 tsc.c
 --- pci/tsc.c	17 May 2011 17:34:47 -0000	1.19
 +++ pci/tsc.c	16 Sep 2013 15:05:42 -0000
 @@ -66,7 +66,7 @@ CFATTACH_DECL_NEW(tsc, 0, tscmatch, tsca

  extern struct cfdriver tsc_cd;

 -struct tsp_config tsp_configuration[2];
 +struct tsp_config tsp_configuration[4];

  static int tscprint(void *, const char *pnp);

 @@ -91,9 +91,13 @@ tscmatch(device_t parent, cfdata_t match
  {
  	struct mainbus_attach_args *ma = aux;

 -	return cputype == ST_DEC_6600
 -	    && strcmp(ma->ma_name, tsc_cd.cd_name) == 0
 -	    && !tscfound;
 +	switch (cputype) {
 +	case ST_DEC_6600:
 +	case ST_DEC_TITAN:
 +		return strcmp(ma->ma_name, tsc_cd.cd_name) == 0 && !tscfound;
 +	default:
 +		return 0;
 +	}
  }

  static void
 @@ -104,15 +108,16 @@ tscattach(device_t parent, device_t self
  	uint64_t csc, aar;
  	struct tsp_attach_args tsp;
  	struct mainbus_attach_args *ma = aux;
 +	int titan = cputype == ST_DEC_TITAN;

  	tscfound = 1;

  	csc = LDQP(TS_C_CSC);

  	nbus = 1 + (CSC_BC(csc) >= 2);
 -	printf(": 21272 Core Logic Chipset, Cchip rev %d\n"
 +	printf(": 2127%c Core Logic Chipset, Cchip rev %d\n"
  		"%s%d: %c Dchips, %d memory bus%s of %d bytes\n",
 -		(int)MISC_REV(LDQP(TS_C_MISC)),
 +		titan ? '4' : '2', (int)MISC_REV(LDQP(TS_C_MISC)),
  		ma->ma_name, ma->ma_slot, "2448"[CSC_BC(csc)],
  		nbus, nbus > 1 ? "es" : "", 16 + 16 * ((csc & CSC_AW) != 0));
  	printf("%s%d: arrays present: ", ma->ma_name, ma->ma_slot);
 @@ -125,11 +130,21 @@ tscattach(device_t parent, device_t self

  	memset(&tsp, 0, sizeof tsp);
  	tsp.tsp_name = "tsp";
 -	config_found(self, &tsp, NULL);
 +	tsp.tsp_slot = 0; 
 +	
 +	config_found(self, &tsp, tscprint);
 +	if (titan) {
 +		tsp.tsp_slot += 2;
 +		config_found(self, &tsp, tscprint);
 +	}

 -	if(LDQP(TS_C_CSC) & CSC_P1P) {
 -		++tsp.tsp_slot;
 +	if (csc & CSC_P1P) {
 +		tsp.tsp_slot = 1;
  		config_found(self, &tsp, tscprint);
 +		if (titan) {
 +			tsp.tsp_slot += 2;
 +			config_found(self, &tsp, tscprint);
 +		}
  	}
  }

 @@ -150,8 +165,13 @@ tspmatch(device_t parent, cfdata_t match
  {
  	struct tsp_attach_args *t = aux;

 -	return  cputype == ST_DEC_6600
 -	    && strcmp(t->tsp_name, tsp_cd.cd_name) == 0;
 +	switch (cputype) {
 +	case ST_DEC_6600:
 +	case ST_DEC_TITAN:
 +		return strcmp(t->tsp_name, tsp_cd.cd_name) == 0;
 +	default:
 +		return 0;
 +	}
  }

  static void
 @@ -193,12 +213,24 @@ tsp_init(int mallocsafe, int n)
  	/* n:	 Pchip number */
  {
  	struct tsp_config *pcp;
 +	int titan = cputype == ST_DEC_TITAN;

 -	KASSERT((n | 1) == 1);
 +	KASSERT(n >= 0 && n < __arraycount(tsp_configuration));
  	pcp = &tsp_configuration[n];
  	pcp->pc_pslot = n;
  	pcp->pc_iobase = TS_Pn(n, 0);
 -	pcp->pc_csr = S_PAGE(TS_Pn(n, P_CSRBASE));
 +	pcp->pc_csr = S_PAGE(TS_Pn(n & 1, P_CSRBASE));
 +	if (n & 2) {
 +		/* `A' port of PA Chip */
 +		pcp->pc_csr++;
 +	}
 +	if (titan) {
 +		/* same address on G and A ports */
 +		pcp->pc_tlbia = &pcp->pc_csr->port.g.tsp_tlbia.tsg_r;
 +	} else {
 +		pcp->pc_tlbia = &pcp->pc_csr->port.p.tsp_tlbia.tsg_r;
 +	}
 +
  	if (!pcp->pc_initted) {
  		tsp_bus_io_init(&pcp->pc_iot, pcp);
  		tsp_bus_mem_init(&pcp->pc_memt, pcp);
 Index: pci/tsp_dma.c
 ===================================================================
 RCS file: /cvsroot/src/sys/arch/alpha/pci/tsp_dma.c,v
 retrieving revision 1.12
 diff -u -p -r1.12 tsp_dma.c
 --- pci/tsp_dma.c	6 Feb 2012 02:14:15 -0000	1.12
 +++ pci/tsp_dma.c	16 Sep 2013 15:05:42 -0000
 @@ -118,10 +118,10 @@ tsp_dma_init(struct tsp_config *pcp)
  	static struct map_expected {
  		uint32_t base, mask, enables;
  	} premap[4] = {
 -		{ 0x800000, 		   0x700000, WSBA_ENA | WSBA_SG },
 -		{ 0x80000000 | WSBA_ENA, 0x3ff00000, WSBA_ENA           },
 -		{ 0, 0 },
 -		{ 0, 0 }
 +		{ 0x00800000, 0x00700000, WSBA_ENA | WSBA_SG },
 +		{ 0x80000000, 0x3ff00000, WSBA_ENA           },
 +		{ 0, 0, 0 },
 +		{ 0, 0, 0 }
  	};

  	alpha_mb();
 @@ -207,6 +207,14 @@ tsp_dma_init(struct tsp_config *pcp)
  	alpha_mb();

  	/*
 +	 * Enable window 1 in direct mode.
 +	 */
 +	alpha_mb();
 +	pccsr->tsp_wsba[1].tsg_r =
 +	    (pccsr->tsp_wsba[1].tsg_r & ~WSBA_SG) | WSBA_ENA;
 +	alpha_mb();
 +
 +	/*
  	 * Check windows for sanity, especially if we later decide to
  	 * use the firmware's initialization in some cases.
  	 */
 @@ -354,6 +362,6 @@ tsp_tlb_invalidate(struct tsp_config *pc
  {

  	alpha_mb();
 -	pcp->pc_csr->tsp_tlbia.tsg_r = 0;
 +	*pcp->pc_tlbia = 0;
  	alpha_mb();
  }
 Index: pci/tsreg.h
 ===================================================================
 RCS file: /cvsroot/src/sys/arch/alpha/pci/tsreg.h,v
 retrieving revision 1.5
 diff -u -p -r1.5 tsreg.h
 --- pci/tsreg.h	6 Feb 2012 02:14:15 -0000	1.5
 +++ pci/tsreg.h	16 Sep 2013 15:05:42 -0000
 @@ -186,7 +186,7 @@
   */

  #define	P_CSRBASE	 0x001##8000##0000UL
 -#define	P_PCI_MEM	 0
 +#define	P_PCI_MEM	 0x800##0000##0000UL
  #define	P_PCI_IO	 0x001##fc00##0000UL
  #define	P_PCI_CONFIG	 0x001##fe00##0000UL

 @@ -209,15 +209,7 @@ typedef struct _ts_gr {
  /*
   * Tsunami Pchip
   */
 -struct	ts_pchip {
 -	TS_GR	tsp_wsba[4];	/* Window Space Base Address */
 -
 -	TS_GR	tsp_wsm[4];	/* Window Space Mask */
 -
 -	TS_GR	tsp_tba[4];	/* Translated Base Address */
 -
 -	TS_GR	tsp_pctl;	/* Pchip Control */
 -	TS_GR	tsp_plat;	/* Pchip Latency */
 +struct	ts_pport {
  	TS_GR	tsp_resA;
  	TS_GR	tsp_error;	/* Pchip Error */

 @@ -232,6 +224,56 @@ struct	ts_pchip {
  	TS_GR	tsp_resC;

  	TS_GR	tsp_resD_K[8];
 +};
 +
 +struct	ts_gport {
 +	TS_GR	tsp_resA[2];
 +	TS_GR	tsp_serror;
 +	TS_GR	tsp_serrmask;
 +	TS_GR	tsp_serrset;
 +	TS_GR	tsp_resB;
 +	TS_GR	tsp_gperrmask;
 +	TS_GR	tsp_gperren;
 +	TS_GR	tsp_gperrset;
 +	TS_GR	tsp_resC;
 +	TS_GR	tsp_tlbiv;
 +	TS_GR	tsp_tlbia;
 +	TS_GR	tsp_resD[2];
 +	TS_GR	tsp_sctl;
 +	TS_GR	tsp_resE[3];
 +};
 +
 +struct	ts_aport {
 +	TS_GR	tsp_resA[2];
 +	TS_GR	tsp_agperror;
 +	TS_GR	tsp_agperrmask;
 +	TS_GR	tsp_agperrset;
 +	TS_GR	tsp_agplastwr;
 +	TS_GR	tsp_aperror;
 +	TS_GR	tsp_aperrmask;
 +	TS_GR	tsp_aperrset;
 +	TS_GR	tsp_resB;
 +	TS_GR	tsp_tlbiv;
 +	TS_GR	tsp_tlbia;
 +	TS_GR	tsp_resC[6];
 +};
 +
 +struct	ts_pchip {
 +	TS_GR	tsp_wsba[4];	/* Window Space Base Address */
 +
 +	TS_GR	tsp_wsm[4];	/* Window Space Mask */
 +
 +	TS_GR	tsp_tba[4];	/* Translated Base Address */
 +
 +	TS_GR	tsp_pctl;	/* Pchip Control */
 +	TS_GR	tsp_plat;	/* Pchip Latency */
 +
 +	union {
 +		struct ts_pport	p;
 +		struct ts_gport	g;
 +		struct ts_aport	a;
 +	} port;

  	TS_GR	tsp_sprts;	/* ??? */
 +	TS_GR   tsp_res[31];
  };
 Index: pci/tsvar.h
 ===================================================================
 RCS file: /cvsroot/src/sys/arch/alpha/pci/tsvar.h,v
 retrieving revision 1.10
 diff -u -p -r1.10 tsvar.h
 --- pci/tsvar.h	6 Feb 2012 02:14:15 -0000	1.10
 +++ pci/tsvar.h	16 Sep 2013 15:05:42 -0000
 @@ -44,6 +44,7 @@ struct tsp_config {
  	int	pc_initted;		/* Initialized */
  	uint64_t pc_iobase;		/* All Pchip space starts here */
  	struct	ts_pchip *pc_csr;	/* Pchip CSR space starts here */
 +	volatile uint64_t *pc_tlbia;  	/* Pchip TLBIA register address */ 

  	struct	alpha_bus_space pc_iot, pc_memt;
  	struct	alpha_pci_chipset pc_pc;

 ---

 More notes from discussion with the submitter:

 > tsp0 at tsc0
 > pci0 at tsp0 bus 0
  :
 > tsp1 at tsc0
 > pci1 at tsp1 bus 0

 As seen in dmesg, DS15 (and other Tsunami based systems including XP1000)
 have two PCI busses (without bridges).

 We need more fixes to support DMA xfers and interrupts for
 the second PCI bus:
 - handle more than one PCI DMA direct mappings (see bus_dma(9) paper)
 - prepare proper interrupt mappings for the second PCI

 Note Linux has the following code for Tsunami:
 http://lxr.linux.no/#linux+v3.11.1/arch/alpha/kernel/sys_titan.c
 http://lxr.linux.no/#linux+v3.11.1/arch/alpha/kernel/setup.c#L963

 ---
 Izumi Tsutsui

From: "Izumi Tsutsui" <tsutsui@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/48148 CVS commit: src/sys/arch/alpha
Date: Mon, 23 Sep 2013 16:41:57 +0000

 Module Name:	src
 Committed By:	tsutsui
 Date:		Mon Sep 23 16:41:57 UTC 2013

 Modified Files:
 	src/sys/arch/alpha/alpha: cpuconf.c
 	src/sys/arch/alpha/pci: tsc.c tsp_dma.c tsreg.h tsvar.h

 Log Message:
 Add support for AlphaStation DS15.

 Ported from OpenBSD via PR port-alpha/48148 by nullnilaki.
 Note support for the secondary PCI bus still needs more improvements.


 To generate a diff of this commit:
 cvs rdiff -u -r1.35 -r1.36 src/sys/arch/alpha/alpha/cpuconf.c
 cvs rdiff -u -r1.19 -r1.20 src/sys/arch/alpha/pci/tsc.c
 cvs rdiff -u -r1.12 -r1.13 src/sys/arch/alpha/pci/tsp_dma.c
 cvs rdiff -u -r1.5 -r1.6 src/sys/arch/alpha/pci/tsreg.h
 cvs rdiff -u -r1.10 -r1.11 src/sys/arch/alpha/pci/tsvar.h

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Izumi Tsutsui" <tsutsui@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/48148 CVS commit: src/sys/arch/alpha/pci
Date: Mon, 23 Sep 2013 16:44:30 +0000

 Module Name:	src
 Committed By:	tsutsui
 Date:		Mon Sep 23 16:44:30 UTC 2013

 Modified Files:
 	src/sys/arch/alpha/pci: tsc.c

 Log Message:
 Remove a 'register' declaration. Noted in PR port-alpha/48148.


 To generate a diff of this commit:
 cvs rdiff -u -r1.20 -r1.21 src/sys/arch/alpha/pci/tsc.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

State-Changed-From-To: open->feedback
State-Changed-By: tsutsui@NetBSD.org
State-Changed-When: Mon, 23 Sep 2013 16:53:37 +0000
State-Changed-Why:
Integrated. Could you confirm?


From: =?ISO-2022-JP?B?GyRCOT5JWTh5Ty8bKEI=?= <nullnilaki@gmail.com>
To: gnats-bugs@netbsd.org, tsutsui@netbsd.org
Cc: 
Subject: Re: port-alpha/48148 (NetBSD/alpha fails to install on AlphaStaion DS15)
Date: Sun, 6 Oct 2013 07:16:18 +0900

 Dear Tsutsui-san.

 Thank you for your mail!

 I carry out NetBSD-current.
 (http://nyftp.netbsd.org/pub/NetBSD-daily/HEAD/201310051500Z/alpha/binary/sets/)

 ==============================================================================================================================
 1:Alpha Station DS15 boot-log

 NetBSD 6.99.24 (GENERIC-$Revision: 1.353 $) #0: Sat Oct  5 15:26:48 UTC 2013
     builds@b8.netbsd.org:/home/builds/ab/HEAD/alpha/201310051500Z-obj/home/builds/ab/HEAD/src/sys/arch/alpha/compile/GENERIC
 AlphaStation DS15, 1000MHz, s/n AY42501857
 8192 byte page size, 1 processor.
 total memory = 512 MB
 (2880 KB reserved for PROM, 509 MB used by NetBSD)
 avail memory = 490 MB
 mainbus0 (root)
 cpu0 at mainbus0: ID 0 (primary), 21264C-6
 cpu0: Architecture extensions: 0x1307<PAT,MVI,CIX,FIX,BWX>
 tsc0 at mainbus0: 21274 Core Logic Chipset, Cchip rev 0
 tsc0: 2 Dchips, 1 memory bus of 16 bytes
 tsc0: arrays present: 512MB, 0MB, 0MB, 0MB, Dchip 0 rev 1
 tsp0 at tsc0
 pci0 at tsp0 bus 0
 sio0 at pci0 dev 7 function 0: Acer Labs M1533 PCI-ISA Bridge (rev. 0xc3)
 ahc0 at pci0 dev 8 function 0: Adaptec aic7899 Ultra160 SCSI adapter
 ahc0: interrupting at dec 6600 irq 13
 ahc0: aic7899: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs
 scsibus0 at ahc0: 16 targets, 8 luns per target
 ahc1 at pci0 dev 8 function 1: Adaptec aic7899 Ultra160 SCSI adapter
 ahc1: interrupting at dec 6600 irq 12
 ahc1: aic7899: Ultra160 Wide Channel B, SCSI Id=7, 32/253 SCBs
 scsibus1 at ahc1: 16 targets, 8 luns per target
 fxp0 at pci0 dev 9 function 0: Intel i82559ER Ethernet (rev. 0x09)
 fxp0: interrupting at dec 6600 irq 28
 fxp0: Ethernet address 00:0f:20:2b:e1:24
 inphy0 at fxp0 phy 1: i82555 10/100 media interface, rev. 4
 inphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
 fxp1 at pci0 dev 10 function 0: Intel i82559ER Ethernet (rev. 0x09)
 fxp1: interrupting at dec 6600 irq 4
 fxp1: Ethernet address 00:0f:20:2b:e1:23
 inphy1 at fxp1 phy 1: i82555 10/100 media interface, rev. 4
 inphy1: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
 aceride0 at pci0 dev 13 function 0: Acer Labs M5229 UDMA IDE
 Controller (rev. 0xc1)
 aceride0: primary channel interrupting at isa irq 14
 atabus0 at aceride0 channel 0
 aceride0: secondary channel interrupting at isa irq 15
 atabus1 at aceride0 channel 1
 isa0 at sio0
 com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo
 com0: console
 com1 at isa0 port 0x2f8-0x2ff irq 3: ns16550a, working fifo
 pckbc0 at isa0 port 0x60-0x64
 attimer0 at isa0 port 0x40-0x43
 pcppi0 at isa0 port 0x61
 midi0 at pcppi0: PC speaker
 spkr0 at pcppi0
 isabeep0 at pcppi0
 fdc0 at isa0 port 0x3f0-0x3f7 irq 6 drq 2
 mcclock0 at isa0 port 0x70-0x71: mc146818 compatible time-of-day clock
 attimer0: attached to pcppi0
 tsp1 at tsc0
 pci1 at tsp1 bus 0
 vga0 at pci1 dev 7 function 0: ATI Technologies Radeon 7500 QW (rev. 0x00)
 wsdisplay0 at vga0 kbdmux 1
 drm at vga0 not configured
 scsibus0: waiting 2 seconds for devices to settle...
 scsibus1: waiting 2 seconds for devices to settle...
 atapibus0 at atabus0: 2 targets
 cd0 at atapibus0 drive 0: <HL-DT-ST RW/DVD GCC-4480B, , 2.06> cdrom removable
 sd0 at scsibus0 target 0 lun 0: <FUJITSU, MAU3073NP, 3502> disk fixed
 sd0: 70007 MB, 49158 cyl, 4 head, 729 sec, 512 bytes/sect x 143374744 sectors
 sd0: sync (12.50ns offset 127), 16-bit (160.000MB/s) transfers, tagged queueing
 root on sd0a dumps on sd0b
 root file system type: ffs
 Sat Oct  5 19:55:49 UTC 2013
 Starting root file system check:
 /dev/rsd0a: file system is clean; not checking
 cd0: no disk label
 swapctl: setting dump device to /dev/sd0b
 swapctl: adding /dev/sd0b as swap device at priority 0
 Starting file system checks:
 Loaded entropy from /var/db/entropy-file.
 Setting tty flags.
 Setting sysctl variables:
 ddb.onpanic: 1 -> 0
 Starting network.
 IPv6 mode: host
 Configuring network interfaces:.
 Adding interface aliases:.
 Waiting for DAD completion for statically configured addresses...
 Starting dhclient.
 Building databases: dev, utmp, utmpx.
 Starting syslogd.
 Mounting all filesystems...
 Clearing temporary files.
 Checking quotas: done.
 Setting securelevel: kern.securelevel: 0 -> 1
 swapctl: setting dump device to /dev/sd0b
 Starting virecover.
 Checking for core dump...
 savecore: no core dump
 Starting local daemons:.
 Updating motd.
 /usr/sbin/postconf: warning: valid_hostname: empty hostname
 /usr/sbin/postconf: fatal: unable to use my own hostname
 Oct  5 19:56:01  postfix[334]: fatal: unable to use my own hostname
 /etc/rc.d/postfix exited with code 1
 Starting inetd.
 Starting cron.
 The following components reported failures:
     /etc/rc.d/postfix
 See /var/run/rc.log for more information.
 Sat Oct  5 19:56:02 UTC 2013

 NetBSD/alpha (Amnesiac) (console)

 login:

 ==============================================================================================================================
 2:uname

 $ uname -a
 NetBSD  6.99.24 NetBSD 6.99.24 (GENERIC-$Revision: 1.353 $)
 #0: Sat Oct  5 15:26:48 UTC 2013  builds@b8.netbsd.org:
 /home/builds/ab/HEAD/alpha/201310051500Z-obj/home/builds/ab/HEAD/src/sys/arch/alpha/compile/GENERIC
 alpha

 ==============================================================================================================================
 3:tools and utilities test

 $ pkg_info
 bootstrap-mk-files-20130912 *.mk files for the bootstrap bmake utility
 bmake-20110606nb1   Portable (autoconf) version of NetBSD 'make' utility
 pkg_install-20130902 Package management and administration tools for pkgsrc
 digest-20121220     Message digest wrapper utility
 libtool-base-2.4.2nb5 Generic shared library support script (the script itself)
 libyaml-0.1.4       YAML 1.1 parser and emitter written in C
 ruby193-base-1.9.3p448nb5 Ruby 1.9.3 release minimum base package
 ruby193-args_parser-0.2.0 Parse ARGV from command line with DSL
 ruby193-parallel-0.8.2 Run any kind of code in parallel processes
 ruby193-rainbow-1.1.4 Extends ruby String class enabling coloring text
 on ANSI terminals
 ruby193-simple_oauth-0.2.0 Simple builds and verifies OAuth headers
 ruby193-multi_json-1.7.0 General-purpose swappable JSON backend library
 ruby193-multipart-post-1.2.0 Multipart form post accessory for Net::HTTP
 ruby193-faraday-0.8.8 HTTP/REST API client library
 ruby193-twitter-4.6.2 Ruby interface to the Twitter API
 ruby193-hashie-1.2.0 Small collection of tools that make hashes more powerful
 ruby193-oauth-0.4.7 OAuth Core Ruby implementation
 ruby193-yajl-1.1.0  Ruby C binding to YAJL JSON library
 ruby193-userstream-1.3.0 Simple twitter userstream library
 ruby193-json-1.8.0  Native extension implementation of JSON for Ruby
 ruby193-tw-0.5.1    CUI Twitter Client

 ==============================================================================================================================
 4:DMA test

 $ time dd if=/dev/zero of=test bs=1m count=1024
 1024+0 records in
 1024+0 records out
 1073741824 bytes transferred in 13.708 secs (78329575 bytes/sec)
        13.72 real         0.00 user         7.13 sys

 ==============================================================================================================================
 5:Alpha Station XP1000 boot-log

 NetBSD 6.99.24 (INSTALL) #0: Sat Oct  5 15:24:50 UTC 2013
   builds@b8.netbsd.org:/home/builds/ab/HEAD/alpha/201310051500Z-obj/home/builds/ab/HEAD/src/sys/arch/alpha/compile/INSTALL
 COMPAQ Professional Workstation XP1000, 500MHz, s/n
 8192 byte page size, 1 processor.
 total memory = 512 MB
 (2128 KB reserved for PROM, 509 MB used by NetBSD)
 avail memory = 492 MB
 mainbus0 (root)
 cpu0 at mainbus0: ID 0 (primary), 21264-5
 cpu0: Architecture extensions: 0x303<PAT,MVI,FIX,BWX>
 tsc0 at mainbus0: 21272 Core Logic Chipset, Cchip rev 0
 tsc0: 4 Dchips, 1 memory bus of 32 bytes
 tsc0: arrays present: 512MB (split), 0MB, 0MB, 0MB, Dchip 0 rev 1
 tsp0 at tsc0
 pci0 at tsp0 bus 0
 sio0 at pci0 dev 7 function 0: vendor 0x1080 product 0xc693 (rev. 0x00)
 cypide0 at pci0 dev 7 function 1: Cypress 82C693 IDE Controller (rev. 0x00)
 cypide0: primary channel wired to compatibility mode
 cypide0: primary channel interrupting at isa irq 14
 atabus0 at cypide0 channel 0
 cypide1 at pci0 dev 7 function 2: Cypress 82C693 IDE Controller (rev. 0x00)
 cypide1: hardware does not support DMA
 cypide1: primary channel wired to compatibility mode
 cypide1: secondary channel interrupting at isa irq 15
 atabus1 at cypide1 channel 0
 vendor 0x1080 product 0xc693 (USB serial bus, interface 0x10) at pci0
 dev 7 function 3 not configured
 siop0 at pci0 dev 12 function 0: Symbios Logic 53c895 (ultra2-wide scsi)
 siop0: using on-board RAM
 siop0: interrupting at dec 6600 irq 36
 scsibus0 at siop0: 16 targets, 8 luns per target
 tlp0 at pci0 dev 13 function 0: DECchip 21140A Ethernet, pass 2.0
 tlp0: interrupting at dec 6600 irq 32
 tlp0: DEC DE500-AA, Ethernet address 00:00:f8:03:dd:a1
 nsphy0 at tlp0 phy 5: DP83840 10/100 media interface, rev. 0
 nsphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
 isa0 at sio0
 lpt0 at isa0 port 0x3bc-0x3bf irq 7
 com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo
 com0: console
 com1 at isa0 port 0x2f8-0x2ff irq 3: ns16550a, working fifo
 pckbc0 at isa0 port 0x60-0x64
 fdc0 at isa0 port 0x3f0-0x3f7 irq 6 drq 2
 mcclock0 at isa0 port 0x70-0x71: mc146818 compatible time-of-day clock
 tsp1 at tsc0
 pci1 at tsp1 bus 0
 tlp1 at pci1 dev 3 function 0: DECchip 21143 Ethernet, pass 4.1
 tlp1: interrupting at dec 6600 irq 45
 tlp1: DEC, Ethernet address 00:00:f8:71:71:15
 tlp1: 10baseT, 10base2, 10base5, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
 isp0 at pci1 dev 6 function 0: QLogic 1020 Fast Wide SCSI HBA
 isp0: interrupting at dec 6600 irq 47
 ppb0 at pci1 dev 8 function 0: vendor 0x1011 product 0x0024 (rev. 0x03)
 pci2 at ppb0 bus 2
 vga0 at pci2 dev 9 function 0: vendor 0x10ba product 0x0304 (rev. 0x00)
 wsdisplay0 at vga0 (kbdmux ignored)
 drm at vga0 not configured
 scsibus0: waiting 2 seconds for devices to settle...
 scsibus1 at isp0: 16 targets, 8 luns per target
 atapibus0 at atabus0: 2 targets
 scsibus1: waiting 2 seconds for devices to settle...
 cd0 at atapibus0 drive 0: <JLMS XJ-HD166S, , D3S4> cdrom removable
 fd0 at fdc0 drive 0: 1.44MB, 80 cyl, 2 head, 18 sec
 st0 at scsibus1 target 5 lun 0: <SONY, SDT-9000, 0123> tape removable
 st0 : drive empty
 st0: sync (100.00ns offset 8), 8-bit (10.000MB/s) transfers
 WARNING: can't figure what device matches "IDE 0 107 0 0 0 0 0"
 root on md0a dumps on md0b
 root file system type: ffs
 WARNING: preposterous TOD clock time
 WARNING: using filesystem time
 WARNING: CHECK AND RESET THE DATE!
 Terminal type? [vt100]

 ==============================================================================================================================

 >Integrated. Could you confirm?

 It worked fine!!
 I am very pleased.

 That's very nice of you!
 --
 Naruaki Etomi / nullnilaki@gmail.com

State-Changed-From-To: feedback->closed
State-Changed-By: dholland@NetBSD.org
State-Changed-When: Sun, 06 Oct 2013 08:17:48 +0000
State-Changed-Why:
Confirmed, thanks!


>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.