summaryrefslogtreecommitdiffstats
path: root/sys/dev
Commit message (Collapse)AuthorAgeFilesLines
* Fix my email address. I accidentally cut'npasted the wrong (old)joerg2001-06-031-1/+1
| | | | hostname laste time.
* Fix reversed arguments to pci_write_config()peter2001-06-031-2/+2
| | | | | PR: kern/9408 Submitted by: Philipp Mergenthaler <philipp.mergenthaler@stud.uni-karlsruhe.de>
* Remove unused includes, use *min() inline functions rather than add2001-06-031-26/+8
| | | | | | | home-grown macro, rewrite a confusing conditional in snpdevtotty(), and change ibuf to 512 bytes instead of 1024 bytes in dsnwrite(). Reviewed by: bde
* Only touch the PCR register in order to set bits for the fxp driver.jlemon2001-06-021-1/+3
| | | | | | | The 3C509-TX card apparently had a slightly different version of the chip, and has problems when this register is set. The problem does not appear on the 3C509{BC} cards, but since only the fxp driver needs specific bits set, conditionalize on that.
* Backout previous revision. While it fixed many platforms, it brokegallatin2001-05-311-5/+1
| | | | | | | all alphas with devices behind ppb's. I'm working on a better solution now. Note that all alphas that use per-platform interrupt mapping are broken again (as they have been for several months)
* Add device driver support for the Level 1 LXT1001 NetCelleratorwpaul2001-05-312-0/+2240
| | | | | | | | | | | | | | | gigabit ethernet controller chip. This device is used on some fiber optic gigE cards from SMC, D-Link and Addtron. Jumbograms and TCP/IP checksum offload on receive are supported. Hardware VLAN filtering is not, because it doesn't play well with our existing VLAN code. Also add manual page. There is a 4.x version of this driver available at http://www.freebsd.org/~wpaul/Level1/4.x if anyone feels adventurous and wants to test it. I still need to do performance testing and tuning with this device. (For my next trick, I will make the 3Com 3cR990 sit up and beg.)
* fix typocg2001-05-302-2/+2
|
* no longer usedcg2001-05-301-3496/+0
|
* update this driver to use new firmware and incorporate many fixes.cg2001-05-304-258/+313
| | | | | | this works on cs4630 chips, and should implement the clkrun hack for thinkpads- this will display diagnostic messages when triggered until its correctness is established.
* state the licencing terms for this filecg2001-05-301-0/+23
| | | | Obtained From: Yamaha
* Dont try to play tracks outside whats on the media.sos2001-05-301-1/+2
| | | | PR 26647
* Update to support the NEC NR-7500A burners.sos2001-05-301-2/+16
|
* What I get for "fixing" at the last minute. Correct a mis-merge of takawata'smsmith2001-05-302-1/+1
| | | | | | timeout fix and put proc.h into the right file. Submitted by: nnd@mail.nsk.ru
* Per jlemon: add code to nge_rxeof() to allow verification of TCP andwpaul2001-05-291-0/+8
| | | | | | | UDP checksums too, not just IP. The chip only tells us if the checksum is ok, it does not give us a copy of the partial checksum for later processing. We have to deal with this the right way, but we can deal with it.
* Fix mind-o in nge_rxeof(): I used CSUM_IP_CHECKED twice instead ofwpaul2001-05-291-1/+1
| | | | CSUM_IP_CHECKED|CSUM_IP_VALID.
* - Updates for new constant naming in the ACPI CA 20010518 update.msmith2001-05-2918-140/+157
| | | | | | | | | | | - Use __func__ instead of __FUNCTION. - Support power-off to S3 or S5 (takawata) - Enable ACPI debugging earlier (with a sysinit) - Fix a deadlock in the EC code (takawata) - Improve arithmetic and reduce the risk of spurious wakeup in AcpiOsSleep. - Add AcpiOsGetThreadId. - Simplify mutex code (still disabled).
* Remove MFS compat bits.phk2001-05-291-11/+0
|
* Fix bug in debug codesos2001-05-291-2/+2
|
* Fix for the fixate problem on the Yamaha burners.sos2001-05-292-4/+2
|
* Spring MegaChange #1.mjacob2001-05-289-255/+565
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---- Make a device for each ISP- really usable only with devfs and add an ioctl entry point (this can be used to (re)set debug levels, reset the HBA, rescan the fabric, issue lips, etc). ---- Add in a kernel thread for Fibre Channel cards. The purpose of this thread is to be woken up to clean up after Fibre Channel events block things. Basically, any FC event that casts doubt on the location or identify of FC devices blocks the queues. When, and if, we get the PORT DATABASE CHANGED or NAME SERVER DATABASE CHANGED async event, we activate the kthread which will then, in full thread context, re-evaluate the local loop and/or the fabric. When it's satisfied that things are stable, it can then release the blocked queues and let commands flow again. The prior mechanism was a lazy evaluation. That is, the next command to come down the pipe after change events would pay the full price for re-evaluation. And if this was done off of a softcall, it really could hang up the system. These changes brings the FreeBSD port more in line with the Solaris, Linux and NetBSD ports. It also, more importantly, gets us being more proactive about topology changes which could then be reflected upwards to CAM so that the periph driver can be informed sooner rather than later when things arrive or depart. --- Add in the (correct) usage of locking macros- we now have lock transition macros which allow us to transition from holding the CAM lock (Giant) and grabbing the softc lock and vice versa. Switch over to having this HBA do real locking. Some folks claim this won't be a win. They're right. But you have to start somewhere, and this will begin to teach us how to DTRT for HBAs, etc. -- Start putting in prototype 2300 support. Add back in LIP and Loop Reset as async events that each platform will handle. Add in another int_bogus instrumentation point. Do some more substantial target mode cleanups. MFC after: 8 weeks
* Make the beep duration independent of HZ.phk2001-05-282-2/+3
| | | | | | PR: 25201 Submitted by: Akio Morita amorita@meadow.scphys.kyoto-u.ac.jp MFC after: 1 week
* finally fix intr routing on alphas such as the as500 after months ofgallatin2001-05-271-1/+5
| | | | | | | | | | | | | | | | | | | breakage: - call PCIB_ROUTE_INTERRUPT() regardless of how valid the intline looks. Some alphas leave garbage in the intline and leave the intr mapping to OS platform support routines that map slots/buses to intlines - Down in the alpha pci code, first try platform.pci_intr_route() and if it doesn't exist or returns garbage, just read the intline out of config space. tested on AS500 (garbage in intline) and UP1000 (PC-like, intline is valid) Note that a nice little hack like the APIC_IO section of pci_cfgregread() is not workable. This is because the calling interface for alpha_pci_route_interrupt() requires us to figure out the bus/slot/etc from a device_t. At pci_read_device() time, we don't have a device_t for the bus/slot/func in question.
* beginnings of virtual playback channel supportcg2001-05-2710-212/+927
| | | | | | | | | | | | | | | | | instead of using two malloced arrays for storing channel lists, use an slist. convert the sndstat device to use sbufs and optionally provide more detail about channel state. vchans are software mixed playback channels. they are not enabled by this commit. they use the feeder infrastructure to emulate normal playback channels in a manner transparent to applications, whilst providing as many channels are desired, especially suitable for devices with only one hardware playback channel. in the future they will provide additional features. those wishing to test this functionality will need to add vchan.c to sys/conf/files and use 'sysctl -w hw.snd.pcm0.vchans' to enable it. blocksize and auto-rate selection are not yet supported.
* add a new method for retrieving feeder parameterscg2001-05-273-4/+39
|
* don't erase info in sndbuf_setup()cg2001-05-272-6/+24
| | | | | set free'd pointers to NULL in sndbuf_free() add a new function
* In the VIRTUAL_TTY macro, add a check to make sure that the result ofdd2001-05-271-1/+2
| | | | | | | | | | | SC_DEV isn't NULL; if it is, evaluate to NULL and don't dereference NULL. Callers of VIRTUAL_TTY must already check for the result being NULL since si_tty can be NULL, so this should be safe. This fixes a panic when trying to switch to a different vty in an environment such as userconfig (-c option to the kernel). PR: 26508
* Add a CONS_CLRHIST ioctl which instructs syscons to clear the historydd2001-05-271-0/+6
| | | | | | | (scroll-back) buffer. PR: 27616 Reviewed by: ru
* Acquire vm_mtx before calling vm_pager_deallocate.dd2001-05-271-1/+7
| | | | Reviewed by: phk
* add Dualmode Zoom/FaxModem 56K (internal) Model 2919sanpei2001-05-261-0/+1
| | | | | PR: kern/27476 Submitted by: Eric Beyer <lnxfrk@earthlink.net>
* Dang, I lost the sign in that brucification. DTRT with PCATCH.phk2001-05-261-17/+17
| | | | Cut Out In Cardboard by: bde
* Currently, each wireless networking driver has it's own control programphk2001-05-269-6/+1068
| | | | | | | | | | | | despite the fact that most people want to set exactly the same settings regardless of which card they have. It has been repeatidly suggested that this configuration should be done via ifconfig. This patch implements the required functionality in ifconfig and add support to the wi and an drivers. It also provides partial, untested support for the awi driver. PR: 25577 Submitted by: Brooks Davis <brooks@one-eyed-alien.net>
* Separate out pci cardbus bridge definitions to a common file for useimp2001-05-252-37/+66
| | | | | | | by both OLDCARD and NEWCARD. # didn't make the tables the same because oldcard supports more devices than # newcard and newcard's 16-bit stuff needs some work.
* Fix DMA on machines with more than 128MB.scottl2001-05-251-1/+1
| | | | | Obtained from: cg MFC after: 5 days
* Don't lie to diskerr() now that it listens to us.phk2001-05-251-5/+0
|
* Change #if VINUMDEBUG to #ifdef VINUMDEBUG. This is a flag, not a variable.grog2001-05-238-31/+27
|
* Regeneratewpaul2001-05-231-1/+6
|
* Tweak the xmphy driver a little bit based on something I learned aboutwpaul2001-05-233-8/+23
| | | | | | | | | | | | | | | | | | | | | | | the built-in 1000baseX interface in the Level 1 LXT1001 chip. The Level 1 PHY comes up with the isolate bit in the control register set by default, but it also has the autonegotiate bit set. When you tell the xmphy driver to select IFM_AUTO mode, it sees that the autoneg bit is already on, and thus doesn't bother updating the control register. However this means that the isolate bit is never turned off (unless you manually select 1000baseSX full or half duplex mode, which does result in the control register being modified and the ISO bit being turned off). This subtle and unusual behavioral difference stopped me from being able to receive packets on the SMC9462TX card for several days, since isolating the PHY disconnects it from the MAC's data interface. The fix is to omit the 'is the autoneg big set?' test, since it doesn't really provide much of an optimization anyway. This commit also updates the xmphy driver to support the Jato/Level 1 internal PHY. (I'm not sure how Jato Technologies is related to Level 1: all I know is the OUI from the PHY ID registers maps to Jato in the OUI database.) This will be used once I add the if_lge driver to support the LXT10010 chip.
* Vlan tags are 12 bits, mask off anything above since the chip doesn'tphk2001-05-231-2/+2
| | | | | | | | seem to do so for us. PR: 27567 Submitted by: Koji HINO hino@ccm.cl.nec.co.jp MFC after: 1 week
* Use '+' not '|' to add PCATCH to tsleep.phk2001-05-231-2/+2
|
* Remove the empty uscannerioctl() and use noioctl() instead.phk2001-05-231-8/+1
|
* Move objflags from vinumvar.h to vinumobj.h in preparation forgrog2001-05-231-45/+1
| | | | | | | requiring fewer header files for userland programs. Remove the gross debug device/non-debug device hack used to recognize whether the kernel module was in sync with the userland module.
* Move objflags from vinumvar.h to vinumobj.h in preparation forgrog2001-05-231-2/+37
| | | | requiring fewer header files for userland programs.
* Move external declaration to vinumhdr.h.grog2001-05-231-1/+2
|
* Set flag VF_HASDEBUG in vinum_conf to indicate that the module wasgrog2001-05-231-10/+6
| | | | | | | | | | | | compiled with debug support. This can be used by userland programs to recognize which ioctls the module supports. As a result, remove the gross debug device/non-debug device hack used to recognize whether the kernel module was in sync with the userland module. Replace explicit references to major/minor numbers of vinum superdevice with the VINUM_SUPERDEV macro written for that purpose.
* New header file.grog2001-05-221-0/+54
| | | | | | Missed by: Szilveszter Adam <sziszi@petra.hos.u-szeged.hu> David Wolfskill <david@catwhisker.org> Pointy hat to: grog
* Convert this driver to (ab?)use line disciplines to get the input itdd2001-05-221-17/+84
| | | | | | | needs instead of relying on idiosyncratic hacks in the tty subsystem. Also add module code since this can now be compiled as a module. Silence by: -hackers, -audit
* MALLOC -> malloc, FREE -> freebrian2001-05-221-5/+5
|
* Remove Malloc definitions (now in vinumext.h)grog2001-05-221-21/+2
|
* Add a field 'version' to vinum_conf. This field is a constant whichgrog2001-05-221-191/+30
| | | | | | | | | | | | | gets incremented every time the kernel-userland interface changes. This enables vinum(8) to check for the correct kernel version and to produce a useful message if it doesn't match. Requested by: Too many to count. Move the definitions of struct drive, sd, plex and volume to vinumobj.h. Add a new debug flag, DEBUG_LOCKREQS, which logs only lock requests.
* vinumstart: If a write request is for a RAID-[45] plex or a volumegrog2001-05-221-13/+23
| | | | | | | | | | | | | | | | | with more than one plex, the data will be accessed multiple times. During this time, userland code could potentially modify the buffer, thus causing data corruption. In the case of a multi-plexed volume this might be cosmetic, but in the case of a RAID-[45] plex it can cause severe data corruption which only becomes evident after a drive failure. Avoid this situation by making a copy of the data buffer before using it. Note that this solution does not guarantee any particular content of the buffer, just that it remains unchanged for the duration of the request. Suggested by: alfred
OpenPOWER on IntegriCloud