Commit Graph

2302 Commits

Author SHA1 Message Date
reinoud f64c33e88b Define DPRINTF(x) as an empty block to prevent gcc from complaining about
empty statements. This is still an empty statement but it will be filtered
out still.
2006-10-20 18:14:59 +00:00
pooka 1810947bb4 make compile by using __unused & other necessary tricks
and remove <0 comparisons for bus_size_t.  if a port wants signed
bus_size_t, it just might have to accept it can't use this driver.  *snif*
2006-10-16 12:58:54 +00:00
christos 4d595fd7b1 - sprinkle __unused on function decls.
- fix a couple of unused bugs
- no more -Wno-unused for i386
2006-10-12 01:30:41 +00:00
christos 82e1169df4 fix empty if 2006-10-04 15:49:59 +00:00
christos 12288ce635 Fix empty if 2006-10-04 15:48:47 +00:00
jmcneill f135e0d607 Add "name" parameter to powerhook_establish, to aid debugging. No objections
on tech-kern@
2006-09-24 03:53:07 +00:00
matt b9525730ee deal with 'bool' definitions 2006-09-11 03:37:12 +00:00
dogcow f2d329dca0 remove more vestiges of CCITT, LLC, HDLC, NS, and NSIP. 2006-09-07 02:40:31 +00:00
christos e82a0f88ae add missing initializer. 2006-09-03 21:45:28 +00:00
christos 77c903b90a add missing initializer 2006-09-03 21:42:55 +00:00
christos 0c58aff5f5 add missing initializers 2006-09-03 06:46:22 +00:00
christos c11c8c78df add missing initializers 2006-09-03 05:29:46 +00:00
christos 60dfc6ed9c add missing initializers 2006-09-03 05:16:01 +00:00
christos eb7cb3e07d - add missing initializers
- remove impossible comparison
2006-09-03 05:12:54 +00:00
christos 624d950194 add missing initializer 2006-09-03 05:11:30 +00:00
christos 5ec7f32544 add missing initializers 2006-09-02 17:02:57 +00:00
christos a569a4d291 add missing initializer 2006-09-02 07:01:20 +00:00
christos 989f6e4d42 avoid empty if body. 2006-08-30 16:45:40 +00:00
christos a7239032fa Fix initializer 2006-08-30 16:42:04 +00:00
christos 46d616fab0 fix incomplete initializers. 2006-08-30 15:46:58 +00:00
christos 13714b86fb comment out impossible comparison. 2006-08-30 15:27:18 +00:00
christos afca61baba add missing initializers 2006-08-30 02:09:40 +00:00
christos 37fbc95466 add missing initializer 2006-08-30 01:27:56 +00:00
christos 0340a0cbcd fix incomplete initializer 2006-08-30 01:24:40 +00:00
christos cdda2124d1 Fix incomplete declaration. 2006-08-27 23:33:35 +00:00
christos 35ca6c8b5b Fix all the -D*DEBUG* code that it was rotting away and did not even compile.
Mostly from Arnaud Lacombe, many thanks!
2006-08-17 17:11:27 +00:00
gdamore 34537908ab Add an option COM_REGMAP to allow com(4) to use an array of register indices.
This allows us to convert aucom to just another com attachment, and cleanup
some code in the com_arbus.c.

Additionally, we use a common com_cleanup routine rather than having a
zillion copies of it in the attachment points.

This has been tested on a number architectures, and it has been shown to get
close to comparable performance when COM_REGMAP is defined, and comparable
when it is not defined.

Approved by core@.  Fixes PR port-evbmips/32362.
2006-07-13 22:56:00 +00:00
christos 1a9d8ea2c7 Fix use the proper ioh. 2006-07-08 18:19:01 +00:00
chap 710af63468 Ankh-Morpork, we have a MIDI driver....
Merge from chap-midi branch, after
~month for review
Comments by thorpej@ drochner@ and Alexandre Ratchov

Incorporated: points by thorpej@ drochner@; preliminary support for
a stats-collecting ioctl suggested by martin@ from comments by A.R.

PR kern/32441 kern/32442 kern/32567 kern/32588 kern/32694 kern/33590
kern/33614 and one instance of kern/32651

ok martin@
2006-06-30 13:56:25 +00:00
chap 2c3d85cc29 Not related to chap-midi branch; corrects two compilation errors induced
by a stack-police commit to the HEAD.  (Is this why so many comments about
catching up with -current say "here we go again"?)
2006-06-18 23:15:33 +00:00
xtraeme c731b8e426 * Improve description for all sensors.
* Fix some voltage values.
* Do not print rfact+data values for sensors without any returned data.
2006-06-11 18:15:17 +00:00
christos 7b128daa3b stack police: Introduce an opl_match function that uses malloc instead of
allocating ~2K of softc on the stack.
2006-06-09 21:55:33 +00:00
xtraeme 5ff5dfea17 Adapt to timecounters. 2006-06-08 05:00:25 +00:00
xtraeme 045e0f2d3d it_check(): check values from IT_RES48 and IT_RES52, if both are default
values specified by the chip, continue attaching the driver (previously
only checking IT_RES48 was enough and IT_RES52 was ignored).
2006-06-05 15:59:47 +00:00
elad 2867b68bc3 integrate kauth. 2006-05-14 21:42:26 +00:00
xtraeme 33a96be9f2 Driver for iTE IT87xxF and compatibles hardware monitor. Add
commented out entries on GENERIC and GENERIC_LAPTOP.

Adapted from OpenBSD.
2006-05-13 09:02:18 +00:00
rpaulo b93659c243 Make wtintr() prototype static too.
In wtsense(), make msg local variable const.
2006-04-26 17:21:30 +00:00
rpaulo accfad23f5 Put back sys/proc.h for wakeup/tsleep.
Fix more typos.
2006-04-26 17:19:50 +00:00
rpaulo 9f28da272d Make 3rd argument of wtwait() const. 2006-04-26 17:18:41 +00:00
rpaulo be1f3d0d34 Fix an obvious typo. 2006-04-26 17:17:03 +00:00
rpaulo 1595c18c6b ktrace-lwp merge. 2006-04-26 17:15:08 +00:00
rpaulo bf691ec7e3 ANSIfy, statify, KNfy.
(and maybe deadfy some day?)
2006-04-26 17:13:27 +00:00
christos 9df2078720 Make this compile again. 2006-04-23 00:08:50 +00:00
christos 16843a2657 Make this compile again. We really need an ALL kernel. 2006-04-22 23:56:39 +00:00
christos 407368a46e Coverity CID 2453: Add negative checks. 2006-04-14 22:52:00 +00:00
christos d9cf854027 On second thought, the whole statement is wrong. 2006-04-14 21:53:40 +00:00
christos 69283d75e0 Coverity CID 723: Fix bogus test. 2006-04-14 21:51:35 +00:00
christos db694f7eca Coverity CID 1104: Return early if no mbuf. 2006-04-14 21:49:08 +00:00
christos bb2402826a Coverity CID 1540: Avoid array overrun 2006-04-14 19:56:40 +00:00
blymn 3c0adb7d99 Make i/o statistics collection more generic, include tape drives and
nfs mounts in the set of devices that statistics will be reported on.
2006-04-14 13:09:05 +00:00
christos d7e1743903 PR/29683: Sergey Svishchev: Make this compile again.. 2006-04-13 23:16:33 +00:00
cube b08283e19d Fix grammar in a comment, and use named constants for better readability. 2006-04-13 09:47:19 +00:00
christos dd8ade94a0 Coverity CID 1320: Don't try to use drq16 as an index in an array if it is -1 2006-04-13 03:45:44 +00:00
christos afbea8995b Fix the MPU attachment on Aztech 1020 that has a separate mpu pnp device
instead of having the mpu in io[1]. From doomwarriorx at gmail dot com.
2006-04-13 00:30:19 +00:00
jmmv 7a51d4dddc Add an extra cookie to the ioctl and mmap wsdisplay accessops that points
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@.
2006-04-12 19:38:22 +00:00
garbled 1de17f11a8 Add an option PCKBCNOTEST and defopt it. On the prep 7043 and 7248
machines, the keyboard controller will not pass this test, but if you
attach anyway, it works fine.  Note that this test is specifically
disabled in ic/pckbc.c, but given that it seems to work fine on other
machines, leave it defaulted to on.
2006-04-11 17:14:44 +00:00
thorpej 2be6494fc9 Use device_cfdata(). 2006-03-29 04:16:44 +00:00
thorpej 39cd836ee1 Use device_unit(). 2006-03-28 17:38:24 +00:00
thorpej 6e53f1366a Use device_parent(). 2006-03-25 23:14:58 +00:00
christos 5a57baa413 don't use MALLOC with a non-constant size; use malloc instead. 2006-03-17 23:29:07 +00:00
lukem a1f606d3fd Use the SI capitalization for "Hz", "kHz", and "MHz" in comments and strings.
Add a space between numbers and Hz unit.
2006-03-08 23:46:22 +00:00
dsl 6f0f9f8763 Make almost everything #include <sys/bswap.h> instead of <machine/bswap.h>
The bswap.h and endian.h files are all rather incestuous, but I want to
get the constant folding stuff into one place - sys/bswap.h
2006-01-29 21:42:40 +00:00
bouyer bf1a4d2af5 properly use ata_channel->ch_ndrive:
- 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.
2006-01-16 20:30:18 +00:00
yamt 7b826aac85 initialize necessary members of struct buf. PR/32462 from Reinoud Zandijk. 2006-01-06 09:21:44 +00:00
yamt 690d424f28 - add simple functions to allocate/free a buffer for i/o.
- make bufpool static.
2006-01-04 10:13:05 +00:00
perry 3d4ed1fbc7 __inline__ -> inline 2005-12-24 23:41:33 +00:00
perry 93124077ae Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete. 2005-12-24 20:27:29 +00:00
christos 95e1ffb156 merge ktrace-lwp. 2005-12-11 12:16:03 +00:00
yamt aec75b1cc6 - change the way to specify a bufq strategy. (by string rather than by number)
- rather than embedding bufq_state in driver softc,
  have a pointer to the former.
- move bufq related functions from kern/subr_disk.c to kern/subr_bufq.c.
- rename method to strategy for consistency.
- move some definitions which don't need to be exposed to the rest of kernel
  from sys/bufq.h to sys/bufq_impl.h.
  (is it better to move it to kern/ or somewhere?)
- fix some obvious breakage in dev/qbus/ts.c.  (not tested)
2005-10-15 17:29:10 +00:00
drochner 69f432c06d -put gpio stuff inside #if NGPIO > 0
-kill gba_name in attach arg, specify interface attribute
2005-10-11 15:58:37 +00:00
jmcneill b8a32e9d53 Attach to gpiobus. From OpenBSD. 2005-09-27 02:56:27 +00:00
drochner 46ed4b50c4 s/locdesc_t/int/g 2005-08-26 12:42:11 +00:00
drochner ea5766898f oops, too much mechanical renaming -- clearly separate searched and
found locators
2005-08-25 20:52:02 +00:00
drochner fa3cb84d62 replace the "locdesc_t" structure carrying the number of locators
explicitely by a plain integer array
the length in now known to all relevant parties, so this avoids
duplication of information, and we can allocate that thing in
drivers without hacks
2005-08-25 18:35:38 +00:00
joff ad50acb4b6 Add toaster, tsdio, toasterlcd devices 2005-08-14 04:15:44 +00:00
joff d4bc23d662 wsdisplay device driver for the 4x40 text-mode LCD on the NetBSD/toaster 2005-08-14 04:15:18 +00:00
joff bb813453e2 Device driver that exposes the burner element, magnetic latch, and front-panel
LEDs of the TS-7200 NetBSD/toaster via sysctl.
2005-08-14 04:14:35 +00:00
joff 43b39c1131 Simple driver for Technologic Systems TS-DIO24 PC104 board. No
userland interface (yet), basically just can detect a TS-DIO24 on a ISA
bus and provide an attachment for sub-devices.

The TS-DIO24 contains 24 programmable digital input/outputs.
2005-08-14 03:50:34 +00:00
christos 2709ce754e Fix compilation with FD_DEBUG. 2005-07-30 14:49:35 +00:00
drochner 83ebaf0ea5 complete attachment if the temperature monotor was successfully awoken,
minor whitespace fixes
2005-07-29 11:25:13 +00:00
drochner 21275bf194 activate the temperature sensors if the device is in standby mode
on attach (as on Soekris boards), from Aaron Hodgen per PR kern/23598
2005-07-29 11:05:27 +00:00
christos d39684a368 make the isdn drivers compile again with -Wconst, -Wshadow 2005-07-09 02:05:09 +00:00
wiz 4082e99219 Update comment. 2005-06-28 10:16:33 +00:00
kent eabe9bbfa4 remove pss(4) driver. It has never been workable and has not been
compilable for a long time.
2005-06-28 08:36:47 +00:00
christos 2ccc3ff1e9 - add const
- avoid variable shadowing.
2005-05-30 04:32:38 +00:00
christos 57fa3798ac sprinkle const. 2005-05-29 22:12:37 +00:00
christos d675f4acb4 avoid nested variables 2005-05-29 22:12:26 +00:00
lukem 5e4045c6bb add __KERNEL_RCSID 2005-05-24 05:14:37 +00:00
christos 7cdea212c0 No 0x in front of %p... 2005-05-22 15:54:45 +00:00
christos 1a54f2152a PR/22058: Onno van der Linden: duplicate detection of isa ip.
Use some more undocumented bits to find out if the card is in pnp mode or not.
2005-05-12 18:53:08 +00:00
jdolecek fc38d3f3ac Make it possible for attachment to specify that the 16bit access shouldn't
be toggled in WE_MEM_{ENABLE|DISABLE} when receiving or transmitting packets.
Use this to switch the toggle off for MCA cards, since it causes NIC resets
there.

Fixes PR kern/26895 by Dave Barnes.
2005-04-03 10:56:59 +00:00
cube d2d1a8c05c Make pcppi(4) use attimer(4) to set the pitch of the bell.
In case you don't configure an attimer(4) device in your kernel config,
you will simply lose the ability to set the pitch.  It will still beep.
2005-03-25 23:09:00 +00:00
cube 040e3b19e5 Add attimer(4) driver, with ISA and ACPI attachments.
attimer(4) is the new body of the part of pcppi(4) that mapped the TIMER1
register to set the pitch of the bell.  It was necessary to separate them
in order to have a working ACPI attachment (as the two appear as different
devices in the ACPI structures).
2005-03-25 23:06:19 +00:00
xtraeme 3141856faf This needs <machine/bus.h> now. 2005-03-21 18:27:32 +00:00
xtraeme d1c67e4716 This needs <machine/bus.h>, needed for ACPI pcppi(4) attachment. 2005-03-21 17:16:10 +00:00
xtraeme 65f27995a2 Move the struct pcppi_softc into pcppivar.h, add in this file
pcppi_attach(), which now accepts "struct pcppi_softc";
Split ISA specific bits from pcppi_attach() into pcppi_isa_attach()
(needed by the upcoming pcppi(4) ACPI attachment).

Reviewed by christos@.
2005-03-21 14:05:18 +00:00
xtraeme a2dce2fece Use ANSI function declarations. 2005-03-21 10:51:52 +00:00
christos f048688c46 PR/29683: M. B. Buchanan: mcd driver has printf formatting compile issue
and sets the wrong field to the number of ports.
2005-03-12 22:54:48 +00:00
simonb 0467cc278e Add a missing return after an "if" that checks for something then
did nothing.
2005-02-28 05:05:02 +00:00
perry f31bd063e9 nuke trailing whitespace 2005-02-27 00:26:58 +00:00
thorpej df9803ce96 Part 1 of a cleanup pass over the SCSI subsystem. The aim is to name
everything "scsi_*", since we really are talking about the SCSI command
set, ATAPI transport not withstanding.  Improve the names of many structures,
and prepend "SCSI_" onto all SCSI command opcodes.  Place items described
by the SCSI Primary Commands document into scsi_spc.h.
2005-02-21 00:29:06 +00:00
perry 18db93c7f6 de-__P 2005-02-04 02:10:35 +00:00
drochner 12ff682534 Whitespace police. The rest remains crap. 2005-02-01 20:33:58 +00:00
gson 8de9537c69 Update printf format in debug printf to account for sample_rate now
being an unsigned int.
2005-02-01 12:07:58 +00:00
kent c9ec679311 ansify and KNF 2005-01-14 03:41:45 +00:00
kent b85368e36f ansify and KNF 2005-01-13 15:01:27 +00:00
kent d69abf4ca0 - make this compile
- style fixes
2005-01-12 17:43:19 +00:00
kent 23b5d91433 merge kent-audio1 branch, which introduces audio filter pipeline to the MI
audio framework


Summary of changes:

* struct audio_params
  - remove sw_code, factor, factor_denom, hw_sample_rate,
hw_encoding ,hw_precision, and hw_channels.  Conversion information
is conveyed by stream_filter_list_t.
  - change the type of sample_rate: u_long -> u_int
  - add `validbits,' which represents the valid data size in
precision bits.  It is required in order to distinguish 24/32bit
from 24/24bit or 32/32bit.

* audio_hw_if
 - add two parameters to set_params()
	stream_filter_list_t *pfil, stream_filter_list *rfil
   A HW driver should set filter recipes for requested formats
 - constify audio_params parameters of trigger_output() and
trigger_input().  They represent audio formats for the hardware.
 - make open() and close() optional
 - add int (AUMODE_PLAY or AUMODE_RECORD) and audio_params_t parameters
 to round_blocksize()

* sw_code is replaced with stream_filter_t.
  stream_filer_t converts audio data in an input buffer and writes
into another output buffer unlike sw_code, which converts data in
single buffer.
  converters in dev/auconv.c, dev/mulaw.c, dev/aurateconv.c,
dev/tc/bba.c, dev/ic/msm6258.c, and arch/arm/iomd/vidcaudio.c are
reimplemented as stream_filter_t

* MI audio
 - audiosetinfo() builds filter pipelines from stream_filter_list_t
filled by audio_hw_if::set_params()
 - audiosetinfo() returns with EINVAL if mmapped and set_params()
requests filters
 - audio_write(), audio_pint(), and audio_rint() invoke a filter
pipeline.
 - ioctl() for FIONREAD, AUDIO_WSEEK, AUDIO_GETIOFFS,
AUDIO_GETOOFFS, and audio_prinfo::{seek,samples} for
AUDIO_GETINFO handle values for a buffer nearest to userland.

* add `struct device *' parameter to ac97_attach()

* all of audio HW drivers follow audio_hw_if and ac97 changes
2005-01-10 22:01:36 +00:00
tsutsui a9b3f31984 Some cosmetics:
- remove __P()
- use ansi decls
- u_int8_t, u_char -> uint8_t
- use macro for debug printfs
- some KNF
2005-01-09 16:59:41 +00:00
joff 8d1a86c97d add tscs 2005-01-08 02:56:35 +00:00
joff 4b903bb725 Support for TS-ETH10 PC/104 enet isa card based on CS8900 2005-01-08 02:55:52 +00:00
abs 964859d895 Fix comments regarding configration bounaries 2004-12-12 21:03:06 +00:00
thorpej d41e8f00bf Don't use "struct scsi_generic" in a hardware-defined structure. Instead,
use an array of 12 bytes.  Check the incoming CDB to see that it will fit,
and print and error and fail the command if it won't.
2004-12-07 14:50:56 +00:00
xtraeme 347378fc9f Add ACPI mpu(4) attachment, based on lpt_acpi.c by jmcneill@,
reviewed by christos@, cube@ and martin@.

While here, remove a printf() in mpu_attach() (ic/mpu.c) to remove
an empty line in some frontends (mpu_isa.c, etc).
2004-12-02 09:50:41 +00:00
thorpej 711247fa68 When adding/deleting multicast addresses, only whack the address
filter if the interface is marked RUNNING.

Fixes kern/27678.
2004-10-30 23:33:29 +00:00
yamt 18f717bb90 constify audio_hw_if, midi_hw_if, and radio_hw_if. 2004-10-29 12:57:15 +00:00
yamt 05f25dcc2a move buffer queue related stuffs from buf.h to their own header, bufq.h. 2004-10-28 07:07:35 +00:00
yamt 22399b45d0 change some members of struct buf from long to int.
ride on 2.0H.
2004-09-18 16:40:11 +00:00
drochner 1308c6d767 Separate the namespace for default (ie unspecified) locators used
by the isa.c bus driver and the "address/whatever not specified"
argument passed to leaf device drivers.
The former is "ISACF_XXX_DEFAULT" as generaterd by config(8), the latter
"ISA_UNKNOWN_XXX", defined in isavar.h.
This way we save a dependency of every ISA device driver on "locators.h".
2004-09-14 20:20:46 +00:00
drochner edb77e2a6d include "locators.h" explicitely where it is needed, so that
it can be removed in the isavar.h header eventually
2004-09-14 17:38:30 +00:00
drochner 863cb326e8 replace 7 identical instances if cfprint functions by a single one 2004-09-14 17:19:34 +00:00
drochner 46289e1fef Phase out the use of a string as first "attach args" member to control
which bustype should be attached with a specific call to config_found()
(from a "mainbus" or a bus bridge).
Do it for isa/eisa/mca and pci/agp for now. These buses all attach to
an mi interface attribute "isabus", "eisabus" etc., and the autoconf
framework now allows to specify an interface attribute on config_found()
and config_search(), which limits the search of matching config data
to these which attach to that specific attribute.
So we basically have to call config_found_ia(..., "foobus", ...) where
such a bus is attached.
As a consequence, where a "mainbus" or alike also attaches other
devices (eg CPUs) which do not attach to a specific attribute yet,
we need at least pass an attribute name (different from "foobus") so
that the foo bus is not found at these places. This made some minor
changes necessary which are not obviously related to the mentioned buses.
2004-08-30 15:05:15 +00:00
drochner 5fa053333d add centralized {eisa,isa,pci,agp,mca}busprint() functions which do
what tens of the bus' parents foo{...}bridge_print()s scattered around do
2004-08-30 10:30:38 +00:00
thorpej 9cc521a148 Move most of wdc_softc into a new atac_softc structure that contains
info common to all types of ATA controllers.
2004-08-20 06:39:37 +00:00
thorpej 2926431abf Use ANSI function decls and "static". 2004-08-19 23:30:09 +00:00
drochner a758a2aba6 allow to detach child devices and (optional selectively) bus rescans,
using the new autoconf functions
2004-08-18 11:54:47 +00:00
mycroft 48de8a7bff wdc_init_shadow_regs() must now be called after ch_wdc is filled in, or we get
a null pointer dereference.
2004-08-16 14:47:31 +00:00
thorpej 4b51cecfc2 - Split the register handles out of struct wdc_channel into a separate
wdc_regs structure, and array of which (indexed per channel) is pointed
  to by struct wdc_softc.
- Move the resulting wdc_channel structure to atavar.h and rename it to
  ata_channel.  Rename the corresponding flags.
- Add a "ch_ndrive" member to struct ata_channel, which indicates the
  maximum number of drives that can be present on the channel.  For now,
  this is always 2.  Add an ATA_MAXDRIVES constant that places an upper
  limit on this value, also currently 2.
2004-08-14 15:08:04 +00:00
mycroft a1d101ba64 Add a settype function.
Nuke address windows earlier in power up sequence.
2004-08-11 06:56:57 +00:00
mycroft a23e15bcbe Rather than having a call up from the low-level driver to get the card type,
instead have a call down from the PCMCIA mid-layer to set it.  Use this from
pcmcia_function_enable().  (Currently the policy is the same, but this would
allow for more flexibility in deciding which mode to use.)

Now it is safe to hold the socket enabled during attach, so do that.  Only
one enable/disable cycle to attach a card now!
2004-08-11 00:18:18 +00:00
mycroft 665e1f0611 Attempt to support the 688 as well. It looks vaguely right from inspecting
esl.
2004-08-07 19:32:56 +00:00
mycroft 2863ff72cc Add code to recognize the 1688, per PR 11910. Also reduce some control logic. 2004-08-06 15:11:48 +00:00
drochner f024db680d simplify some pointer arithmetics which uses typecasts on the LHS
so that gcc-3.4 doesn't complain
2004-08-05 16:43:59 +00:00
drochner 955c2f909d This is definitely what the world has been waiting for:-)
Allow to enable the game port on an ES1888, in case the firmware didn't
this. (Otherwise we still rely on the firmware having mapped the sound
related registers.)
Limit this to the "isa" attachment for now because this is the only
one I'm able to test.
Attach the "joy" device directly at "ess" to make sure the port is
enabled before the "joy" probe/attach.
This makes the joystick port usable on a "PWS" alpha (Miata).
2004-08-04 18:53:55 +00:00
mycroft 3ad7358df5 Forgot to commit this. 2004-07-09 03:39:14 +00:00
mycroft 4fe77ba8c0 Free the DMA channels as the last step. 2004-07-09 03:15:01 +00:00
mycroft 2728fe0f3f Clean up. Attempt to make these safer against stray interrupts. 2004-07-09 02:42:45 +00:00
mycroft fefce7ce70 Clean up a little. 2004-07-09 02:27:20 +00:00
mycroft 91eed7f9b9 Remove junk code. 2004-07-09 02:15:37 +00:00
mycroft 393cfb61f9 Don't halt in the close routine.
Don't reset in the open routine -- this causes our mute settings to get
toasted.
2004-07-09 02:14:40 +00:00
mycroft a9eb0d78df There's no need to halt in the close routine -- just clean up the ISA resources. 2004-07-09 02:11:17 +00:00
mycroft aa1018e714 Allow a board with no memory window configured to be attach. Fixes PR 20436. 2004-07-08 21:01:49 +00:00
mycroft 77c587044f Only attempt to map the memory window during attach, not match. If msize==0,
print a message and punt.  Fixes PR 6167 (from me!).
2004-07-03 21:29:08 +00:00
drochner 43a7f7432b fic some questionable pointer arithmetics; gcc-3.4.x
didn't like it
2004-06-24 16:56:00 +00:00
thorpej 6c0c39322a Wrap a noisy probe message in FD_DEBUG. 2004-06-04 01:12:04 +00:00
thorpej 2ecdd552dc Add the notion of "shadow registers" to the wdc driver. These shadow
registers are registers that overlap with others on many controllers, but
which may actually be distinct on some controllers.  Right now, the two
shadows are:

- wd_status (usually overlaps wd_command)
- wd_features (usually overlaps wd_error)

Add a new helper function, wdc_init_shadow_regs(), used to initialize
the shadow register handles on controllers where they do actually overlap.

Partially from Jordan Rhody @ Wasabi Systems, Inc.
2004-05-25 20:42:40 +00:00
wiz 8989ce5fa0 Fix typo in comment; from Sergey Svishchev. 2004-05-11 22:45:09 +00:00
itojun aca4c091d3 sprintf -> snprintf 2004-04-22 00:17:10 +00:00
drochner ef369e0ed6 remove license clauses 3 and 4 from my cpoyright notices 2004-03-24 17:26:53 +00:00
bjh21 dff5222d3a Abstract the interface between pckbc(4), and the pckbd(4) and pms(4)
drivers that attach to it.  This allows for other host interface chips
that use the same keyboards and mice, such as the ones in the ARM
IOMD20, ARM7500, and SA-1111.  The PC-compatible driver is still
called pckbc(4), and the new abstraction layer is "pckbport", so the
child devices have moved from sys/dev/pckbc to sys/dev/pckbport, which
also contains some code shared between all host controllers.  To avoid
incompatibility, pckbdreg.h is still installed in
/usr/include/dev/pckbc.

In theory, this shouldn't cause any behavioural changes in the drivers
concerned.  Thy just use rather more function pointers than before.  Tested
on i386 and (with a new host driver) acorn32.  Compiled on several other
affected architectures.
2004-03-13 17:31:33 +00:00
wiz 85746c6759 Spell interrupt with two rs. From Peter Postma. 2004-02-24 15:16:04 +00:00
wiz f5b32c1e69 RealTek -> Realtek. 2004-02-13 10:00:54 +00:00
jdolecek 5ecaa7ecee add dependency on isadma for atppc attachments
add atppc_isadma.c for atppc@isapnp and atppc@ofisa, too
2004-01-31 13:59:20 +00:00
jdolecek ccbfffb38b copyright notice as in netbsd-ppbus 1.4 (this files is based
on atppc_isa_subr.h which has this copyright notice in v1.4)
2004-01-28 19:37:30 +00:00
drochner d1506371f5 -unmap port range after probe, so that the attach function has
a chance to map it again
-minor cleanup
2004-01-28 13:51:16 +00:00
jdolecek 907186d1bb reorganize the ISA DMA setup/use code so that it could be shared
with ACPI and PNPBIOS attachments; move it to new atppc_isadma.[ch]
and g/c previous atppc_isa_subr.[ch]

move attppc_isa_softc struct definition to atppc_isa.c, and reorganize
the attachment somewhat for better readability; also g/c detach support code
2004-01-25 11:35:46 +00:00
bjh21 1c34707a4c Remove dollar signs from foreign RCSIDs per doc/3RDPARTY.
Add __KERNEL_RCSID() to .c files.
2004-01-25 00:28:01 +00:00
bjh21 f782033436 Add RCSID comments. 2004-01-21 00:33:37 +00:00
jdolecek b5b875ef06 cleanup old lpt(4) attachment, and glue ppbus in so that they can coexist:
* lpt device is defined in MI place (dev/ppbus/files.ppbus), dev/ic/lpt.c
  is included there too; dev/ic/lpt.c is not included if ppbus is
  configured or if there is alternative platform lpt (like for pc532)
* g/c MD lpt definitions and custom puc/upc attachments,
  glue moved to conf/files and dev/pci/files.pci respectively; remove
  device lpt definition from dev/isa/files.isa
* add ppbus parport attribute, atppc device attachments, adjust plip and lpt
  glue
2004-01-20 19:58:01 +00:00
jdolecek e23cd1a78a Import Gary Thorpe's netbsd-ppbus 1.3. This is NetBSD port
of FreeBSD Parallel Port Bus framework. Work in progress.
2004-01-19 23:22:23 +00:00
thorpej a963286f8d More wdc_channel structure member namespace cleanup:
- channel -> ch_channel
- wdc -> ch_wdc
2004-01-03 22:56:52 +00:00
thorpej 5bd80d8373 Rename "struct channel_softc" to "struct wdc_channel". 2004-01-03 01:50:52 +00:00
thorpej 527c829fa0 Rename:
- wdc_xfer to ata_xfer
- channel_queue to ata_queue
and move them to <dev/ata/atavar.h> so they can be used by non-wdc ATA
controllers.  Clean up the member names of these structures while at it.
2004-01-01 17:18:53 +00:00
keihan b8702f530b netbsd.org -> NetBSD.org
This was the last commit of this kind to src/sys, which is now totally
"NetBSD.org clean".  Thanks for the patiance, and sorry for all the commits.
2003-12-04 13:57:30 +00:00
keihan 8476e6755a NetBSD.ORG -> NetBSD.org
Now all "NetBSD.ORG" are gone from src/sys.
2003-12-04 12:42:54 +00:00
fvdl 6242a54566 There are some cards that map the ATA control and IDE DMA registers
in a different fashion. Individually, they have the same functionality,
but their layout is different. An example of such a chipset is
the Promise 203xx.

To be able to deal with this, transform the cmd and dma bus_space handles
into an array of handles, each seperately created with bus_space_subregion.
The code generated by using the extra indirection shouldn't change much,
since the extra indirection is negated by having the offset calculation
already done in bus_space_subregion. E.g.

	bus_space_write_4(tag, handle, offset, value)

becomes

	bus_space_write_4(tag, handles[offset], 0, value)

Reviewed by Manuel Bouyer. Tested on wdc_isa, wdc_pcmcia, viaide, piixide (i386)
and on cmdide (sparc64).
2003-11-27 23:02:40 +00:00
gson 19871d69f2 Code enabled by option AUDIO_DEBUG exhibited undefined behavior and
caused compiler warnings with gcc 3.3.2.
2003-11-21 03:08:37 +00:00
mycroft 552d27479a Replace home-grown locks with lockmgr(). 2003-11-07 04:10:56 +00:00
simonb b6abb6ab1d Remove some assigned-to but otherwise unused variables. 2003-10-30 01:58:17 +00:00
mycroft 9e80bdd1f0 Recode the probe slightly to remove a bogus initializer.
Also, don't do the rest of the probe work if the product ID mismatches, since
we'll return 0 anyway.
2003-10-29 01:10:12 +00:00
chs b3a3d69b22 uninitialized variables. 2003-10-27 07:14:25 +00:00
christos 8bfd5e3292 Fix uninitialized variable warnings 2003-10-25 18:34:14 +00:00
bouyer 99d6009c2a Make the ATA mid-layer appears as atabus, as proposed in
http://mail-index.netbsd.org/tech-kern/2003/09/25/0006.html
This adds a device (atabus) between IDE controllers and wd or atapibus, to
have each ATA channel show up in the device tree. Later there will be atabus
devices in /dev, so that we can do IOCTL on them.
Each atabus has its own kernel thread, to handle operations that needs polling,
e.g. reset and others.

Device probing on each bus it defered to the atabus thread creation.
This allows to do the reset and basic device probes in parallel, which reduce
boot time on systems with several pciide controllers.
2003-10-08 10:58:12 +00:00
pooka dae7af8b24 Ready the kernel side of i4b for primary rate interface support by
removing assumptions that there are only two B channels and by
adding support for a varying number of channels.

Due to this, rename previously used isdn identified "bri" to "isdnif",
which better describes the current situation.
2003-10-03 16:38:44 +00:00
jdolecek c82b56d651 constify a little 2003-09-29 03:22:58 +00:00
mycroft c82b47f9bc Fix a non-fatal race condition. 2003-09-27 15:56:03 +00:00
mycroft eefae40298 Hide the use of config_interrupts() in one place. 2003-09-25 19:29:48 +00:00
mycroft 864b96269c Modify the fdcattach() interface again, splitting it into two parts, so that
DRQ allocation is done earlier.
2003-09-25 19:06:19 +00:00
mycroft 516d857707 Do fd probing after interrupts are enabled, and use tsleep() for delays.
Also try to accept a recalibrate interrupt to terminate the delay -- but that
doesn't seem to work reliably, so do a 2s timeout as well.
2003-09-25 01:05:06 +00:00
mycroft df8e298ddb Small changes -- if your controller clears DRV_BUSY when recalibrate completes,
you get lucky and the probe is faster.  A more complete fix will require making
the probe use interrupts, since there is no reliable way to poll.
2003-09-23 21:36:07 +00:00
mycroft f9d629fb93 Fix more probe delay and/or failure problems:
1) Don't wait for DRQ on an IDENTIFY command -- if it's not set when we see
   BSY clear, abort the command and ignore the drive.  (Do this by testing
   for DRQ in the read/write cases in __wdccommand_intr().)
2) Don't wait for DRQ to deassert when we finish an IDENTIFY (or any other
   non-block command that reads data) -- we don't do this for block I/O, and
   empirically it doesn't clear on my CF cards at all, causing a pointless 1s
   delay.
3) Add comments to some of the delay()s, and add missing ones in wdcreset()
   and the WDCC_RECAL in the so-called "pre-ATA" probe.
4) Slightly simplify the reset sequence -- we were doing an extra I/O.
5) Modify the register writability test to make sure that registers are not
   overlapped -- this can happen in some weird cases with a missing device 1.
6) Check the error register value after the reset -- if it's not 01h or 81h,
   as appropriate (see ATA spec), punt.
Tested with a number of ATA-only, ATAPI-only, mixed ATA-ATAPI, CF, and IDE
disk configurations.

Also remove the SINGLE_DRIVE nonsense again.
2003-09-23 09:19:22 +00:00
bouyer c6beeca692 Since we can't detect ghost drives in the wdc back-end, resurect
WDC_CAPABILITY_SINGLE_DRIVE.
2003-09-21 11:14:00 +00:00
mycroft d40837608f 1) Use config_interrupts() to attach IDE and ATAPI drives. This eliminates
most polling.
2) Clean up some goofiness in pciide -- get rid of the whole "candisable" path
   (it's gratuitous) and simplify the code by calling pciide_map_compat_intr(),
   *_set_modes() and wdc_print_modes() from central locations.
3) Add a register writability and register ghost test to eliminate phantom
   drives more quickly.
2003-09-19 21:35:56 +00:00
mycroft a9e1f75ec7 Several changes to eliminate bogus controllers and sockets from being found:
PCIC_VENDOR_NONE: New.
PCIC_VENDOR_CIRRUS_*: Collapse the 2 chips into one vendor ID.

pcic_ident_ok(): Check the ID revision field -- if it's 0, punt.

pcic_vendor(): Check the ID revision field -- if it's 0, or the ID register
is all-1s, assume there is no chip present.  (Previously this would return
"Unknown controller" -- which, AFAICT, *never* resulted in a working device.)
Do the Cirrus check only after verifying that we got the Intel ID.

pcic_attach(): Use a priori knowledge of the Cirrus chips to determine the
number of sockets rather than trying (unsuccessfully) to probe.  Also, just
blast all of PCIC_INTR -- we do this in pcic_deactivate_card() anyway.
2003-09-05 01:02:51 +00:00
mycroft 55ff1b2294 If the frontend passes in sc->irq=0, set PCIC_INTR_ENABLE. Also, don't clear
that bit all over the bloody place
2003-09-02 22:44:08 +00:00
agc aad01611e7 Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22364, verified by myself.
2003-08-07 16:26:28 +00:00
christos be02f6d68d avoid the pruned type gcc-3.x warning. 2003-08-04 00:26:09 +00:00
lukem 365cbd9428 add missing __KERNEL_RCSID() 2003-07-14 15:47:00 +00:00
itojun 7f6ed16ef4 function prototype must not have variable name 2003-07-08 10:06:28 +00:00
fvdl d5aece61d6 Back out the lwp/ktrace changes. They contained a lot of colateral damage,
and need to be examined and discussed more.
2003-06-29 22:28:00 +00:00
darrenr 960df3c8d1 Pass lwp pointers throughtout the kernel, as required, so that the lwpid can
be inserted into ktrace records.  The general change has been to replace
"struct proc *" with "struct lwp *" in various function prototypes, pass
the lwp through and use l_proc to get the process pointer when needed.

Bump the kernel rev up to 1.6V
2003-06-28 14:20:43 +00:00
drochner 0256604827 nuke unnecessary #include <sys/dkstat.h> 2003-06-12 14:44:36 +00:00
gmcgarry 9d6ae676dd Driver for GPIB controllers boards based on the uPD7210 GPIB controller,
including boards made by Captial Equipment Corp.
2003-06-02 03:57:15 +00:00
wiz 41ebad8a42 create, not craete. 2003-05-14 12:43:26 +00:00
thorpej e43fecb228 Change bounds_check_with_label() to take a pointer to the disk structure,
rather than the label itself.  This paves the way for some future changes.
2003-05-10 23:12:28 +00:00
fvdl d88cf589cb A few ISA sound drivers like to share dma channels, and hence deferred
isa_dmamap_create() calls to their open/close entrypoints. This worked
with some luck, but broke on i386 when _bus_dmamap_create started
to allocate bounce buffers upfront, since memory below 16M may well
not be available when the sound devices is opened for the Nth time.

To fix this, create a new simple interface, isa_drq_alloc/isa_drq_free,
wrappers around already existing bitmask macros. These are expected
to be used before an isa_dmamap_create call, and after an
isa_dmamap_destroy call, respectively. For the sb and ad1848 drivers,
they're deferred until open/close.

All isa_dmamap_create calls can now use BUS_DMA_ALLOCNOW and be done
at attach time.
2003-05-09 23:51:25 +00:00
fvdl 6bd0c9f44d Move definition of ISA_DMA_BOUNCE_THRESHOLD to dev/isa/isareg.h. 2003-05-05 12:55:41 +00:00
wiz 1ffa7b76c4 DMA, not dma nor Dma. 2003-05-03 18:10:37 +00:00
christos 4a2f0334d4 PR/6362: der Mouse: /dev/speaker octave-tracking goes out of range 2003-04-20 22:02:46 +00:00
wiz 68caa698b2 Respect the law: Use A-law and mu-law as spellings as far as easily possible.
Inspired by Igor Sobrado in PR 19680.
2003-04-06 18:20:07 +00:00
christos 7aec408c5a avoid stupid printfs during probe 2003-04-03 15:36:31 +00:00
christos 773ff89c7e avoid stupid printfs during probe when debugging is on. 2003-04-03 15:35:41 +00:00
matt 0d90a1db08 No reason to malloc channel_queue, put it in the softc instead. Clean up
a few other things while here.
2003-03-22 19:57:14 +00:00
mycroft 2198701c01 The DMA support here never worked, so yank it out. 2003-03-03 22:07:21 +00:00
leo 24f5eee0e7 Make this work as fdisa again on the Atari/Milan. 2003-02-26 20:48:48 +00:00
thorpej 3ea6b8be93 Add missing splbio() protecting of bufpool access. Add a clarifying
comment to <sys/buf.h> reminding everyone of the need for splbio().
2003-02-25 21:25:40 +00:00
thorpej eb14e86676 Add a new BUF_INIT() macro which initializes b_dep and b_interlock, and
use it.  This fixes a few places where either b_dep or b_interlock were
not properly initialized.
2003-02-25 20:35:31 +00:00
simonb e40197c4b3 Remove assigned-to but not used variable. 2003-02-23 04:10:11 +00:00
pk 23c6c463a9 Remove unused variable. 2003-02-05 22:14:01 +00:00
pk 338f31f581 Make the buffer cache code MP-safe. 2003-02-05 21:38:38 +00:00
wiz cd68fb44fb guarantee, not guarentee. Idea from miod@openbsd. 2003-02-02 10:24:38 +00:00
thorpej b193480908 Add extensible malloc types, adapted from FreeBSD. This turns
malloc types into a structure, a pointer to which is passed around,
instead of an int constant.  Allow the limit to be adjusted when the
malloc type is defined, or with a function call, as suggested by
Jonathan Stone.
2003-02-01 06:23:35 +00:00
kleink bbb601497d Fix further printf format warnings for DEBUG, in the wake of daddr_t
having changed.
2003-01-25 23:18:46 +00:00
tron 5067836b9e Use PRId64 instead of hard coding "%lld" to fix build problems under
LP64 ports.
2003-01-25 18:12:31 +00:00
tron 63dda858c6 Fix printf() format strings problems caused by "daddr_t" change. 2003-01-25 12:50:38 +00:00
simonb 276fd1665c The Double-Semi-Colon Police. 2003-01-20 05:29:53 +00:00
bouyer 93ac594a91 Add a #error message asking to fix frame padding (this driver doesn't
compile anyway).
2003-01-15 22:38:59 +00:00
bouyer bcae687139 Zero out the NIC memory when padding packet to ETHER_MIN_LEN-ETHER_CRC_LEN
sc->write_mbuf now return len of buffer, including padding.
Tested with a PCI ne2000.
2003-01-15 22:20:03 +00:00
bouyer ba7f2ad41b Zero out the NIC memory when padding packet to ETHER_MIN_LEN-ETHER_CRC_LEN 2003-01-15 22:00:43 +00:00
jmcneill 5df8dc3180 Support for 'plug and play' of floppy drives, to be used soon by the
ACPI fdc attachment. Reviewed by fvdl.
2003-01-08 23:51:11 +00:00
wiz 7e681f7063 interrupt with two rs. 2003-01-06 13:04:54 +00:00
thorpej 703e7687a9 Use aprint_normal() in cfprint routines. 2003-01-01 00:16:46 +00:00
thorpej 72a7af27b0 Use aprint_normal() in cfprint routines. 2003-01-01 00:10:15 +00:00
thorpej f09fc7f074 Don't include <i386/isa/icu.h> 2002-12-10 05:05:11 +00:00
ad 59773dea2e Implement the DPT EATA ioctl() interface. 2002-12-07 19:48:30 +00:00
tsutsui 9604e7689d More cleanup of MI mb86960 driver:
- Add support for byte system bus mode. Based on patch in kern/17193 by
  Christian Groessler, with some improvements by me.
- Rename sc_flags in mb86960_softc to sc_stat, rename "type" to sc_flags
  to specify controller quirks and remove enum mb86960_type.
- Pass controller type via new sc_flags in mb86960_softc rather than
  via an mb86960_attach() arg.
- Handle unaligned mbufs properly in mb86960_write_mbufs(). (from ne2000.c)
- Fix a signed/unsigned comparision warning.
- Add definitions of status bits in the RX packed header.
- Change types of some members in mb86960_softc.
2002-11-30 14:15:10 +00:00
christos 514f7047e4 si_ -> sel_ 2002-11-26 18:49:40 +00:00
chs 4153f58dfe move initialization of iobase to before we first use it. 2002-11-17 22:49:56 +00:00
ad 5a728ace12 Changes for SMBus/I2C:
- Move lm_readreg/lm_writereg into the front-ends. Add/use function pointers
  in the softc.
- Add a bank select function pointer to the softc and provide a generic
  version. WinBond chips accessed over serial bus present three addresses,
  two of which are used to access bank 1/2 registers.
- Mark TSENS2/3 sensor data as invalid if the the corresponding bank select
  fails.
2002-11-15 14:55:41 +00:00
kristerw e3355c4796 Removed unused structure. 2002-11-02 10:47:49 +00:00
perry c290830eb1 changed asm()s to __asm()s.
XXX Now, could someone please explain to me why in the love of Bob a
file containing inline x86 assembler is in sys/dev/isa/????
This should be moved, fixed, or nuked from space.
2002-11-02 02:10:56 +00:00
mrg 603098b9b5 implement separate read/write disk statistics:
- disk_unbusy() gets a new parameter to tell the IO direction.
	- struct disk_sysctl gets 4 new members for read/write bytes/transfers.
	when processing hw.diskstats, add the read&write bytes/transfers for
	the old combined stats to attempt to keep backwards compatibility.

unfortunately, due to multiple bugs, this will cause new kernels and old
vmstat/iostat/systat programs to fail.  however, the next time this is
change it will not fail again.

this is just the kernel portion.
2002-11-01 11:31:50 +00:00
jdolecek e0cc03a09b merge kqueue branch into -current
kqueue provides a stateful and efficient event notification framework
currently supported events include socket, file, directory, fifo,
pipe, tty and device changes, and monitoring of processes and signals

kqueue is supported by all writable filesystems in NetBSD tree
(with exception of Coda) and all device drivers supporting poll(2)

based on work done by Jonathan Lemon for FreeBSD
initial NetBSD port done by Luke Mewburn and Jason Thorpe
2002-10-23 09:10:23 +00:00
drochner d17faedcd0 -fix script botch from CFATTACH_DECL introduction
-while here, spotted probe error: we shouldn't try other locations if the
 base address is nailed down per locator
2002-10-22 16:18:26 +00:00
martin a5e0b21547 Make it compile again (the softc struct is named inconsistently,
so Jasons script did break this, but thats a bigger fish to fry than I'm
willing to handle now.)
2002-10-20 10:50:01 +00:00
fvdl 6dc742c240 Don't include <i386/isa/icu.h> 2002-10-11 19:14:06 +00:00
tsutsui 071330b986 Slightly modify attach messages. 2002-10-05 17:52:31 +00:00
tsutsui 200406b07a Overhaul of fmv(4) driver:
- Split if_fmv.c into MI/MD part and add ISA-PnP attachment for FMV-183.
  (XXX FMV-184 is not tested. It would require extra media-select functions..)
- Fix probe functions of fmv_isa so that FMV-181A/182A will also match.
  Fixes port-i386/9476.
2002-10-05 15:16:10 +00:00
tsutsui 510762487a Allied-Telesyn AT-1700xT and Allied-Telesis RE200x are actually identical,
so show both names in attachment. (From FreeBSD's if_fe_isa.c)
2002-10-04 21:19:34 +00:00
tsutsui fdedb8dbd6 - Merge dev/ic/ate_subr.c into dev/ic/mb86960.c since it only has EEPROM
read function which can also be used for other MB86965 based boards.
- Rewrite EEPROM read function as per 93C06 EEPROM datasheet.
- Misc cleanup.
2002-10-04 15:22:27 +00:00
soren fc9a318a07 Avoid noise on kbd-less machines. 2002-10-04 03:40:29 +00:00
itojun 30f6bff0ac copyright clarification, from openbsd 2002-10-02 06:51:59 +00:00
thorpej 60530be43c Fix sizeof and whitespace bug from the script I'm using to do the
CFATTACH_DECL conversion.  (Grumble.)
2002-10-02 03:10:45 +00:00
thorpej 66db35f9ab Use CFATTACH_DECL(). 2002-10-02 02:14:45 +00:00
thorpej 0dac35b547 Use CFATTACH_DECL(). 2002-10-02 02:00:07 +00:00
tsutsui c90eeb8f06 Call mb86960_attach() with MB86960_TYPE_86965 since
all FMV-18x have MB86964 or MB86965A, not MB86960,
2002-09-29 17:15:59 +00:00
tsutsui a5638d54a0 Remove unused code in #if NetBSD <= 199712 part. 2002-09-28 18:55:19 +00:00
tsutsui a05eb615fe Rename if_fereg.h -> if_fmvreg.h since now it has only
FMV-18x specific definitions.
2002-09-28 18:43:08 +00:00
tsutsui 065fc336c2 Move AT1700/RE2000 EEPROM definitions from isa/if_fereg.h to ic/ate_subr.h.
XXX Maybe all stuff in ate_subr.* should be merged into ic/mb86960*.[ch].
2002-09-28 18:19:08 +00:00
tsutsui d73bf82699 Remove unused FE_VERSION and FE_REG_VERSION. 2002-09-28 17:22:49 +00:00
tsutsui 43367243b6 Remove unused code in #if NetBSD <= 199712 part. 2002-09-28 17:18:28 +00:00
tsutsui a531ef1f17 Remove MBH10302 register definitions, which is also defined
in dev/ic/mb86960reg.h.
2002-09-28 17:09:20 +00:00
thorpej f818766afe Declare all cfattach structures const. 2002-09-27 20:31:45 +00:00
provos 0f09ed48a5 remove trailing \n in panic(). approved perry. 2002-09-27 15:35:29 +00:00
thorpej 6c88de3b53 Introduce a new routine, config_match(), which invokes the
cfattach->ca_match function in behalf of the caller.  Use it
rather than invoking cfattach->ca_match directly.
2002-09-27 03:17:40 +00:00
thorpej d1ad2ac4f2 Rather than referencing the cfdriver directly in the cfdata entries,
instead use a string naming the driver.  The cfdriver is then looked
up in a list which is built at run-time.
2002-09-27 02:24:06 +00:00
thorpej b00903c834 Fix signed/unsigned comparison warnings from gcc 3.3. 2002-09-11 07:22:19 +00:00
gehenna 77a6b82b27 Merge the gehenna-devsw branch into the trunk.
This merge changes the device switch tables from static array to
dynamically generated by config(8).

- All device switches is defined as a constant structure in device drivers.

- The new grammer ``device-major'' is introduced to ``files''.

	device-major <prefix> char <num> [block <num>] [<rules>]

- All device major numbers must be listed up in port dependent majors.<arch>
  by using this grammer.

- Added the new naming convention.
  The name of the device switch must be <prefix>_[bc]devsw for auto-generation
  of device switch tables.

- The backward compatibility of loading block/character device
  switch by LKM framework is broken. This is necessary to convert
  from block/character device major to device name in runtime and vice versa.

- The restriction to assign device major by LKM is completely removed.
  We don't need to reserve LKM entries for dynamic loading of device switch.

- In compile time, device major numbers list is packed into the kernel and
  the LKM framework will refer it to assign device major number dynamically.
2002-09-06 13:18:43 +00:00
augustss 2f5aeb92d3 Use a different way to recognize tea5759 chips. From OpenBSD. 2002-09-03 18:53:40 +00:00
isaki dd0e0396bc Add driver for ScanLogic SL811HS/T USB Host Controller.
XXX It's experimental code yet.

For x68k: USB part of Nereid USB/Ethernet/memory board
For ISA:  ISA USB Host board from Morphy planning
2002-08-11 13:17:52 +00:00
hannken f8908aa291 Convert to new device buffer queue interface. 2002-07-24 19:34:57 +00:00
drochner db2036e03e adda driver to read the temerature sensors on a NSC PC87366 Super IO chip
(the chip provides voltage / fan rpm control too, but we don't care yet)
2002-07-17 21:10:29 +00:00
junyoung b9f82fe6d3 ANSIfy. 2002-07-09 06:55:09 +00:00
junyoung 64a231036c Remove __P. 2002-07-07 07:05:40 +00:00
junyoung 472e54071a Rename vc_ccol and vc_crow in struct pcdisplayscreen to cursorcol
and cursorrow, respectively, to be consistent with other members
in the structure.
2002-07-07 06:36:32 +00:00
junyoung 3d826105dc alloc_attr -> allocattr
Approved by Matthias Drochner.
2002-07-04 14:37:10 +00:00
rafal 4a563f551c Allow this work work without a DRQ for PCNet parts mapped into ISA space
but which are connected to a local bus and do their own bus-mastering.
This has to be turned on via `flags 1' on the nele? device specification.
Gets one of my boxes working again with -current again.
2002-06-29 05:30:44 +00:00
rafal fc0c4eac18 Pass bus_space_map() an address then a size, rather than size twice, so this
has a hope of working.
2002-06-29 05:20:15 +00:00
drochner 9b3975fd12 clean up font handling:
-treat the builtin font like any other font at runtime
-for that, copy it to malloc()'d memory during attach()
-in early console initialization, if we have to consider a broken card
 (VGA_CONSOLE_ATI_BROKEN_FONTSEL), copy the builtin font to another
 location in font ram; the attach() code will do the rest
put the "quirk" code into effect again
2002-06-28 22:24:11 +00:00
junyoung 754342aeb8 - Work around a hardware bug that loaded fonts don't work, which is
found on many (all?) of PCI-based ATI graphics cards. It is fully optional
  and can be enabled by adding `options VGA_CONSOLE_ATI_BROKEN_FONTSEL'
  to config file.
- Temporarily remove `quirk' mechanism. Similar code already exists
  in pci_quirks.c.
2002-06-27 06:26:51 +00:00
simonb 8c2c311f56 Add evbmips to the list of platforms supported by this driver. 2002-06-26 09:47:08 +00:00
simonb be77ae0cf5 Whitespace KNF. 2002-06-26 09:38:37 +00:00
drochner f9d6718ab9 allow to overwrite the builtin VGA font if necessary,
make the number of available font slots variable,
set up a "quirk" mechanism to tell the generic vga code about crippled
VGA adapters which ignore the "fontsel" TS register,
initiate the quirk table with an ATI chip which happened to be on a board
I tested with.
Afaik quite a number of ATI chips suffers from the "loaded fonts don't
work" problem - these should be added.
Bad side effect of my change: The builtin font will be kicked out
always if a VGA_CONSOLE_SCREENTYPE is specified which needs a loaded
font. In early console initialization, we don't know much about the
graphics card, so we have to assume the worst (ie ATI:-).
2002-06-25 21:07:42 +00:00
augustss 1c66d18529 Make it possible to override the way register access is done.
This is needed for some really screwball attachments of the CS8900.
2002-05-21 02:47:04 +00:00
augustss 7f7ab48604 Rename the audio "bus" attribute audiobus to avoid confusion with audio
device.
2002-04-22 09:41:19 +00:00
gmcgarry 68388660cf Set ndrq to zero if no drq is specified. 2002-04-19 05:27:04 +00:00
martin e4998611e9 Fix copyright notice. 2002-04-14 12:24:26 +00:00
martin 0cdadad2cd Defer initialization of the ISAC chip until we enable interrupts - it gets
into a strange failure mode if we do it with disabled interrupt. When
(re-)enabling interrupts reset transmitter and receiver and clear any
pending state.
2002-04-13 10:28:36 +00:00
martin f12d3f51e7 Remove some redundant tries to disable interupts. We already avoided enabling
them.
Fix a stupid typo when enabling/disabling interrupts: we clear pending
interrupts when enabling, not disbling isac interrupts.
2002-04-10 23:51:06 +00:00
bouyer e5727031fb Implement mstohz() as discussed on tech-kern, and use it in SCSI drivers
to convert xs->timeout to callout() parameter.
2002-04-05 18:27:45 +00:00
martin e5c92d53f8 Be a nice citizen, enable interrupts only when we are ready to talk
to the ISDN (i.e. when userland has /dev/isdn open).
2002-03-30 19:13:44 +00:00
martin 8a2d9422bd Fix confusion about the return value from the internal MI probe routine.
Make the ISA probe actually (silently) fail if no card is found.

XXX - need to aquire the SBUS variant of this card some day or have
Jaromir find an MCA one.
2002-03-25 09:08:09 +00:00
martin ef6a5a4c4c Minor nit in the attach message: don't print empty io or iomem. 2002-03-24 23:04:27 +00:00
martin 0bc69b6498 Now that we have all the pieces of the puzzle available start to unriddle
and move them in their proper places.

Move the BRI registry from layer 2 (duh!) to layer 4, so active cards
(which don't have layer 3 or layer 2 in their driver). Remove all remaining
hard coded controller and driver types. Remove any arbitrary hard coded
limits, at least those that show up in the internal API.

This fixes PR 15950.
2002-03-24 20:35:43 +00:00
martin 9cea4a0ab0 Bring the daic driver into the new ISDN world order.
Enable active card support in the ISDN subsystem. (Had been disabled since
it couldn't be tested before.)
2002-03-22 09:54:15 +00:00
atatat 31144d9976 Convert ioctl code to use EPASSTHROUGH instead of -1 or ENOTTY for
indicating an unhandled "command".  ERESTART is -1, which can lead to
confusion.  ERESTART has been moved to -3 and EPASSTHROUGH has been
placed at -4.  No ioctl code should now return -1 anywhere.  The
ioctl() system call is now properly restartable.
2002-03-17 19:40:26 +00:00
itohy d5f39a2d9c Add explicit support of OPL3-SA2 (YMF711).
Not well tested....
2002-03-10 13:57:10 +00:00
jdolecek 6cfc5b796f use TAILQ_FIRST()/TAILQ_NEXT()/TAILQ_EMPTY macros rather than dereferencing
appropriate structure members
2002-03-10 08:55:40 +00:00
itohy 1990961dc9 Fix ADPCM playback/recording. 2002-03-06 07:12:02 +00:00
itojun ac36f7cb2c bring in latest ALTQ from kjc. ALTQify some of the drivers. 2002-03-05 04:12:57 +00:00
itohy 4283f00882 1. Change equalizer (treble, bass) to be ``flat'' if the values set at
the center position (128), so as to be compatible with other drivers.
    The equalizer is enhancement only, and the values < 128 don't take
    any effect.

    Yeah, this causes spec change....
    For equalization.treble and equalization.bass, the relation between
    old and new value is

	new_value = (old_value / 2) + 128.

    (Note this does not apply to equalization.surround.)

 2. Support ++ and -- of mixerctl(1) for stepping volume variables.

 3. Fix problem where the chip is not powered up
    when the mic input is unmuted.
2002-02-26 14:57:36 +00:00
jdolecek f32b3f4f89 Reduce the massive code duplication regarding joy(4). Split it into
MI and MD parts, and make ISA/ISAPNP/PCI joy(4) attachments MI.
2002-02-02 18:37:38 +00:00
sommerfeld c127a007e8 really fix it this time. 2002-01-28 03:47:14 +00:00
sommerfeld 3c99883ed4 Finish conversion to new-style isa config machinery (#ifdef DEBUG code was
left unconverted)
2002-01-28 03:45:25 +00:00
tsutsui b87a051ec8 Call malloc(9) with M_ZERO flag instead of memset() after malloc(). 2002-01-12 16:17:05 +00:00
jdolecek 1511af3e96 Resurrect the 'sc->sc_sbdsp.sc_dev.dv_cfdata = match' in pasprobe(),
it's needed for sbdsp.c:sbdsp_probe().
2002-01-11 17:45:10 +00:00
jdolecek 3c9a8d7d19 Fix fallout from previous - the 'sc->sc_dev.dv_cfdata = match' needs
to be retained, it's referenced in sbdsp.c:sbdsp_probe().
2002-01-11 17:33:01 +00:00
christos b5d5702d16 Deal with lossage caused by recent isa changes [/briq potr] 2002-01-08 17:20:44 +00:00
thorpej 3835413bc1 Overhaul of the ISA autoconfiguration code to support direct
configuration of devices logically attached to the ISA bus:

* Change the isa_attach_args to have arrays of io, mem, irq, drq
  resources.
* Add a "pnpnames" and a linked list of "pnpcompatnames" to the
  isa_attach_args.  If either of these members are non-NULL,
  direct configuration of the bus is being performed.  Add an
  ISA_DIRECT_CONFIG() macro to test for this.
* Drivers are not allowed to modify the isa_attach_args unless
  direct configuration is not being performed and the probe fucntion
  is returning success.
* Adapt device drivers -- currently, all driver probe routines return
  "no match" if ISA_DIRECT_CONFIG() evaluates to true.
2002-01-07 21:46:56 +00:00
drochner db154a4d20 "attach radio at radio":
using one word as both attribute and device doesn't work well,
radio.c is pulled in even with no such device in the configuration,
and the kernel doesn't link due to missing "radio_cd".
So call the attribute "radiodev" to avoid confusion.
2002-01-07 17:44:42 +00:00
augustss 5777b5c311 Increase max sampling rate on SB16. It seems almost all models supports it. 2002-01-06 20:24:12 +00:00
augustss d083e37f0b Add \n in attach messages. 2002-01-03 18:13:19 +00:00
augustss c41bbdcea2 Change the probe code. You cannot unmap bus space and then use it. 2002-01-02 12:42:23 +00:00
augustss d7f7000641 Add missing newline. 2002-01-02 04:10:02 +00:00
augustss 1c06f6a40f Add support for radio cards. Written by Maxim Tsyplakov and Vladimir Popov
for OpenBSD, from where it was imported.
2002-01-01 21:51:38 +00:00
thorpej 6ca57419d1 Labels must be followed by statements. 2001-12-31 22:07:58 +00:00
thorpej 2270cd2cb5 Add a case for x86_64. 2001-12-29 21:13:46 +00:00
thorpej e53aabcecc Rename weasel.c to weasel_isa.c in preparation for supporting the
PCI version of the Weasel.
2001-12-16 22:35:31 +00:00
thorpej cf64f893c8 Try again: weasel -> weasel_isa 2001-12-16 22:33:35 +00:00
thorpej 87e8f0c761 Oops, revert previous; it included some other changes there weren't
meant to be checked in.
2001-12-16 22:32:07 +00:00
thorpej b45e326520 weasel -> weasel_isa 2001-12-16 22:30:26 +00:00
rafal 23e1fa1306 Fix PR 13465 by Krister Walfridsson: memory initialization used uninitialized
variable to start off the write pattern (how ironic! 8-).
2001-12-06 13:18:22 +00:00
lukem ecb81c3f6d - convert usage of "defopt" to "defflag" where the relevant option does
not support a value (e.g., it's to be used as "options FOO" instead of
  "options FOO=xxx"). options that take a value were converted to
  defparam recently.
- minor whitespace & formatting cleanups
2001-11-28 10:21:10 +00:00
fredette f0002ba642 Added macros for the bits in the SYSBUS byte, and macros
for the i82596 PORT access interface, from the documentation
for that chip.  These help clarify writes to the SYSBUS
part of the SCP, and PORT usage by i82596-aware drivers.
2001-11-26 23:30:59 +00:00
yamt adbdd3e6f6 add $NetBSD$ and copyright notice and rcsid. 2001-11-26 19:55:38 +00:00
yamt dbaca00330 move dev/isa/cs89x0{.c,{var,reg}.h} into dev/ic
and split isadma parts into /dev/isa/cs89x0isa*.
2001-11-26 19:17:05 +00:00
yamt 7af704bf48 - add power management code.
- use ether_ioctl instead of its own code.
  (make ifconfig down works properly.)
2001-11-26 11:14:50 +00:00
yamt ce170de115 - add (partial?) i/o mode support.
- add partial cs8920 support.
- add detach code.
- add a quirk for EtherJet PCMCIA with cardbus bridge.
(above "partial" means "engough to support EtherJet PCMCIA")
2001-11-24 20:18:55 +00:00
wiz 1f1e26bd6d Presence looks better with a 'c' instead of an 's'. 2001-11-21 19:01:31 +00:00
lukem 0fa231134c - replace "defopt" with "defparam" for options which must take a value,
as config(8) will warn for value-less defparam options
- minor whitespace/formatting cleanup
- consolidate opt_tcp_recvspace.h and opt_tcp_sendspace.h into opt_tcp_space.h
2001-11-20 14:34:18 +00:00
lukem 2565646230 don't need <sys/types.h> when including <sys/param.h> 2001-11-15 09:47:59 +00:00
lukem 3f7d8d47b6 add RCSID 2001-11-13 08:01:09 +00:00
itohy c0f59fbbeb AD1845 on my AlphaStation 255 doesn't match the AD1845 doc.
Try to detect AD1845 (unfortunately this is not always correct)
and work around the problems.
2001-11-04 08:08:25 +00:00
augustss 1339e88a86 Add a new optional method, dev_ioctl, to the audio hardware driver interface.
It is called when an unrecognized ioctl() is performed on a device,
thus allowing ioctl()s that frob the hardware driver (like loading
microcode).
2001-10-03 00:04:47 +00:00
martin 2c433e9757 Fix a very stupid pasto - the card has two B channels, so better not
query the HSCX chip version of the third one.
2001-09-30 11:50:05 +00:00
augustss d09eea2ace Add a missing command. 2001-09-29 19:08:49 +00:00
thorpej a7eb08e847 "cms" is not needs-flag 2001-09-26 21:49:09 +00:00
thorpej 55d06660bb "aria" does not needs-flag 2001-09-26 21:40:07 +00:00
thorpej 1eb0dacf81 IRQUNK -> ISACF_IRQ_DEFAULT 2001-09-26 01:30:58 +00:00
thorpej b9fffe1967 Allow bus front-end to provide both ioctl and mmap entry points,
and also the wsdisplay type.

Based on changes from Simon Burge <simonb@wasabisystems.com>.
2001-09-14 01:10:11 +00:00
tsutsui a234112f80 Make 3C509[B] in ISA mode probed correctly on big endian machines. 2001-09-02 06:46:57 +00:00
jdolecek 000f85917b Since ~all pckbc_poll_data1() callers had the appropriate pckbc
tag handy and we are going to need more of it in pckbc_poll_data1() soon,
change pckbc_poll_data1() to accept it as first arg. iot, ioh_d, ioh_c are
no longer passed separately. Use fabricated pckbc tag for calls from
arch/arc/jazz/pckbc_jazzio.c and dev/isa/pckbc_isa.c.
2001-07-23 21:03:19 +00:00
jdolecek f2b42af4c6 dev/isa/if_ate.c depends upon 'ate_isa', not just 'ate' 2001-07-21 16:08:17 +00:00
thorpej 44e529fecc Use BUS_DMA_READ and BUS_DMA_WRITE in some obvious places. 2001-07-19 16:36:14 +00:00
thorpej 600cfcb30a bcopy -> memcpy 2001-07-18 20:52:47 +00:00
thorpej 42a4d5b520 bcmp -> memcmp 2001-07-18 20:42:54 +00:00
thorpej ce623a36cc bzero -> memset 2001-07-18 20:39:53 +00:00
wiz cc0b68092e Correct various misspellings of 'transfer' and inflected forms. 2001-07-08 18:06:42 +00:00
thorpej 3d98de578f Remove unnecessary include files. From Onno van der Linden. 2001-07-08 17:55:50 +00:00
gmcgarry a48df4b355 Garbage-collect unneeded rnd.h include. 2001-07-01 01:50:05 +00:00
wiz 3f9984fc90 `existent', not `existant' 2001-06-19 13:42:07 +00:00
fvdl dd270d4a3f ifdef NISAPNP -> if NISAPNP > 0 2001-06-19 12:45:23 +00:00
wiz c03a48d64f withough -> without 2001-06-13 10:45:57 +00:00
wiz 0a600be867 receive, not recieve 2001-06-12 15:17:10 +00:00
wiz 0a3b1c29a1 transceiver, not transciever. 2001-06-11 01:19:53 +00:00
briggs 7a3a78cfa3 Compile on sandpoint. 2001-06-07 16:48:09 +00:00
leo 72510eee6d Make the WDC_{ATA|ATAPI}_NOSTREAM flags settable through configuration
options. Needed on the Atari Milan.
2001-06-07 06:33:48 +00:00
mrg c13e3a6693 use _KERNEL_OPT 2001-05-30 11:40:35 +00:00
thorpej 47745a094d Add support for the Algorithmics ISA floppy controller. 2001-05-27 18:16:21 +00:00
tsutsui 3d863329cc space/TAB cosmetics 2001-05-19 12:04:07 +00:00