From owner-freebsd-sparc Sun Jan 11 04:59:03 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.7/8.8.7) id EAA20585 for sparc-outgoing; Sun, 11 Jan 1998 04:59:03 -0800 (PST) (envelope-from owner-freebsd-sparc@FreeBSD.ORG) Received: from mozart.canonware.com (canonware.com [206.184.206.112]) by hub.freebsd.org (8.8.7/8.8.7) with ESMTP id EAA20574 for ; Sun, 11 Jan 1998 04:58:37 -0800 (PST) (envelope-from jasone@canonware.com) Received: from localhost (jasone@localhost) by mozart.canonware.com (8.8.7/8.8.7) with SMTP id EAA03110; Sun, 11 Jan 1998 04:57:16 -0800 (PST) (envelope-from jasone@canonware.com) X-Authentication-Warning: mozart.canonware.com: jasone owned process doing -bs Date: Sun, 11 Jan 1998 04:57:16 -0800 (PST) From: Jason Evans Reply-To: Jason Evans To: freebsd-sparc@FreeBSD.ORG cc: Ian Logan , Chris Toshok Subject: How UltraAX boots Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-sparc@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org I've been looking through FreeBSD's boot loading code, and have been trying to match it to what needs to be done to boot on the UltraAX/UltraAXi motherboards. Here are a few interesting details I discovered. ------------------------------------------------------------------------------- OBP (Open Boot PROM) scans the system for hardware during boot. Depending on some settings, it will automatically or manually boot by grabbing a boot loader from somewhere. That "somewhere" must be one of the devices that OBP detects during its scan. The implication is that all boot hardware must directly support OBP. For example, to be able to boot off of an Adaptec 2940UW, the Adaptec card must have an expansion PROM installed to allow it to talk to the FCode engine (the actual program stored in OBP). So, without taking pains to buy "compatible" hardware, the following options exist for booting the UltraAX: * floppy drive * 10/100BaseT BOOTP/TFTP * EIDE HDD For the UltraAXi, instead of EIDE, we get SCSI. =) Similar restrictions apply to older Sun workstations, which comes as no surprise, since all the hardware is proprietary anyway (i.e. no PCI). Of course, the actual filesystem, kernel, etc. can be located on any range of hardware, as long as our boot loader can detect it. Our boot loader needs to fit into 512K on the UltraAX[i], not a very stiffling limitation, really. I don't know what the limits are for older Suns. ------------------------------------------------------------------------------- We're going to be facing a big bang problem as far as booting goes. In order to get a serial console working, it looks like we'll have to have the UPA, PCI, and EBus code working, in addition to serial code (just need to port the serial code). So, we'll pretty much have to make the whole motherboard work all at once, unless we can route the console through OBP (seems unlikely, or at least problematic). Yuck. ------------------------------------------------------------------------------- Jason Jason Evans Email: [jasone@canonware.com] Home phone: [(650) 856-8204] Work phone: [(408) 774-8007] Quote: ["Invention is 1% inspiration, 99% perspiration" - Thomas Edison]