Commit Graph

2300 Commits

Author SHA1 Message Date
imp
353f0f0e0c Arm defines intr_disable() as a macro, which causes problems for cxgb.
Rather than remove it for all architectures (which was a botch in
r205845), remove it only for arm and mips until that can be sorted out.

Pointy Hat: imp

Submitted by:	Navdeep Parhar
MFC after:	7 days
2010-03-29 19:36:37 +00:00
imp
bbd41cbace Make all the modules build on arm (modulo ipfilter, which I'm looking
into):

o Don't build vpo and syscons on mips or arm either
o Add a section for mips and arm breakages, and document why.
  This is easier than opting in on all the other architectures:
  # no BUS_SPACE_UNSPECIFIED: bce, bwi, bwn, mfi, mpt, siba_bwn
  # No barrier instruction support (specific to this driver): sym
  # no uart_cpu_$MACHINE_ARCH: uart

(mips has, by inspection, the same issues as arm, so ditto for it)

MFC after:	7 days
2010-03-29 17:31:55 +00:00
marcel
35f33c0a98 Bring up-to-date:
o   Switch to ITANIUM2 has the cpu. This has absolutely no effect
    on the code, but makes for a better example.
o   Drop COMPAT_FREEBSD6. We're tier 2, so you're supposed to run
    8-stable or newer.
o   Add PREEMPTION. It works now.
o   Remove HWPMC_HOOKS. We don't have support for hwpmc yet.

o   Add a bunch of new devices: atapist, hptiop, amr, ips, twa, igb,
    ixgbe, ae, age, alc, ale, bce, bfe, et, jme, msk, nge, sk, ste,
    stge, tx, vge, axe, rue, udav, fwip, and all USB serial.
o   Remove "legacy" devices: le, vx, dc, pcn, rl, sis.

Make sure to the module list is a superset of what goes into GENERIC.
2010-03-27 06:53:11 +00:00
jfv
8918ac92eb Update the driver to Intel version 2.1.6
- add some new hardware support for 82599
	- Big change to interrupt architecture, it now
	  uses a queue which contains an RX/TX pair as
	  the recipient of the interrupt. This will reduce
	  overall system interrupts/msix usage.
	- Improved RX mbuf handling: the old get_buf routine
	  is no longer synchronized with rxeof, this allows
	  the elimination of packet discards due to mbuf
	  allocation failure.
	- Much simplified and improved AIM code, it now
	  happens in the queue interrupt context and takes
	  into account both the traffic on the RX AND TX
	  side.
	- variety of small tweaks, like ring size, that have
	  been seen as performance improvements.
	- Thanks to those that provided feedback or suggested
	  changes, I hope I've caught all of them.
2010-03-27 00:21:40 +00:00
luigi
73b0576453 make the module loadable
Submitted by:	Marcin Wisnicki
2010-03-24 18:35:31 +00:00
kmacy
b5dfb72f03 make UMA the default allocator for ZFS buffers - this avoids
a great deal of contention in kmem_alloc

MFC after:	7 days
2010-03-13 21:53:48 +00:00
nwhitehorn
142a4d2993 Provide groundwork for 32-bit binary compatibility on non-x86 platforms,
for upcoming 64-bit PowerPC and MIPS support. This renames the COMPAT_IA32
option to COMPAT_FREEBSD32, removes some IA32-specific code from MI parts
of the kernel and enhances the freebsd32 compatibility code to support
big-endian platforms.

Reviewed by:	kib, jhb
2010-03-11 14:49:06 +00:00
jkim
2adbaaffe4 Enable ACPI module build on amd64. Although we strongly recommend building
it into kernel, there is no need to prevent it from building at all.
2010-03-08 19:40:31 +00:00
jkim
c430d0ae4b Update module Makefile for ACPICA 20100304.
Submitted by:	Paul B Mahol (onemda at gmail dot com)
2010-03-08 18:40:22 +00:00
nwhitehorn
91112f5ed1 Enable tmpfs unconditionally on all platforms. No one I spoke to could
remember why it was x86 only, and it works just as well on at least powerpc
as on x86.
2010-03-08 15:01:08 +00:00
rpaulo
f9d9892e14 Add a missing ar9285_reset.c file. 2010-03-03 20:01:31 +00:00
rpaulo
8518ff9653 Add AR9285 sources. 2010-03-02 12:51:39 +00:00
weongyo
284bc690b4 Add bwn(4) driver to the build. 2010-02-25 19:42:51 +00:00
attilio
1b75a98556 Introduce the new kernel sub-tree x86 which should contain all the code
shared and generalized between our current amd64, i386 and pc98.

This is just an initial step that should lead to a more complete effort.
For the moment, a very simple porting of cpufreq modules, BIOS calls and
the whole MD specific ISA bus part is added to the sub-tree but ideally
a lot of code might be added and more shared support should grow.

Sponsored by:	Sandvine Incorporated
Reviewed by:	emaste, kib, jhb, imp
Discussed on:	arch
MFC:		3 weeks
2010-02-25 14:13:39 +00:00
np
b48fc8c497 There is no need to test __FreeBSD_version for features that have
been around for a long time now (7.1-ish or even earlier); assume
they are present.  These includes MSI, TSO, LRO, VLAN, INTR_FILTERS,
FIRMWARE, etc.

Also, eliminate some dead code and clean up in other places as part
of this quick once-over.

MFC after:	1 week
2010-02-24 10:16:18 +00:00
marius
d6ad7eba7f Hook up nfs_common missed in r203968.
Submitted by:	kib
2010-02-19 21:11:40 +00:00
marius
e51e443f9c Factor out the code shared between NFS client and server into its own
module. With r203732 it became apparent that creating the sysctl nodes
twice causes at least a warning, however the whole code shouldn't be
present twice in the first place.

Discussed with:	rmacklem
2010-02-16 20:00:21 +00:00
weongyo
2eef358f95 adds bwn(4) driver for supporting Broadcom BCM43xx chipsets.
o uses v4 firmware instead of v3.  A port will be committed to create
    the bwn firmware module.
  o supports B/G and LP(low power) PHYs.
  o supports 32 / 64 bits DMA operations.
  o tested on big / little endian machines so should work on all
    architectures.

It'd not connected to the build until the firmware port is committed.
2010-02-16 01:44:14 +00:00
weongyo
d37107dd00 Hook up the siba_bwn module to the build. 2010-01-31 21:22:45 +00:00
weongyo
9d4753ed16 Adds siba_bwn module which is used with bwn(4). Main purpose of this
module is to distinguish parts of Silicon Backplane and of Broadcom
Wireless.
2010-01-31 21:18:22 +00:00
rnoland
4f2c2891b7 Welcome drm support for VIA unichrome chips.
MFC after:	2 weeks
2010-01-31 14:30:39 +00:00
rnoland
04aaff5298 Import simple drm memory manager.
This is required for the VIA driver and at least some parts are needed
for GEM.

MFC after:	2 weeks
2010-01-31 14:25:29 +00:00
rpaulo
23c4d0d9de Improve previous commit and add missing ar9280.c 2010-01-31 14:25:09 +00:00
rpaulo
6be8388a29 Build 928x files too. 2010-01-31 13:39:08 +00:00
thompsa
362fc6636d Uuencode the rt2870 firmware into ascii like the other firmware blobs. 2010-01-29 03:35:01 +00:00
thompsa
47c70728c0 Add run(4), a driver for Ralink RT2700U/RT2800U/RT3000U USB 802.11agn devices.
This driver was written for OpenBSD by Damien Bergamini and ported over by
Akinori Furukoshi.
2010-01-28 22:24:54 +00:00
yongari
2371e9986a Build smbfs kernel module on sparc64. 2010-01-25 18:50:58 +00:00
antoine
8f3c3cadff Do not build netgraph kernel modules if WITHOUT_NETGRAPH is set in src.conf
Submitted by:	bf
MFC after:	2 weeks
2010-01-16 17:08:22 +00:00
trasz
ba210e8afe Add gmountver, disk mount verification GEOM class.
Note that due to e.g. write throttling ('wdrain'), it can stall all the disk
I/O instead of just the device it's configured for.  Using it for removable
media is therefore not a good idea.

Reviewed by:	pjd (earlier version)
2010-01-16 09:52:49 +00:00
brueffer
79a6a9e7eb Build iwi(4) and iwifw(4) modules on amd64 as well.
PR:		113117
Submitted by:	"O. Hartmann" <ohartman@zedat.fu-berlin.de>
MFC after:	1 week
2010-01-14 16:49:22 +00:00
lulf
8ab7715033 Bring in the ext2fs work done by Aditya Sarawgi during and after Google Summer
of Code 2009:

- BSDL block and inode allocation policies for ext2fs. This involves the use
  FFS1 style block and inode allocation for ext2fs. Preallocation was removed
  since it was GPL'd.
- Make ext2fs MPSAFE by introducing locks to per-mount datastructures.
- Fixes for kern/122047 PR.
- Various small bugfixes.
- Move out of gnu/ directory.

Sponsored by:   Google Inc.
Submitted by:	Aditya Sarawgi <sarawgi.aditya AT SPAMFREE gmail DOT com>
2010-01-14 14:30:54 +00:00
thompsa
38619cd970 Add a driver by Fredrik Lindberg for Option HSDPA USB devices. These differ
from standard 3G wireless units by supplying a raw IP/IPv6 endpoint rather than
using PPP over serial. uhsoctl(1) is used to initiate and close the WAN
connection.

Obtained from:	Fredrik Lindberg <fli@shapeshifter.se>
2010-01-13 03:16:31 +00:00
marius
d5f8f8ba40 Add epic(4), a driver for the front panel LEDs in Sun Fire V215/V245.
It's named after the driver doing the same job in OpenSolaris.
2010-01-10 15:44:48 +00:00
bz
5a3a95e887 After adding an SDT provider for opencrypto in r199884 we should also
depend on opt_kdtrace.h for the module build.

Submitted by:	(Andre.Albsmeier siemens.com)
MFC after:	3 days
2010-01-07 12:58:03 +00:00
rpaulo
91f3d0f751 iwn(4) update. Notable changes:
* new firmware
* untested support for 1000 and 6000 series
* bgscan support
* remove unnecessary RXON changes
* allow setting of country/regdomain by enforcing channel flags read
  from the EEPROM
* suspend/resume fixes
* RF kill switch fixes
* LED adjustments
* several bus_dma*() related fixes
* addressed some LORs
* many other bug fixes

Submitted by:	Bernhard Schmidt <bschmidt at techwires.net>
Obtained from:	Brandon Gooch <jamesbrandongooch at gmail dot com> (LED
		related changes), Benjamin Kaduk <kaduk at mit dot edu>
		(LOR fixes), OpenBSD
2009-12-29 19:47:34 +00:00
luigi
a34926abd3 Now that ipfw is split into multiple files, we need
to list them all in the Makefile for the module,
otherwise it won't load due to missing symbols.

The problem only affected head with ipfw built as a module.

Reported by David Horn
2009-12-17 17:44:34 +00:00
avg
006653d006 amdsbwd: new driver for AMD SB600/SB7xx watchdog timer
The hardware is compliant with WDRT specification, so I originally
considered including generic WDRT watchdog support, but decided
against it, because I couldn't find anyone to the code for me.
WDRT seems to be not very popular.
Besides, generic WDRT porbably requires a slightly different driver
approach.

Reviewed by:	des, gavin, rpaulo
MFC after:	3 weeks
2009-11-30 11:44:03 +00:00
mav
f2f80ba207 Drop USB mass storage devices support from ata(4). It is out of the build as
long as I remember, and completely superseded by better maintained umass(4).
It's main idea was to optionally avoid CAM dependency for such devices, but
with move ATA to CAM, it is not actual any more.

No objections:	hselasky@, thompsa@, arch@
2009-11-26 12:41:43 +00:00
jkim
4e38e56b0d Add a forgotten module Makefile change from the previous commit. 2009-11-16 21:53:56 +00:00
rpaulo
a65718e20f Driver for the Apple Touchpad present on MacBook (non-Pro & Pro).
Submitted by:	Rohit Grover <rgrover1 at gmail.com>
MFC after:	2 months
2009-11-09 15:59:09 +00:00
avg
00f6dd9619 ichwd: don't attach to isa pnp device(s) by accident
Reviewed by:	imp, des
MFC after:	1 week
2009-11-07 11:41:23 +00:00
rpaulo
f97bf23fd9 Updates to the iwn driver:
* iwnfw has now been split into individual modules so autoloading of
  firmware module(s) does work again.
* Changes have been made to RUN -> AUTH transition, this should fix the
  issue reported by Glen and others.
* Brandon reported issues in iwn_cmd() with large commands, those have
  been fixed to.
* DEAUTH is now handled correctly.

Submitted by:	Bernhard Schmidt <bschmidt at techwires.net>
2009-10-24 09:55:11 +00:00
rpaulo
15ae93bc67 Updated iwn(4) driver supporting the newer series, 5000, 5150 and 5300.
Submitted by:	Bernhard Schmidt <bschmidt at techwires.net>
2009-10-23 22:04:18 +00:00
mav
737d93433c MFp4:
Move Port Multiplier support code out of ATA XPT into pmp periph driver.
This is convinient, as PMP itself is a bus target and has own state.
2009-10-23 12:36:42 +00:00
avg
56cfce5eef minor: fix sorting of some amd* entries in some makefiles
MFC after:	1 week
2009-10-20 13:22:54 +00:00
thompsa
ca96a6314b Add opt_gdb.h which is now needed by ucom. 2009-10-19 21:54:41 +00:00
thompsa
b780285b19 Remove the newly added uch341 driver, it will be merged into uchcom instead.
Suggested by:	takawata
Submitted by:	HPS
2009-10-19 21:43:59 +00:00
jkim
99279734b8 Rewrite x86bios and update its dependent drivers.
- Do not map entire real mode memory (1MB).  Instead, we map IVT/BDA and
ROM area separately.  Most notably, ROM area is mapped as device memory
(uncacheable) as it should be.  User memory is dynamically allocated and
free'ed with contigmalloc(9) and contigfree(9).  Remove now redundant and
potentially dangerous x86bios_alloc.c.  If this emulator ever grows to
support non-PC hardware, we may implement it with rman(9) later.
- Move all host-specific initializations from x86emu_util.c to x86bios.c and
remove now unnecessary x86emu_util.c.  Currently, non-PC hardware is not
supported.  We may use bus_space(9) later when the KPI is fixed.
- Replace all bzero() calls for emulated registers with more obviously named
x86bios_init_regs().  This function also initializes DS and SS properly.
- Add x86bios_get_intr().  This function checks if the interrupt vector is
available for the platform.  It is not necessary for PC-compatible hardware
but it may be needed later. ;-)
- Do not try turning off monitor if DPMS does not support the state.
- Allocate stable memory for VESA OEM strings instead of just holding
pointers to them.  They may or may not be accessible always.  Fix a memory
leak of video mode table while I am here.
- Add (experimental) BIOS POST call for vesa(4).  This function calls VGA
BIOS POST code from the current VGA option ROM.  Some video controllers
cannot save and restore the state properly even if it is claimed to be
supported.  Usually the symptom is blank display after resuming from suspend
state.  If the video mode does not match the previous mode after restoring,
we try BIOS POST and force the known good initial state.  Some magic was
taken from NetBSD (and it was taken from vbetool, I believe.)
- Add a loader tunable for vgapci(4) to give a hint to dpms(4) and vesa(4)
to identify who owns the VESA BIOS.  This is very useful for multi-display
adapter setup.  By default, the POST video controller is automatically
probed and the tunable "hw.pci.default_vgapci_unit" is set to corresponding
vgapci unit number.  You may override it from loader but it is very unlikely
to be necessary.  Unfortunately only AGP/PCI/PCI-E controllers can be
matched because ISA controller does not have necessary device IDs.
- Fix a long standing bug in state save/restore function.  The state buffer
pointer should be ES:BX, not ES:DI according to VBE 3.0.  If it ever worked,
that's because BX was always zero. :-)
- Clean up register initializations more clearer per VBE 3.0.
- Fix a lot of style issues with vesa(4).
2009-10-19 20:58:10 +00:00
jhb
aefab242fc Fix this module so it at least builds. Note that it isn't hooked up to
the build however, and ubser(4) is also not present in any kernel configs
(including NOTES).
2009-10-13 18:07:56 +00:00
rwatson
5373271e64 EXPORT_SYMS is not, in fact, required, for a dependent module to access
non-static symbols in a module they depend on, so remove dtrace symbols
from nfsclient's EXPORT_SYMS again.

Suggested by:	jhb
2009-10-13 09:21:20 +00:00