Commit Graph

1169 Commits

Author SHA1 Message Date
Bill Paul
b9f78d2b4a Add a device driver for the Broadcom BCM4401 ethernet controller,
written by Stuart Walsh and Duncan Barclay (with some kibbitzing by
me). I'm checking it in on Stuart's behalf.

The BCM4401 is built into several x86 laptop and desktop systems. For the
moment, I have only enabled it in the x86 kernel config because although
it's a PCI device, I haven't heard of any standalone NICs that use it. If
somebody knows of one, we can easily add it to the other arches.

This driver uses register/structure data gleaned from the Linux
driver released by Broadcom, but does not contain any of the code
from the Linux driver itself. It uses busdma.
2003-09-09 18:17:23 +00:00
Bill Paul
a94100fa9b Take the support for the 8139C+/8169/8169S/8110S chips out of the
rl(4) driver and put it in a new re(4) driver. The re(4) driver shares
the if_rlreg.h file with rl(4) but is a separate module. (Ultimately
I may change this. For now, it's convenient.)

rl(4) has been modified so that it will never attach to an 8139C+
chip, leaving it to re(4) instead. Only re(4) has the PCI IDs to
match the 8169/8169S/8110S gigE chips. if_re.c contains the same
basic code that was originally bolted onto if_rl.c, with the
following updates:

- Added support for jumbo frames. Currently, there seems to be
  a limit of approximately 6200 bytes for jumbo frames on transmit.
  (This was determined via experimentation.) The 8169S/8110S chips
  apparently are limited to 7.5K frames on transmit. This may require
  some more work, though the framework to handle jumbo frames on RX
  is in place: the re_rxeof() routine will gather up frames than span
  multiple 2K clusters into a single mbuf list.

- Fixed bug in re_txeof(): if we reap some of the TX buffers,
  but there are still some pending, re-arm the timer before exiting
  re_txeof() so that another timeout interrupt will be generated, just
  in case re_start() doesn't do it for us.

- Handle the 'link state changed' interrupt

- Fix a detach bug. If re(4) is loaded as a module, and you do
  tcpdump -i re0, then you do 'kldunload if_re,' the system will
  panic after a few seconds. This happens because ether_ifdetach()
  ends up calling the BPF detach code, which notices the interface
  is in promiscuous mode and tries to switch promisc mode off while
  detaching the BPF listner. This ultimately results in a call
  to re_ioctl() (due to SIOCSIFFLAGS), which in turn calls re_init()
  to handle the IFF_PROMISC flag change. Unfortunately, calling re_init()
  here turns the chip back on and restarts the 1-second timeout loop
  that drives re_tick(). By the time the timeout fires, if_re.ko
  has been unloaded, which results in a call to invalid code and
  blows up the system.

  To fix this, I cleared the IFF_UP flag before calling ether_ifdetach(),
  which stops the ioctl routine from trying to reset the chip.

- Modified comments in re_rxeof() relating to the difference in
  RX descriptor status bit layout between the 8139C+ and the gigE
  chips. The layout is different because the frame length field
  was expanded from 12 bits to 13, and they got rid of one of the
  status bits to make room.

- Add diagnostic code (re_diag()) to test for the case where a user
  has installed a broken 32-bit 8169 PCI NIC in a 64-bit slot. Some
  NICs have the REQ64# and ACK64# lines connected even though the
  board is 32-bit only (in this case, they should be pulled high).
  This fools the chip into doing 64-bit DMA transfers even though
  there is no 64-bit data path. To detect this, re_diag() puts the
  chip into digital loopback mode and sets the receiver to promiscuous
  mode, then initiates a single 64-byte packet transmission. The
  frame is echoed back to the host, and if the frame contents are
  intact, we know DMA is working correctly, otherwise we complain
  loudly on the console and abort the device attach. (At the moment,
  I don't know of any way to work around the problem other than
  physically modifying the board, so until/unless I can think of a
  software workaround, this will have do to.)

- Created re(4) man page

- Modified rlphy.c to allow re(4) to attach as well as rl(4).

Note that this code works for the sample 8169/Marvell 88E1000 NIC
that I have, but probably won't work for the 8169S/8110S chips.
RealTek has sent me some sample NICs, but they haven't arrived yet.
I will probably need to add an rlgphy driver to handle the on-board
PHY in the 8169S/8110S (it needs special DSP initialization).
2003-09-08 02:11:25 +00:00
Warner Losh
ca607f1957 The PCMCIA Standard dictates that those funny cards you insert into
laptops are "PC Cards" and uses said term consistantly.  Allow my
foolish hobgoblins to get the better of me and become consistant.
2003-08-20 06:27:21 +00:00
Warner Losh
4cd54ca658 Add a new variable 'skipPCCARD'. This variable will cause sysinstall
to ignore all PC Card devices.

Submitted by: Anders Nordby
PR: bin/37650

MFC After: 2 weeks
2003-08-20 06:24:12 +00:00
David E. O'Brien
c5f8ff3aee Remove the vestiges of the old pre-"X_AS_PKG" way we used to handled the
installing XFree86 (version 3.3.6 and before).

Reviewed by:	jhb
2003-08-19 23:23:27 +00:00
David E. O'Brien
c518eb4885 Expand the fdisk size display toggling to include GB. 2003-08-19 17:51:49 +00:00
David Schultz
1f80683394 Instead of unconditionally refusing to install if no swap partitions
are specified, prompt the user with a yes/no box.
2003-08-10 01:04:05 +00:00
Hajimu UMEMOTO
571ecd7ab4 Always put an entry for ::1. It may avoid useless DNS lookup
for localhost.

MFC after:	3 days
2003-08-03 05:55:21 +00:00
Tom Rhodes
b9c3c3fc77 Give users the ability to select an alternative MTA during the installation.
This option adds Postfix and Exim to the list, however, qmail is not added
due to license restrictions.

Collaborated with:	Simon L. Nielsen <simon@nitro.dk>
Reviewed by:		jhb, re@, -audit.
2003-07-12 15:33:09 +00:00
Peter Wemm
88e9362de9 GRRR. Do not force Dangerously Dedicated mode on amd64 when you select
'use entire disk'.  Neither for ia64 while I'm here - it needs a MBR if
its going to use fdisk+disklabel.  The ia64 case is mostly academic though
because you'd be creating two partitions (dos + freebsd) rather than
a single freebsd-only partition.
2003-06-04 19:28:39 +00:00
Scott Long
acb9e0f3f6 Teach sysinstall to recognize if acpi was turned off from the bootloader,
and then ask the user if this should be made permanent.

Approved by:	re
2003-05-31 11:28:28 +00:00
Peter Wemm
5e8db10ac1 Add __amd64__ ifdefs to enable the bootblock handling code, slices, etc.
Approved by:	re (murray)
Obtained from:	obrien
2003-05-24 21:12:14 +00:00
Ruslan Ermilov
ca7367cce4 The "krb5" distribution was merged with "crypto", record the death.
Reviewed by:	jhb
Approved by:	re (jhb)
2003-05-22 18:41:16 +00:00
John Baldwin
55b1eadc89 Reword the infamouse mouse dialog to ask if you have a PS/2, serial, or
bus mouse instead of if you have a non-USB mouse.

Requested by:	many
Prodded by:	dougb
Approved by:	re (scottl)
2003-05-13 19:16:00 +00:00
Scott Long
e34c1b685e Teach sysinstall about the ServeRAID disk device. 2003-05-11 07:18:26 +00:00
Murray Stokely
8e78e1ee98 Add the dragon screen saver.
PR:		bin/51571
MFC After:	1 week
2003-05-05 09:00:13 +00:00
Robert Watson
b5abb6e6b0 Don't use UFS2 by default during the install process on PC98, as the
PC98 boot blocks don't support UFS2.  We keep newfs(8) defaulting to
UFS2.

Warn users that FreeBSD can only boot from a root file system smaller
than 1.5TB; hopefully this will get fixed by the patches currently
floating around on -CURRENT.

Reviewed by:	nyan
2003-04-21 20:57:20 +00:00
Bill Paul
87b4a25958 Add device driver support for the ASIX Electronics AX88172 USB 2.0
ethernet controller. The driver has been tested with the LinkSys
USB200M adapter. I know for a fact that there are other devices out
there with this chip but don't have all the USB vendor/device IDs.

Note: I'm not sure if this will force the driver to end up in the
install kernel image or not. Special magic needs to be done to exclude
it to keep the boot floppies from bloating again, someone please
advise.
2003-04-20 19:05:33 +00:00
Robert Watson
b459937e0c Throw the switch--change to UFS2 as our default file system format for
FreeBSD 5.1-RELEASE and later:

- newfs(8) will now create UFS2 file systems unless UFS1 is specifically
  requested (-O1).  To do this, I just twiddled the Oflag default.

- sysinstall(8) will now select UFS2 as the default layout for new
  file systems unless specifically requested (use '1' and '2' to change
  the file system layout in the disk labeler).  To do this, I inverted
  the ufs2 flag into a ufs1 flag, since ufs2 is now the default and
  ufs1 is the edge case.  There's a slight semantic change in the
  key behavior: '2' no longer toggles, it changes the selection to UFS2.

This is very similar to a patch David O'Brien sent me at one point, and
that I couldn't find.

Approved by:	re (telecon)
Reviewed by:	mckusick, phk, bmah
2003-04-20 14:08:05 +00:00
David E. O'Brien
052238b16c style.Makefile(5) 2003-04-04 17:49:21 +00:00
Peter Pentchev
2be1729151 Remove ftp2.it.FreeBSD.org from the list of mirrors.
Submitted by:	Alex Dupre <sysadmin@alexdupre.com>
Approved by:	silence on -arch
2003-03-14 15:47:14 +00:00
Robert Drehmel
47469b9f5c Remove a function prototype for `crc' and an associated comment which
were useless for at least seven years and eight months.
2003-03-09 02:28:04 +00:00
Mark Murray
4b48036b9b KerberosIV deorbit sequence: Un-teach sysinstall about KerberosIV. I'm
not 100% sure that I've done this in the right way. If folks want to
revisit this, please be my guest.
2003-03-08 12:07:13 +00:00
Maxim Sobolev
3c1493dcbd Use correct interface name (it's different on -current).
Submitted by:	Brooks Davis <brooks@one-eyed-alien.net>
MFC after:	20 days
2003-03-05 18:50:18 +00:00
Maxim Sobolev
8ad8452bd4 Remove local hack that somehow slipped into the previous commit.
MFC after:	20 days
2003-03-05 18:48:47 +00:00
Maxim Sobolev
c4020e6e93 Add missed description for the `ds' (disc(4)) pseudo-interface.
Sponsored by:	Porta Software Ltd
MFC after:	20 days
2003-03-05 18:07:59 +00:00
Maxim Sobolev
9434c1a30b Add a new variable `noInet6', which if set disables IPv6 configuration
dialog for network interfaces.

MFC after:	20 days
2003-02-27 21:04:34 +00:00
John W. De Boskey
f3194000cb - Increase the maximum device name length.
- Actually check that the entered device name does not exceed the
  maximum device name length.

PR:		misc/18466
MFC after:	2 weeks
2003-02-27 03:57:17 +00:00
Ceri Davies
1fd65abf88 s/to try and retry/to retry/
PR:		misc/48226
Submitted by:	Gary W. Swearingen <swear@attbi.com>
MFC After:	2 days
Approved by:	murray (mentor)
2003-02-19 21:48:28 +00:00
Robert Watson
c2f10e2de4 Relocate a call to enable inetd so that it is set regardless of
whether the user chooses to edit inetd.conf.

PR:	39311
Reported by:	Martin Faxer <gmh003532@brfmasthugget.se>
2003-02-06 01:55:40 +00:00
John Baldwin
69d80a8d1c Fixup capitalization in some of the Startup menu entries.
Submitted by:	Hiten Pandya <hiten@unixdaemons.com>
2003-02-03 16:14:33 +00:00
Tom Rhodes
acbd6988aa Teach sysinstall about the em(4) device.
PR:		46439
Submitted by:	Dan Lukes <dan@obluda.cz>
Approved by:	re (murray)
Tested?		yes
MFC:		1 day
2003-01-27 04:51:46 +00:00
Murray Stokely
9d11bc143b Correct typo.
Submitted by:	Andreas Kohn <andreas.kohn@gmx.net> (via -STABLE)
2003-01-26 21:14:56 +00:00
Matthew Dillon
e027a83457 Change the nominal swap calculation from 1/2 physical memory to 1/8
physical memory.  The default is still 2x physical memory.  The nominal
calculation is used to back-off swap auto-allocation ('A'uto command)
when the disk is not large enough to accomodate all filesystem auto-defaults.
This gives other partitions (like /usr) more priority over swap on smaller
disks.

This should help solve reported auto-sizing failures on machines with small
hard drives and huge amounts of memory.  For example, a machine with 2G of
disk and 4G of memory will fail to auto-size without this fix.

MFC after:	3 days
2003-01-25 19:32:35 +00:00
John Baldwin
4b6c29cebc - Rename installFixupBin to installFixupBase to finish up the 'bin' to
'base' dist rename.
- Rework struct dist to allow for different types of dists.  There are
  currently three types of dists: DT_TARBALL, the traditonal gzipped and
  split tar file; DT_PACKAGE, a package; and DT_SUBDIST, a meta-dist in
  the tree that has its own array of dists as its contents.  For example,
  the 'base' dist is a DT_TARBALL dist, the 'perl' dist is a DT_PACKAGE
  dist, and the 'src' dist is a DT_SUBDIST dist with its own dist table
  that contains 'sbase', 'ssys', etc.
- Add helper macros for defining array entries for the different types of
  dists to try and make the statically defined dist table in dist.c more
  readable.
- Split the logic to deal with a DT_TARBALL dist out of distExtract()
  and into its own distExtractTarball() function.  distExtract() now
  calls other functions to extract each dist.
- Tweak the percentage complete calculation in distExtractTarball() to
  do the multiply prior to the divide so it doesn't have to use floating
  point.
- Axe the installPackage() function along with the special handling for
  the perl and XFree86 dists in distExtractAll() since distExtract()
  handles package dists directly now.
- Add back in subdists for the X packages based on the split up packages
  that XFree86-4 uses that as closely map to the X dists we used with
  X 3.3.x.
- Lots of things like distSetX() and the X dist masks are no longer
  #ifndef X_AS_PKG since we use them in both cases now.
- Make the entire installFixupXFree() function #ifndef X_AS_PKG, we only
  call it in that case anyways, and it's not suitable for the X_AS_PKG
  case.
- Add in X dist menus for the X_AS_PKG case.

Approved by:	re
2003-01-17 19:05:32 +00:00
John Baldwin
d1a079fb0d Add 'vlan' as a network device.
Tested by:	dcs
2003-01-17 18:51:21 +00:00
John Baldwin
0a10e2868e Add a function driverFloppyCheck() that asks the user if they would like to
load drivers from the driver floppy if the "driver_floppy" variable is set
in the kernel environment and call this function after probing devices but
before displaying the main menu.

X-MFC after:	as soon as I finish committing to current
Approved by:	re@ (blanket)
2003-01-15 21:47:36 +00:00
Jun Kuriyama
6dcbe61c90 If you don't create a /usr filesystem, / will need 200MB. 2003-01-13 21:57:07 +00:00
Scott Long
9335d6884c Teach sysinstall about rpcbind, rpc.lockd, and rpc.statd. As an added
bonus, rpcbind will be enabled automatically if rpc.lockd, rpc.statd, amd,
NFS Server, or NIS is enabled.
2003-01-07 07:46:50 +00:00
David E. O'Brien
efd394684a save_realloc() should use reallocf() to close memory leaks.
item_add() should use safe_realloc() as it does no error checking itself.
2003-01-06 17:11:46 +00:00
Jens Schweikhardt
9d5abbddbf Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup,
especially in troff files.
2003-01-01 18:49:04 +00:00
Robert Watson
1fb6584d21 Since our default boot block now supports UFS1 and UFS2 even on
i386, remove the seatbelt preventing users from setting the UFS2 flag
on the root file system on i386.  This seatbelt did not exist on
other platforms.

MFC candidate.
2002-12-28 23:33:09 +00:00
David Malone
e8bd9c569e Add a new ftp mirror in Ireland which offers a service over IPv6.
MFC after:      1 week
Reviewed by:	ume
2002-12-23 23:25:39 +00:00
Jordan K. Hubbard
d667ae9537 Correct path to /usr/sbin/sysinstall for HEAD since that's where it lives now. 2002-12-20 00:10:37 +00:00
Jun Kuriyama
b3e8a7eb8f Update ROOT_MIN_SIZE for i386 to 118MB (and other ROOT_*_SIZE). 2002-12-15 12:05:00 +00:00
Poul-Henning Kamp
b6cf3e46b4 When things get bigger than 99GB our fields run over.
Use GB from 100GB and upwards.

Approved by:	re
2002-12-11 17:36:34 +00:00
Robert Watson
9bcce93590 Unhook LOMAC sysinstall twiddle for the time being: mac_lomac requires
the MAC Framework to be compiled into the kernel, and that's not
well-expressed in sysinstall.

Approved by:	re (bmah)
2002-12-09 19:06:43 +00:00
John Baldwin
f179ebe91e - Use some macros to define common text between the dialog boxes to set the
type of new slices and to change the type of existing slices.  This also
  has the advantage of moving a few #ifdef PC98's up to where the macros
  are defined instead of in the middle of the code.
- Change the behavior of the 'T' option in the slice editor so that the
  default value in the dialog box is the current type of the existing
  slice rather than defaulting to changing the slice to a FreeBSD slice as
  this is more intuitive.

Approved by:	re
2002-12-05 22:10:39 +00:00
Yoshihiro Takahashi
443ec1fa06 Fixed a partition type for pc98 when create or change slices in the fdisk
editor.

Approved by:	re (jhb)
2002-12-04 15:07:05 +00:00
Robert Watson
bf1e70b230 Reformulate how sysinstall handles file system options in the label
editor, in order to support specifying UFS2 as a newfs option.

(1) Support three different newfs types: NEWFS_UFS, NEWFS_MSDOS, and
    NEWFS_CUSTOM.  Don't mix up the arguments to them: you can't use
    soft updates on an msdos file system.

(2) Distinguish adding new arguments to the newfs command line from
    replacing it.  Permit the addition of new arguments by the user for
    NEWFS_UFS.  If we entirely replace the command line provided by
    sysinstall, call it NEWFS_CUSTOM.  'N' will now add additional
    arguments; 'Z' will opt to replace the newfs command line entirely,
    but will prompt the user with their current command line as a
    starting point.

(3) Construct the newfs command line dynamically based on the options
    provided by the user at label-time.  Right now, this means selecting
    UFS1 vs. UFS2, and the soft updates flag.  Drop in some variables
    to support ACLs and MAC Multilabel in the future also, but don't
    expose them now.

This provides sysinstall with the ability to do more "in band" editing
of the newfs command line, so we can provide more support for the user,
but doesn't sacrifice the ability to entirely specify the newfs command
line of the user is willing to give up on the cushiness factor.  It
also makes it easier for us to specify defaults in the future, and
define conditional behavior based on user configuration selections.
For now, we default to UFS1, and permit UFS2 to be used as the root
only on non-i386 systems.

While I was there, I dropped the default fragment and block sizes,
since newfs has much more sensible defaults now.

Reviewed by:	jhb, marcel
Approved by:	re
ia64 bits from:	marcel
2002-12-03 22:25:47 +00:00