summaryrefslogtreecommitdiffstats
path: root/sys/dev/hptiop
Commit message (Collapse)AuthorAgeFilesLines
* Adjust various SCSI drivers to handle either a 32-bit or 64-bit lun_id_t,nwhitehorn2013-10-301-2/+2
| | | | | | | mostly by adjustments to debugging printf() format specifiers. For high numbered LUNs, also switch to printing them in hex as per SAM-5. MFC after: 2 weeks
* Re-do r255853. Along with adding back the API/ABI changes from thescottl2013-09-252-2/+4
| | | | | | | | original, this hides the contents of cam_compat.h from ktrace/kdump/truss, avoiding problems there. There are no user-servicable parts in there, so no need for those tools to be groping around in there. Approved by: re
* Revert r255853 pending fixes to build errors in usr.bin/kdumpgjb2013-09-252-4/+2
| | | | Approved by: re (implicit)
* Update the CAM API for FreeBSD 10:scottl2013-09-242-2/+4
| | | | | | | | | | | | | | | | | | | | | | - Remove the timeout_ch field. It's been deprecated since FreeBSD 7.0; MPSAFE drivers should be managing their own timeout storage. The remaining non-MPSAFE drivers have been modified to also manage their own storage, and should be considered for updating to MPSAFE (or removal) during the FreeBSD 10.x lifecycle. - Add fields related to soft timeouts and quality of service, to be used in upcoming work. - Add room for more flags in the CCB header and path_inq structures. - Begin support for extended 64-bit LUNs. - Bump the CAM version number to 0x18, but add compat shims. Tested with camcontrol and smartctl. Reviewed by: nathanw, ken, kib Approved by: re Obtained from: Netflix
* Add PCI IDs for HighPoint RocketRAID 4521, 3620, 3622 and 3640delphij2013-07-051-1/+5
| | | | | | | | | controllers. Update the hptiop(4) manual page to reflect this as well as mentioning that some cards are already end-of-life. Many thanks to Highpoint for providing this driver update. MFC after: 1 day
* Remove ancient compatibility cruft.eadler2013-04-302-123/+0
| | | | Reviewed by: delphij
* Add missing braceseadler2013-04-301-1/+2
| | | | | Reviewed by: swildner@dragonflybsd.org Reviewed by: delphij
* Add missing braces.delphij2013-04-291-1/+2
| | | | | | Submitted by: Sascha Wildner <saw online de> Obtained from: DragonFly MFC after: 1 week
* MFprojects/camlock r248982:mav2013-04-141-1/+1
| | | | | | | | Stop abusing xpt_periph in random plases that really have no periph related to CCB, for example, bus scanning. NULL value is fine in such cases and it is correctly logged in debug messages as "noperiph". If at some point we need some real XPT periphs (alike to pmpX now), quite likely they will be per-bus, and not a single global instance as xpt_periph now.
* Reform the busdma API so that new types may be added without modifyingkib2013-02-121-46/+17
| | | | | | | | | | | | | | | | | | | | | 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>)
* Update hptiop(4) to version 1.8, which added support for HighPointdelphij2012-10-252-20/+849
| | | | | | | | | | RocketRAID 4500 series. Many thanks to HighPoint Technologies for their continued support of FreeBSD! Submitted by: HighPoint Technologies MFC after: 3 days
* Add PCI IDs for various new High Point RocketRAID 43xx and 3xxx devices.delphij2012-08-061-3/+9
| | | | | Obtained from: FreeNAS MFC after: 3 days
* Adding missing dependancies for loading hptiop(4), hptmv(4) and isp(4) as ↵eadler2012-06-011-0/+1
| | | | | | | | | | | | modules. PR: kern/166239 Submitted by: Pavel Timofeev <timp87@gmail.com> Discussed on: -stable, -scsi Reviewed by: scottl No objection from: mjacob Approved by: cperciva MFC after: 3 days
* Convert a number of drivers to obtaining their parent DMA tag from theirscottl2012-03-121-1/+1
| | | | PCI device attachment.
* - Just use cam_calc_geometry(9) on newer version of FreeBSD rather thanmarius2011-11-231-0/+4
| | | | | duplicating it. - In hptmv(4) and hptrr(4) use __FBSDID and DEVMETHOD_END.
* Merge from r225950:marius2011-10-131-0/+14
| | | | | | Set the sense residual properly. Reviewed by: ken
* Add PCI ID for RocketRAID 4321 and 4322. A FreeNAS user have tested thedelphij2011-08-011-0/+2
| | | | | | | | change on RocketRAID 4322. Sponsored by: iXsystems, Inc. MFC after: 3 days Approved by: re (kib)
* Report transport type in XPT_PATH_INQ.mav2010-06-191-0/+4
| | | | | PR: i386/147929 MFC after: 3 days
* MFp4: Large set of CAM inprovements.mav2010-01-281-21/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Unify bus reset/probe sequence. Whenever bus attached at boot or later, CAM will automatically reset and scan it. It allows to remove duplicate code from many drivers. - Any bus, attached before CAM completed it's boot-time initialization, will equally join to the process, delaying boot if needed. - New kern.cam.boot_delay loader tunable should help controllers that are still unable to register their buses in time (such as slow USB/ PCCard/ CardBus devices), by adding one more event to wait on boot. - To allow synchronization between different CAM levels, concept of requests priorities was extended. Priorities now split between several "run levels". Device can be freezed at specified level, allowing higher priority requests to pass. For example, no payload requests allowed, until PMP driver enable port. ATA XPT negotiate transfer parameters, periph driver configure caching and so on. - Frozen requests are no more counted by request allocation scheduler. It fixes deadlocks, when frozen low priority payload requests occupying slots, required by higher levels to manage theit execution. - Two last changes were holding proper ATA reinitialization and error recovery implementation. Now it is done: SATA controllers and Port Multipliers now implement automatic hot-plug and should correctly recover from timeouts and bus resets. - Improve SCSI error recovery for devices on buses without automatic sense reporting, such as ATAPI or USB. For example, it allows CAM to wait, while CD drive loads disk, instead of immediately return error status. - Decapitalize diagnostic messages and make them more readable and sensible. - Teach PMP driver to limit maximum speed on fan-out ports. - Make boot wait for PMP scan completes, and make rescan more reliable. - Fix pass driver, to return CCB to user level in case of error. - Increase number of retries in cd driver, as device may return several UAs.
* Revert previous commit and add myself to the list of people who shouldphk2009-09-081-2/+0
| | | | know better than to commit with a cat in the area.
* Add necessary include.phk2009-09-081-0/+2
|
* Use __packed from cdefs.hdelphij2009-03-251-1/+1
| | | | | | Submitted by: pyunyh Reviewed by: Shaowei WANG <wsw1wsw2 gmail com> MFC after: 2 weeks
* Use __attribute__((packed)) for the structure so that hptiop managementdelphij2009-03-251-1/+1
| | | | | | | utility would work. Submitted by: Shaowei WANG <wsw1wsw2 gmail com> MFC after: 2 weeks
* - Spell cam correctly (scbus), this makes it possible to compile hptiopantoine2008-10-041-2/+2
| | | | | | | | | | in GENERIC and LINT. [1] - Rename hpt_dbg_level to hpt_iop_dbg_level to avoid multiple definition of hpt_dbg_level (hptmv also has hpt_dbg_level). PR: 127551 [1] Reviewed by: scottl@ MFC after: 1 month
* Replace all calls to minor() with dev2unit().ed2008-09-271-1/+1
| | | | | | | | | | | | | | | After I removed all the unit2minor()/minor2unit() calls from the kernel yesterday, I realised calling minor() everywhere is quite confusing. Character devices now only have the ability to store a unit number, not a minor number. Remove the confusion by using dev2unit() everywhere. This commit could also be considered as a bug fix. A lot of drivers call minor(), while they should actually be calling dev2unit(). In -CURRENT this isn't a problem, but it turns out we never had any problem reports related to that issue in the past. I suspect not many people connect more than 256 pieces of the same hardware. Reviewed by: kib
* Update the hptiop driver to version 1.3. This adds support for the 4xxxscottl2008-02-032-531/+1519
| | | | | | | series of adapters. Thanks again to Highpoint for their continued support of FreeBSD. Submitted by: Highpoint Technologies
* Prepare for future integration between CAM and newbus. xpt_bus_registerscottl2007-06-171-1/+1
| | | | | | | 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.
* Introduce a driver for the Highpoint RocketRAID 3xxx series of controllers.scottl2007-05-092-0/+1644
The driver relies on CAM. Many thanks to Highpoint for providing this driver.
OpenPOWER on IntegriCloud