summaryrefslogtreecommitdiffstats
path: root/sys/pci
Commit message (Collapse)AuthorAgeFilesLines
* Remove calls to alpha_register_pci_scsi(). After Mike's recent bootgallatin1999-11-052-10/+0
| | | | | | changes, it no longer exists and is preventing alpha kernels from building. reviewed by: msmith
* now that a map's base addr is 64-bits, the alpha multi-hose hack needsgallatin1999-11-031-4/+4
| | | | | to be cast to 64-bits in pci_add_map. This should allow XP1000s and DS20s to boot -current again.
* Remove compat cruft.phk1999-11-031-4/+0
|
* New driver: Nx64kbit/s E1/T1 cards based on Munich32x&Falc54.phk1999-11-021-0/+1287
| | | | This is a netgraph driver.
* Do some more work on the mxphy pseudo-driver to make it better at mediawpaul1999-11-012-15/+26
| | | | | detection and remove the long delays that I had used previously. Everything should be handled by timeouts now.
* Organize things to cope with the (possible) lack of downloadablemjacob1999-10-301-11/+27
| | | | firmware a bit better.
* Change useracc() and kernacc() to use VM_PROT_{READ|WRITE|EXECUTE} for thephk1999-10-301-2/+2
| | | | | | | | | "rw" argument, rather than hijacking B_{READ|WRITE}. Fix two bugs (physio & cam) resulting by the confusion caused by this. Submitted by: Tor.Egge@fast.no Reviewed by: alc, ken (partly)
* Don't test boolean return against != 1.phk1999-10-291-4/+4
| | | | Don't needlessly assign the error variable in an if statement.
* Added code to enable BusMaster operations.semenu1999-10-292-4/+35
| | | | | | Kurt D. Starsinic <kstar@chapin.edu> had reported this patch fixing strange behaviour (like timeouts and RX/TX DMAs stopping errors).
* I'm told this makes more laptops work with the new attachment code.imp1999-10-291-1/+1
| | | | Submitted by: archie cobbs
* Fix some resource allocation peculiarities of the intpm device.dfr1999-10-282-77/+104
|
* Add text for the VIA 82C686 southbridge used by some Athlon and PII boards.alc1999-10-261-0/+2
|
* Make sure we add an interrupt resource if intline!=255.dfr1999-10-261-1/+1
|
* Add NeoMagic MagicMedia 256AV.kuriyama1999-10-261-0/+2
|
* Small tweak: just reset the transmit block instead of doing a global resetwpaul1999-10-251-2/+2
| | | | | in xl_init(). This achieves the effect that I wanted without totally resetting the chip.
* Add text for the AMD-751 host-to-PCI and PCI-to-PCI (AGP) bridges.alc1999-10-251-0/+8
|
* Sony CXD1847A FireWire Host Controllerimp1999-10-251-0/+4
|
* Make some tweaks to the RealTek driver:wpaul1999-10-212-12/+28
| | | | | | | | | | | | | | | | | | - Fix a bug in rl_rxeof() handler: in the case where the packet wraps from the end of the receive buffer back to the beginning, we need to insure that at least sizeof(ether_header) bytes make it into the first mbuf. If we don't, then doing eh = mtod(m, struct ether_header *) loses. To avoid this, we use m_pullup() to suck at least MHLEN - RL_ETHER_ALIGN bytes into the first mbuf, which should also help small packets fit into a single mbuf. Pointed out by: Philip A. Prindeville <philipp@zembu.com> - Make the transmit threshold autotuning: start off with a small value and jack it up when TX underruns are detected. - Also improve TX error recovery: kick the chip in the head with a reset/init sequence to make sure it recovers afer a transmit error.
* Add in inclusion of machine/md_var.h (so alpha_scsi_bus_register or whatmjacob1999-10-171-22/+59
| | | | | | | have you is prototyped). Removed code versions in md struct- not used any more. Allocate transfer dma maps and xflist stuff in mbxdmasetup based upon isp->isp_maxcmds. Allow for multiple calls to mbxdmasetup (for isp_reset cases).
* Add support for the PCI version of the Digi SYNC/570i cards.jhay1999-10-171-0/+117
|
* Correct a stupid type which prevented us from working with any devicedfr1999-10-171-1/+1
| | | | which needed port resources.
* Convert the mx driver to miibus.wpaul1999-10-162-882/+182
| | | | | | | | | | | | | | In order to make this work, I created a pseudo-PHY driver to deal with Macronix chips that use the built-in NWAY support and symbol mode port. This is actually all of them, with the exception of the original MX98713 which presents its NWAY support via the MII serial interface. The mxphy driver actually manipulates the controller registers directly rather than using the miibus_readreg()/miibus_writereg() bus interface since there are no MII registers to read. The mx driver itself pretends that the NWAY interface is a PHY locayed at MII address 31 for the sole purpose of allowing the mxphy_probe() routine to know when it needs to attach to a host controller.
* Make some small tweaks:wpaul1999-10-142-4/+27
| | | | | | | | | | | | - When setting/clearing promisc mode, just update the filter, don't reset the whole interface. - Call xl_init() in xl_ifmedia_upd() when setting miibus media modes. This fixes a problem with the 3c905B-COMBO where switching from 10base5/AUI or 10base2/BNC to a 10/100 mode doesn't always work right. - Attempt to reset the interface in xl_init() so that we know we're getting the receive and transmit rings reset properly.
* * Implement bus_set/get/delete_resource for pci.dfr1999-10-144-290/+156
| | | | | | | * Change the hack used on the alpha for mapping devices into DENSE or BWX memory spaces to a simpler one. Its still a hack and should be a seperate api to explicitly map the resource. * Add $FreeBSD$ as necessary.
* allow pci_ioctl to work with multi-hose alphas.gallatin1999-10-121-2/+2
| | | | | | | | Rather than teaching pci_ioctl about hoses, we just pass down a magic number & let the platform code figure out what the hose is based on what the bus number is. concept approved by dfr
* remove unnecessary includesmjacob1999-10-111-3/+0
|
* Add the 16550 programming interface code for PCIS_SIMPLECOMM_UART.peter1999-10-091-0/+1
|
* Remove old copies. These files now live in src/sys/dev/buslogicmdodd1999-10-091-230/+0
|
* Remove these files as they now live in sys/dev/dpt/mdodd1999-10-092-393/+0
|
* No longer required, following the move of the driver to /sys/dev/bktrroger1999-10-081-598/+0
|
* remove the use of uhci_reset to wake up the controller aftern_hibma1999-10-071-5/+4
| | | | | | resume/suspend (->resume is broken again, will be fixed properly ASAP) style fixes
* Be much more selective in claiming devices that might be IDE controllers.msmith1999-10-071-31/+27
| | | | | | | | | | | The old algorithm was: if class == storage and subclass != SCSI device must be IDE This results in claiming 'raid' and 'other' storage devices as IDE, which is typically not the case. Reviewed by: sos
* Removal of sys/device.hn_hibma1999-10-051-1/+0
| | | | | | | | | | | | | - Move intrhook stuff into kernel.h - Remove all occurrences of #device <device.h> - Add kernel.h were necessary (nowhere) - delete device.h This file contained the structures for cfdata (old style config) and is no longer used. It was included by most drivers. It confuses the remote debugger as the definition of 'struct device' in device.h is found before the one in bus_private.h.
* A band-aid to prevent multi-hose alpha chipsets (aka tsunami) fromgallatin1999-10-031-0/+4
| | | | | panic'ing because the hose is not filled in. We should probably extend the pciioctl interface to take hoses into account..
* Check for a valid irq number before calling BUS_SETUP_INTR.n_hibma1999-10-032-4/+23
| | | | Requested-By: msmith
* Backout part of the changes made in 1.111roger1999-10-011-9/+1
| | | | | | | | | | | | | | | | | | For unknown devices the output will now be pci0: unknown card (vendor=0x109e, dev=0x0878) at 14.1 irq 19 instead of pci0: unknown card DD^0878 (vendor=0x109e, dev=0x0878) at 14.1 irq 19 Before this change, the code used to take the PCI vendor id and translate it into a three letter ASCII name. For PnP devices, the vendor id _does_ map to a nice ASCII name (eg Creative Labs PnP ID maps to "CTL", ESS PnP ID maps to "ESS") But there is no such mapping for PCI devices, as can be seen by the example above where the Brooktree PCI vendor ID maps to "DD^" The PCI Special Interest Group confirmed they do not have any mappings from vendor ID to ASCII.
* Make the fxp driver work on alpha, rather than panic the machine on bootgallatin1999-09-303-30/+19
| | | | | | | | | | | | | | | | | | | and/or when using the card. o Convert the driver to using bus_space. This allows alphas with fxp's to boot, rather than panic'ing because rman_get_virtual() doesn't really return a virtual address on alphas. o Fix an alpha unaligned access error caused by some misfeature of gcc/egcs: if link_addr & rbd_addr in the fxp_rfa struct are 32 bit quantities, egcs will assume they are naturally aligned. So it will do a ldl & some shifty/masky to twiddle 16 bit values in fxp_lwcopy(). However, if they are 16-bit aligned, the ldl will actually be done on a 16-bit aligned value & we will panic with an unaligned access error... Changing their definition to an array of chars seems to fix this. I obtained this from NetBSD. I've tested this on both i386 & alpha.
* These files live on in sys/dev/pcm/pci/es1370*peter1999-09-262-1257/+0
|
* Update the Starfire driver comments and man page to include the URL ofwpaul1999-09-261-1/+2
| | | | | the AIC-6915 Programmer's Manual which I finally found online at Adaptec's site.
* Remove five now unused fields from struct cdevsw. They should neverphk1999-09-253-15/+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
* Change contigmalloc() lower memory bound from 1MB to 0 to improvewpaul1999-09-259-9/+9
| | | | | | | chances of allocations succeeding on systems with small amounts of RAM. Pointed out by: bde
* Remove NBPF conditionality of bpf calls in most of our network drivers.phk1999-09-252-21/+0
| | | | | | | | | | | | This means that we will not have to have a bpf and a non-bpf version of our driver modules. This does not open any security hole, because the bpf core isn't loadable The drivers left unchanged are the "cross platform" drivers where the respective maintainers are urged to DTRT, whatever that may be. Add a couple of missing FreeBSD tags.
* Call sk_start() at the end of sk_intr() if there's packets in thewpaul1999-09-251-0/+5
| | | | interface send queue that need to be processed.
* As suggested by phk, unconditionalize BPF support in these drivers. Sincewpaul1999-09-2315-155/+22
| | | | | | | there are stubs compiled into the kernel if BPF support is not enabled, there aren't any problems with unresolved symbols. The modules in /modules are compiled with BPF support enabled anyway, so the most this will do is bloat GENERIC a little.
* Delete the README file from /sys/pci.roger1999-09-221-85/+0
| | | | Important information is now in the bktr man page
* Bt848 driver now moved to /sys/dev/bktrroger1999-09-223-7961/+0
|
* Update the Tigon driver firmware images to the latest release fromwpaul1999-09-223-3776/+3495
| | | | Alteon (12.6.15).
* Tweak these for what I hope is the last time: change the DRIVER_MODULE()wpaul1999-09-2216-16/+16
| | | | | | | | | | declaration for the interface driver from "foo" to "if_foo" but leave the declaration for the miibus attached to the interface driver alone. This lets the internal module name be "if_foo" while still allowing the miibus instances to attach to "foo." This should allow ifconfig to autoload driver modules again without breaking the miibus attach.
* Spruce up the ADMtek driver: conver to newbus, miibus and add supportwpaul1999-09-222-1062/+680
| | | | | | | | | | | | | | | for the AN985 "Centaur" chip, which is apparently the next genetation of the "Comet." The AN985 is also a tulip clone and is similar to the AL981 except that it uses a 99C66 EEPROM and a serial MII interface (instead of direct access to the PHY registers). Also updated various documentation to mention the AN985 and created a loadable module. I don't think there are any cards that use this chip on the market yet: the datasheet I got from ADMtek has boxes with big X's in them where the diagrams should be, and the sample boards I got have chips without any artwork on them.
* Close PR #13665. I managed to figure out the problem, no thanks to thewpaul1999-09-201-16/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | submitter, who *still* hasn't bothered to answer me back. The thing which the submitter completely failed to mention is that his 3c900B-TPO card has the transceiver selection in the EEPROM set to "auto." You can tweak the setting using the 3C90XCFG.EXE utility that 3Com provides with the card. I'm not sure if it's supposed to default to auto or if the user fiddled with it. Currently, the xl driver only does autoselection for 10/100 NICs (i.e. those with NWAY autonegotiation capabilities). For the 10baseT, 10base5, 10base2, 10baseFL and 100baseFX cards, the driver sets the default media to whatever the EEPROM transceiver selector says. The problem is that the "auto" selection is mistakenly identified as "10/100 NWAY autoselection mode" and this is not handled correctly: the default media ends up being chosen as 100baseTX, which doesn't work because we've only added 10baseT media types to the ifmedia word. This leads to a panic in ifmedia_set() (something else which the submitter never bothered to mention). A workaround for this is to re-run the 3C90XCFG.EXE utility and change the transceiver selection to something besides "auto." I have also patched the driver to watch for the "auto" setting in the non-miibus case and select a reasonable default based on the card type instead of falling through to 100baseTX and exploding. PR: misc/13665
OpenPOWER on IntegriCloud