summaryrefslogtreecommitdiffstats
path: root/sys/dev
Commit message (Collapse)AuthorAgeFilesLines
* Add Marvell PHYG65G Gigabit PHY which is found on 88E8059 Yukon Optima.yongari2010-04-302-0/+3
| | | | | Tested by: James LaLagna < jameslalagna <> gmail dot com > MFC after: 5 days
* Add basic support for Marvell 88E8059 Yukon Optima.yongari2010-04-302-3/+23
| | | | | Tested by: James LaLagna < jameslalagna <> gmail dot com > MFC after: 5 days
* Disable non-ASF packet flushing on Yukon Extreme as vendor's driveryongari2010-04-302-0/+7
| | | | | | | | | | | | | does. Without this change, Yukon Extreme seems to generate lots of RX FIFO overruns even though controller has available RX buffers. These excessive RX FIFO overruns generated lots of pause frames which in turn killed devices plugged into switch. It seems there is still occasional RX frame corruption on Yukon Extreme but this change seems to fix the pause frame storm. Reported by: jhb Tested by: jhb MFC after: 5 days
* Add Target/LUN ID checks.mav2010-04-301-39/+26
|
* Add Target/LUN ID checks and deny access to targets 1-14 when PMP absent.mav2010-04-301-39/+28
|
* Add Target/LUN ID checks and deny access to targets 1-14 when PMP absent.mav2010-04-301-39/+30
| | | | Enforce PMA bit clearing when PMP detached to avoid further scan timeouts.
* - Enable flow control.davidch2010-04-302-791/+962
| | | | | | | | | | | | | | | - Print device details only when verbose boot is enabled. - Add debug output for shared memory access. - Add debug statistics (checksum offload & VLAN frame counters). - Modify TX path to update consumer index for each frame completed rather than updating the consumer index only once for a group of frames to improve small packet performance. - Print driver/firmware pulse messages only when verbose boot is enabled. - Add debug sysctl to clear statistics. - Fix more style(9) violations. MFC after: 2 weeks
* On Alan's advice, rather than do a wholesale conversion on a singlekmacy2010-04-301-0/+2
| | | | | | | | | | | | architecture from page queue lock to a hashed array of page locks (based on a patch by Jeff Roberson), I've implemented page lock support in the MI code and have only moved vm_page's hold_count out from under page queue mutex to page lock. This changes pmap_extract_and_hold on all pmaps. Supported by: Bitgravity Inc. Discussed with: alc, jeffr, and kib
* Both RX_GMF_LP_THR and RX_GMF_UP_THR must be 16 bits register. Ifyongari2010-04-302-4/+4
| | | | | it is 8bits register then RX FIFO size can't exceed 2KB which is not true for almost all Yukon II controller.
* - Pass flow control settings back to bce(4).davidch2010-04-291-6/+4
| | | | MFC after: Two weeks
* Enable VLAN hardware tag insertion/stripping. Due to lack of SiS190yongari2010-04-292-6/+60
| | | | | | | | | | | | | | controller, I'm not sure whether this is also applicable to SiS190 so this feature is only activated on SiS191 controller. In theory, controller reinitialization is not needed when VLAN tag configuration is changed, but xclin said controller was not stable whenever toggling VLAN tag bit. To address that, sge(4) reinitialize controller for VLAN configuration which seems to work as expected. VLAN tag information for TX/RX descriptor and configure bit of RxMacControl register was found by xclin. Submitted by: xclin <xclin <> cs dot nctu dot edu dot tw > (initial version) Tested by: xclin <xclin <> cs dot nctu dot edu dot tw >
* Enable FCS stripping and padding 10 bytes bit of RX MAC controlyongari2010-04-292-5/+32
| | | | | | | | | | | | | | | | | | | | register. Due to lack of SiS190 controller, I'm not sure whether this is also applicable to SiS190 so this feature is only activated on SiS191 controller. The controller can pad 10 bytes before DMAing a received frame to RX buffer and received bytes include the padded bytes. This padding is very useful on strict-alignment architectures because driver does not have to copy received frame to align IP header on 4 bytes boundary. It also gives better RX performance on non-strict alignment architectures. Special thanks to xclin to give me valuable register information. Without his enthusiastic trial and errors this wouldn't be even possible. While I'm here tighten validity check of received frame. Controller clears RDS_CRCOK bit when it received bad CRC frames. xclin found that using loop back testing. Tested by: xclin <xclin <> cs dot nctu dot edu dot tw >
* Explicitly marks SiS190 to differentiate it from SiS191.yongari2010-04-292-1/+2
|
* Remove wrong link state chage.yongari2010-04-291-1/+0
|
* Preserve unknown bits of RX MAC control register when driveryongari2010-04-291-15/+16
| | | | | | | | | programs RX filter configuration. It seems RX MAC control register is one of key registers to get various offloading features as well as performance. Blindly clearing unrelated bits can result in unexpected results. Tested by: xclin <xclin <> cs dot nctu dot edu dot tw >
* On certain chipsets AT keyboard controller isn't present and issobomax2010-04-294-16/+69
| | | | | | | | | | | | | | | | | | | | emulated by BIOS using SMI interrupt. On those chipsets reading from the status port may be thousand times slower than usually. Sometimes this emilation is not working properly resulting in commands timing out and since we assume that inb() operation takes very little time to complete we need to adjust number of retries to keep waiting time within a designed limits (100ms). Measure time it takes to make read_status() call and adjust number of retries accordingly. To keep it simple, use TSC to measure inb() performance and keep it to amd64-only, since TSC may not available on older CPUs. Also enable detection of the AT controller absence on amd64. Reviewed by: jhb MFC after: 1 month
* Merge ACPICA 20100428.jkim2010-04-281-15/+10
|
* Address the LOD that some are seeing, put the RX lockjfv2010-04-281-10/+13
| | | | | | | | back in rxeof (I could see little point in taking it out), and now release it before the stack entry. Also, make it so the 82574 does not configure for multiqueue when its not used in the stack.
* Initialize the callout structure earlier in attach before calling anyjhb2010-04-281-1/+1
| | | | | routines that can fail since ciss_free() always tries to stop and drain the callout.
* Change default WOL back to MAGIC only, havingjfv2010-04-281-2/+2
| | | | multicast enabled causes problems in man environments.
* Remove dead code. Calculated greatest common divisor was not used at all.jkim2010-04-281-11/+0
| | | | | | | | | On top of that, LLVM+Clang mis-compiles this code because of its register allocator bug. Analyzed by: Andrew Reilly (areilly at bigpond dot net dot au) Reviewed by: ariff, rdivacky MFC after: 3 days
* - Extract the IODEV_PIO interface from ia64 and make it MI.attilio2010-04-282-9/+181
| | | | | | | | | | | | | | | | In the end, it does help fixing /dev/io usage from multithreaded processes. - On i386 and amd64 the old behaviour is kept but multithreaded processes must use the new interface in order to work well. - Support for the other architectures is greatly improved, where necessary, by the necessity to define very small things now. Manpage update will happen shortly. Sponsored by: Sandvine Incorporated PR: threads/116181 Reviewed by: emaste, marcel MFC after: 3 weeks
* fx->lock is used as an index, correct test case.rnoland2010-04-281-1/+1
| | | | MFC after: 1 week
* On sparc64 obtain the initiator ID to be used for SPI HBAs from themarius2010-04-273-1/+16
| | | | | | | | Open Firmware device tree in order to match what the PROM built-in driver uses. This is especially important when netbooting Fujitsu Siemens PRIMEPOWER250 as in that case the built-in driver isn't used and the port facts PortSCSIID defaults to 0, conflicting with the disk at the same address.
* Replace a magic value with the appropriate macro.marius2010-04-271-2/+3
|
* - On sparc64 obtain the initiator ID from the Open Firmware device treemarius2010-04-271-4/+9
| | | | | in order to match what the PROM built-in driver uses. - Remove some no longer used includes.
* Take advantage of OF_getscsinitid().marius2010-04-271-3/+1
|
* It seems ale(4) controllers do not like to see TCP payload in theyongari2010-04-261-4/+33
| | | | | | | | | | | | first descriptor in TSO case. Otherwise controller can generate bad frames during TSO. To address it, make sure to pull up ethernet + IP + TCP header with options in first buffer. Also ensure the buffer length of the first descriptor for TSO covers entire ethernet + IP + TCP with options and setup additional Tx descriptor if the first buffer includes TCP payload. Tested by: Amar Takhar <verm <> darkbeer dot org > MFC after: 1 week
* For the on-board interfaces found in Fujitsu SPARC64 machines obtain themarius2010-04-261-1/+1
| | | | MAC address via OFW as well.
* Mark ATA channel as idle on timeout in non-ATA_CAM mode.mav2010-04-261-1/+1
| | | | | | This should fix possible duplicate request completion. Submitted by: mjacob
* ifp->if_ipackets++ when RX packet interrupts are occurred.weongyo2010-04-241-0/+2
| | | | MFC after: 3 days
* remove vm obect tracker that slipped in from prior work.rnoland2010-04-241-1/+0
| | | | MFC after: 2 weeks
* Address some WITNESS panics that occur when using the via driver.rnoland2010-04-234-8/+10
| | | | | | | | Some of these cases should be safe in a non-atomic fashion, however since all of the driver ioctls are locked, a lot of work is required to fix it correctly. Just don't sleep now. MFC after: 2 weeks
* Use a more obvious prefix for the USB control (endpoint 0) transfers ratherthompsa2010-04-229-55/+55
| | | | than default_*.
* Properly name the sxlocks, mutexes and condvars.thompsa2010-04-225-31/+33
|
* Use SX_DUPOK rather than making the string unique.thompsa2010-04-221-2/+2
|
* Change USB_DEBUG to #ifdef and allow it to be turned off. Previously this hadthompsa2010-04-2240-106/+103
| | | | | | the illusion of a tunable setting but was always turned on regardless. MFC after: 1 week
* Intialize interrupt moderation control register. The magic valueyongari2010-04-221-0/+3
| | | | | | | | | was chosen by lots of trial and errors. The chosen value shows good interrupt moderation without additional latency. Without this change, controller can generate more than 140k interrupts per second under high network load. Submitted by: xclin <xclin <> cs dot nctu dot edu dot tw >
* Now that we properly set write-combining on the pages that back the GART,rnoland2010-04-222-5/+8
| | | | | | disable snooping on radeons. MFC after: 2 weeks
* re-write scatter gather memory allocation yet again...rnoland2010-04-226-113/+62
| | | | | | | | | | This time, abandon the use of busdma and start interacting with the VM system directly. Make use of the new kmem_alloc_attr() which allows us to easily allocate non-contiguous pages to back the GART table. This should help a lot when starting or restarting X after the system has been running for a while and memory has become fragmented. MFC after: 2 weeks
* Rework how drm maps are handled.rnoland2010-04-2223-168/+201
| | | | | | | | | | | | * On 32 bit platforms we steal the upper 4 bits of the map handle to store a unique map id. * On 64 bit platforms we steal the upper 24 bits. Resolves issues where the offsets that are handed to mmap may overlap the VRAM on some cards. Tested on: radeon, intel, mga, and via. This will break nouveau. I will spin new patches shortly.
* Also add the usb mode to the devd string as the usb controller can work in boththompsa2010-04-211-0/+4
| | | | | | host or device (gadget) modes. Suggested by: HPS
* Change usb devd events from fake attach to a notify. The ugen device is not athompsa2010-04-211-4/+94
| | | | | | | | | | | | | | | | | | | | | | | | | | | | proper device_t so it faked the devctl event to appear like one, this is now a notify which allows more information to be passed. We notify for both the device attach/detach and for each usb interface. A devd rule can now match on the interface properties, including composite devices which may have a uvideo interface and also usound and possibly uhid too. An example to match a umass device with a scsi subclass and BBB protocol would be notify 100 { match "system" "USB"; match "subsystem" "INTERFACE"; match "type" "ATTACH"; match "intclass" "0x08"; match "intsubclass" "0x06"; match "intprotocol" "0x50"; action ... }; The old attach devctl event has been retained for the moment to make merging to 8.1 easier. This was never compatible with 7.x or earlier due to the ugen regex change needed. Reviewed by: warner MFC after: 1 week
* Use correct bus_dma_tag_t for TX frames.bschmidt2010-04-211-2/+4
| | | | | | Reported by: Andreas Nilsson <andrnils at gmail.com> Approved by: rpaulo (mentor) MFC after: 3 days
* It's not necessary to reset the chip every time an input overflow eventbrucec2010-04-201-12/+3
| | | | | | | | | | occurs. In addition, the delay when programming the short cable fix should be 100us, not 100ms. PR: kern/64556 Submitted by: Thomas Hurst <tom at hur.st> Approved by: rrs (mentor) MFC after: 1 week
* With r206844, CSUM_TCP is also set for CSUM_TSO case. Modifyyongari2010-04-196-133/+125
| | | | | drivers to take into account for the change. Basically CSUM_TSO should be checked before checking CSUM_TCP.
* Revert r206755. It causes some laptops to stop booting.rpaulo2010-04-191-1/+0
|
* Remove IPW_LOCK_DECL and fix various LORs.bschmidt2010-04-172-22/+16
| | | | Approved by: rpaulo (mentor)
* Use iv_appie_wpa, with this commit WPA works again.bschmidt2010-04-171-2/+2
| | | | Approved by: rpaulo (mentor)
* - Make ipw usable again by moving directly into ASSOC state.bschmidt2010-04-171-1/+7
| | | | | | | - No need to manually switch to RUN state, assoc response takes care of that. Approved by: rpaulo (mentor)
OpenPOWER on IntegriCloud