summaryrefslogtreecommitdiffstats
path: root/sys/dev
Commit message (Collapse)AuthorAgeFilesLines
* Fix recording device selection based on ALS4000 datasheet.ariff2005-11-071-21/+10
| | | | | | - http://www.alsa-project.org/alsa/ftp/manuals/avance_logic/ALS4000a.PDF Submitted by: Watanabe Kazuhiro <CQG00620@nifty.ne.jp>
* Fix kernel panic caused by double mss_unlock().ariff2005-11-071-1/+1
| | | | Noticed by: Watanabe Kazuhiro <CQG00620@nifty.ne.jp>
* Remove unecessary include file. machine/rpb.h is very alpha specificimp2005-11-071-1/+0
| | | | and is not needed for this font, which isn't alpha speciifc.
* Refactor the PCI probe code a bit.scottl2005-11-061-49/+45
|
* The latest version of the Intel 2200BG/2915ABG driver (9.0.0.3-9) fromwpaul2005-11-061-7/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Intel's web site requires some minor tweaks to get it to work: - The driver seems to have been released with full WMI tracing enabled, and makes references to some WMI APIs, namely IoWMIRegistrationControl(), WmiQueryTraceInformation() and WmiTraceMessage(). Only the first one is ever called (during intialization). These have been implemented as do-nothing stubs for now. Also added a definition for STATUS_NOT_FOUND to ntoskrnl_var.h, which is used as a return code for one of the WMI routines. - The driver references KeRaiseIrqlToDpcLevel() and KeLowerIrql() (the latter as a function, which is unusual because normally KeLowerIrql() is a macro in the Windows DDK that calls KfLowewIrql()). I'm not sure why these are being called since they're not really part of WDM. Presumeably they're being used for backwards compatibility with old versions of Windows. These have been implemented in subr_hal.c. (Note that they're _stdcall routines instead of _fastcall.) - When querying the OID_802_11_BSSID_LIST OID to get a BSSID list, you don't know ahead of time how many networks the NIC has found during scanning, so you're allowed to pass 0 as the list length. This should cause the driver to return an 'insufficient resources' error and set the length to indicate how many bytes are actually needed. However for some reason, the Intel driver does not honor this convention: if you give it a length of 0, it returns some other error and doesn't tell you how much space is really needed. To get around this, if using a length of 0 yields anything besides the expected error case, we arbitrarily assume a length of 64K. This is similar to the hack that wpa_supplicant uses when doing a BSSID list query.
* Avoid trouble with PUC_FASTINTR if it is already defined.phk2005-11-061-0/+2
|
* Remove spl markers from AMR.scottl2005-11-064-54/+6
| | | | MFC After: 3 days
* Now that fast interrupts can be shared we can use them in puc.phk2005-11-051-0/+1
|
* Add yet another entry to the list.phk2005-11-051-0/+9
|
* Remove spl.ticso2005-11-051-28/+16
| | | | | | Restart request on USBD_IOERROR. MFC after: 2 weeks
* Appropriate NULL pointer checking to avoid mysterious panic duringariff2005-11-032-2/+2
| | | | | | device cloning. Approved by: netchild (mentor)
* Tests with my dual Opteron system have shown that it's possiblewpaul2005-11-021-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | for code to start out on one CPU when thunking into Windows mode in ctxsw_utow(), and then be pre-empted and migrated to another CPU before thunking back to UNIX mode in ctxsw_wtou(). This is bad, because then we can end up looking at the wrong 'thread environment block' when trying to come back to UNIX mode. To avoid this, we now pin ourselves to the current CPU when thunking into Windows code. Few other cleanups, since I'm here: - Get rid of the ndis_isr(), ndis_enable_interrupt() and ndis_disable_interrupt() wrappers from kern_ndis.c and just invoke the miniport's methods directly in the interrupt handling routines in subr_ndis.c. We may as well lose the function call overhead, since we don't need to export these things outside of ndis.ko now anyway. - Remove call to ndis_enable_interrupt() from ndis_init() in if_ndis.c. We don't need to do it there anyway (the miniport init routine handles it, if needed). - Fix the logic in NdisWriteErrorLogEntry() a little. - Change some NDIS_STATUS_xxx codes in subr_ntoskrnl.c into STATUS_xxx codes. - Handle kthread_create() failure correctly in PsCreateSystemThread().
* Catch up with ACPI-CA 20051021 importjkim2005-11-016-189/+221
|
* Move HPET debugging under ACPI_TIMER in order to save a bitfield.scottl2005-11-012-2/+1
|
* Add proper debugging infrastructure for acpi_hpet.c.scottl2005-11-012-0/+5
|
* Add a basic HPET timecounter.phk2005-10-311-0/+190
| | | | It has -200 quality for now so it will not get automatically selected.
* - Use callout_*() to manage the callout and make it MPSAFE.jhb2005-10-312-16/+11
| | | | | | | - Fix locking in detach(), we only need to lock across vr_stop(). Tested by: Mike Tancsa mike at sentex dot net MFC after: 1 week
* Put probe-time printf of adapter speed and duplex behind bootverbose:rwatson2005-10-311-10/+14
| | | | | | | | | | since the link takes a bit to negotiate, the information is pretty much never available during the probe. As such, the boot output pretty much always prints N/A for speed and duplex. Since we print out the output of ifconfig during the user space boot, this early boot information is also generally redundant, and added to the noise. MFC after: 2 weeks
* Normalize a significant number of kernel malloc type names:rwatson2005-10-3114-15/+15
| | | | | | | | | | | | | | | | | | | - Prefer '_' to ' ', as it results in more easily parsed results in memory monitoring tools such as vmstat. - Remove punctuation that is incompatible with using memory type names as file names, such as '/' characters. - Disambiguate some collisions by adding subsystem prefixes to some memory types. - Generally prefer lower case to upper case. - If the same type is defined in multiple architecture directories, attempt to use the same name in additional cases. Not all instances were caught in this change, so more work is required to finish this conversion. Similar changes are required for UMA zone names.
* The mediasize shouldn't be multipled by the sector size when it wasgrehan2005-10-311-1/+2
| | | | | | | | | in bytes to start off with. This caused the GPT geom sniffer to attempt a seek just back from the end of the 'disk', which resulted in a > 4G seek, causing gdb psim to exit since it only supports 32-bit seeks. The size of the disk should really be specified in the psim device tree, but for now do the minimal amount of work to get psim to run again.
* Pickup I/O lock in aac_get_bus_info, as this code will callcsjp2005-10-311-0/+6
| | | | | | | | aac_alloc_sync_fib(). aac_alloc_sync_fib() will assert that the I/O locks are held. This fixes a panic on system boot up when the aac(4) device's bus_generic_attach() routine is called. Reviewed by: scottl
* Add some safeguards to AIOSFMT:des2005-10-301-2/+8
| | | | | | | | | | | | | - Return EINVAL if play_format or rec_format is set but the corresponding sample rate is 0. - Don't try to set the playback or recording format to 0. Previously, issuing an AIOSFMT ioctl with an all-zeroes snd_chan_param would trigger a KASSERT in chn_fmtchain(); I'm unsure about the effects on a kernel without INVARIANTS. After this commit, issuing AIOSFMT with an all-zeroes snd_chan_param is equivalent to issuing AIOGFMT. MFC after: 2 weeks
* MFp4: When doing lazy allocation, it turns out that we need to record theimp2005-10-291-0/+3
| | | | | | | | | | | actual resource values we received from the system rather than the range we requested. Since we request a range starting at 0, we would record that number. Later, since this == 0, we'd allocate again. However, we wouldn't write the new resource into the BAR. This resulted in a resource leak as well as a BAR that couldn't access the resource at all since rman_get_start, et al, were wrong. MFC After: 1 week (assuming RELENG_6 is open for business)
* Use symbolic name rather thanhard coding the cap pointer offset forimp2005-10-292-1/+2
| | | | type two devices.
* Add Billionton LNA-100B variation that Alan reported in arch. [1]imp2005-10-291-1/+3
| | | | | | Also add Global Village lan modem, even though I'm unsure if it works. Reported by: Alan newsletter at acsoftware dot org
* Add Global Village lan modem.imp2005-10-291-2/+6
| | | | | | Add Billionton LNA-100B[1] Reported by: [1] Alan newsletter at acsoftware dot org
* Shutdown a little better by commenting the shutdown code and acknowledgingimp2005-10-291-4/+9
| | | | any interrupts after we turn off the interrupt mask.
* Shut down the card bus bridge hardware on detach. Before we'd justimp2005-10-291-6/+14
| | | | | | free the resoruces w/o actually turning off the interrupts. This lead to interrupt storms if you were to insert a card after kldunloading the driver.
* Remove call to txp_set_filter() from txp_attach(). txp_set_filter() needswpaul2005-10-291-2/+0
| | | | | | | | | | | | | | | the ifp, so you can't call it before doing if_alloc(). Also, there's really no need to call it here anyway: the code I originally ported from OpenBSD incorrectly set the station address only once at device attach time, instead of setting in txp_init(). This meant you couldn't change the address with ifconfig txp0 ether xx:xx:xx:xx:xx:xx. I added the call to txp_set_filter() in txp_init() to correct this, but forgot to remove the call from txp_attach(). Until now, it never mattered. With this fix, the txp driver tests good: txp0: <3Com 3cR990-TX-97 Etherlink with 3XP Processor> port 0xb800-0xb87f mem 0xe6800000-0xe683ffff irq 12 at device 10.0 on pci0 txp0: Ethernet address: 00:01:03:d4:91:4f
* Add an ioctl framework for doing FC task management functions frommjacob2005-10-294-1/+73
| | | | a user space tool- useful for doing FC target mode certification.
* Fix ndis_getstate_80211() so that it properly reports the authmodewpaul2005-10-291-32/+77
| | | | | | and channel to ifconfig. Also use the SSID and channel info from the association info that we already have instead of using ndis_get_info() to ask the driver for it again.
* Return the right format (LBA/MSF) in TOC entries.sos2005-10-281-5/+7
| | | | | | Null the TOC on media change even if no media present. Reported by: des
* In uart_bus_probe() return BUS_PROBE_DEFAULT when the probe ismarcel2005-10-281-1/+1
| | | | successful.
* o Style(9) nitsmarcel2005-10-281-10/+9
| | | | | | | | | o Fix typo in comment o s/-100/BUS_PROBE_GENERIC/ o s/err/error/ for consistency o Remove non-applicable comment o Allow uart_bus_probe() to return the predefined BUS_PROBE_* contants. In this case: explicitly test for error > 0.
* Allow uart_bus_probe() to return the predefined BUS_PROBE_*marcel2005-10-281-3/+1
| | | | | constants. In this case: just return what uart_bus_probe() returns.
* Cardbus has only 1 slot, so simplify a little.imp2005-10-282-44/+37
|
* Add PCIM_BIOS_ADDR_MASK tooimp2005-10-281-0/+1
|
* Some cardbus CIS definitions moved here since they are PCI registers.imp2005-10-281-1/+12
|
* Minor style(9) nitage.imp2005-10-281-4/+2
|
* Eliminate even more duplication, and move some definitions into pcireg.himp2005-10-282-45/+19
|
* Remove now redundant defines.imp2005-10-281-6/+0
|
* Simplify code a little, prefer PCI?_FOO registers where possible.imp2005-10-281-15/+9
|
* Use PCIR_BARS rather than CARDBUS_BASE0_REGimp2005-10-281-2/+3
| | | | Style nit.
* - Use if_printf() and device_printf() and remove vr_unit from the softc.jhb2005-10-272-53/+44
| | | | | | I had to initialize the ifnet a bit earlier in attach so that the if_printf()'s in vr_reset() didn't explode with a page fault. - Use M_ZERO with contigmalloc() rather than an explicit bzero.
* - Add locking and mark MPSAFE. The driver had a mutex in the softc andjhb2005-10-272-62/+86
| | | | | | | | | | | | | | | even initialized it, but it never used it. - Use callout_*() to manage the callout. - Use m_devget() to copy data out of the rx buffers rather than doing it all by hand. - Use m_getcl() to allocate mbuf clusters rather than doing it all by hand. - Don't free the software descriptor for a rx ring entry if we can't allocate an mbuf cluster for it. We left a dangling pointer and never reallocated the entry anyway. OpenBSD's code (from which this was derived) has the same bug. Tested by: NO ONE (despite repeated requests) Reviewed by: wpaul (5)
* Drop the driver lock around atm_input() analogous to all the ethernetjhb2005-10-271-0/+2
| | | | | | drivers dropping the driver lock around ether_input(). Silence by: harti
* Enclose the delayed attach in Giant so we dont loose the race with othersos2005-10-271-6/+10
| | | | | | | drivers trying to attach ATA devices like pccard. Dont clear the delayed flag before we are acutally finished. Spotted by: imp
* Clear pending_txs when not "RUNNING".obrien2005-10-271-0/+1
| | | | Submitted by: Q <q@onthenet.com.au>
* - Use swi_remove() to teardown swi handlers rather thanjhb2005-10-265-6/+6
| | | | | intr_event_remove_handler(). - Remove tty: prefix from a couple of swi handler names.
* Catch up with new interrupt handling code.ru2005-10-264-7/+7
|
OpenPOWER on IntegriCloud