summaryrefslogtreecommitdiffstats
path: root/sys/dev/puc
Commit message (Collapse)AuthorAgeFilesLines
* Add SIIG 4 port serial card based on the Oxford OX16PCI954.marcel2006-09-041-0/+6
|
* Fix building with GCC 4.2: ensure types are defined before refering to them.obrien2006-06-295-5/+5
|
* Need machine/bus.h here tooimp2006-06-121-0/+1
|
* Rewrite of puc(4). Significant changes are:marcel2006-04-2811-2269/+2071
| | | | | | | | | | | | | | | | | | | | o Properly use rman(9) to manage resources. This eliminates the need to puc-specific hacks to rman. It also allows devinfo(8) to be used to find out the specific assignment of resources to serial/parallel ports. o Compress the PCI device "database" by optimizing for the common case and to use a procedural interface to handle the exceptions. The procedural interface also generalizes the need to setup the hardware (program chipsets, program clock frequencies). o Eliminate the need for PUC_FASTINTR. Serdev devices are fast by default and non-serdev devices are handled by the bus. o Use the serdev I/F to collect interrupt status and to handle interrupts across ports in priority order. o Sync the PCI device configuration to include devices found in NetBSD and not yet merged to FreeBSD. o Add support for Quatech 2, 4 and 8 port UARTs. o Add support for a couple dozen Timedia serial cards as found in Linux.
* When we attach to either a SAB82532 or a Z8530, print a noticemarcel2006-03-302-0/+4
| | | | | saying that scc(4) should be configured into the kernel. This helps people to migrate away from puc(4) for these devices.
* MFp4:marcel2006-02-242-2/+2
| | | | | | Return BUS_PROBE_LOW_PRIORITY for a successful probe. This is in preparation of the introduction of scc(4), which is going to handle SCCs in the near future.
* Use bus_setup_intr() rather than invoking BUS_SETUP_INTR() directly so thatjhb2006-02-221-4/+2
| | | | puc still prints out [FAST] on Peter's box.
* Careful measurement of the ST Labs card shows that the pulse width ofimp2005-12-081-1/+1
| | | | | | | | | | | | transmitted bits was between 8.6180us and 8.6200us when we used a RCLK of 16.500MHz. This is a little low (should be 8.6805us). This error is exactly the error one would expect if it actually had a 16.384MHz watch oscillator (as suggested by garrett) instead of using the PCI RCLK. Assume that the pci clock therefore wasn't really used, but instead the cheap 16.384MH watch quartz oscillator. This gives bits in the 8.6800us to 8.6810us ranage, which matches theoretical. Submitted by: garrett
* The Oxford 16C950 based CardBus Serial device that I was given someimp2005-12-051-1/+2
| | | | | | | | | | | | | | | time ago appears to be based not on the typical 1.8432MHz clock, or the other more typical multiple of 8 of this (14.7456MHz), but instead it appears to be 1/2 the PCI clock rate or 16.50000MHz. I'm not 100% sure that this is right, but since I did the original entry, I'm going to go ahead and modify it. With the 14.7456MHz value, I was getting bits that were ~7.3us instead of ~8.6us like they are supposed to be. My measuring gear for today is a stupid handheld scope with two signficant digits. So I don't know if it is 33.000000/2 MHz or some other value close to 16.5MHz, but 16.5MHz works well enough for me to use a couple of different devices at 115200 baud, and is a nice even multiple of a well known clock frequency...
* Don't enable PUC_FASTINTR by default in the source. Instead, enable itjhb2005-11-211-4/+0
| | | | | | | | | | | via the DEFAULTS kernel configs. This allows folks to turn it that option off in the kernel configs if desired without having to hack the source. This is especially useful since PUC_FASTINTR hangs the kernel boot on my ultra60 which has two uart(4) devices hung off of a puc(4) device. I did not enable PUC_FASTINTR by default on powerpc since powerpc does not currently allow sharing of INTR_FAST with non-INTR_FAST like the other archs.
* Eliminate tinderbox errors.rodrigc2005-11-071-3/+5
|
* Avoid trouble with PUC_FASTINTR if it is already defined.phk2005-11-061-0/+2
|
* 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
|
* puc(4) does strange things to resources in order to fool thephk2005-09-281-4/+3
| | | | | | | | | | subdrivers to hook up. It should probably be rewritten to implement a simple bus to which the sub drivers attach using some kind of hint. Until then, provide a couple of crutch functions with big warning signs so it can survive the recent changes to struct resource.
* __RMAN_RESOURCE_VISIBLE not needed.phk2005-09-251-1/+0
|
* Recognize the SAB82532 in USIII machines.marius2005-08-071-2/+3
|
* Account for ebus(4) defaulting to SYS_RES_MEMORY for memory resourcesmarius2005-06-041-1/+1
| | | | since ebus.c rev. 1.22.
* Sort Oxford Semi entires. Add entry for OXCB950, a PCI/CardBusimp2005-04-221-13/+22
| | | | | | | | 16C950. Adding it here doesn't unlock any of the cool 16C950 features (like the 128 byte fifo, the different prescalor, etc), but it does seem to get it working for me in light testing. Card Provided by: Ihsan Dogan
* Use BUS_PROBE_DEFAULT for pci probe return valueimp2005-03-051-1/+1
|
* - sparc64/fhc/fhc.c:marius2005-03-041-9/+0
| | | | | | | | | | | | | | | | | Change fhc(4) to use IRQ numbers instead of RIDs for allocating the IRQs of children. This works similar to e.g. sbus(4), i.e. add the IRQ resources as fully specified to the resource lists of the children, allocate them like normal. When establishing the interrupt search the interrupt maps of the children for a matching INO to determine which map we need to write the fully specified interrupt number to and to enable the mapping (before the RID was used to indicate which interrupt map to use). - dev/puc/puc.c: Revert rev. 1.38, with the above change fhc(4) no longer needs special treatment for allocating IRQs. Thanks to: joerg for providing access to an E3500
* Declare the sbus(4) front-end of puc(4) also for fhc(4), allowingmarius2005-02-261-0/+1
| | | | | | | | | | | | | uart(4) to support the Zilog 8530 SCCs which hang off of a FireHose bus on Sun E4000/E5000 class machines. Beside the fact that a puc_fhc.c would just be a copy of puc_sbus.c with s,sbus,fhc,g the reason why the declaration for fhc(4) was sticked into puc_sbus.c is that both of these front-ends for puc(4) will go away once there is a scc(4). Discussed with: marcel Tested by: hrs, kris MFC after: 3 days
* Add a stopgap allowing puc(4) to allocate IRQs on fhc(4). Given thatmarius2005-02-261-0/+9
| | | | | | | | | | both a scc(4) is under way and fhc(4) will be change to use INOs this shouldn't stay in HEAD for too long but we need a MFC-able solution for FreeBSD 5.4. Discussed with: marcel Tested by: hrs, kris MFC after: 3 days
* Remove duplicate FBSDID.marius2005-02-261-3/+0
|
* fail gracefully rather than using an invalid array index if unablesam2005-02-251-2/+6
| | | | | | | to allocate a bar; it's unclear whether this can happen in practice Noticed by: Coverity Prevent analysis tool Discussed with: marcel
* add support for NetMos NM9805 1284 Printer portwilko2005-02-091-0/+9
| | | | | | Submitted by: Willy Offermans <W.K.Offermans@TUe.nl> MFC after: 2 weeks
* Revert rev. 1.5.marcel2005-01-311-1/+1
| | | | | | | It should be safe to attach to all Z8530 controllers again. In fact, the keyboard works on Ultra 2 machines. MFC after: 5 days
* Add PCI ID for Dell RAC IV/ERA Virtual UART (PowerEdge 1850).bms2005-01-271-2/+9
| | | | | | | Trim name of existing Dell RAC devices. Trim comments. With help from: dpk at dpk dot net MFC after: 1 week
* Add device description for the Dell Remote Access Card (DRAC) III and IVbms2005-01-201-0/+9
| | | | | | | | | virtual COM port. This makes the use of the Dell OpenManage tools on FreeBSD considerably easier, and is based on Chuck Cranor's original patch for 4.6. Reviewed by: imp Tested by: dpk at dpk dot net MFC after: 1 week
* Revert part of last commit that was unintentionalimp2005-01-111-1/+1
|
* Use the standard FreeBSD licenseimp2005-01-113-37/+37
|
* Start each of the license/copyright comments with /*-, minor shuffle of linesimp2005-01-066-6/+6
|
* Add support for Chase/Perle PCI FAST-4 4 port serial cards which appearwilko2005-01-051-0/+36
| | | | | | | | | to be the same as Boca Research Turbo Serial 654 (4 serial port). While add the 8 port variants as well. Submitted by: sten@blinkenlights.nl PR: kern/75793 MFC after: 1 week
* Apply a bandaid to avoid hangs on Ultra 2 machines. The second Z8530marcel2004-11-151-1/+1
| | | | | | connects to the keyboard and mouse and needs some special treatment. Until this is fully understood, implemented and tested, simply avoid probing the second Z8530. This is also what the zs(4) driver does.
* - Introduce an ofw_bus kobj-interface for retrieving the OFW node and amarius2004-08-122-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | subset ("compatible", "device_type", "model" and "name") of the standard properties in drivers for devices on Open Firmware supported busses. The standard properties "reg", "interrupts" und "address" are not covered by this interface because they are only of interest in the respective bridge code. There's a remaining standard property "status" which is unclear how to support properly but which also isn't used in FreeBSD at present. This ofw_bus kobj-interface allows to replace the various (ebus_get_node(), ofw_pci_get_node(), etc.) and partially inconsistent (central_get_type() vs. sbus_get_device_type(), etc.) existing IVAR ones with a common one. This in turn allows to simplify and remove code-duplication in drivers for devices that can hang off of more than one OFW supported bus. - Convert the sparc64 Central, EBus, FHC, PCI and SBus bus drivers and the drivers for their children to use the ofw_bus kobj-interface. The IVAR- interfaces of the Central, EBus and FHC are entirely replaced by this. The PCI bus driver used its own kobj-interface and now also uses the ofw_bus one. The IVARs special to the SBus, e.g. for retrieving the burst size, remain. Beware: this causes an ABI-breakage for modules of drivers which used the IVAR-interfaces, i.e. esp(4), hme(4), isp(4) and uart(4), which need to be recompiled. The style-inconsistencies introduced in some of the bus drivers will be fixed by tmm@ in a generic clean-up of the respective drivers later (he requested to add the changes in the "new" style). - Convert the powerpc MacIO bus driver and the drivers for its children to use the ofw_bus kobj-interface. This invloves removing the IVARs related to the "reg" property which were unused and a leftover from the NetBSD origini of the code. There's no ABI-breakage caused by this because none of these driver are currently built as modules. There are other powerpc bus drivers which can be converted to the ofw_bus kobj-interface, e.g. the PCI bus driver, which should be done together with converting powerpc to use the OFW PCI code from sparc64. - Make the SBus and FHC front-end of zs(4) and the sparc64 eeprom(4) take advantage of the ofw_bus kobj-interface and simplify them a bit. Reviewed by: grehan, tmm Approved by: re (scottl) Discussed with: tmm Tested with: Sun AX1105, AXe, Ultra 2, Ultra 60; PPC cross-build on i386
* Remove duplicate FreeBSD idimp2004-07-011-3/+0
|
* While this file still needs __RMAN_RESOURCE_VISIBLE to get the size ofimp2004-07-011-6/+9
| | | | | the struct resource for a malloc, it no longer needs it for the r_ elements of struct resource with this commit.
* Remove extra RMAN_RESOURCE_VISISBLEimp2004-06-301-1/+0
|
* puc needs to peek into struct resource too.imp2004-06-301-0/+1
|
* This needs __RMAN_RESOURCE_VISIBLEphk2004-06-301-1/+1
|
* Add missing <sys/module.h> includes currently relying on nested includephk2004-06-032-0/+2
| | | | in <sys/kernel.h>
* Add missing <sys/module.h> includesphk2004-05-302-0/+2
|
* Add description of Cronyx Omega2-PCI (8x port serial adapter).rik2004-05-171-0/+15
|
* Add IC Book Labs Gunboat x2 and x4 series of serial adapters.sobomax2004-04-241-0/+45
| | | | | Hardware provided by: IC Book Labs MFC After: 2 weeks
* Moved the function pointer in struct puc_device_description to the endbde2004-04-183-93/+2
| | | | | | | | of the struct, so that a placeholder for it (or unportable C99 initializers) are not needed for entries that don't use it. Use a C99 initializer for the 1 entry that uses it. Removed 91 placeholders. This also restores API compatibility with NetBSD and RELENG_4 for most entries.
* Miscellaneous style fixes, including yet another attempt to get thebde2004-04-181-21/+23
| | | | 0x1393/0x1041 entry and its bad templates right.
* Fixed some style bugs in rev.1.1 (only 2 entries were misformatted).bde2004-04-181-11/+11
|
* Fixed some style bugs (perfect tab lossage on every line) in rev.1.4.bde2004-04-181-11/+11
|
* Fixed some style bugs (misformatting) in rev.1.9.bde2004-04-181-2/+2
|
* Oops, fixed some more style bugs (tab lossage) in rev.1.28. Fixed thebde2004-04-181-12/+12
| | | | same style bug in revs.1.20, 1.18, 1.15 and 1.12.
OpenPOWER on IntegriCloud