summaryrefslogtreecommitdiff
path: root/sys/dev/aha
AgeCommit message (Collapse)Author
2018-10-22Remove aha(4) from the tree.Warner Losh
We tagged aha as gone in 12 a while ago. Proceed with its removal. Data from nycbug's database shows the last sighting of this driver in 6, with the prior one in 4.x show its popularity had died prior to 4.x. Relnotes: yes Notes: svn path=/head/; revision=339565
2018-01-29Tag the current round of deprecated drivers.Warner Losh
Differential Revision: https://reviews.freebsd.org/D13818 Notes: svn path=/head/; revision=328523
2017-12-23Create a new ISA_PNP_INFO macro. Use this macro every where we haveWarner Losh
ISA PNP card support (replace by hand version in if_ed). Move module declarations to the end of some files. Fix PCCARD_PNP_INFO to use nitems(). Remove some stale comments about pc98, turns out the comment was simply wrong. Notes: svn path=/head/; revision=327102
2017-11-27sys/dev: further adoption of SPDX licensing ID tags.Pedro F. Giffuni
Mainly focus on files that use BSD 2-Clause license, however the tool I was using misidentified many licenses so this was mostly a manual - error prone - task. The Software Package Data Exchange (SPDX) group provides a specification to make it easier for automated tools to detect and summarize well known opensource licenses. We are gradually adopting the specification, noting that the tags are considered only advisory and do not, in any way, superceed or replace the license texts. Notes: svn path=/head/; revision=326255
2017-02-19Remove dead mentions of CAM target mode APIs from drivers.Alexander Motin
This makes grepping kernel for target mode implementation much easier. Notes: svn path=/head/; revision=313949
2017-02-17Remove ahb references as well as 1640 info in aha.4Warner Losh
Notes: svn path=/head/; revision=313861
2017-02-17Remove residuals of mca supportWarner Losh
Notes: svn path=/head/; revision=313860
2017-02-15Remove Micro Channel Architecture support. Of the commonly availableWarner Losh
machines, only a few 486 machines that used it, and those haven't had enough memory to run FreeBSD for quite some time (often limited to 16MB). Not to be confused with the Machine Check Architecture, which is still very much alive and used (and untouched by this commit). No Objection From: arch@ Notes: svn path=/head/; revision=313783
2017-01-05In the same vein as r311350, fix whitespace in handling of XPT_PATH_INQ inRavi Pokala
several more drivers. Sponsored by: Panasas Notes: svn path=/head/; revision=311351
2017-01-04Always null-terminate ccb_pathinq.(sim_vid|hba_vid|dev_name)Alan Somers
The sim_vid, hba_vid, and dev_name fields of struct ccb_pathinq are fixed-length strings. AFAICT the only place they're read is in sbin/camcontrol/camcontrol.c, which assumes they'll be null-terminated. However, the kernel doesn't null-terminate them. A bunch of copy-pasted code uses strncpy to write them, and doesn't guarantee null-termination. For at least 4 drivers (mpr, mps, ciss, and hyperv), the hba_vid field actually overflows. You can see the result by doing "camcontrol negotiate da0 -v". This change null-terminates those fields everywhere they're set in the kernel. It also shortens a few strings to ensure they'll fit within the 16-character field. PR: 215474 Reported by: Coverity CID: 1009997 1010000 1010001 1010002 1010003 1010004 1010005 CID: 1331519 1010006 1215097 1010007 1288967 1010008 1306000 CID: 1211924 1010009 1010010 1010011 1010012 1010013 1010014 CID: 1147190 1010017 1010016 1010018 1216435 1010020 1010021 CID: 1010022 1009666 1018185 1010023 1010025 1010026 1010027 CID: 1010028 1010029 1010030 1010031 1010033 1018186 1018187 CID: 1010035 1010036 1010042 1010041 1010040 1010039 Reviewed by: imp, sephe, slm MFC after: 4 weeks Sponsored by: Spectra Logic Corp Differential Revision: https://reviews.freebsd.org/D9037 Differential Revision: https://reviews.freebsd.org/D9038 Notes: svn path=/head/; revision=311305
2016-05-03sys/dev: minor spelling fixes.Pedro F. Giffuni
Most affect comments, very few have user-visible effects. Notes: svn path=/head/; revision=298955
2016-04-19sys/dev: use our nitems() macro when it is avaliable through param.h.Pedro F. Giffuni
No functional change, only trivial cases are done in this sweep, Drivers that can get further enhancements will be done independently. Discussed in: freebsd-current Notes: svn path=/head/; revision=298307
2016-02-27Migrate many bus_alloc_resource() calls to bus_alloc_resource_anywhere().Justin Hibbits
Most calls to bus_alloc_resource() use "anywhere" as the range, with a given count. Migrate these to use the new bus_alloc_resource_anywhere() API. Reviewed by: jhb Differential Revision: https://reviews.freebsd.org/D5370 Notes: svn path=/head/; revision=296137
2015-03-22Remove MAXBSIZE use from drivers where it has nothing to do.Alexander Motin
In some cases limits are just not needed, in others -- DFLTPHYS is the right constant to use instead. MFC after: 1 month Notes: svn path=/head/; revision=280347
2014-11-21Prevent overflow issues in timeout processingSteven Hartland
Previously, any timeout value for which (timeout * hz) will overflow the signed integer, will give weird results, since callout(9) routines will convert negative values of ticks to '1'. For unsigned integer overflow we will get sufficiently smaller timeout values than expected. Switch from callout_reset, which requires conversion to int based ticks to callout_reset_sbt to avoid this. Also correct isci to correctly resolve ccb timeout. This was based on the original work done by Eygene Ryabinkin <rea@freebsd.org> back in 5 Aug 2011 which used a macro to help avoid the overlow. Differential Revision: https://reviews.freebsd.org/D1157 Reviewed by: mav, davide MFC after: 1 month Sponsored by: Multiplay Notes: svn path=/head/; revision=274819
2014-06-11Fix a few more drivers that were explicitly destroying the bus_dmaJohn Baldwin
map created by bus_dmamem_alloc(). Notes: svn path=/head/; revision=267365
2014-01-19Free the dma memory from the dma map before destroying the dma map.Warner Losh
Notes: svn path=/head/; revision=260893
2013-10-22Fix memory and references leak due to unfreed path.Alexander Motin
Coverity CID: 1109817 Notes: svn path=/head/; revision=256887
2013-02-12Reform the busdma API so that new types may be added without modifyingKonstantin Belousov
every architecture's busdma_machdep.c. It is done by unifying the bus_dmamap_load_buffer() routines so that they may be called from MI code. The MD busdma is then given a chance to do any final processing in the complete() callback. The cam changes unify the bus_dmamap_load* handling in cam drivers. The arm and mips implementations are updated to track virtual addresses for sync(). Previously this was done in a type specific way. Now it is done in a generic way by recording the list of virtuals in the map. Submitted by: jeff (sponsored by EMC/Isilon) Reviewed by: kan (previous version), scottl, mjacob (isp(4), no objections for target mode changes) Discussed with: ian (arm changes) Tested by: marius (sparc64), mips (jmallet), isci(4) on x86 (jharris), amd64 (Fabian Keil <freebsd-listen@fabiankeil.de>) Notes: svn path=/head/; revision=246713
2012-10-16Fix aha(4) build with i386 LINT (which includes 'device mca').Sergey Kandaurov
Notes: svn path=/head/; revision=241611
2012-10-16Fix build of aha(4).Gleb Smirnoff
Submitted by: delphij Notes: svn path=/head/; revision=241603
2012-10-15Add locking to the aha(4) driver and mark it MPSAFE.John Baldwin
- Remove use of explicit bus space handles and tags. Tested by: no one Notes: svn path=/head/; revision=241589
2008-10-07Pass bus_get_dma_tag() into the first argument of bus_dma_create_tag()Warner Losh
rather than NULL. Notes: svn path=/head/; revision=183678
2008-08-10Minor typo fix, caught while skimming through the file.Giorgos Keramidas
Notes: svn path=/head/; revision=181530
2007-06-17Prepare for future integration between CAM and newbus. xpt_bus_registerScott Long
now takes a device_t to be the parent of the bus that is being created. Most SIMs have been updated with a reasonable argument, but a few exceptions just pass NULL for now. This argument isn't used yet and the newbus integration likely won't be ready until after 7.0-RELEASE. Notes: svn path=/head/; revision=170872
2007-04-15Remove Giant from CAM. Drivers (SIMs) now register a mutex that CAM willScott Long
use to synchornize and protect all data objects that are used for that SIM. Drivers that are not yet MPSAFE register Giant and operate as usual. RIght now, no drivers are MPSAFE, though a few will be changed in the coming week as this work settles down. The driver API has changed, so all CAM drivers will need to be recompiled. The userland API has not changed, so tools like camcontrol do not need to be recompiled. Notes: svn path=/head/; revision=168752
2007-02-23 o break newbus api: add a new argument of type driver_filter_t toPaolo Pisati
bus_setup_intr() o add an int return code to all fast handlers o retire INTR_FAST/IH_FAST For more info: http://docs.freebsd.org/cgi/getmsg.cgi?fetch=465712+0+current/freebsd-current Approved by: re (implicit?) Notes: svn path=/head/; revision=166906
2007-02-23o break newbus api: add a new argument of type driver_filter_t toPaolo Pisati
bus_setup_intr() o add an int return code to all fast handlers o retire INTR_FAST/IH_FAST For more info: http://docs.freebsd.org/cgi/getmsg.cgi?fetch=465712+0+current/freebsd-current Reviewed by: many Approved by: re@ Notes: svn path=/head/; revision=166901
2006-12-11Add MODULE_DEPENDS for cam, pci, mca, eisa and isa where needed.Matt Jacob
PR: 106543 MFC after: 3 days Notes: svn path=/head/; revision=165102
2006-11-09Remove unused structures.Kevin Lo
Reviewed by: cognet and imp Approved by: cognet and imp Notes: svn path=/head/; revision=164110
2006-11-022nd and final commit that moves us to CAM_NEW_TRAN_CODEMatt Jacob
as the default. Reviewed by multitudes. Notes: svn path=/head/; revision=163896
2006-10-31The first of 3 major steps to move the CAM layer forward to usingMatt Jacob
the CAM_NEW_TRAN_CODE that has been in the tree for some years now. This first step consists solely of adding to or correcting CAM_NEW_TRAN_CODE pieces in the kernel source tree such that a both a GENERIC (at least on i386) and a LINT build with CAM_NEW_TRAN_CODE as an option will compile correctly and run (at least with some the h/w I have). After a short settle time, the other pieces (making CAM_NEW_TRAN_CODE the default and updating libcam and camcontrol) will be brought in. This will be an incompatible change in that the size of structures related to XPT_PATH_INQ and XPT_{GET,SET}_TRAN_SETTINGS change in both size and content. However, basic system operation and basic system utilities work well enough with this change. Reviewed by: freebsd-scsi and specific stakeholders Notes: svn path=/head/; revision=163816
2006-03-24Add explicit dependency on cam. This is necessary when both aha.ko andWarner Losh
cam.ko are modules so that aha.ko's undefined symbols can be satisfied by cam.ko. Sumitted by: nork Reviewed by: scottl Notes: svn path=/head/; revision=157085
2005-05-29Remove bus_{mem,p}io.h and related code for a micro-optimization on i386Yoshihiro Takahashi
and amd64. The optimization is a trivial on recent machines. Reviewed by: -arch (imp, marcel, dfr) Notes: svn path=/head/; revision=146734
2005-01-19Simplify aha resource management, and fix a few bugs in unwindingWarner Losh
error cases. Notes: svn path=/head/; revision=140467
2005-01-11Use the standard FreeBSD licenseWarner Losh
Notes: svn path=/head/; revision=140040
2005-01-11nitsWarner Losh
Notes: svn path=/head/; revision=140039
2005-01-11Final attempt to make aha 1542A working. If not, oh well, I don'tWarner Losh
have the card and no way to reproduce problems. We do this by applying the workaround to firmware revsion 0. PR: 14334 Notes: svn path=/head/; revision=140025
2005-01-06Start each of the license/copyright comments with /*-, minor shuffle of linesWarner Losh
Notes: svn path=/head/; revision=139749
2004-11-12Various whitespace nits.Warner Losh
Noticed by: njl Notes: svn path=/head/; revision=137599
2004-11-12Don't use aha after calling aha_free.Warner Losh
Notes: svn path=/head/; revision=137598
2004-09-15#include <isa/isavar.h> instead of <i386/isa/isa_dma.h>Poul-Henning Kamp
Notes: svn path=/head/; revision=135260
2004-03-17Convert callers to the new bus_alloc_resource_any(9) API.Nate Lawson
Submitted by: Mark Santcroos <marks@ripe.net> Reviewed by: imp, dfr, bde Notes: svn path=/head/; revision=127135
2003-11-13Save the device so we can do a device_printf.Warner Losh
Use this in preference to aha_name. Remove aha_name function and #define it to device_get_unitname() Minor indentation tweaks resulting therefrom Notes: svn path=/head/; revision=122597
2003-11-12Minor diff reduction with p4Warner Losh
Notes: svn path=/head/; revision=122535
2003-11-10Move 'guessing' code from the probe into the identify routine where it moreWarner Losh
properly belongs. Notes: svn path=/head/; revision=122385
2003-11-09Tweak the front end driver file listWarner Losh
Also some minor whitespace nits. Notes: svn path=/head/; revision=122363
2003-11-09Add my copyright to aha_isa.c to make it crystal clear its licenseWarner Losh
Notes: svn path=/head/; revision=122362
2003-11-09Let bus space manage softc.Warner Losh
Notes: svn path=/head/; revision=122361
2003-11-09Minor tweaks to make it behave better:Warner Losh
o When we're resetting the board, make sure that we error out the pending CCBs first. Otherwise the aha_cmd won't accept further commands, such as those that are used to reset the card (AOP_INITIALIZE_MBOX). This appears to cause a cascade failure where no more commands are possible to the card. o Reduce from 10s down to 1s the amount of time we're willing to tolerate the card being awol. This helps the above case. o Add some error checking to two commands issued in the probe. I have a dim memory of gibbs@ trying to tell me about this problem a few years ago, so pointy hat to imp@ for sitting on it so long. Notes: svn path=/head/; revision=122360