From owner-freebsd-current Tue Jan 28 15:17:51 2003 Delivered-To: freebsd-current@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 931) id 9F07137B401; Tue, 28 Jan 2003 15:17:49 -0800 (PST) Date: Tue, 28 Jan 2003 15:17:49 -0800 From: Juli Mallett To: Marcel Moolenaar Cc: current@FreeBSD.ORG Subject: Re: Patch to teach config(8) about "platforms". Message-ID: <20030128151749.A831@FreeBSD.org> References: <20030125153116.A25743@FreeBSD.org> <20030128.233856.71130419.nyan@jp.FreeBSD.org> <20030128120830.A81856@FreeBSD.org> <20030128225335.GB537@athlon.pn.xcllnt.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5.1i In-Reply-To: <20030128225335.GB537@athlon.pn.xcllnt.net>; from marcel@xcllnt.net on Tue, Jan 28, 2003 at 02:53:35PM -0800 Organisation: The FreeBSD Project X-Alternate-Addresses: , , , , X-Towel: Yes X-LiveJournal: flata, jmallett X-Negacore: Yes Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG * De: Marcel Moolenaar [ Data: 2003-01-28 ] [ Subjecte: Re: Patch to teach config(8) about "platforms". ] > > I just really would like things to be clean, and abstracted, and not waste > > anyone's time. Why should we have to duplicate so much code? > > I'm not sure platform is the answer. We already have the distinction > between MACHINE_ARCH and MACHINE and it looks to me that MACHINE can > do what you try to achieve with platform. Why add a "platform" > keyword to config(8) if we already have the "machine" keyword? Because that requires us to do what pc98 does, which is to have the meta-port be the master port, and include up into the arch-port, and that means that either you have every header in the arch-port be wrapped by the meta-port, as is the meta-port, or you just copy everything and make local changes. IMHO the right thing to do is have a meta-port be meta-data under the master (arch) port, as opposed to having a hell of a lot of meta-ports driving and duplicating a lot from the arch-port, at least in the files list, if not in a gamillion other places. Generic endianness related information. --> Implementations of swapping routines, etc., for this architecture, among other things. --> Defines the endianness of this platform. Early cpu startup machine_arch::locore.s::_start --> Set up things in C that are early. machine_arch::machdep.c::mach_init --> Set up hardware for this platform we need early (e.g. console, bootstrap vector, etc.) machine::machdep_machine.c::platform_init <-- Continue with slightly later CPU startup... <-- Call out to MI startup... --> Do that thing you do. kern::kern_main.c::mi_startup config GENERIC --> files.machine_arch --> enable standard things enable platform things <-- --> make symlink build Etc. Follow my logic? Thanx, juli. -- Juli Mallett AIM: BSDFlata -- IRC: juli on EFnet OpenDarwin, Mono, FreeBSD Developer ircd-hybrid Developer, EFnet addict FreeBSD on MIPS-Anything on FreeBSD To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message