summaryrefslogtreecommitdiff
path: root/sys/dev
AgeCommit message (Collapse)Author
2011-04-14Add several additional adapter types and correct definition ofJonathan Gray
RTL8103E, from FreeBSD. ok sthen@
2011-04-14Spacing nit.Owain Ainsworth
2011-04-14For the time being repost Intel clarkdale IGD.Owain Ainsworth
Arrandale (on laptop i3 and i5) was already doing this, but Clarkdale (the desktop chipsets) wasn't. This gives mikeb@'s desktop a chance to get the video back on resume. While here, remove the vendor/subvendor ids from the Arrandale entry. Just because someone doesn't have the same laptops as tested doesn't mean inteldrm magically has the ability to restore the graphics chip. This is possible to do without repost but fiddly and will take me a while to sort out, so just repost the whole sodding lot for now. ok ketteis@, deraadt@, mikeb@
2011-04-14Make RAIDFRAME compilepea
ok miod@
2011-04-14Reducing number of call update_leds().Alexandr Shadchin
Updating state LED only when necessary. ok krw@
2011-04-14do not disable interrupts in the isr and then enable them againDavid Gwynne
when leaving. when you're handling an interrupt it is masked. whacking the chip is work for no gain. modify the interrupt handler so it only processes the rings once, rather than looping over them until it runs out of work to do. looping in the isr is bad for several reasons: firstly, the chip does interrupt mitigation so you have a decent/predictable amount of work to do in the isr. your first loop will do that chunk of work (ie, it pulls off 50ish packets), and then the successive looping aggressively pull one or two packets off the rx ring. these extra loops work against the benefit that interrupt mitigation provides. bus space reads are slow. we should avoid doing them where possible (but we should always do them when necessary). doing the loop 5 times per isr works against the mclgeti semantics. it knows a nic is busy and therefore needs more rx descriptors by watching to see when the nic uses all of its descriptors between interrupts. if we're aggressively pulling packets off by looping in the isr then we're skewing this check. ok henning@ krw@ testing by sthen@
2011-04-14stray spaceMarco Peereboom
2011-04-14Ignore scsi start stop instead of trying to be clever. A softraidMarco Peereboom
discipline should always reflect the correct status. This fixes unexpected state changes jordan saw.
2011-04-13wskbd_holdscreen() is not needed and can be removedAlexandr Shadchin
ok miod@
2011-04-13to quote from the gospel of bus_dma.9:David Gwynne
Synchronization operations are expressed from the perspective of the host RAM, e.g., a device -> memory operation is a READ and a memory -> device operation is a WRITE. the status block that the isr reads is written to by the device. the chip writes to memory, it is therefore a READ. this also adds the preread sync when the map is set up and the postread sync when the map is torn down for better symmetry. there are probably more issues like this in the code, but this is a start. discovered while discussing another diff with claudio@
2011-04-13modify the interrupt handler so it only processes the rings once,David Gwynne
rather than looping over them until it runs out of work to do. looping in the isr is bad for several reasons: firstly, the chip does interrupt mitigation so you have a decent/predictable amount of work to do in the isr. your first loop will do that chunk of work (ie, it pulls off 50ish packets), and then the successive looping aggressively pull one or two packets off the rx ring. these extra loops work against the benefit that interrupt mitigation provides. bus space reads are slow. we should avoid doing them where possible (but we should always do them when necessary). doing the loop 5 times per isr works against the mclgeti semantics. it knows a nic is busy and therefore needs more rx descriptors by watching to see when the nic uses all of its descriptors between interrupts. if we're aggressively pulling packets off by looping in the isr then we're skewing this check. ok deraadt@ claudio@ this is like src/sys/dev/pci/if_ix.c r1.50.
2011-04-13modify the interrupt handler so it only processes the rings once, ratherDavid Gwynne
than looping over them until it runs out of work to do. in my testing i have found that under what i consider high pps (>160kpps) ix would loop 4 or 5 times in the interrupt handler, where each loop does a bus_space_read and the mclgeti loop (ie, rx dequeue followed by rx ring fill). looping in the isr is bad for several reasons: firstly, the chip does interrupt mitigation so you have a decent/predictable amount of work to do in the isr. your first loop will do that chunk of work (ie, it pulls off 50ish packets), and then the successive looping aggressively pull one or two packets off the rx ring. these extra loops work against the benefit that interrupt mitigation provides. bus space reads are slow. we should avoid doing them where possible (but we should always do them when necessary). doing the loop 5 times per isr works against the mclgeti semantics. it knows a nic is busy and therefore needs more rx descriptors by watching to see when the nic uses all of its descriptors between interrupts. if we're aggressively pulling packets off by looping in the isr then we're skewing this check. ok deraadt@ claudio@ testing by phessler@ bluhm@ and me in production
2011-04-12regenJonathan Gray
2011-04-12add some entries from submitted dmesgsJonathan Gray
2011-04-12We need to delay 10msec after changing to/from D3 state. note: There areTheo de Raadt
some broken intel chipsets that require longer delays, we will cope with that later hopefully. ok kettenis
2011-04-12Fix uninitialized variable access introduced in 1.58, causing read accessMiod Vallat
to possibly favor the mirror instead of the main ccd by incorrectly considering the main ccd is in the failure state, for interleaved+mirrored ccds. ok deraadt@
2011-04-11Fix SPL handling when PCDISPLAY_SOFTCURSOR is enabled.Matthew Dempsky
Discovered, narrowed down, and tested by jmc@. "definitely commit that" deraadt@, ok miod@
2011-04-11uncompressed video formats have a fixed per-pixel bit depth, whichJacob Meuser
means the data size of a frame can be calculated if the dimensions are known. * calculate frame data sizes for uncompressed formats instead of believing what the hardware says. the UVC spec changed between 1.0 and 1.1, and as a result, some devices return bogus information. * skip under-sized as well as over-sized uncompressed frames; there is only one correct size for uncompressed frames. * remove quirk to fix uncompressed frame sizes on certain devices, since that now always happens. * check that the device is actually using the parameters we think it's using.
2011-04-10Merge viapm and viaenvAlexandr Shadchin
Pluses: - Add support SMBus for VT82C596, VT82C596B, VT82C686A, VT8231 - Add support ACPI timer for all VIA South Bridges ok deraadt@, tested sthen@
2011-04-10bring back changes in r 1.192:Jacob Meuser
detach happens after the hardware is gone, so don't try to touch the hardware in the detach path but azalia_pci_detach is called if the device coiuld not be initialized. in that case, shut the hardware down.
2011-04-09add all 64 bit dma plumbing but stick with 32 for now by default.Marco Peereboom
ok deraadt
2011-04-09use unique wait channelsTheo de Raadt
2011-04-09make sure the upper 32 bits are always written to instead of assuming itMarco Peereboom
is 0. ok deraadt.
2011-04-08backout previous (which has some interrupt spin problem, sort of diagnosedTheo de Raadt
by claudio to be related to this commit) until jakemsr has time to fix it
2011-04-08more spacesMarco Peereboom
2011-04-08kill some stray spacesMarco Peereboom
2011-04-08rename wiat channel to something less than 8 chars.Marco Peereboom
prompted by deraadt
2011-04-08use dma_alloc for transient management commands.Marco Peereboom
prodded and ok deraadt
2011-04-08Remove unused code/arrayJordan Hargrave
2011-04-08one dma_free() was mistakenly left as free()Theo de Raadt
2011-04-08Fix raidp/raid6 to work with new iopool code, needed to swap wu'sJordan Hargrave
Update to use dma_malloc for I/O blocks ok marco@
2011-04-07Fix uninitialized name and x variables in setfanJordan Hargrave
2011-04-07Revert prior diff that I ok because I don't know how to read. Real fixMarco Peereboom
coming soon after this revert. ok jordan
2011-04-07Fix device names in acpitz_setfan() printf messages, which got broken inMiod Vallat
1.32. ok marco@
2011-04-07Do not use NULL in integer comparisons. No functional change.Miod Vallat
ok matthew@ tedu@, also eyeballed by at least krw@ oga@ kettenis@ jsg@
2011-04-07Prepare to add support Synaptics touchpadsAlexandr Shadchin
ok miod@
2011-04-07Avoid using an uninitialized variable when downgrading PIO mode too much onMiod Vallat
ITExpress chipsets. (similar to 1.243, with a deja vu)
2011-04-07Make sure the eeprom pointer is correctly initialized inMiod Vallat
ar9380_spur_mitigate_ofdm().
2011-04-07Iopoolification of another once common bus/device.Kenneth R Westerback
2011-04-06Don't enumerate _DOD for attaching acpivout(4), since:Martynas Venckus
- ACPI spec. says _DOD is not required for brightness controls, - The list returned by _DOD might be wrong, - It's an unnecessary work to do. Instead, decision to attach will be based on the actual methods found, similarly like in the other ACPI drivers. Tested by several on tech@. OK kettenis@, marco@, pirofti@. pirofti@ asked me to note here that devices not supporting brightness controls won't attach from now on. This shouldn't be a concern for you, since such devices weren't doing anything at all, anyway.
2011-04-06Correctly protect the arguments of the AIC_ASSERT() macro.Miod Vallat
2011-04-06fix installboot.Marco Peereboom
ok jsing
2011-04-06move ips to iopools. its the usual drill, io between volumes is nowDavid Gwynne
scheduled better, ioctl paths are more reliable, and it removes NO_CCB. ok krw@
2011-04-06add a new "serial" devid type for scsi devices. add code to usb that fakesDavid Gwynne
it up by using the usb devices iSerial thing. ok deraadt@
2011-04-06make crypto work with bigmemMarco Peereboom
2011-04-06fix some spaces while looking for bigmem shizMarco Peereboom
2011-04-06make rebuild also work in bigmemMarco Peereboom
2011-04-06handle bigmem for metadata reads and writes. this should be pre allocatedMarco Peereboom
but for now this allows us to move forward.
2011-04-05pull the dmamam wrapper in from all my other drivers and use it to replaceDavid Gwynne
the siop command buffers and add dmaable buffers for sense data. matthew@ found that siop used to try to dma to the xs->sense bufer, which is not guaranteed to be dma safe. tested by matthew@ kettenis@
2011-04-05binary vs logical or, found by clangJonathan Gray
ok mikeb@ deraadt@