xref: /illumos-gate/usr/src/psm/stand/README (revision 7c478bd9)
1*7c478bd9Sstevel@tonic-gate#
2*7c478bd9Sstevel@tonic-gate# CDDL HEADER START
3*7c478bd9Sstevel@tonic-gate#
4*7c478bd9Sstevel@tonic-gate# The contents of this file are subject to the terms of the
5*7c478bd9Sstevel@tonic-gate# Common Development and Distribution License, Version 1.0 only
6*7c478bd9Sstevel@tonic-gate# (the "License").  You may not use this file except in compliance
7*7c478bd9Sstevel@tonic-gate# with the License.
8*7c478bd9Sstevel@tonic-gate#
9*7c478bd9Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10*7c478bd9Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing.
11*7c478bd9Sstevel@tonic-gate# See the License for the specific language governing permissions
12*7c478bd9Sstevel@tonic-gate# and limitations under the License.
13*7c478bd9Sstevel@tonic-gate#
14*7c478bd9Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each
15*7c478bd9Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16*7c478bd9Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the
17*7c478bd9Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying
18*7c478bd9Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner]
19*7c478bd9Sstevel@tonic-gate#
20*7c478bd9Sstevel@tonic-gate# CDDL HEADER END
21*7c478bd9Sstevel@tonic-gate#
22*7c478bd9Sstevel@tonic-gate# Copyright 1996 Sun Microsystems, Inc.  All rights reserved.
23*7c478bd9Sstevel@tonic-gate# Use is subject to license terms.
24*7c478bd9Sstevel@tonic-gate#
25*7c478bd9Sstevel@tonic-gate# ident	"%Z%%M%	%I%	%E% SMI"
26*7c478bd9Sstevel@tonic-gate
27*7c478bd9Sstevel@tonic-gateREADME file for the usr/src/stand directory:	(tpl 8/1/94)
28*7c478bd9Sstevel@tonic-gate					please update this as required
29*7c478bd9Sstevel@tonic-gate
30*7c478bd9Sstevel@tonic-gateThis tree has source code for both sparc and x86 platforms.
31*7c478bd9Sstevel@tonic-gate1). The lint target is implemented, but the source tree is not lint-free yet.
32*7c478bd9Sstevel@tonic-gate2). It is too much of a change to "clean-up" this directory at the time
33*7c478bd9Sstevel@tonic-gate    of stand and stand.i386 merge.  So, let's use the following rule for
34*7c478bd9Sstevel@tonic-gate    the benefit of all.
35*7c478bd9Sstevel@tonic-gate    Each time you check in a new version of a file, please try to
36*7c478bd9Sstevel@tonic-gate	a). lint that file individually
37*7c478bd9Sstevel@tonic-gate	b). cstyle that file
38*7c478bd9Sstevel@tonic-gate3). Please avoid using the following fragments in the common/ directory
39*7c478bd9Sstevel@tonic-gate	#ifdef i386
40*7c478bd9Sstevel@tonic-gate	#ifdef sparc
41*7c478bd9Sstevel@tonic-gate4). The following fragment is non-ideal for the merge (promif) source base
42*7c478bd9Sstevel@tonic-gate	#ifdef I386BOOT
43*7c478bd9Sstevel@tonic-gate     It should be removed, re-org'ed after a good understanding of the
44*7c478bd9Sstevel@tonic-gate     pieces involved and with suitable testing.
45*7c478bd9Sstevel@tonic-gate5). If you change "common" source files including Makefiles, you have
46*7c478bd9Sstevel@tonic-gate    to build [ and test ] for all platforms.
47*7c478bd9Sstevel@tonic-gate6). The following list should be addressed and eliminated as we continue
48*7c478bd9Sstevel@tonic-gate    to separate the PSM code out of shared common (PIM) code
49*7c478bd9Sstevel@tonic-gate    a). nfs_readsize for sun4 and i386.
50*7c478bd9Sstevel@tonic-gate    b). lib/fs/nfs_inet/netaddr.h: MAX_PKT_SIZE different between i386 and sparc
51*7c478bd9Sstevel@tonic-gate    c). lib/fs/nfs_inet/nfsops.c: boot_nfs_read() uses local buffer for i386 case
52*7c478bd9Sstevel@tonic-gate    d). all #ifdef sparc caused by prom_getversion() calls
53*7c478bd9Sstevel@tonic-gate
54*7c478bd9Sstevel@tonic-gateCommonly asked questions and brief answers:
55*7c478bd9Sstevel@tonic-gate
56*7c478bd9Sstevel@tonic-gateQ: Why is inetboot packaged differently?
57*7c478bd9Sstevel@tonic-gateA: inetboot is loaded by PROM code, especially old PROMs.  They load
58*7c478bd9Sstevel@tonic-gate   to certain specific address and can only recognize a.out header.
59*7c478bd9Sstevel@tonic-gate   Thus, inetboot has to be packaged accordingly.  Note that the bootblk
60*7c478bd9Sstevel@tonic-gate   for sparc has the same constraints.  These historical reasons do
61*7c478bd9Sstevel@tonic-gate   not apply for i386 architecture.
62