summaryrefslogtreecommitdiffstats
path: root/sys/dev/sio/sio.c
Commit message (Collapse)AuthorAgeFilesLines
* Add ZTIA001 - Zoom Internal V90 Faxmodem.sheldonh2000-09-051-0/+1
| | | | | PR: 21028 Submitted by: Glenn Johnson <glennpj@charter.net>
* Add Boca K56Flex PnP modem.sheldonh2000-09-041-0/+1
| | | | | PR: 21000 Submitted by: Andrew Sparrow <spadger@best.com>
* Call destroy_dev() when sio devices go away.phk2000-08-271-6/+12
|
* Add another USR modem.peter2000-08-151-0/+1
| | | | | PR: 20621 Submitted by: Masanori Taira <mtaira@logicaleffect.com>
* Previous commit changing SYSCTL_HANDLER_ARGS violated KNF.phk2000-07-041-1/+1
| | | | Pointed out by: bde
* Style police catches up with rev 1.26 of src/sys/sys/sysctl.h:phk2000-07-031-1/+1
| | | | | | | | Sanitize SYSCTL_HANDLER_ARGS so that simplistic tools can grog our sources: -sysctl_vm_zone SYSCTL_HANDLER_ARGS +sysctl_vm_zone (SYSCTL_HANDLER_ARGS)
* Add option ALT_BREAK_TO_DEBUGGER.ps2000-06-141-0/+29
| | | | | | | | Implement the Solaris way to break into DDB over a serial console instead of sending a break. Sending the character sequence CR ~ ^b will break the kernel into DDB (if DDB is enabled). Reviewed by: peter
* Add SUP1670 - Supra 336i V+ Intl. Since we update the PnP IDstanimura2000-05-261-0/+1
| | | | | | | | | more frequently than the core part of the sio driver, it might be good to move the PnP IDs to sio_isapnp.h or something like that. PR: i386/18828 Submitted by: J.P. King <jpk28@cam.ac.uk>
* Add RSS0262 - 5614Jx3[G] V90+K56Flex Modem.tanimura2000-05-191-0/+1
| | | | | PR: kern/18168 Submitted by: Tony Voet <voet@engineer.com>
* Add ACH2012 - 5634BTS 56K Video Ready Modem.tanimura2000-05-191-0/+1
| | | | | PR: kern/17351 Submitted by: Eric D. Futch <efutch@nyct.net>
* Add a couple of new PnP IDs.tanimura2000-05-181-0/+2
| | | | | | | | | | o OZO800f - Zoom 2812 (56k Modem) PR: kern/18603 Submitted by: Matt Loschert <loschert@servint.com> o DAV0336 - DAVICOM 336PNP MODEM PR: kern/18608 Submitted by: Martijn Plak <martijn@be3.com>
* Use bus_space stuff except where it needs high performance.nyan2000-05-121-79/+82
| | | | Reviewed by: bde
* Add the logical ID of FUJITSU Modem 33600 PNP/I2.tanimura2000-05-021-0/+1
| | | | | PR: kern/18257 Submitted by: Takanori Watanabe <takawata@shidahara1.planet.sci.kobe-u.ac.jp>
* Add support for pci modems. ONLY CONTROLLER BASED MODEMS. Thisimp2000-04-011-14/+122
| | | | | | | | | | | | doesn't support winmodems, softmodems, hcf or any other modem that relies on the host to do any sort of soft control for any aspect of the modem's function. There are two modems known to work: 3COM FaxModem PCI. ActionTec 56k VoiceMessaging PCI Modem and the following modem might work Multitech PCI FaxModem (not sure about this) and the serial pci cards might work too. I have neither these hardware items so I can't add support for them.
* Recognize USR3050 "U.S. Robotics 56K FAX INT" fax modem.peter2000-03-311-0/+1
| | | | | PR: 17702 Submitted by: Scot W. Hetzel <hetzels@westbend.net>
* Isolate the Timecounter internals in their own two files.phk2000-03-201-0/+1
| | | | | | | | | | | | | | | Make the public interface more systematically named. Remove the alternate method, it doesn't do any good, only ruins performance. Add counters to profile the usage of the 8 access functions. Apply the beer-ware to my code. The weird +/- counts are caused by two repocopies behind the scenes: kern/kern_clock.c -> kern/kern_tc.c sys/time.h -> sys/timetc.h (thanks peter!)
* Fix crashes on card eject for pccard modems. We check for NULL whenimp2000-03-111-12/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | we get the com address. If so, we go ahead and return. Bruce thinks there's a bug in the pccard layer that it terminates devices with extreme prejustice rather than letting them deside for themselves when to terminate (and he's likely right). This fix doesn't change that, but instead works around it by checking for NULL pointers at more places than before. The detach routine still calls functions at interrupt level that aren't reentrant. In theory this could cause a problem, but none showed up in practice. Future versions should correct this problem, likely by making the detach process a thread/process at the pccard level. NEWCARD will do this, and the current pccard layer should likely be modified to that as well, should it live long enough. A few style nits of the same form that were in my original patch sent off to bde were also fixed as part of this process. Mostly use of !ptr and return ENOPARENS. This should prevent a crash on suspend with an active ppp link as well, but that wasn't tested. Reviewed by: bde Approved by: jkh
* Recognize another modem, "PMC2430 - Pace 56 Voice Internal Modem"peter2000-03-051-0/+1
| | | | Submitted by: Mark Ovens <mark@ukug.uk.freebsd.org>
* Fix two more problems with freeing the softc data manually. subr_bus.cpeter2000-03-021-2/+0
| | | | | | | | | is responsible for this and this will lead to malloc 'freeing already free' type panics. One was in the probe code, the other was in the pccard eject? code. Not explicitly approved by: jkh (but the first is fallout from subr_bus.c rev 1.54 which was an approved commit, the second is the same problem)
* Fixed regressions in rev.1.274:bde2000-02-151-11/+15
| | | | | | | | | | | | | | | | 1) Non-AST4 multiport cards were broken by bypassing the code that changes `idev' to the multiport master device. 2) AST4 multiport cards apparently were broken by inverting the test for the master device having an irq. 3) Error handling for nonexistent master devices was broken by removing a check for a null pointer. 4) `int' error codes returned by bus_get_resource() were assigned directly to the boolean variable com->no_irq. Probably harmless, since the boolean is implemented as a u_char. Submitted by: part 1) by Chris Radek <cradek@in221.inetnebr.com> part 2) by yokota Approved by: jkh
* "Completed" the previous fix. Return ENOMEM on memory allocation failurebde2000-01-291-1/+8
| | | | | in sioattach(), not ENXIO. Free resources before returning early in sioprobe() and sioattach().
* Return ENXIO on error, not 0. Seems to have been skipped when convertingn_hibma2000-01-231-1/+1
| | | | | | to newbus. Reviewed by: bde
* Add another four device ID's for isa pnp modems. The USR's seem to usepeter2000-01-181-0/+7
| | | | | | | the same vendor and logical ID. The rest I am not sure whether they are vendor or logical, but it won't hurt if I've put a vendor ID here as merely will not match. These came from the old sio-pnp code, hence the uncertainty about which ID it is.
* Make this compile on alphagallatin2000-01-131-1/+1
|
* Add a new mechanism, cndbctl(), to tell the console driver thatyokota2000-01-111-2/+2
| | | | | | | | | | | | | | | | | | | | | ddb is entered. Don't refer to `in_Debugger' to see if we are in the debugger. (The variable used to be static in Debugger() and wasn't updated if ddb is entered via traps and panic anyway.) - Don't refer to `in_Debugger'. - Add `db_active' to i386/i386/db_interface.d (as in alpha/alpha/db_interface.c). - Remove cnpollc() stub from ddb/db_input.c. - Add the dbctl function to syscons, pcvt, and sio. (The function for pcvt and sio is noop at the moment.) Jointly developed by: bde and me (The final version was tweaked by me and not reviewed by bde. Thus, if there is any error in this commit, that is entirely of mine, not his.) Some changes were obtained from: NetBSD
* Recognize the GVC0505 (GVC 56k Faxmodem) as a sio device.peter1999-12-271-0/+1
| | | | Obtained from: Dan J Fraser <dfraser@capybara.org> (for NetBSD)
* Extract a list of extra isa pnp modem ID's from NetBSD and OpenBSD. Somepeter1999-12-211-7/+47
| | | | | | | of these are bound to have a PNP05xx compatid, but there's no easy way to tell. Since it's just an ID list and uses the pnp header's description strings rather than encoding strings here, it doesn't seem to be too expensive to err on the safe side.
* Add SUP2070 (Diamond SupraExpress 56i)peter1999-12-201-0/+2
| | | | | | | Submitted by: Kenneth Wayne Culver <culverk@wam.umd.edu> Add MOT4560 Obtained from: wollman
* o Make pccard work at all by including card.himp1999-12-101-12/+18
| | | | | | | | | | | | | o fix return type of sio_pccard_detach o don't free softc in deatch, since that is done by newbus o disconnect interrupt we used to have. Add cookie to com so that we can tear down the interrupt on unload o Set gone earlier, but likely doesn't matter This makes sio pccards work again. Cards that are active when ejects may not work (but they might, softc goes away quickly). These changes are unreviewed by bde. I'll make any style changes he wants.
* Fix a pair of silly warnings that I introduced (that would have beenpeter1999-12-061-7/+7
| | | | nasty on an Alpha or some other sizeof(int) != sizeof(long) machine).
* Use bus_get_resource() instead of bus_get_resource_start() as the latterpeter1999-12-061-17/+24
| | | | | | | | | returns "0" on failure, which is indistinguishable from (say) irq 0. This should stop a couple of stray messages that turn up. Also, if a BUS_SETUP_INTR() fails with INTR_TYPE_FAST, try falling back to a normal interrupt. This might help pccard folks with a shared slot interrupt. This whole thing needs to be revisited.
* Fix the hang on card eject problem and maybe the hang on suspendimp1999-12-011-16/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | problem. o Create new timeout routine so we don't detach the card inside a ISR but instead drop back to spl0 via a timeout of 0. o Actually delete the child of the pccard device rather than just faking it badly. o Fix sio, ed and ep to have pccard detach routines that are int rather than void. o Fix ep and ed pccard detach routines to use if_detach rather than just if_down. if_detach destroys the device, while if_down just marks it down. In this incarnation of the pccard things, we map the disable the slot action to detach the driver, which removes the driver from the device tree. When that is done, a panic would soon follow as the ifconfig tried to down the device. Didn't fix: o Should cache the pccard dev child's pointer in struct slot o remove now unused parts of struct slot o Any driver using softc after detach has been called. sio's softc used to be statically allocated, so you could check sc->gone, but that is now gone. o Didn't remove gone from softc of drivers that use the old pccard method. Didn't test: o ed driver changes o sio driver changes on pccards o suspend (no laptop or apm support on my desktop)
* Argh, don't turn the IIR test on unless it's a pccard. These tests messpeter1999-11-181-24/+20
| | | | up the subsequent probes.
* Merge some typo fixes from dev/sio/sio.c (siostop -> comstop)peter1999-11-181-47/+93
| | | | | | | | | | | | | | | Remove EXTRA_SIO/NSIOTOT and make it fully dynamic (from dev/sio/sio.c) Make sio work for pccard here - pccardd doesn't activate interrupts until after prove has succeeded. Mark the initial reset of likely sio ports as broken as it depended on config supplying a list of locations to probe, devices are now proved standalone. Optimize a bit of COM_NOAST4() logic. Use bus_get_resource_start() etc rather than using isa-centric calls. Reactivate the IIR_TXRDYBUG test, I've got a card here with it. Try to be a bit smarter about activating interrupts (ie: don't panic if polled) Fix some style bugs that have crept in over time (there are still more).
* Last change to pccard_nbk now obviates the need to check the name ofimp1999-10-281-7/+0
| | | | | the device in question. Also fix warnings on if_ep_pccard.c
* Add newbus pccard attachment for sio. Some of this code was writtenimp1999-10-251-97/+97
| | | | | | | | | | by Peter Wemm, but I've not merged all the changes he sent to me yet. This has not been reviewed by bde, so I'm committing to resolve any issues he has with this when he returns from FreeBSD CON 99. I've had four reports of this working for them. I've been able to communicate to both my built in modem and a pccard modem with these patches.
* Add support for the USRobotics Courier V.Everything (USR0101) modem.steve1999-10-111-0/+1
| | | | Submitted by: Robert Blayzor <robert@superior.net>
* Change pnp ID for the SupraExpress 56i Sp V.90 modem (logical IDdeischen1999-10-031-2/+4
| | | | | | | | | | 0x8024b04e) so that the cards description is used instead of overriding it. While I'm here, add an ID for the SUP2080 and the SUP2030. PR: kern/13983 Submitted by: Kurt D. Zeilenga <Kurt@OpenLDAP.Org> (SUP2030) dfr (rest of change) Reviewed by: dfr
* Add logical device ID for the Diamond SupraExpress 56K PnP modem:deischen1999-10-031-0/+1
| | | | | | | | Vendor ID SUP2480 (0x8024b04e), Serial Number 0x00001334 PnP Version 1.0, Vendor Version 0 Device Description: SupraExpress 56i Sp V.90 Reviewed by: dfr
* Remove five now unused fields from struct cdevsw. They should neverphk1999-09-251-5/+0
| | | | | | | | have been there in the first place. A GENERIC kernel shrinks almost 1k. Add a slightly different safetybelt under nostop for tty drivers. Add some missing FreeBSD tags
* This patch clears the way for removing a number of tty relatedphk1999-09-251-23/+7
| | | | | | | | | | | | | | | | | | | | | fields in struct cdevsw: d_stop moved to struct tty. d_reset already unused. d_devtotty linkage now provided by dev_t->si_tty. These fields will be removed from struct cdevsw together with d_params and d_maxio Real Soon Now. The changes in this patch consist of: initialize dev->si_tty in *_open() initialize tty->t_stop remove devtotty functions rename ttpoll to ttypoll a few adjustments to these changes in the generic code a bump of __FreeBSD_version add a couple of FreeBSD tags
* Make it build, copy from dev/sio/sio.c:peter1999-09-081-4/+4
| | | | | isa_set_flags -> device_set_flags isa_get_flags -> device_get_flags
* Restore the old sio* - bruce can fix it himself.peter1999-09-081-0/+3060
|
* Repo copy isa/sio* to dev/sio/sio* in preperation for extra bus methodspeter1999-09-061-3060/+0
| | | | | including pci. Also, eliminate NSIOTOT and do it dynamically where it matters.
* Move the #if 0 to catch the card.h include and make sure it's zero.peter1999-09-061-1/+3
|
* Start to disentangle the isa attachments from other buses. Partiallyimp1999-09-061-16/+14
| | | | | | | | | | | | | | rewrite the pccard attachment case. This is a work in progress, but doesn't break the isa case. I left the #if 0...#endif around the pccard stuff, at Peter's request, so that normal users don't shoot themselves in the foot. While I was here: o Indent a comment to the right location o Spell Unknown with a final 'n'. Reviewed by: peter
* Add USR3031 pnp id.dfr1999-09-041-0/+1
| | | | Submitted by: Steve Price <sprice@hiwaay.net>
* Remove the last vestiges of the old pnp code in favour of the new one.dfr1999-09-031-106/+1
|
* This represents essentially a complete rewrite of the ISA PnP code. Thedfr1999-09-011-8/+13
| | | | | | | | new system is integrated with the ISA bus code more cleanly and allows the future addition of more enumerators such as PnPBIOS and ACPI. This commit also enables the new pcm driver since it is somewhat tied to the new PnP code.
* s/si_tty_tty/si_tty/gphk1999-08-301-2/+2
|
OpenPOWER on IntegriCloud