Commit Graph

11789 Commits

Author SHA1 Message Date
Marius Strobl
55aaf894e8 Make the PCI code aware of PCI domains (aka PCI segments) so we can
support machines having multiple independently numbered PCI domains
and don't support reenumeration without ambiguity amongst the
devices as seen by the OS and represented by PCI location strings.
This includes introducing a function pci_find_dbsf(9) which works
like pci_find_bsf(9) but additionally takes a domain number argument
and limiting pci_find_bsf(9) to only search devices in domain 0 (the
only domain in single-domain systems). Bge(4) and ofw_pcibus(4) are
changed to use pci_find_dbsf(9) instead of pci_find_bsf(9) in order
to no longer report false positives when searching for siblings and
dupe devices in the same domain respectively.
Along with this change the sole host-PCI bridge driver converted to
actually make use of PCI domain support is uninorth(4), the others
continue to use domain 0 only for now and need to be converted as
appropriate later on.
Note that this means that the format of the location strings as used
by pciconf(8) has been changed and that consumers of <sys/pciio.h>
potentially need to be recompiled.

Suggested by:	jhb
Reviewed by:	grehan, jhb, marcel
Approved by:	re (kensmith), jhb (PCI maintainer hat)
2007-09-30 11:05:18 +00:00
Kai Wang
4e2ade792c Add my self and my mentor.
Approved by:	jkoshy (mentor)
Approved by:	re (bmah)
2007-09-29 17:01:19 +00:00
Gabor Kovesdan
9d77e05aff - Change the description of sleepq_add(), sleepq_broadcast() and
sleepq_signal() to reflect recent changes

Submitted by:	attilio
Approved by:	re (bmah)
2007-09-28 11:13:40 +00:00
Rui Paulo
3b2f6b3a4b Fix previous commit: I should be in alphabetical order.
Pointed out by:	brueffer
Approved by:	re (bmah), njl
2007-09-27 20:11:32 +00:00
Rui Paulo
4b48087f5a Add myself and my mentor.
Reviewed by:	njl (mentor)
Approved by:	re
2007-09-27 11:43:56 +00:00
Christian Brueffer
fed3ad6334 Fix typo.
Approved by:	re (blanket)
2007-09-26 21:31:47 +00:00
Marius Strobl
1ed3fed743 o Revert the part of if_gem.c rev. 1.35 which added a call to gem_stop()
to gem_attach() as the former access softc members not yet initialized
  at that time and gem_reset() actually is enough to stop the chip. [1]
o Revise the use of gem_bitwait(); add bus_barrier() calls before calling
  gem_bitwait() to ensure the respective bit has been written before we
  starting polling on it and poll for the right bits to change, f.e. even
  though we only reset RX we have to actually wait for both GEM_RESET_RX
  and GEM_RESET_TX to clear. Add some additional gem_bitwait() calls in
  places we've been missing them according to the GEM documentation.
  Along with this some excessive DELAYs, which probably only were added
  because of bugs in gem_bitwait() and its use in the first place, as
  well as as have of an gem_bitwait() reimplementation in gem_reset_tx()
  were removed.
o Add gem_reset_rxdma() and use it to deal with GEM_MAC_RX_OVERFLOW errors
  more gracefully as unlike gem_init_locked() it resets the RX DMA engine
  only, causing no link loss and the FIFOs not to be cleared. Also use it
  deal with GEM_INTR_RX_TAG_ERR errors, with previously were unhandled.
  This was based on information obtained from the Linux GEM and OpenSolaris
  ERI drivers.
o Turn on workarounds for silicon bugs in the Apple GMAC variants.
  This was based on information obtained from the Darwin GMAC and Linux GEM
  drivers.
o Turn on "infinite" (i.e. maximum 31 * 64 bytes in length) DMA bursts.
  This greatly improves especially RX performance.
o Optimize the RX path, this consists of:
  - kicking the receiver as soon as we've a spare descriptor in gem_rint()
    again instead of just once after all the ready ones have been handled;
  - kicking the receiver the right way, i.e. as outlined in the GEM
    documentation in batches of 4 and by pointing it to the descriptor
    after the last valid one;
  - calling gem_rint() before gem_tint() in gem_intr() as gem_tint() may
    take quite a while;
  - doubling the size of the RX ring to 256 descriptors.
  Overall the RX performance of a GEM in a 1GHz Sun Fire V210 was improved
  from ~100Mbit/s to ~850Mbit/s.
o In gem_add_rxbuf() don't assign the newly allocated mbuf to rxs_mbuf
  before calling bus_dmamap_load_mbuf_sg(), if bus_dmamap_load_mbuf_sg()
  fails we'll free the newly allocated mbuf, unable to recycle the
  previous one but a NULL pointer dereference instead.
o In gem_init_locked() honor the return value of gem_meminit().
o Simplify gem_ringsize() and dont' return garbage in the default case.
  Based on OpenBSD.
o Don't turn on MAC control, MIF and PCS interrupts unless GEM_DEBUG is
  defined as we don't need/use these interrupts for operation.
o In gem_start_locked() sync the DMA maps of the descriptor rings before
  every kick of the transmitter and not just once after enqueuing all
  packets as the NIC might instantly start transmitting after we kicked
  it the first time.
o Keep state of the link state and use it to enable or disable the MAC
  in gem_mii_statchg() accordingly as well as to return early from
  gem_start_locked() in case the link is down. [3]
o Initialize the maximum frame size to a sane value.
o In gem_mii_statchg() enable carrier extension if appropriate.
o Increment if_ierrors in case of an GEM_MAC_RX_OVERFLOW error and in
  gem_eint(). [3]
o Handle IFF_ALLMULTI correctly; don't set it if we've turned promiscuous
  group mode on and don't clear the flag if we've disabled promiscuous
  group mode (these were mostly NOPs though). [2]
o Let gem_eint() also report GEM_INTR_PERR errors.
o Move setting sc_variant from gem_pci_probe() to gem_pci_attach() as
  device probe methods are not supposed to touch the softc.
o Collapse sc_inited and sc_pci into bits for sc_flags.
o Add CTASSERTs ensuring that GEM_NRXDESC and GEM_NTXDESC are set to
  legal values.
o Correctly set up for 802.3x flow control, though #ifdef out the code
  that actually enables it as this needs more testing and mainly a proper
  framework to support it.
o Correct and add some conversions from hard-coded functions names to
  __func__ which were borked or forgotten in if_gem.c rev. 1.42.
o Use PCIR_BAR instead of a homegrown macro.
o Replace sc_enaddr[6] with sc_enaddr[ETHER_ADDR_LEN].
o In gem_pci_attach() in case attaching fails release the resources in
  the opposite order they were allocated.
o Make gem_reset() static to if_gem.c as it's not needed outside that
  module.
o Remove the GEM_GIGABIT flag and the associated code; GEM_GIGABIT was
  never set and the associated code was in the wrong place.
o Remove sc_mif_config; it was only used to cache the contents of the
  respective register within gem_attach().
o Remove the #ifdef'ed out NetBSD/OpenBSD code for establishing a suspend
  hook as it will never be used on FreeBSD.
o Also probe Apple Intrepid 2 GMAC and Apple Shasta GMAC, add support for
  Apple K2 GMAC. Based on OpenBSD.
o Add support for Sun GBE/P cards, or in other words actually add support
  for cards based on GEM to gem(4). This mainly consists of adding support
  for the TBI of these chips. Along with this the PHY selection code was
  rewritten to hardcode the PHY number for certain configurations as for
  example the PHY of the on-board ERI of Blade 1000 shows up twice causing
  no link as the second incarnation is isolated.
  These changes were ported from OpenBSD with some additional improvements
  and modulo some bugs.
o Add code to if_gem_pci.c allowing to read the MAC-address from the VPD on
  systems without Open Firmware.
  This is an improved version of my variant of the respective code in
  if_hme_pci.c
o Now that gem(4) is MI enable it for all archs.

Pointed out by:	yongari [1]
Suggested by:	rwatson [2], yongari [3]
Tested on:	i386 (GEM), powerpc (GMACs by marcel and yongari),
		sparc64 (ERI and GEM)
Reviewed by:	yongari
Approved by:	re (kensmith)
2007-09-26 21:14:18 +00:00
Christian Brueffer
ab0274e4b3 - Use the correct expanded name for SCTP (1)
- Remove empty section

PR:		116496 (1)
Submitted by:	koitsu
Approved by:	re (blanket)
2007-09-25 16:03:10 +00:00
Thomas Abthorpe
eeb18ebde7 - added in missing \n for my entry
Submitted by:	breueffer@
Approved by:	re, miwi (mentor)
2007-09-21 13:03:24 +00:00
Thomas Abthorpe
45d485af85 - add my entry
Approved by:	re (bmah), clsung/miwi (mentors)
2007-09-21 12:12:13 +00:00
Gabor Kovesdan
376ccd5c9d - Fix a declaration example
PR:		docs/115632
Submitted by:	Romain Tartiere <romain@blogreen.org>
Approved by:	re (bmah)
MFC after:	3 days
2007-09-20 10:52:08 +00:00
Christian Brueffer
b61e8b3e31 Update the table of supported algorithms:
- Group hash functions together and sort
- Add CRYPTO_CAMELLIA_CBC (1)

PR:		116471
Submitted by:	Philip Schulz <phs@deadc0.de> (1)
Approved by:	re (blanket)
2007-09-19 16:28:46 +00:00
Andrew Thompson
32d1707a37 Bump the document date.
Forgotten by:	thompsa
Approved by:	re (bmah)
2007-09-16 21:14:47 +00:00
Andrew Thompson
31e4cb54e9 Allow additional packet filtering on the physical interface for locally
destined packets, disabled by default.

PR:		kern/116051
Submitted by:	Eygene Ryabinkin
Approved by:	re (bmah)
MFC after:	2 weeks
2007-09-16 21:09:15 +00:00
Jung-uk Kim
5f1e4878bd Add my ports mentor, his mentor, and their offsprings including me.
Reviewed by:	sobomax, glewis, hq, znerd, demon
Approved by:	re (bmah)
2007-09-13 14:52:10 +00:00
Ariff Abdullah
b28624fde6 Update snd_emu10kx driver with recent perforce changes (and few
other changes too).

(without any real order)

1. Use device_get_nameunit for mutex naming
2. Add timer for low-latency playback
3. Move most mixer controls from sysctls to mixer(8) controls.
   This is a largest part of this patch.
4. Add analog/digital switch (as a temporary sysctl)
5. Get back support for low-bitrate playback (with help of (2))
6. Change locking for exclusive I/O. Writing to non-PTR register
   is almost safe and does not need to be ordered with PTR operations.
7. Disable MIDI until we get it to detach properly and fix memory
   managment problems.
8. Enable multichannel playback by default. It is as stable as
   single-channel mode. Multichannel recording is still an
   experimental feature.
9. Multichannel options can be changed by loader tunables.
10. Add a way to disable card from a loader tunable.
11. Add new PCI IDs.
12. Debugger settings are loader tunables now.
14. Remove some unused variables.
15. Mark pcm sub-devices MPSAFE.
16. Partially revert (bus_setup_intr -> snd_setup_intr) since it need
    to be done independently

Submitted by:	Yuriy Tsibizov (driver maintainer)
Approved by:	re (bmah)
2007-09-12 07:43:43 +00:00
Christian Brueffer
376e68c55f Update for ICH9 support.
Submitted by:	simon
Approved by:	re (blanket)
2007-09-10 20:25:55 +00:00
Christian Brueffer
2ed6bd6c9e zyd(4) needs this as well. While here, add a missing article.
Approved by:	re (blanket)
2007-09-10 18:17:50 +00:00
Christian Brueffer
77143e74e0 Prepare for automatic hardware notes generation:
- mention the supported chipsets in the HARDWARE section
- remove unnecessary Li arguments

Approved by:	re (blanket)
2007-09-10 17:54:14 +00:00
Christian Brueffer
a30fc8542f Also mention zyd(4) in the DESCRIPTION section.
Approved by:	re (blanket)
2007-09-10 17:20:21 +00:00
Joseph Koshy
6a4b42f0ce Cross reference ar(5) from elf(5).
Approved by:	re (bmah)
2007-09-08 08:12:31 +00:00
Joseph Koshy
12d64ed128 Add a manual page documenting the format of `ar' archives.
Reviewed by:	Kai Wang <kaiw27 at gmail dot com>
Approved by:	re (bmah)
2007-09-08 08:04:28 +00:00
Gabor Kovesdan
5f8464cb22 - Remove info about the consumed space in base dir. This info is not
relevant any more.

PR:		docs/115335
Submitted by:	Wayne Sierke <ws@au.dyndns.ws>
Reviewed by:	keramida
Approved by:	re (bmah)
MFC after:	3 days
2007-09-07 22:01:19 +00:00
Christian Brueffer
b994da335a Prepare for automatic hardware notes generation:
- mention the driver name and supported chipsets in the HARDWARE section
- remove unnecessary Li arguments

Approved by:	re (blanket)
2007-09-07 15:28:39 +00:00
Max Laier
cb3ab5e31a Add a startup script for ftp-proxy(8) now that it is no longer started as
part of inetd(8).

Approved by:	re (bmah)
Reviewed by:	freebsd-rc (a while back)
Reminded by:	kevlo
2007-09-06 21:00:48 +00:00
Christian Brueffer
6be87061f8 Xref zyd(4).
Approved by:	re (blanket)
2007-09-06 20:15:04 +00:00
Christian Brueffer
8b9003d17a Replace OpenBSD SYNOPSIS with our standard SYNPOPSIS.
Approved by:	re (blanket)
2007-09-06 20:13:27 +00:00
Robert Watson
bdec1ad988 Add MLINKS entries for various SYSCTL_*() macros documented in sysctl.9.
Approved by:	re (bmah)
Submitted by:	Constantine A. Murenin <cnst+freebsd@bugmail.mojo.ru>
Sponsored by:	Google Summer of Code 2007
2007-09-05 19:46:23 +00:00
Warner Losh
b4b882f7d9 Connect zyd.4 to the build.
Approved by: re@
2007-09-02 07:09:25 +00:00
Warner Losh
677494daf3 Remove extra copy of the man page that has been noted by many people.
Approved by: re@
2007-09-02 07:04:50 +00:00
Daniel Gerzo
628a706c96 - Fix include path, these functions were moved to sys/priv.h.
Approved by:	re (bmah)
Submitted by:	sbahra@hpcl.seas.gwu.edu (via #bsddocs@EFnet)
Pointy hat to:	rwatson
2007-08-30 15:03:21 +00:00
Warner Losh
0c1154ea8f Bring in the man page for zyd, ported from NetBSD, complete with bogus
Bill Paul copyright.  Not sure what the right copyright is, but this
file has been through 22 reversions on OpenBSD and 1 on NetBSD.  This
isn't (yet) connected to the build, just in case I've done something
wrong (test builds worked, but better safe than sorry).

Submitted by: Weongyo Jeong
Approved by: re@
2007-08-29 21:08:14 +00:00
Remko Lodder
143cc1897c Regenerate src.conf.5 -after- the addition of WITHOUT_ZONEINFO, the way
I did this in the previous commit, leaves out the parsing of $FreeBSD$
which is actually required to be parsed.

Kindly reminded by:	bmah
Approved by:		re (bmah)
Approved by:		imp (mentor, implicit)
2007-08-27 20:22:59 +00:00
Remko Lodder
52d09c681b Add WITHOUT_ZONEINFO to the build options and regenerate src.conf.5
Reminded by:	ceri
Approved by:	re (bmah)
Approved by:	imp (mentor)
2007-08-27 20:01:08 +00:00
Edwin Groothuis
e1c265964a MFV: tzdata2007g
PR:		conf/115706
Submitted by:	edwin@
Approved by:	re (bmah@)
Obtained from:	ftp://elsie.nci.nih.gov/pub/
MFC after:	1 week
2007-08-24 13:36:20 +00:00
Edwin Groothuis
df78b57ac9 This commit was generated by cvs2svn to compensate for changes in r171945,
which included commits to RCS files with non-trunk default branches.
2007-08-24 13:27:26 +00:00
Edwin Groothuis
69e0341563 Import of timezone database from Arthur Olson et al.
Timezone data changes in the following locations:

- Egypt
- Australia (new DST rules for 2008 and following)
- Perry County, Indiana
- America/Indiana/Tell_City
- Pike County, Indiana

Also:

- City coordinates corrected.
- Layout of leapseconds is updated

PR:		conf/115706
Approved by:	re (bmah@)
2007-08-24 13:27:26 +00:00
Ed Maste
afa3f6df27 Add PCI IDs for two cards:
- Adaptec RAID 3405
- Adaptec RAID 3805

Approved by:	re (bmah)
Submitted by:	John Marra  jmarra at nmu dot edu
MFC After:	1 week
2007-08-23 20:12:40 +00:00
Dag-Erling Smørgrav
c0103f02a0 Add man pages for coretemp(4) and ichwd(4).
Approved by:	re (bmah)
2007-08-23 20:05:09 +00:00
Gabor Kovesdan
a02c85c136 - Fix origin of the portcheckout port as we have it in the port-mgmt
category now

PR:		docs/115193
Submitted by:	Tomas Mozes <hydrapolic at gmail dot com>
Approved by:	re (bmah),
		keramida (mentor)
MFC after:	0 days
2007-08-22 18:07:41 +00:00
Gabor Kovesdan
966b6046b8 - Use mount -t msdosfs instead of mount_msdosfs
PR:		docs/115571
Submitted by:	rodrigc
Approved by:	re (bmah),
		keramida (mentor)
MFC after:	1 week
2007-08-22 18:04:08 +00:00
Gabor Kovesdan
d307eef80c - Fix a copy-paste bug in the list of supported chips
PR:		docs/115151
Submitted by:	O. Hartmann <ohartman at zedat dot fu-berlin dot de>
Approved by:	re (bmah),
		keramida (mentor)
2007-08-22 18:02:01 +00:00
MIHIRA Sanpei Yoshiro
ea486abe73 Add a HARDWARE section which lists supported devices.
Kyocera AH-K3001V Mobile Phone(WILLCOM)
	Kyocera WX320K Mobile Phone(WILLCOM)

Approved by:    re (bmah)
2007-08-21 13:20:13 +00:00
Daniel Gerzo
bb86bbb99d The /boot.config file is available only on i386 and amd64, so install
boot.config.5 only those architectures.

Approved by: re@ (bmah)
Reported by: simon
2007-08-15 06:41:08 +00:00
Daniel Gerzo
83b4953255 Add the boot.config.5 manual page.
Reviewed by:	keramida
Approved by:	re@ (bmah)
PR:		docs/112307
2007-08-14 15:25:32 +00:00
Xin LI
179dc282b4 Restore -O2 optimization after gcc 4.2.1 import, which has
fixed the issue raised by gcc 4.2.0.

Tested with:	test case found in gcc bug 32500
Approved by:	re (kensmith), ache, kan
2007-08-14 13:44:08 +00:00
John Baldwin
8ec5c98ba4 Teach the mfi(4) driver to handle requests from userland management
applications to add and remove volumes.

MFC after:	1 week
Approved by:	re (bmah)
Reviewed by:	ambrisko, scottl
2007-08-13 19:29:17 +00:00
Daniel Gerzo
0e5a8a6d3d Sync with the source code: NGM_FEC_MODE_(MAC|INET) should be
NGM_FEC_SET_MODE_(MAC|INET).

Approved by: re@ (bmah)
2007-08-12 16:02:30 +00:00
Julian Elischer
20f16ca028 Corrections and clarifications
Approved by: re (bmah)
2007-08-09 21:09:56 +00:00
Nate Lawson
3b3f28135f Add "show sysregs" command to ddb. On i386, this gives gdt, idt, ldt,
cr0-4, etc.  Support should be added for other platforms that have a
different set of registers for system use.

Loosely based on: OpenBSD
Approved by:	re
2007-08-09 20:14:35 +00:00