aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/ida
Commit message (Collapse)AuthorAgeFilesLines
* Remove now-redundant calls to device_delete_childrenJohn Baldwin2025-01-021-3/+0
| | | | | | | Earlier calls to bus_generic_detach now take care of deleting children. Differential Revision: https://reviews.freebsd.org/D47962
* Replace calls to bus_generic_attach with bus_attach_childrenJohn Baldwin2024-12-061-1/+1
| | | | | Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D47675
* newbus: globally replace device_add_child(..., -1) with DEVICE_UNIT_ANYWarner Losh2024-07-251-1/+1
| | | | Sponsored by: Netflix
* sys: Automated cleanup of cdefs and other formattingWarner Losh2023-11-271-1/+0
| | | | | | | | | | | | | | | | Apply the following automated changes to try to eliminate no-longer-needed sys/cdefs.h includes as well as now-empty blank lines in a row. Remove /^#if.*\n#endif.*\n#include\s+<sys/cdefs.h>.*\n/ Remove /\n+#include\s+<sys/cdefs.h>.*\n+#if.*\n#endif.*\n+/ Remove /\n+#if.*\n#endif.*\n+/ Remove /^#if.*\n#endif.*\n/ Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/types.h>/ Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/param.h>/ Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/capsicum.h>/ Sponsored by: Netflix
* sys: Remove $FreeBSD$: one-line .c patternWarner Losh2023-08-162-4/+0
| | | | Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/
* sys: Remove $FreeBSD$: one-line .h patternWarner Losh2023-08-161-1/+0
| | | | Remove /^\s*\*+\s*\$FreeBSD\$.*$\n/
* sys: Remove $FreeBSD$: two-line .h patternWarner Losh2023-08-163-6/+0
| | | | Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/
* spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSDWarner Losh2023-05-125-5/+5
| | | | | | | | | The SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catch up to that fact and revert to their recommended match of BSD-2-Clause. Discussed with: pfg MFC After: 3 days Sponsored by: Netflix
* kerneldump: remove physical argument from d_dumperMitchell Horne2022-05-131-1/+1
| | | | | | | | | | | The physical address argument is essentially ignored by every dumper method. In addition, the dump routines don't actually pass a real address; every call to dump_append() passes a value of zero for physical. Reviewed by: markj MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D35173
* ida: Remove unused devclass arguments to DRIVER_MODULE.John Baldwin2022-05-062-6/+2
|
* ida: plug set-but-not-used varsMateusz Guzik2021-12-161-3/+0
| | | | Sponsored by: Rubicon Communications, LLC ("Netgate")
* Create wrapper for Giant taken for newbusWarner Losh2021-12-101-2/+2
| | | | | | | | | | | Create a wrapper for newbus to take giant and for busses to take it too. bus_topo_lock() should be called before interacting with newbus routines and unlocked with bus_topo_unlock(). If you need the topology lock for some reason, bus_topo_mtx() will provide that. Sponsored by: Netflix Reviewed by: mav Differential Revision: https://reviews.freebsd.org/D31831
* ida: Use ida lock instead of Giant for bus_dma allocationWarner Losh2021-09-301-1/+1
| | | | | | | | It looks like a reference to Giant was overloooked when jhb made this MPSAFE in 6b5b57ae9f8f. Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D31841
* Ever since the block layer expanded its command syntax beyond justScott Long2020-02-071-0/+5
| | | | | | | | | | | BIO_READ and BIO_WRITE, we've handled this expanded syntax poorly in drivers when the driver doesn't support a particular command. Do a sweep and fix that. Reported by: imp Notes: svn path=/head/; revision=357647
* Extract eventfilter declarations to sys/_eventfilter.hConrad Meyer2019-05-202-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | This allows replacing "sys/eventfilter.h" includes with "sys/_eventfilter.h" in other header files (e.g., sys/{bus,conf,cpu}.h) and reduces header pollution substantially. EVENTHANDLER_DECLARE and EVENTHANDLER_LIST_DECLAREs were moved out of .c files into appropriate headers (e.g., sys/proc.h, powernv/opal.h). As a side effect of reduced header pollution, many .c files and headers no longer contain needed definitions. The remainder of the patch addresses adding appropriate includes to fix those files. LOCK_DEBUG and LOCK_FILE_LINE_ARG are moved to sys/_lock.h, as required by sys/mutex.h since r326106 (but silently protected by header pollution prior to this change). No functional change (intended). Of course, any out of tree modules that relied on header pollution for sys/eventhandler.h, sys/lock.h, or sys/mutex.h inclusion need to be fixed. __FreeBSD_version has been bumped. Notes: svn path=/head/; revision=347984
* Add PNP info to PCI attachments of cbb, cxgb, ida, iwn, ixl, ixlv,Warner Losh2018-09-261-0/+2
| | | | | | | | | | | | | mfi, mps, mpr, mvs, my, oce, pcn, ral, rl. This only labels existing pci device tables, and has no probe / attach code changes. Reviewed by: imp, chuck Submitted by: Lakhan Shiva Kamireddy <lakhanshiva@gmail.com> Sponsored by: Google, Inc. (GSoC 2018) Approved by: re (glen) Notes: svn path=/head/; revision=338949
* sys/dev: further adoption of SPDX licensing ID tags.Pedro F. Giffuni2017-11-275-0/+10
| | | | | | | | | | | | | | | 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
* Remove support for EISA in the ida driver. Remove references toWarner Losh2017-02-162-362/+0
| | | | | | | EISA-only registers. Remove known EISA cards from man page. Notes: svn path=/head/; revision=313832
* Resolve LINT linking issue by renaming ida_init() to ida_setup(). TheHans Petter Selasky2016-05-114-4/+4
| | | | | | | | | | ida_init() symbol name is now taken for use by the LinuxKPI. Reported by: emaste @ Discussed with: mav @ Notes: svn path=/head/; revision=299471
* sys/dev: minor spelling fixes.Pedro F. Giffuni2016-05-031-1/+1
| | | | | | | Most affect comments, very few have user-visible effects. Notes: svn path=/head/; revision=298955
* Remove MAXBSIZE use from drivers where it has nothing to do.Alexander Motin2015-03-223-5/+5
| | | | | | | | | | 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
* A dma tag alignment should be 1 (not 0) when a device can dma at any address.Ian Lepore2014-11-061-1/+1
| | | | Notes: svn path=/head/; revision=274188
* Rework the DMA handling in ida(4) and add locking to make this driverJohn Baldwin2012-08-275-176/+275
| | | | | | | | | | | | | | | | | | MPSAFE. - Preallocate a full set of QCBs during attach rather than allocating new ones on demand to avoid allocations in the I/O path. - Remove the explicit bus space tag/handle and use bus_*() on the relevant 'struct resource' instead. - Defer logical drive probing to an intrhook. - Fix ida_detach() to detach and delete child devices (logical drives). - Update the DMA handling to support EINPROGRESS by moving the work to submit a mapped request into the bus_dma callback routine as well as add support for freezing the queue when EINPROGRESS is encountered. Tested by: Marco Steinbach coco executive-computing de Notes: svn path=/head/; revision=239740
* Convert a number of drivers to obtaining their parent DMA tag from theirScott Long2012-03-121-1/+1
| | | | | | | PCI device attachment. Notes: svn path=/head/; revision=232854
* - There's no need to overwrite the default device method with the defaultMarius Strobl2011-11-221-3/+1
| | | | | | | | | | | | | one. Interestingly, these are actually the default for quite some time (bus_generic_driver_added(9) since r52045 and bus_generic_print_child(9) since r52045) but even recently added device drivers do this unnecessarily. Discussed with: jhb, marcel - While at it, use DEVMETHOD_END. Discussed with: jhb - Also while at it, use __FBSDID. Notes: svn path=/head/; revision=227843
* o break newbus api: add a new argument of type driver_filter_t toPaolo Pisati2007-02-232-2/+2
| | | | | | | | | | | | | | | | 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
* Remove bus_{mem,p}io.h and related code for a micro-optimization on i386Yoshihiro Takahashi2005-05-294-7/+0
| | | | | | | | | and amd64. The optimization is a trivial on recent machines. Reviewed by: -arch (imp, marcel, dfr) Notes: svn path=/head/; revision=146734
* Test for NULL before use.Matthew N. Dodd2005-04-131-12/+11
| | | | | | | Submitted by: sam (Coverity) Notes: svn path=/head/; revision=145024
* Add KASSERT() to warn against NULL deref.Matthew N. Dodd2005-04-131-0/+1
| | | | | | | Submitted by: sam (Coverity) Notes: svn path=/head/; revision=145023
* Define additional commands.Matthew N. Dodd2005-04-131-0/+15
| | | | | | | Obtained from: Linux Notes: svn path=/head/; revision=144992
* Whitespace cleanup.Matthew N. Dodd2005-04-135-33/+33
| | | | Notes: svn path=/head/; revision=144991
* Use BUS_PROBE_DEFAULT for pci probe return valueWarner Losh2005-03-051-1/+1
| | | | Notes: svn path=/head/; revision=143160
* Start each of the license/copyright comments with /*-, minor shuffle of linesWarner Losh2005-01-061-1/+1
| | | | Notes: svn path=/head/; revision=139749
* Add a callout to dump card status on command queue timeouts.Matthew N. Dodd2004-12-142-1/+48
| | | | Notes: svn path=/head/; revision=138853
* Modify ida_v3_done() to treat FIFO status of -1 as FIFO empty (0).Matthew N. Dodd2004-12-141-1/+7
| | | | | | | | This is what ida_v4_done() does and seems to be necessary with some firmware versions on v3 devices. Notes: svn path=/head/; revision=138852
* Reformat arguments bus_dma_tag_create().Matthew N. Dodd2004-12-142-21/+45
| | | | Notes: svn path=/head/; revision=138851
* Do the dreaded s/dev_t/struct cdev */Poul-Henning Kamp2004-06-162-2/+2
| | | | | | | Bump __FreeBSD_version accordingly. Notes: svn path=/head/; revision=130585
* Add missing <sys/module.h> includesPoul-Henning Kamp2004-05-303-0/+3
| | | | Notes: svn path=/head/; revision=129879
* Convert callers to the new bus_alloc_resource_any(9) API.Nate Lawson2004-03-172-8/+8
| | | | | | | | Submitted by: Mark Santcroos <marks@ripe.net> Reviewed by: imp, dfr, bde Notes: svn path=/head/; revision=127135
* Device megapatch 4/6:Poul-Henning Kamp2004-02-211-0/+2
| | | | | | | | | | | Introduce d_version field in struct cdevsw, this must always be initialized to D_VERSION. Flip sense of D_NOGIANT flag to D_NEEDGIANT, this involves removing four D_NOGIANT flags and adding 145 D_NEEDGIANT flags. Notes: svn path=/head/; revision=126080
* Change the disk(9) API in order to make device removal more robust.Poul-Henning Kamp2004-02-182-12/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | Previously the "struct disk" were owned by the device driver and this gave us problems when the device disappared and the users of that device were not immediately disappearing. Now the struct disk is allocate with a new call, disk_alloc() and owned by geom_disk and just abandonned by the device driver when disk_create() is called. Unfortunately, this results in a ton of "s/\./->/" changes to device drivers. Since I'm doing the sweep anyway, a couple of other API improvements have been carried out at the same time: The Giant awareness flag has been flipped from DISKFLAG_NOGIANT to DISKFLAG_NEEDSGIANT A version number have been added to disk_create() so that we can detect, report and ignore binary drivers with old ABI in the future. Manual page update to follow shortly. Notes: svn path=/head/; revision=125975
* Add a per controller IOCTL interface.Matthew N. Dodd2004-01-153-1/+142
| | | | Notes: svn path=/head/; revision=124540
* - Add comments.Matthew N. Dodd2004-01-152-34/+188
| | | | | | | | | - Add more command defines and data structures. - Re-organize struct ida_drive_info to factor out struct ida_drive_info which will be used elsewhere. Notes: svn path=/head/; revision=124539
* Insure values of adapter structure members are in correct byte order.Matthew N. Dodd2004-01-151-6/+7
| | | | Notes: svn path=/head/; revision=124538
* Initialize drive device_t in softc.Matthew N. Dodd2004-01-131-0/+1
| | | | Notes: svn path=/head/; revision=124500
* style(9): single tab after #define.Matthew N. Dodd2004-01-134-67/+67
| | | | Notes: svn path=/head/; revision=124471
* Handle "Bad Command List" errors.Matthew N. Dodd2004-01-121-0/+3
| | | | | | | | No error status is returned by the adapter so set CMD_REJECTED so that ida_done() will DTRT. Notes: svn path=/head/; revision=124449
* Remove comments that no longer apply.Matthew N. Dodd2004-01-121-4/+0
| | | | Notes: svn path=/head/; revision=124447
* - Initialize qcb flags in ida_construct_qcb() with respect to DMA direction.Matthew N. Dodd2004-01-121-4/+16
| | | | | | | | - Print operation type, if known in hard/soft error message in ida_done(). - NULL qcb struct bio pointer in ida_done(). Notes: svn path=/head/; revision=124423
* Use PCIR_BAR(x) instead of PCIR_MAPS.John Baldwin2003-09-021-2/+2
| | | | | | | | Glanced over by: imp, gibbs Tested by: i386 LINT Notes: svn path=/head/; revision=119690