From owner-freebsd-alpha Tue Sep 5 22:13:14 2000 Delivered-To: freebsd-alpha@freebsd.org Received: from feral.com (feral.com [192.67.166.1]) by hub.freebsd.org (Postfix) with ESMTP id 8D5DD37B422; Tue, 5 Sep 2000 22:13:11 -0700 (PDT) Received: from beppo.feral.com (beppo [192.67.166.79]) by feral.com (8.9.3/8.9.3) with ESMTP id WAA21444; Tue, 5 Sep 2000 22:13:01 -0700 Date: Tue, 5 Sep 2000 22:12:49 -0700 (PDT) From: Matthew Jacob Reply-To: mjacob@feral.com To: Peter Wemm Cc: Andrew Gallatin , obrien@FreeBSD.ORG, alpha@FreeBSD.ORG Subject: Re: what was the last patch you sent out? In-Reply-To: <200009060344.e863i9G48367@netplex.com.au> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-alpha@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org > > What I'd like to know is what is different about the CIA setup in the PC164 > (vs PC164SX).. > > Also, consider this difference: > > PC164: > cia0: ALCOR/ALCOR2, pass 3 > cia0: extended capabilities: 21 > PC164SX: > cia0: Pyxis, pass 1 > cia0: extended capabilities: 1 > > And consider: > if (cia_rev >= 2 || cia_ispyxis) > cia_config = REGVAL(CIA_CSR_CNFG); > else > cia_config = 0; > .. > if (alpha_implver() != ALPHA_IMPLVER_EV5 > || alpha_amask(ALPHA_AMASK_BWX) > || !(cia_config & CNFG_BWEN)) { > .. > chipset = cia_swiz_chipset; > } else { > .. > chipset = cia_bwx_chipset; > } > > IE: we are setting cia_bwx_chipset for all capable chipsets, including > both the ALCOR and Pyxis ones that I've seen console cut/pastes from. > > While later: > if (cia_ispyxis) { > snprintf(chipset_type, sizeof(chipset_type), "pyxis"); > chipset_bwx = 1; > chipset_ports = CIA_EV56_BWIO; > chipset_memory = CIA_EV56_BWMEM; > chipset_dense = CIA_PCI_DENSE; > } else { > snprintf(chipset_type, sizeof(chipset_type), "cia"); > chipset_bwx = 0; > chipset_ports = CIA_PCI_SIO1; > chipset_memory = CIA_PCI_SMEM1; > chipset_dense = CIA_PCI_DENSE; > chipset_hae_mask = 7L << 29; > } > > It seems to me that at one point, we are setting the Pyxis/ALCOR to use > BWX and later on we are setting BWX modes on Pyxis-only (missing out the > PC164's ALCOR chips), but we are leaving the chipset[] vector pointer > setup for BWX. > > Could this possibly explain it? (ie: machine half setup for SWIZ and half > for BWX) I really do not understand the finer details of this area of the > Alphas. I noticed the code. It *is* bogus. But it isn't what's killing me. I traced thing far enough to see things wedge just after it first identifies the first card in the PCI bus. I can't quite tell yet whether I'm dying right after reading the vendor id or whether the DELAY's I put in to let things drain enough so that printf's could get out weren't enough or what- part of the problem here is the !$)*@$~)(*~_)@~!)@$ stupid way FreeBSD/NetBSD do their console setup on Alpha (begging everyone's pardon- I've hated this stand on your head out of order init stuff that gets done) so it's really hard to know quite when you got stomped if you have a serial console. I won't be back in the office until tomorrow night when I'll resume. Since 4100 worked for me (to a 1st approx), which is a hard case, let's assume that the pure PC164 is 'something else' for the moment. -matt To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-alpha" in the body of the message