ASIC revision.
Add (accidentally omitted) PCI product-ID entries for the BCM5780 and
BCM5780 (Serverworks HT-2000 to bge_products[], so that bge_probe()
will attach bcm5780 variants. Tested on a bcm5780.
Handling for the bcm5780S with 1000base-X PHY almost certainly has the
wrong quirks; our quirk entries are driven off ASIC ID. However, the
5780 (usually integral copper) and 5780S (TBI?) have the same ASIC ID.
The Linux drivers ascertain whether to use integral copper phy or external
PHY via EEPROM bits.
I suspect the only way we're going to handle the 5780 vs. 5780S
properly is to add exact chip-id matches for all 5780/5780S variants
to bge_revisions[]. However, I don't know those ids until other users
with bcm5780s hardware can get this revision, try it, and report the output.
So, here goes.
CB_SOCKET_STAT_3VSOCK definition to CB_SOCKET_STAT_XVSOCK and
CB_SOCKET_STAT_YVSOCK definitions without updating the numbers.
It doesn't look like CB_SOCKET_STAT_XVSOCK and CB_SOCKET_STAT_YVSOCK
are used anywhere, so this will not make any functional difference.
Boggs, it does not matter if the lmc driver routine returns 100 for the match,
because if the lmc driver is loaded via an LKM after boot, the other drivers
would have claimed the card already.
1. Removed the makeoptions line from arch/i386/conf/GENERIC. Now
ndis_driver_data.h is simply copied into the kernel build directory instead
of editing the config file to specify its location.
2. Uncommented lines in files.i386 and files.pci related to NDIS. NDIS will
not be compiled into the kernel unless the two lines are uncommented from
GENERIC (I checked using nm), so there is no reason for this to be commented
out.
3. Added ndiscvt to usr.sbin/Makefile.
forgets to convert them from the host to the network byte order. Use
bswap16 to convert them. (Not htons, because on a big-endian machine, they
are in the correct byte order initially, but then, they are byte-swapped
by a htole32 call when written to the transmit descriptor. So
byte-swapping is needed in this case too, to compensate for this htole32
call.)
For a similar reason, tags were seen byte-swapped when received on a
big-endian machine. Replace ntohs by bswap16 in the input path too.
(Again, it is needed to compensate for a le32toh call when the receive
descriptor is read.)
Fixes PR 32644.
Tested on 3.0/i386, 3.0/sgimips and current/alpha.
OK by martin@.
Witzmann for spending so much time debugging this.
Fixes: kern/18880, kern/24488, port-i386/14260, kern/12603, kern/12723,
kern/24957, kern/23584
Tested on i386 (Stephane Witzmann), alpha (me).
requested by uwe@. These were wrong because they were receiving an
emulcookie yet they were accessops (thus having to receive an accesscookie).
Instead, just handle the WSDISPLAYIO_{GET,PUT}WSCHAR ioctls from the
driver's ioctl accessop.
As this reduces the amount of code needed to handle these operations to
two small functions in each driver, remove the WSDISPLAY_CHARFUNCS kernel
option.
Reviewed by, at least, uwe@ and macallan@. No objections in tech-kern@.
use default target (but not for host) device settings on
ahc(4) interface without its SEEPROM (mostly on-board one).
This flag could be useful if host's BIOS (firmware) initializes
ahc(4) chip with some conservative (async, no tagged queuing etc.)
target settings for minimum support to load its primary loader etc.,
and it will be enabled in each attachment according to MD device
properties(9). Currently this property is set only on sgimips for
O2 on-board aic7880 adapters.
No objection on tech-kern (and netbsd-bugs), and closes PR kern/23276.
to the screen on which they are being called. The driver cannot guess
this by itself but it is needed to implement, at least, the getwschar and
putwschar functions in the correct place. There are no functional changes
yet.
Tested on i386 (vga, vga_raster, machfb, vesafb), macppc and sparc64.
Suggested and reviewed by macallan@.
Voodoo5 or Banshee boards.
So far it supports:
- full acceleration in 8bit graphics mode
- video mode switching
- virtual consoles via vcons
So far it hasn't been tested on anything else than macppc and even there it
needs a hack to overload ofb.
TODO:
- test on i386
- don't hardcode video mode
SIOCSIFFLAGS: it compares the new flags with the old flags and avoids
reset if there are only certain changes. This was done to fix PR 29126.
It does not take into account, though, that there is other state which
can change and SIOCSIFFLAGS is called to inform about it. Namely,
if_capenable, ec_capenable and ec_nvlans. For all three, the _init
method must program the hardware specially. Not doing it resulted in:
- VLAN frames getting truncated
- hw checksumming not working
- outgoing VLAN frames not being tagged when they should
- incoming VLAN frames being treated as untagged.
Fix by keeping all the old state in the softc and initializing the
hardware if any of it changes.
Tested on gsip. Also tested by Nino Dehne and Martin J. Laubach
on sip, thanks.
Fixes PRs 32900 and 33216.
Approved by martin@ .
http://mail-index.netbsd.org/tech-net/2006/03/15/0000.html.
The new layout almost precisely matches FreeBSD, and should make
future imports much easier.
At the same time, import the current 0.9.16.16 HAL from FreeBSD. According
to sam@, this is the proper version we should be using.
arch/i386/conf/GENERIC, arch/i386/conf/files.i386 and dev/pci/files.pci which
can simply be uncommented to compile NDIS into the kernel. I'll write some
documentation on this soon.
Note that NDIS is still somewhat experimental. It is currently tested and
functions relatively well on on two cards:
1. Dell (Broadcom) TrueMobile 1400 Dual Band WLAN Mini-PCI
2. Intel EtherExpress Pro/100
with mpt_pci (by comparing the dv_cfattach pointer), check to see if it has
the same parent. If so, then it is guaranteed to have the same attachment
(which is mpt_pci).
add Radeon 9200 Secondary ID.
add Comtrol, Magma and SIIG multi-port serial cards.
add more Dolphin SCI cards.
add IBM ServeRAID 4/5.
add Mitsubishi Tornado 3000.
add or rename various NVIDIA IDs to match openbsd.
add SafeNet SafeXcel.
Trident Microsystems 4DWAVE DX (ethernet network, revision 0x25)
Unfortunately, this is an autri sound card. Special case the match routines
for both drivers so if_pcn properly picks it up, and autri doesn't.
and ADT 7463c thermal and voltage monitor found on the Tyan S2881 and S2882-D
(and probably other boards as well). We do not currently support any kind
of detection of the i2c address of the thermal monitor; it appears to be
at 0x2D on the S2881 and 0x2E on the S2882-D (kernel config examples
forthcoming).
From PR kern/32463 submitted by Anil Gopinath, anil_public@yahoo.com.
now, so use that to provide the Ethernet address of the built-in Ethernet.
XXX Still a little ugly in the tlp driver, but fixing that would require
XXX reworking the SROM usage in a broader sense.
While here, do the P4032 DMA window hack in device_register() as well.
timer frequency; Take this into account. Information gathered from
the sk98lin driver for Linux, from Marvell.
Also add sysctl support for changing the interrupt moderation timer at
runtime; each board is controlled independently.
Discussed on tech-net beginning in November 2005.
--
Add a workaround for VIA EHCI controllers which, under load, signal qTD
completion before they have performed writeback from the overlay qTD.
This condition would exhibit itself as a umass stall that never recovers.
--
This fixes the problem reported by Thomas Klausner on current-users@:
http://mail-index.netbsd.org/current-users/2006/01/17/0000.html
- initialize it properly in the bus front-ends (all 2, exept in wdc_pcmcia.c
for the "Sandisk CompactFlash Card" where it's set to 1)
- remplace hardcoded '2' by ata_channel->ch_ndrive in MI IDE drivers.
From Christos Zoulas in kern/32501.
is called from pciide_attach() and at this point we don't know which drives
are here. Just assume all drives are there and allocate DMA ressources for
all of them.
revision 1.5
date: 2003/03/13 22:21:04; author: emsi; state: Exp; lines: +17 -18
Fill in band switch crosspoints and use that instead of hardcoded
values in the band switching code. For now fill in the formerly
hard-coded values 160 and 454 until we can find out the real values
for each tuner. Also make those variables int instead of char
so it can actually hold 454...
- add power management.
- update ioctl handling.
Fix PR 27439 as the FreeBSD code has joerg's fix for when the RX intr
routine can't allocate a new mbuf.
Fix PR 30806. Thanks to cube@ for testing and some struct ipw_soft_hdr
handling code.
XXX The state machine doesn't sync with the net80211 layer, but that's
XXX not a surprise.