aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/aic7xxx
Commit message (Collapse)AuthorAgeFilesLines
* aic7xxx: Do not support device IDs 0x8081, 0x8088 and 0x8089 to avoidAchim Leubner2015-06-051-0/+14
| | | | | | | conflicts with the new PMC Adaptec controller families supported by aacraid Notes: svn path=/head/; revision=284022
* shared_scb_data set, but never used, remove it.Warner Losh2014-08-081-2/+0
| | | | Notes: svn path=/head/; revision=269710
* Fix a few more drivers that were explicitly destroying the bus_dmaJohn Baldwin2014-06-112-8/+0
| | | | | | | map created by bus_dmamem_alloc(). Notes: svn path=/head/; revision=267365
* NO_MAN= has been deprecated in favor of MAN= for some time, go aheadWarner Losh2014-04-131-1/+1
| | | | | | | | | and finish the job. ncurses is now the only Makefile in the tree that uses it since it wasn't a simple mechanical change, and will be addressed in a future commit. Notes: svn path=/head/; revision=264400
* Remove instances of variables that were set, but never used. gcc 4.9Warner Losh2014-03-301-16/+9
| | | | | | | warns about these by default. Notes: svn path=/head/; revision=263954
* Don't complain about missing prototypes to ease bootstrap issues.Warner Losh2014-02-271-0/+1
| | | | Notes: svn path=/head/; revision=262549
* Remove aicasm as a build dependency. It made sense when the ahc and ahdScott Long2014-01-076-0/+13478
| | | | | | | | | | | | | | | drivers and their firmware were under active development, but those days have passed. The firmware now exists in pre-compiled form, no longer dependent on it's sources or on aicasm. If you wish to rebuild the firmware from source, the glue still exists under the 'make firmware' target in sys/modules/aic7xxx. This also fixes the problem introduced with r257777 et al with building kernels the old fashioned way in sys/$arch/compile/$CONFIG when the ahc/ahd drivers were included. Notes: svn path=/head/; revision=260401
* Remove another unused static const variable num_chip_names, fromDimitry Andric2013-12-241-1/+0
| | | | | | | | | | aic7xxx.c this time. Noticed by: pluknet MFC after: 3 days Notes: svn path=/head/; revision=259833
* Remove unused static const variable num_chip_names from aic79xx.c.Dimitry Andric2013-12-241-1/+0
| | | | | | | | Reviewed by: gibbs MFC after: 3 days Notes: svn path=/head/; revision=259827
* Rework the aicasm build machinery so that it gets built along with toolchainIan Lepore2013-11-041-2/+6
| | | | | | | | | | | | | components instead of with the kernel and/or modules. This ensures that it gets built with the host compiler, not the compiler in obj/... used to build the target components (which may be a cross-compiler outputting code for a different architecture and using header files with types and options set up for the wrong architecture). Reviewed by: imp Notes: svn path=/head/; revision=257637
* Partial MFproject/camlock r256671:Alexander Motin2013-10-212-4/+4
| | | | | | | | Fix several target mode SIMs to not blindly clear ccb_h.flags field of ATIO CCBs. Not all CCB flags there belong to them. Notes: svn path=/head/; revision=256826
* Update PCI drivers to no longer look at the MEMIO-enabled bit in the PCIScott Long2013-08-122-27/+4
| | | | | | | | | | | | | | | | | | | | command register. The lazy BAR allocation code in FreeBSD sometimes disables this bit when it detects a range conflict, and will re-enable it on demand when a driver allocates the BAR. Thus, the bit is no longer a reliable indication of capability, and should not be checked. This results in the elimination of a lot of code from drivers, and also gives the opportunity to simplify a lot of drivers to use a helper API to set the busmaster enable bit. This changes fixes some recent reports of disk controllers and their associated drives/enclosures disappearing during boot. Submitted by: jhb Reviewed by: jfv, marius, achadd, achim MFC after: 1 day Notes: svn path=/head/; revision=254263
* Match function definition to declaration and call-site.Ulrich Spörlein2013-07-251-3/+3
| | | | | | | | | | | | SVN r95378 refactored ahc_9005_subdevinfo_valid out into a separate function but swapped the vendor/subvendor and device/subdevice pairs of the parameters. Found by: Coverity Prevent, CID 744931 Reviewed by: gibbs Notes: svn path=/head/; revision=253646
* Fxi a bunch of typos.Eitan Adler2013-05-101-1/+1
| | | | | | | | PR: misc/174625 Submitted by: Jeremy Chadwick <jdc@koitsu.org> Notes: svn path=/head/; revision=250460
* Correct misleading bootverbose output: ahc_isa_probe -> ahc_isa_identifyNeel Natu2013-04-171-1/+1
| | | | Notes: svn path=/head/; revision=249574
* Reform the busdma API so that new types may be added without modifyingKonstantin Belousov2013-02-122-116/+29
| | | | | | | | | | | | | | | | | | | | | | | | 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
* remove redundant yyparse declarationsBaptiste Daroussin2012-12-051-1/+0
| | | | | | | | PR: conf/174079 Submitted by: Garrett Cooper <yanegomi@gmail.com> Notes: svn path=/head/; revision=243906
* Fix a bug in aicasm_gram.y, noted by a newer clang 3.2 snapshot: itDimitry Andric2012-11-141-1/+1
| | | | | | | | | | compared an enum scope_type against a yacc-generated define, so the condition would always be false. MFC after: 3 days Notes: svn path=/head/; revision=243037
* In sys/dev/aic7xxx/aic79xx_osm.c, function ahd_attach(), initialize theDimitry Andric2012-08-061-0/+1
| | | | | | | | | | | 'path' variable to NULL, to avoid using it uninitialized in certain cases. Found by: clang MFC after: 1 week Notes: svn path=/head/; revision=239104
* Remove variables which are initialized but never used thereafterEitan Adler2012-08-051-3/+0
| | | | | | | | | | | reported by gcc46 warning Reviewed by: scottl Approved by: cperciva MFC after: 1 week Notes: svn path=/head/; revision=239047
* Fix an issue that caused the kernel to panic inside CTL when tryingKenneth D. Merry2012-06-264-18/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | to attach to target capable HBAs that implement the old immediate notify (XPT_IMMED_NOTIFY) and notify acknowledge (XPT_NOTIFY_ACK) CCBs. The new API has been in place since SVN change 196008 in 2009. The solution is two-fold: fix CTL to handle the responses from the HBAs, and convert the HBA drivers in question to use the new API. These drivers have not been tested with CTL, so how well they will interoperate with CTL is unknown. scsi_target.c: Update the userland target example code to use the new immediate notify API. scsi_ctl.c: Detect when an immediate notify CCB is returned with CAM_REQ_INVALID or CAM_PROVIDE_FAIL status, and just free it. Fix a duplicate assignment. aic79xx.c, aic79xx_osm.c: Update the aic79xx driver to use the new API. Target mode is not enabled on for this driver, so the changes will have no practical effect. aic7xxx.c, aic7xxx_osm.c: Update the aic7xxx driver to use the new API. sbp_targ.c: Update the firewire target code to work with the new API. mpt_cam.c: Update the mpt(4) driver to work with the new API. Target mode is only enabled for Fibre Channel mpt(4) devices. MFC after: 3 days Notes: svn path=/head/; revision=237601
* Fix build of aicasm when CC=clang. This was due to a side-effect of theDimitry Andric2012-06-041-2/+1
| | | | | | | | | | | | | EARLY_BUILD macro: the -Qunused-arguments flag isn't passed anymore when building this particular program. However, with clang 3.1 and -Werror, such unused argument warnings are flagged as errors, causing buildkernel to fail at this stage, due to the -nostdinc flag passed during linking. Since the -nostdinc flag isn't actually needed, just remove it. X-MFC-With: r236528 Notes: svn path=/head/; revision=236578
* Make aicasm compile without warnings if -Wpointer-sign is enabled.Dimitry Andric2012-06-041-1/+1
| | | | | | | MFC after: 3 days Notes: svn path=/head/; revision=236571
* Follow non-BSD case when GNU/Hurd is detected.Robert Millan2012-03-251-1/+1
| | | | Notes: svn path=/head/; revision=233479
* Remove comments about creating DMA tags as children of the DMA tags of theirJuli Mallett2012-03-124-4/+0
| | | | | | | | | parent bus where the code has now been modified to do so. Reviewed by: scottl Notes: svn path=/head/; revision=232882
* Add "%option noinput" to aicasm_scan.l and aicasm_macro_scan.l, so noDimitry Andric2011-12-162-0/+4
| | | | | | | | | | unneeded input functions will be emitted. Spotted by: arundel MFC after: 1 week Notes: svn path=/head/; revision=228556
* Improve portability #defines for compiling aicasm on other systems.Ed Maste2011-07-158-31/+5
| | | | | | | | Submitted by: Robert Millan rmh debian.org Obtained from: Debian GNU/kFreeBSD Notes: svn path=/head/; revision=224046
* Remove support for the Intel C Compiler from the build infrastructure.Dimitry Andric2011-04-191-5/+0
| | | | | | | | | This support has not worked for several years, and is not likely to work again, unless Intel decides to release a native FreeBSD version of their compiler. ;) Notes: svn path=/head/; revision=220863
* Do a sweep of the tree replacing calls to pci_find_extcap() with calls toJohn Baldwin2011-03-231-1/+1
| | | | | | | pci_find_cap() instead. Notes: svn path=/head/; revision=219902
* Allocate the DMA memory shared between the host and the controller asMarius Strobl2011-03-122-6/+11
| | | | | | | | | | coherent. Approved by: gibbs MFC after: 2 weeks Notes: svn path=/head/; revision=219577
* Fix typos - remove duplicate "the".Rebecca Cran2011-02-212-2/+2
| | | | | | | | | PR: bin/154928 Submitted by: Eitan Adler <lists at eitanadler.com> MFC after: 3 days Notes: svn path=/head/; revision=218909
* Revert r213765. This is required because our build infrastructure usesRui Paulo2010-10-142-2/+0
| | | | | | | | the host lex instead of the lex built during buildworld. I will MFC the lex changes soon and in a few weeks this I'll commit again r213765. Notes: svn path=/head/; revision=213845
* Define YY_NO_INPUT. This makes aicasm buildable by clang with WerrorRui Paulo2010-10-132-0/+2
| | | | | | | turned on. Notes: svn path=/head/; revision=213765
* For every instance of '.if ${CC} == "foo"' or '.if ${CC} != "foo"' inRui Paulo2010-08-171-1/+1
| | | | | | | | | | | | | | | | Makefiles or *.mk files, use ${CC:T:Mfoo} instead, so only the basename of the compiler command (excluding any arguments) is considered. This allows you to use, for example, CC="/nondefault/path/clang -xxx", and still have the various tests in bsd.*.mk identify your compiler as clang correctly. ICC if cases were also changed. Submitted by: Dimitry Andric <dimitry at andric.com> Notes: svn path=/head/; revision=211437
* Correct logic bug in aicasm's undefined register bit access detection code.Justin T. Gibbs2010-07-143-5/+12
| | | | | | | | | | | | | | | | | | | The code in question verifies that all register write operations only change bits that are defined (in the register definition file) for that effected register. The bug effectively disabled this checking. o Fix the check by testing the opcode against all supported read ("and" based) operands. o Add missing bit definitions to the aic7xxx and aic79xx register definition files so that the warning (treated as a fatal error) does not spuriously fire. Reported by: Pawel Worach <pawel.worach@gmail.com> MFC after: 1 week Notes: svn path=/head/; revision=210055
* Document the usfs driver and the NO_SYSCTL_DESCR option, and update the ↵Rebecca Cran2010-02-081-0/+4
| | | | | | | | | | | comment for umass. Don't include the sysctl description variables in aic7xxx when NO_SYSCTL_DESCR is used. Approved by: rrs (mentor) Notes: svn path=/head/; revision=203685
* Spell "Hz" correctly wherever it is user-visible.Gavin Atkinson2010-01-121-4/+4
| | | | | | | | | | PR: bin/142566 Submitted by: N.J. Mann njm njm.me.uk Approved by: ed (mentor) MFC after: 2 weeks Notes: svn path=/head/; revision=202161
* Disable K&R style function definitions for WARNS=6.Ed Schouten2009-12-311-1/+1
| | | | | | | | | | | | | | | | | Unfortunately there are two slight problems with that: - Yacc and lex might generate code that generates warnings because of this. Require yacc and lex to be rebuilt during bootstrap. I'm not incrementing __FreeBSD_version here, because I assume someone else will do this eventually. - When running `make buildkernel', it uses share/mk from the source treeo to build aicasm. Because aicasm also depends on lex, this would break. Lower WARNS to 5 for now. We should just increment it to 6 again somewhere in the very far future. Notes: svn path=/head/; revision=201300
* Add missing `void' keywords.Ed Schouten2009-12-304-10/+10
| | | | Notes: svn path=/head/; revision=201261
* Add sysctls in ahd(4) in order to keep track of different classes ofAttilio Rao2009-11-135-2/+197
| | | | | | | | | | | | | errors. So far 3 different classes are present (correctable, uncorrectable and fatal) but more can be added easilly. Obtained from: Sandvine Incorporated Reviewed by: emase, gibbs Sponsored by: Sandvine Incorporated MFC: 2 weeks Notes: svn path=/head/; revision=199260
* Add support for Adaptec 39320LPE adapters.Christian Brueffer2009-10-301-0/+7
| | | | | | | | | | PR: 124202 Submitted by: Andre Albsmeier <Andre.Albsmeier@siemens.com> Reviewed by: gibbs MFC after: 1 week Notes: svn path=/head/; revision=198684
* Add a missing free() call.Christian Brueffer2009-10-211-0/+2
| | | | | | | | | | PR: 138379 Submitted by: Patroklos Argyroudis <argp@census-labs.com> Reviewed by: gibbs MFC after: 1 week Notes: svn path=/head/; revision=198327
* Separate the parallel scsi knowledge out of the core of the XPT, andScott Long2009-07-102-5/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | modularize it so that new transports can be created. Add a transport for SATA Add a periph+protocol layer for ATA Add a driver for AHCI-compliant hardware. Add a maxio field to CAM so that drivers can advertise their max I/O capability. Modify various drivers so that they are insulated from the value of MAXPHYS. The new ATA/SATA code supports AHCI-compliant hardware, and will override the classic ATA driver if it is loaded as a module at boot time or compiled into the kernel. The stack now support NCQ (tagged queueing) for increased performance on modern SATA drives. It also supports port multipliers. ATA drives are accessed via 'ada' device nodes. ATAPI drives are accessed via 'cd' device nodes. They can all be enumerated and manipulated via camcontrol, just like SCSI drives. SCSI commands are not translated to their ATA equivalents; ATA native commands are used throughout the entire stack, including camcontrol. See the camcontrol manpage for further details. Testing this code may require that you update your fstab, and possibly modify your BIOS to enable AHCI functionality, if available. This code is very experimental at the moment. The userland ABI/API has changed, so applications will need to be recompiled. It may change further in the near future. The 'ada' device name may also change as more infrastructure is completed in this project. The goal is to eventually put all CAM busses and devices until newbus, allowing for interesting topology and management options. Few functional changes will be seen with existing SCSI/SAS/FC drivers, though the userland ABI has still changed. In the future, transports specific modules for SAS and FC may appear in order to better support the topologies and capabilities of these technologies. The modularization of CAM and the addition of the ATA/SATA modules is meant to break CAM out of the mold of being specific to SCSI, letting it grow to be a framework for arbitrary transports and protocols. It also allows drivers to be written to support discrete hardware without jeopardizing the stability of non-related hardware. While only an AHCI driver is provided now, a Silicon Image driver is also in the works. Drivers for ICH1-4, ICH5-6, PIIX, classic IDE, and any other hardware is possible and encouraged. Help with new transports is also encouraged. Submitted by: scottl, mav Approved by: re Notes: svn path=/head/; revision=195534
* Re-enable WARNS=6 after my universe test.Xin LI2009-06-021-0/+1
| | | | Notes: svn path=/head/; revision=193314
* Initialize the match structure. This is unnecessary but gcc insists toXin LI2009-06-011-2/+1
| | | | | | | complain about it when we raise the WARNS level. Notes: svn path=/head/; revision=193268
* Revert the WARNS change for now, need some time to fix the real problem.Xin LI2009-06-011-1/+0
| | | | Notes: svn path=/head/; revision=193247
* Mark as WARNS=6.Xin LI2009-06-011-0/+1
| | | | Notes: svn path=/head/; revision=193245
* Code cleanups to make this WARNS=6 clean.Xin LI2009-06-017-45/+56
| | | | | | | PR: bin/96128 Notes: svn path=/head/; revision=193244
* remove now-redunant cardbus attachment.Warner Losh2009-03-092-2/+0
| | | | Notes: svn path=/head/; revision=189575
* Make ddb command registration dynamic so modules can extendSam Leffler2008-09-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | the command set (only so long as the module is present): o add db_command_register and db_command_unregister to add and remove commands, respectively o replace linker sets with SYSINIT's (and SYSUINIT's) that register commands o expose 3 list heads: db_cmd_table, db_show_table, and db_show_all_table for registering top-level commands, show operands, and show all operands, respectively While here also: o sort command lists o add DB_ALIAS, DB_SHOW_ALIAS, and DB_SHOW_ALL_ALIAS to add aliases for existing commands o add "show all trace" as an alias for "show alltrace" o add "show all locks" as an alias for "show alllocks" Submitted by: Guillaume Ballet <gballet@gmail.com> (original version) Reviewed by: jhb MFC after: 1 month Notes: svn path=/head/; revision=183054