335138 |
14-Jun-2018 |
mav |
MFC r311351 (by rpokala): In the same vein as r311350, fix whitespace in handling of XPT_PATH_INQ in several more drivers. |
332156 |
06-Apr-2018 |
kevans |
MFC r330970, r331067, r331767, r331852, r331858
r330970: libefi: UEFI_BOOT_VAR_GUID duplicates EFI_GLOBAL_VARIABLE
Drop UEFI_BOOT_VAR_GUID and use EFI_GLOBAL_VARIABLE.
r331067: Only print boot order / boot current if we can get the variables from the loader. Some UEFI implementations don't return all of them.
Sponsored by: Netflix
r331767: efinet: Do not return only if ReceiveFilter fails
If the network interface or the uefi implementation do not support the ReceiveFilter interface do not return only and just print a message. U-Boot doesn't support is and likely never will. Also even if this fails it doesn't mean that network in EFI isn't supported.
r331852: fwohcireg.h is 99% the same between the boot loader and the kernel. Delete it and fix up the 1% difference because there's no need for them to be different.
r331858: The Uninorth ID was really for Uninorth 2. |
331722 |
29-Mar-2018 |
eadler |
Revert r330897:
This was intended to be a non-functional change. It wasn't. The commit message was thus wrong. In addition it broke arm, and merged crypto related code.
Revert with prejudice.
This revert skips files touched in r316370 since that commit was since MFCed. This revert also skips files that require $FreeBSD$ property changes.
Thank you to those who helped me get out of this mess including but not limited to gonzo, kevans, rgrimes.
Requested by: gjb (re) |
330897 |
14-Mar-2018 |
eadler |
Partial merge of the SPDX changes
These changes are incomplete but are making it difficult to determine what other changes can/should be merged.
No objections from: pfg |
315830 |
23-Mar-2017 |
avg |
MFC r314864: firewire/sbp: try to improve locking, plus a few style nits |
315812 |
23-Mar-2017 |
mav |
MFC r311305 (by asomers): Always null-terminate ccb_pathinq.(sim_vid|hba_vid|dev_name)
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 |
315231 |
14-Mar-2017 |
mav |
MFC r314375: Remove some locking not needed for modern CAM.
This driver is full of LORs. This change allows to reduce deadlock chance from 100% to level that allows some tests to be done. |
315221 |
14-Mar-2017 |
pfg |
MFC r313982, r314068: sys: Replace zero with NULL for pointers.
Found with: devel/coccinelle |
314835 |
07-Mar-2017 |
mav |
MFC r314374: Add safety check against too long CDB.
SBP-2 specification defined maximum CDB length as 12 bytes. Newer SBP-3 specification allows CDB of any size, but this driver is too old. Proper solution would be to look on maximal ORB size supported by the target. |
314724 |
06-Mar-2017 |
mav |
MFC r314358: Announce that sbp_targ(4) does not support initiator mode. |
310077 |
14-Dec-2016 |
avg |
MFC r309093: firewire: initialize tag label to -1 in fw_xfer_alloc() |
310073 |
14-Dec-2016 |
avg |
MFC r309092: fwohci: report whether PhysicalUpperBound register is implemented |
302408 |
08-Jul-2016 |
gjb |
Copy head@r302406 to stable/11 as part of the 11.0-RELEASE cycle. Prune svn:mergeinfo from the new branch, as nothing has been merged here.
Additional commits post-branch will follow.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
299351 |
10-May-2016 |
trasz |
Remove NULL checks after M_WAITOK allocations from firewire.
MFC after: 1 month Sponsored by: The FreeBSD Foundation
|
298955 |
03-May-2016 |
pfg |
sys/dev: minor spelling fixes.
Most affect comments, very few have user-visible effects.
|
298890 |
01-May-2016 |
kib |
Make it explicit that D_MEM cdevsw d_flag is to signify that the driver is (or behaves identically to) /dev/mem. Remove the D_MEM flag from random drivers.
Note that currently the D_MEM flag does not affect any behaviour, but this going to change in the next commit.
Noted and reviewed by: alc Sponsored by: The FreeBSD Foundation MFC after: 1 week X-Differential revision: https://reviews.freebsd.org/D6149
|
296591 |
10-Mar-2016 |
imp |
Don't assume bio_cmd is a bit field.
Differential Revision: https://reviews.freebsd.org/D5594
|
295810 |
19-Feb-2016 |
pfg |
firewire: fix a mismatch introduced in r230558.
Found by: PVS Static Analysis Reviewed by: sbruno MFC after: 1 month
|
277511 |
21-Jan-2015 |
will |
Fix remote DMA based firewire debugging when targeting systems with more than 4GB of physical memory.
To remotely debug the system 'stealthy' which has a kernel with this change installed and firewire properly configured:
% fwcontrol -m stealthy (or stealthy's firewire EUI64) % kgdb kernel /dev/fwmem0.0
sys/dev/firewire/fwohci.c: Rather than hard code the upper limit for hw based automatic responses to remote DMA requests at 4GB, program the hardware using Maxmem, the page number one higher than the highest physical page detected in the system.
While here, garbage collect more useless splfw() calls.
Submitted by: gibbs MFC after: 1 week Sponsored by: Spectra Logic MFSpectraBSD: 1110994 on 2015/01/06
|
277510 |
21-Jan-2015 |
will |
Fix firewire panic when issuing a reply to an unhandled asynchronous remote dma request (DMA request that the hardware cannot automatically handle).
sys/dev/firewire/firewire.c In fw_rcv(), add missing early return in the error path for DMA requests to unregistered regions.
Submitted by: gibbs MFC after: 1 week Sponsored by: Spectra Logic MFSpectraBSD: 1110993 on 2015/01/06
|
277509 |
21-Jan-2015 |
will |
Properly lock accesss to the firewire_comm->devices list.
sys/dev/firewire/firewire.c: Add missing FW_GLOCK/UNLOCK() usage to fw_noderesolve_nodeid().
sys/dev/firewire/firewire.c: sys/dev/firewire/fwmem.c: Remove no-op splfw() calls from functions that have been audited for proper lock usage.
Submitted by: gibbs MFC after: 1 week Sponsored by: Spectra Logic MFSpectraBSD: 1110992 on 2015/01/06
|
277508 |
21-Jan-2015 |
will |
Fix panic in firewire and creation of invalid config ROM.
sys/boot/i386/libfirewire/firewire.c: sys/dev/firewire/firewire.c: Fix configuration ROM generation count wrapping logic so that the generation count is never outside of allowed limits (0x2 -> 0xF).
sys/dev/firewire/firewire.c: In fw_xfer_unload(), xfer->fc may be NULL. Protect against this before taking the fc lock.
Submitted by: gibbs MFC after: 1 week Sponsored by: Spectra Logic MFSpectraBSD: 1110685 on 2015/01/05
|
277507 |
21-Jan-2015 |
will |
Fix a FWXF_INQ race in the firewire driver.
sys/dev/firewire/firewire.c: In fw_xfer_unload() expand lock coverage so that the test for FWXF_INQ doesn't race with it being cleared in another thread.
Submitted by: gibbs MFC after: 1 week Sponsored by: Spectra Logic MFSpectraBSD: 1110207 on 2015/01/02
|
277506 |
21-Jan-2015 |
will |
Fix one cause of firewire panics.
sys/dev/firewire/firewire.c: In fw_xfer_unload(), clear the FWXF_INQ flag on the xfer under protection of the FW_GMTX, after the xfer is removeed from the tx/rx queue. Otherwise it is possible for the xfer to be removed again (corrupting the list or immediately panicing) from another thread that has found this xfer in the transaction label table.
Submitted by: gibbs MFC after: 1 week Sponsored by: Spectra Logic MFSpectraBSD: 1110200 on 2015/01/02
|
274819 |
21-Nov-2014 |
smh |
Prevent overflow issues in timeout processing
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
|
272215 |
27-Sep-2014 |
kan |
Do not pass whole descriptor block size as align to fwdma_malloc_multiseg
Do not pass wrong alignment value to fwdma_malloc_multiseg and ultimately to contigalloc. In addition to being wrong, this causes insta-panic in certain cases due to safety assertion - the alignment is required to be the power of two and the value we calculate here seldom is.
MFC after: 1 month
|
272214 |
27-Sep-2014 |
kan |
Remove obsolete compatibility glue and improve firewire code readability.
Commit my version of style(9) pass over the firewire code. Now that other people have started changing the code carrying this is as a local patch is not longer a viable option.
MFC after: 1 month
|
271849 |
19-Sep-2014 |
glebius |
Mechanically convert to if_inc_counter().
|
271795 |
18-Sep-2014 |
will |
Start the process of cleaning up FreeBSD's firewire driver.
sys/dev/firewire/firewire.c: sys/dev/firewire/firewire.h: sys/dev/firewire/firewirereg.h: sys/dev/firewire/fwcrom.c: sys/dev/firewire/fwdev.c: sys/dev/firewire/fwdma.c: sys/dev/firewire/fwmem.c: sys/dev/firewire/fwohci.c: sys/dev/firewire/fwohci_pci.c: sys/dev/firewire/fwohcivar.h: sys/dev/firewire/if_fwe.c: sys/dev/firewire/if_fwip.c: sys/dev/firewire/sbp.c: sys/dev/firewire/sbp_targ.c: Unifdef the code, removing support for DragonflyBSD and FreeBSD prior to version 5.
Submitted by: gibbs MFC after: 1 month Sponsored by: Spectra Logic MFSpectraBSD: 1081188 on 2014/08/01
|
271793 |
18-Sep-2014 |
will |
Silence noisy firewire logging.
MFC after: 1 month Sponsored by: Spectra Logic MFSpectraBSD: 974594 on 2013/08/02
|
270856 |
30-Aug-2014 |
glebius |
Use define from if_var.h to access a field inside struct if_data, that resides in struct ifnet.
Sponsored by: Nginx, Inc.
|
267992 |
28-Jun-2014 |
hselasky |
Pull in r267961 and r267973 again. Fix for issues reported will follow.
|
267985 |
27-Jun-2014 |
gjb |
Revert r267961, r267973:
These changes prevent sysctl(8) from returning proper output, such as:
1) no output from sysctl(8) 2) erroneously returning ENOMEM with tools like truss(1) or uname(1) truss: can not get etype: Cannot allocate memory
|
267961 |
27-Jun-2014 |
hselasky |
Extend the meaning of the CTLFLAG_TUN flag to automatically check if there is an environment variable which shall initialize the SYSCTL during early boot. This works for all SYSCTL types both statically and dynamically created ones, except for the SYSCTL NODE type and SYSCTLs which belong to VNETs. A new flag, CTLFLAG_NOFETCH, has been added to be used in the case a tunable sysctl has a custom initialisation function allowing the sysctl to still be marked as a tunable. The kernel SYSCTL API is mostly the same, with a few exceptions for some special operations like iterating childrens of a static/extern SYSCTL node. This operation should probably be made into a factored out common macro, hence some device drivers use this. The reason for changing the SYSCTL API was the need for a SYSCTL parent OID pointer and not only the SYSCTL parent OID list pointer in order to quickly generate the sysctl path. The motivation behind this patch is to avoid parameter loading cludges inside the OFED driver subsystem. Instead of adding special code to the OFED driver subsystem to post-load tunables into dynamically created sysctls, we generalize this in the kernel.
Other changes: - Corrected a possibly incorrect sysctl name from "hw.cbb.intr_mask" to "hw.pcic.intr_mask". - Removed redundant TUNABLE statements throughout the kernel. - Some minor code rewrites in connection to removing not needed TUNABLE statements. - Added a missing SYSCTL_DECL(). - Wrapped two very long lines. - Avoid malloc()/free() inside sysctl string handling, in case it is called to initialize a sysctl from a tunable, hence malloc()/free() is not ready when sysctls from the sysctl dataset are registered. - Bumped FreeBSD version to indicate SYSCTL API change.
MFC after: 2 weeks Sponsored by: Mellanox Technologies
|
267660 |
20-Jun-2014 |
kan |
Set target->sbp field to valid value when sbp device is created.
The sbp_cam_detach_target can be called from sbp_post_explore function on the first target that is not really attached and it was written with the corresponding safety check in place to tolerate that. Unfortunately the recent locking cleanup did add a locking assertion that tries to dereference the target->sbp pointer unconditionally, which causes less than desirable outcome. Since the assertion is useful, just initialize the target sbp pointer once when sbp device is being initialized instead of when the target is being attached. This makes assertion work in all cases and fixes the crash on boot.
|
266772 |
27-May-2014 |
jhb |
Various cleanups and fixes: - Switch from timeout() to callout_*() for per-request timers. - Use device_find_child() in the identify routine. - Use device_printf() instead of passing device_get_nameunit() to printf(). - Expand the SBP_LOCK coverage simplifying the locking. - Uninline STAILQ_FOREACH_SAFE().
Tested by: sbruno
|
266270 |
16-May-2014 |
brueffer |
Remove some unused variables.
Found with: Clang Static Analyzer MFC after: 2 weeks
|
260394 |
07-Jan-2014 |
melifaro |
Teach every SIOCGIFSTATUS provider to fill in ifs->ascii anyway. Remove old bits of data concat for 'ascii' field. Remove special SIOCGIFSTATUS handling from if.c (which Coverity yells at).
Reported by: Coverity Coverity CID: 1147174 MFC after: 2 weeks
|
258780 |
30-Nov-2013 |
eadler |
Fix undefined behavior: (1 << 31) is not defined as 1 is an int and this shifts into the sign bit. Instead use (1U << 31) which gets the expected result.
This fix is not ideal as it assumes a 32 bit int, but does fix the issue for most cases.
A similar change was made in OpenBSD.
Discussed with: -arch, rdivacky Reviewed by: cperciva
|
257381 |
30-Oct-2013 |
nwhitehorn |
Adjust various SCSI drivers to handle either a 32-bit or 64-bit lun_id_t, 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
|
257176 |
26-Oct-2013 |
glebius |
The r48589 promised to remove implicit inclusion of if_var.h soon. Prepare to this event, adding if_var.h to files that do need it. Also, include all includes that now are included due to implicit pollution via if_var.h
Sponsored by: Netflix Sponsored by: Nginx, Inc.
|
256826 |
21-Oct-2013 |
mav |
Partial MFproject/camlock r256671: Fix several target mode SIMs to not blindly clear ccb_h.flags field of ATIO CCBs. Not all CCB flags there belong to them.
|
255871 |
25-Sep-2013 |
scottl |
Re-do r255853. Along with adding back the API/ABI changes from the 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
|
255865 |
25-Sep-2013 |
gjb |
Revert r255853 pending fixes to build errors in usr.bin/kdump
Approved by: re (implicit)
|
255853 |
24-Sep-2013 |
scottl |
Update the CAM API for FreeBSD 10:
- 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
|
255359 |
07-Sep-2013 |
davide |
- Use make_dev_credf(MAKEDEV_REF) instead of the race-prone make_dev()+ dev_ref() in the clone handlers that still use it. - Don't set SI_CHEAPCLONE flag, it's not used anywhere neither in devfs (for anything real)
Reviewed by: kib
|
254263 |
12-Aug-2013 |
scottl |
Update PCI drivers to no longer look at the MEMIO-enabled bit in the PCI 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
|
249468 |
14-Apr-2013 |
mav |
MFprojects/camlock r248982: 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.
|
249291 |
08-Apr-2013 |
will |
FireWire: Don't allow a tlabel to reference an xfer after free.
sys/dev/firewire/firewire.c: - fw_xfer_unload(): Since we are about to free this xfer, call fw_tl_free() to remove the xfer from its tlabel's list, if it has a tlabel. - In every occasion when a xfer is removed from a tlabel's list, reset xfer->tl to -1 while holding fc->tlabel_lock, so that the xfer isn't mis-identified as belonging to a tlabel.
This doesn't fix all the use-after-free problems for M_FWMEM, but is an incremental towards that goal.
Reviewed by: kan, sbruno Sponsored by: Spectra Logic
|
247109 |
21-Feb-2013 |
imp |
bus_dmamap_load_ccb doesn't exist on earlier versions of FreeBSD or DragonFlyBSD, so it certainly doesn't need splsoftvm(). Remove it.
# I doubt this driver will now compile on older FreeBSD versions or DFBSD # We should consider unifdefing it since that code seems unmaintained.
|
246713 |
12-Feb-2013 |
kib |
Reform the busdma API so that new types may be added without modifying 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>)
|
243857 |
04-Dec-2012 |
glebius |
Mechanically substitute flags from historic mbuf allocator with malloc(9) flags in sys/dev.
|
237601 |
26-Jun-2012 |
ken |
Fix an issue that caused the kernel to panic inside CTL when trying 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
|
230558 |
25-Jan-2012 |
sbruno |
Update sbp_targ such that it can actually handle multiple CTIO's during operation
PR: kern/119575
|
229767 |
07-Jan-2012 |
kevlo |
ether_ifattach() sets if_mtu to ETHERMTU, don't bother set it again
Reviewed by: yongari
|
227843 |
22-Nov-2011 |
marius |
- There's no need to overwrite the default device method with the default 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.
|
227309 |
07-Nov-2011 |
ed |
Mark all SYSCTL_NODEs static that have no corresponding SYSCTL_DECLs.
The SYSCTL_NODE macro defines a list that stores all child-elements of that node. If there's no SYSCTL_DECL macro anywhere else, there's no reason why it shouldn't be static.
|
227293 |
07-Nov-2011 |
ed |
Mark MALLOC_DEFINEs static that have no corresponding MALLOC_DECLAREs.
This means that their use is restricted to a single C file.
|
225950 |
03-Oct-2011 |
ken |
Add descriptor sense support to CAM, and honor sense residuals properly in CAM.
Desriptor sense is a new sense data format that originated in SPC-3. Among other things, it allows for an 8-byte info field, which is necessary to pass back block numbers larger than 4 bytes.
This change adds a number of new functions to scsi_all.c (and therefore libcam) that abstract out most access to sense data.
This includes a bump of CAM_VERSION, because the CCB ABI has changed. Userland programs that use the CAM pass(4) driver will need to be recompiled.
camcontrol.c: Change uses of scsi_extract_sense() to use scsi_extract_sense_len().
Use scsi_get_sks() instead of accessing sense key specific data directly.
scsi_modes: Update the control mode page to the latest version (SPC-4).
scsi_cmds.c, scsi_target.c: Change references to struct scsi_sense_data to struct scsi_sense_data_fixed. This should be changed to allow the user to specify fixed or descriptor sense, and then use scsi_set_sense_data() to build the sense data.
ps3cdrom.c: Use scsi_set_sense_data() instead of setting sense data manually.
cam_periph.c: Use scsi_extract_sense_len() instead of using scsi_extract_sense() or accessing sense data directly.
cam_ccb.h: Bump the CAM_VERSION from 0x15 to 0x16. The change of struct scsi_sense_data from 32 to 252 bytes changes the size of struct ccb_scsiio, but not the size of union ccb. So the version must be bumped to prevent structure mis-matches.
scsi_all.h: Lots of updated SCSI sense data and other structures.
Add function prototypes for the new sense data functions.
Take out the inline implementation of scsi_extract_sense(). It is now too large to put in a header file.
Add macros to calculate whether fields are present and filled in fixed and descriptor sense data
scsi_all.c: In scsi_op_desc(), allow the user to pass in NULL inquiry data, and we'll assume a direct access device in that case.
Changed the SCSI RESERVED sense key name and description to COMPLETED, as it is now defined in the spec.
Change the error recovery action for a number of read errors to prevent lots of retries when the drive has said that the block isn't accessible. This speeds up reconstruction of the block by any RAID software running on top of the drive (e.g. ZFS).
In scsi_sense_desc(), allow for invalid sense key numbers. This allows calling this routine without checking the input values first.
Change scsi_error_action() to use scsi_extract_sense_len(), and handle things when invalid asc/ascq values are encountered.
Add a new routine, scsi_desc_iterate(), that will call the supplied function for every descriptor in descriptor format sense data.
Add scsi_set_sense_data(), and scsi_set_sense_data_va(), which build descriptor and fixed format sense data. They currently default to fixed format sense data.
Add a number of scsi_get_*() functions, which get different types of sense data fields from either fixed or descriptor format sense data, if the data is present.
Add a number of scsi_*_sbuf() functions, which print formatted versions of various sense data fields. These functions work for either fixed or descriptor sense.
Add a number of scsi_sense_*_sbuf() functions, which have a standard calling interface and print the indicated field. These functions take descriptors only.
Add scsi_sense_desc_sbuf(), which will print a formatted version of the given sense descriptor.
Pull out a majority of the scsi_sense_sbuf() function and put it into scsi_sense_only_sbuf(). This allows callers that don't use struct ccb_scsiio to easily utilize the printing routines. Revamp that function to handle descriptor sense and use the new sense fetching and printing routines.
Move scsi_extract_sense() into scsi_all.c, and implement it in terms of the new function, scsi_extract_sense_len(). The _len() version takes a length (which should be the sense length - residual) and can indicate which fields are present and valid in the sense data.
Add a couple of new scsi_get_*() routines to get the sense key, asc, and ascq only.
mly.c: Rename struct scsi_sense_data to struct scsi_sense_data_fixed.
sbp_targ.c: Use the new sense fetching routines to get sense data instead of accessing it directly.
sbp.c: Change the firewire/SCSI sense data transformation code to use struct scsi_sense_data_fixed instead of struct scsi_sense_data. This should be changed later to use scsi_set_sense_data().
ciss.c: Calculate the sense residual properly. Use scsi_get_sense_key() to fetch the sense key.
mps_sas.c, mpt_cam.c: Set the sense residual properly.
iir.c: Use scsi_set_sense_data() instead of building sense data by hand.
iscsi_subr.c: Use scsi_extract_sense_len() instead of grabbing sense data directly.
umass.c: Use scsi_set_sense_data() to build sense data.
Grab the sense key using scsi_get_sense_key().
Calculate the sense residual properly.
isp_freebsd.h: Use scsi_get_*() routines to grab asc, ascq, and sense key values.
Calculate and set the sense residual.
MFC after: 3 days Sponsored by: Spectra Logic Corporation
|
223353 |
21-Jun-2011 |
imp |
When we see an interrupt status of 0xffffffff, check to see if the child is still present. If not, return 'handled' and don't print anything (this is expected behavior). We expect an interrupt on eject, power-down and/or shutdown.
|
219543 |
11-Mar-2011 |
marius |
Allocate the DMA memory shared between the host and the controller as coherent.
MFC after: 2 weeks
|
215334 |
15-Nov-2010 |
dougb |
Remove references to MAKEDEV(8)
|
214021 |
18-Oct-2010 |
brucec |
Fix grammar.
|
212413 |
10-Sep-2010 |
avg |
bus_add_child: change type of order parameter to u_int
This reflects actual type used to store and compare child device orders. Change is mostly done via a Coccinelle (soon to be devel/coccinelle) semantic patch. Verified by LINT+modules kernel builds.
Followup to: r212213 MFC after: 10 days
|
205842 |
29-Mar-2010 |
imp |
Cast a bus_size_t to a (size_t) to use %zd specifier. Not quite the right thing to do, but it is in compat code I don't want to sort out at the moment.
|
201758 |
07-Jan-2010 |
mbr |
Remove extraneous semicolons, no functional changes.
Submitted by: Marc Balmer <marc@msys.ch> MFC after: 1 week
|
201223 |
29-Dec-2009 |
rnoland |
Update d_mmap() to accept vm_ooffset_t and vm_memattr_t.
This replaces d_mmap() with the d_mmap2() implementation and also changes the type of offset to vm_ooffset_t.
Purge d_mmap2().
All driver modules will need to be rebuilt since D_VERSION is also bumped.
Reviewed by: jhb@ MFC after: Not in this lifetime...
|
196970 |
08-Sep-2009 |
phk |
Revert previous commit and add myself to the list of people who should know better than to commit with a cat in the area.
|
196969 |
08-Sep-2009 |
phk |
Add necessary include.
|
194687 |
23-Jun-2009 |
rdivacky |
Fix what seems to be an obvious typo preventing the body of the if statement to ever be executed.
Approved by: ed (mentor)
|
194118 |
13-Jun-2009 |
jamie |
Rename the host-related prison fields to be the same as the host.* parameters they represent, and the variables they replaced, instead of abbreviated versions of them.
Approved by: bz (mentor)
|
193096 |
30-May-2009 |
attilio |
When user_frac in the polling subsystem is low it is going to busy the CPU for too long period than necessary. Additively, interfaces are kept polled (in the tick) even if no more packets are available. In order to avoid such situations a new generic mechanism can be implemented in proactive way, keeping track of the time spent on any packet and fragmenting the time for any tick, stopping the processing as soon as possible.
In order to implement such mechanism, the polling handler needs to change, returning the number of packets processed. While the intended logic is not part of this patch, the polling KPI is broken by this commit, adding an int return value and the new flag IFCAP_POLLING_NOCOUNT (which will signal that the return value is meaningless for the installed handler and checking should be skipped).
Bump __FreeBSD_version in order to signal such situation.
Reviewed by: emaste Sponsored by: Sandvine Incorporated
|
193066 |
29-May-2009 |
jamie |
Place hostnames and similar information fully under the prison system. The system hostname is now stored in prison0, and the global variable "hostname" has been removed, as has the hostname_mtx mutex. Jails may have their own host information, or they may inherit it from the parent/system. The proper way to read the hostname is via getcredhostname(), which will copy either the hostname associated with the passed cred, or the system hostname if you pass NULL. The system hostname can still be accessed directly (and without locking) at prison0.pr_host, but that should be avoided where possible.
The "similar information" referred to is domainname, hostid, and hostuuid, which have also become prison parameters and had their associated global variables removed.
Approved by: bz (mentor)
|
190792 |
07-Apr-2009 |
sbruno |
Minor updates as a precursor to fixing sbp_targ
firewire.c -- expand a comment and repair a typo sbp.h -- define Logical Unit Reset so it can be used in sbp_targ
Reviewed by: scottl@freebsd.org
|
189928 |
17-Mar-2009 |
sbruno |
Reviewed by: scott (scottl@freebsd.org) Obtained from: Hideotshi Shimokawa
This update is based on comments from Hidetoshi.
Changeset 183550 removed the call to crom_load() in fw_busreset(). Restore that call such that the Configuration ROM is valid.
Stash and update fwdev settings in fw_explore_node() so that negotiation works again.
|
189575 |
09-Mar-2009 |
imp |
remove now-redunant cardbus attachment.
|
188756 |
18-Feb-2009 |
sbruno |
Enhance debugging mode by storing the string "BB:TT:LL" once and use it instead of overloading sbp_show_sdev_info().
replace calls to printf with calls to device_printf and cleanup debug messages
Remove a bit of dead, commented out code.
Reviewed by: scottl(mentor) MFC after: 2 weeks
|
188726 |
17-Feb-2009 |
sbruno |
Introduce 1394a-2000 extended PHY Self ID packets.
Deprecate unused phy_delay Self ID field as it was removed by 1394a-2000.
Attempt to parse extended Self ID PHY packets if they are detected
Reviewed by: scottl (mentor) MFC after: 2 weeks
|
188722 |
17-Feb-2009 |
sbruno |
Simplify some debugging messages and try to consolodate some of the more interesting conditional printf's into single device_printf's
Change a couple of variable names so that I don't have to trace what they acutally do anymore.
Enable the display of the Self ID PHY packet if firewire_debug > 0 Reviewed by: scottl(mentor) MFC after: 2 weeks
|
188704 |
17-Feb-2009 |
sbruno |
Synopsis: If speed of link between two devices is slower than the reported max speed of both endpoints, the current driver will fail and be unable to negotiate.
Summary: Test negotiated speed by reading the CSRROM into a dummy variable. If that read fails, decrement our speed and retry. If all else fails, go to lowest speed possible(0).
Report speed to the user. Add display of the Bus Info Block when debug.firewire_debug > 1 Support the Bus Info Block(1394a-2000) method of speed detection.
I also should note that I am moving "hold_count" to 0 for future releases.
This variable determines how many bus resets to "hold" a removed firewire device before deletion. I don't feel this is useful and will probably drop support for this sysctl in the future.
Reviewed by: scottl(mentor) MFC after: 2 weeks
|
188585 |
13-Feb-2009 |
sbruno |
Update the Self ID structure to conform to 1394a-2000.
Delete the unused defines.
Reviewed by: scottl
|
188584 |
13-Feb-2009 |
sbruno |
Remove redundant while () from loop.
Submitted by: Ganbold <ganbold@micom.mng.net> Reviewed by: scottl
|
188509 |
12-Feb-2009 |
sbruno |
Enhance debug messages and attempt to unify them into one format where possible.
Reviewed by: scottl
|
188508 |
12-Feb-2009 |
sbruno |
Update comments around various structs.
Add speeds S800, S1600 and S3200
|
188394 |
09-Feb-2009 |
fjoe |
Do not self-initialize a variable.
Found with: Coverity Prevent(tm) CID: 3864, 3865
|
188393 |
09-Feb-2009 |
fjoe |
Remove unused variable.
Found with: Coverity Prevent(tm) CID: 3693
|
188079 |
03-Feb-2009 |
sbruno |
Delete fwohci_filt() as it is now unused
Obtained from: Marius Strobl <marius@alchemy.franken.de> MFC after: 2 weeks
|
187993 |
01-Feb-2009 |
sbruno |
Some updates and bug squashing in the firewire stack.
Move the interupt handler to a driver_intr_t type function as it was trying to do way to much for a lightweight filter interrupt function.
Introduce much more locking around fc->mtx. Tested this for lock reversals and other such lockups. Locking seems to be working better, but there is much more to do with regard to locking. The most significant lock is in the BUS RESET handler. It was possible, before this checkin, to set a bus reset via "fwcontrol -r" and have the BUS RESET handler fire before the code responsible for asserting BUS RESET was complete. This locking fixes that issue.
Move some of the memory allocations in the fc struct to the attach function in firewire.c
Rework the businfo.generation indicator to be merely a on/off bit now. It's purpose according to spec is to notify the bus that the config ROM has changed. That's it.
Catch and squash a possible panic in SBP where in the SBP_LOCK was held during a possible error case. The error handling code would definitely panic as it would try to acquire the SBP_LOCK on entrance.
Catch and squash a camcontrol/device lockup when firewire drives go away. When a firewire device was powered off or disconnected from the firewire bus, a "camcontrol rescan all" would hang trying to poll removed devices as they were not properly detached. Don't do that.
Approved by: scottl MFC after: 2 weeks
|
183550 |
02-Oct-2008 |
zec |
Step 1.5 of importing the network stack virtualization infrastructure from the vimage project, as per plan established at devsummit 08/08: http://wiki.freebsd.org/Image/Notes200808DevSummit
Introduce INIT_VNET_*() initializer macros, VNET_FOREACH() iterator macros, and CURVNET_SET() context setting macros, all currently resolving to NOPs.
Prepare for virtualization of selected SYSCTL objects by introducing a family of SYSCTL_V_*() macros, currently resolving to their global counterparts, i.e. SYSCTL_V_INT() == SYSCTL_INT().
Move selected #defines from sys/sys/vimage.h to newly introduced header files specific to virtualized subsystems (sys/net/vnet.h, sys/netinet/vinet.h etc.).
All the changes are verified to have zero functional impact at this point in time by doing MD5 comparision between pre- and post-change object files(*).
(*) netipsec/keysock.c did not validate depending on compile time options.
Implemented by: julian, bz, brooks, zec Reviewed by: julian, bz, brooks, kris, rwatson, ... Approved by: julian (mentor) Obtained from: //depot/projects/vimage-commit2/... X-MFC after: never Sponsored by: NLnet Foundation, The FreeBSD Foundation
|
183397 |
27-Sep-2008 |
ed |
Replace all calls to minor() with dev2unit().
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
|
181803 |
17-Aug-2008 |
bz |
Commit step 1 of the vimage project, (network stack) virtualization work done by Marko Zec (zec@).
This is the first in a series of commits over the course of the next few weeks.
Mark all uses of global variables to be virtualized with a V_ prefix. Use macros to map them back to their global names for now, so this is a NOP change only.
We hope to have caught at least 85-90% of what is needed so we do not invalidate a lot of outstanding patches again.
Obtained from: //depot/projects/vimage-commit2/... Reviewed by: brooks, des, ed, mav, julian, jamie, kris, rwatson, zec, ... (various people I forgot, different versions) md5 (with a bit of help) Sponsored by: NLnet Foundation, The FreeBSD Foundation X-MFC after: never V_Commit_Message_Reviewed_By: more people than the patch
|
178915 |
10-May-2008 |
simokawa |
- Fix panic on detach. - Fix a comment.
MFC after: 2 weeks
|
178911 |
10-May-2008 |
simokawa |
- Disable interrupts on suspend to eliminate excessive 'device physically ejected?' message on resume. - Fix memory leak on resume reported by kiyohara at netbsd.org.
MFC after: 2 weeks
|
177599 |
25-Mar-2008 |
ru |
Replaced the misleading uses of a historical artefact M_TRYWAIT with M_WAIT. Removed dead code that assumed that M_TRYWAIT can return NULL; it's not true since the advent of MBUMA.
Reviewed by: arch
There are ongoing disputes as to whether we want to switch to directly using UMA flags M_WAITOK/M_NOWAIT for mbuf(9) allocation.
|
172836 |
20-Oct-2007 |
julian |
Rename the kthread_xxx (e.g. kthread_create()) calls to kproc_xxx as they actually make whole processes. Thos makes way for us to add REAL kthread_create() and friends that actually make theads. it turns out that most of these calls actually end up being moved back to the thread version when it's added. but we need to make this cosmetic change first.
I'd LOVE to do this rename in 7.0 so that we can eventually MFC the new kthread_xxx() calls.
|
171513 |
20-Jul-2007 |
simokawa |
Protect transaction labels by its own lock to reduce lock contention.
Approved by: re (rwatson)
|
171457 |
15-Jul-2007 |
simokawa |
Improve acquisition of transaction labels. - Keep last transaction label for each destination. - If the next label is not free, just give up. - This should reduce CPU load for TX on if_fwip under heavy load.
Approved by: re (hrs)
|
171302 |
08-Jul-2007 |
simokawa |
Fix a bug of retrieving configuration ROM. - Handle directories and leaves other than unit directories and text leaves correctly. - Now we can retrieve CROM of iSight correctly.
Approved by: re (hrs) Tested by: flz MFC after: 3 days
|
170872 |
17-Jun-2007 |
scottl |
Prepare for future integration between CAM and newbus. xpt_bus_register 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.
|
170807 |
16-Jun-2007 |
simokawa |
- Lock sbp_write_cmd() and ORB_POINTER_ACTIVE flag. - Remove unnecessary timestamps. - Return CAM_RESRC_UNAVAIL for ORB shortage. - Fix a lock problem when doorbell is used. - Fix a potential bug for unordered execution.
|
170724 |
14-Jun-2007 |
simokawa |
- Suppress compiler optimization so that orb[1] must be written first. We may need an explicit memory barrier for other architectures other than i386/amd64.
MFC after: 3 days
|
170427 |
08-Jun-2007 |
simokawa |
Timestamp after sent.
|
170425 |
08-Jun-2007 |
simokawa |
Fix a race after a bus reset. - We are in FWBUSINIT state just after SID interrupt. - Do not pass normal xfers before bus probe is done.
|
170410 |
08-Jun-2007 |
mjacob |
Include now unused var within #if 0 where it come back if the other #if 0 code comes back- quiets gcc 4.2
|
170400 |
07-Jun-2007 |
simokawa |
Add a tunable hw.firewire.phydma_enable.
This is enabled by default. It should be disabled for those who are uneasy with peeking/poking from FireWire.
Please note sbp(4) and dcons(4) over FireWire need this feature.
|
170378 |
06-Jun-2007 |
gallatin |
Fix a typo to make this file compile
|
170374 |
06-Jun-2007 |
simokawa |
MFp4: MPSAFE firewire stack. - lock its own locks and drop Giant. - create its own taskqueue thread. - split interrupt routine - use interrupt filter as a fast interrupt. - run watchdog timer in taskqueue so that it should be serialized with the bottom half. - add extra sanity check for transaction labels. disable ad-hoc workaround for unknown tlabels. - add sleep/wakeup synchronization primitives - don't reset OHCI in fwohci_stop()
|
169829 |
21-May-2007 |
simokawa |
Make sure fwsid is not NULL.
MFC after: 3 days
|
169806 |
21-May-2007 |
simokawa |
MFp4: Simplify the bus probe routin using a kthread.
MFC after: 1 week
|
169475 |
11-May-2007 |
simokawa |
- Initialize login->id and fix problem for non-zero login id. - Increase maxopenings for multiple lun/initiators.
MFC after: 3 days
|
169132 |
30-Apr-2007 |
simokawa |
MFp4: Improve asynchronous packet receive process. - Wake up DMA engine after adding a new receive buffer. - Skip buffers which have unknown state after error. - More rigid error detection.
MFC after: 1 week
|
169131 |
30-Apr-2007 |
simokawa |
MFp4: - Update state in fw_xferq_dorain() after removed from the send queue. - Remove unnecessary 'goto err;".
MFC after: 1 week
|
169130 |
30-Apr-2007 |
simokawa |
MFp4: Fix broken userland API for async packets.
- Introduce fw_xferlist_add/remove(). - Introduce fw_read/write_async(). - Remove unused FWACT_CH.
MFC after: 1 week
|
169127 |
30-Apr-2007 |
simokawa |
MFp4: Fix typo in recv spd.
MFC after: 1 week
|
169123 |
30-Apr-2007 |
simokawa |
MFp4: Add a sysctl knob to disable cycle master mode and add some comments.
MFC after: 1 week
|
169122 |
30-Apr-2007 |
simokawa |
MFp4: remove unused fw_asybusy().
MFC after: 1 week
|
169119 |
30-Apr-2007 |
simokawa |
MFp4: Simplify tlabel handling
- Remove struct tl_label and runtime malloc() for it. - Include tl_lable list in struct fw_xfer. - Don't free unallocated tlabel.
MFC after: 1 week
|
169117 |
30-Apr-2007 |
simokawa |
Initialize configuration ROM before a bus reset.
MFC: after 3 days
|
169019 |
24-Apr-2007 |
simokawa |
Configuration ROM length should be unsigned.
MFC: 1 week
|
168776 |
16-Apr-2007 |
pjd |
s/destory/destroy/ (except for the code in contrib/).
|
168752 |
15-Apr-2007 |
scottl |
Remove Giant from CAM. Drivers (SIMs) now register a mutex that CAM will 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.
|
168099 |
30-Mar-2007 |
simokawa |
Teardown interrupt only when sc->ih is not NULL.
MFC after: 3 days
|
168051 |
30-Mar-2007 |
simokawa |
Free tlabel in fw_xfer_done().
|
168050 |
30-Mar-2007 |
simokawa |
- Don't call fw_busreset() in firewire_attach(). This should fix the problem that the first bus reset is sometimes ignored because of FWBUSRESET status.
MFC after: 3 days
|
167686 |
19-Mar-2007 |
simokawa |
Poll only while interrupt is disabled.
MFC: 3 days after
|
167685 |
19-Mar-2007 |
simokawa |
Wait SCLK to be stable after LPS enabled. This should fix NMI problem in fwphy_rddata().
PR: kern/94146 kern/100356 MFC: after 3 days
|
167632 |
16-Mar-2007 |
simokawa |
Replace xfer->act.hand with xfer->hand.
|
167631 |
16-Mar-2007 |
simokawa |
Remove retry_count.
|
167630 |
16-Mar-2007 |
simokawa |
* Remove xfer->retry_req. It is unnecessary because retry is done by OHCI. Further retry should be done by applications.
|
167629 |
16-Mar-2007 |
simokawa |
Less verbose debug messages.
|
167628 |
16-Mar-2007 |
simokawa |
Detect cycle lost.
|
167624 |
16-Mar-2007 |
simokawa |
Print warning for large DFLTPHYS.
|
167622 |
16-Mar-2007 |
simokawa |
Support MAXPHYS up to 512KB
- We need at least two OCBs with indirect pointers allocated in a 4KB page. - SBP_MAXPHYS can increase to 1MB once we separate management OCB/ORB which usually does not need indirect pointers. - We have to increase SBP_DMA_SIZE for MAXPHYS larger than 1MB.
MFC after: 3 days
|
167602 |
15-Mar-2007 |
simokawa |
Don't mess with PCIM_CMD_SERRESPEN and PCIM_CMD_PERRESPEN. This will fix 'NMI RAM parity error' while booting on some machines.
PR: kern/95077 MFC after: 3 days
|
167086 |
27-Feb-2007 |
jhb |
Use pause() rather than tsleep() on stack variables and function pointers.
|
166901 |
23-Feb-2007 |
piso |
o break newbus api: add a new argument of type driver_filter_t to 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@
|
166165 |
21-Jan-2007 |
marius |
Change the remainder of the drivers for DMA'ing devices enabled in the sparc64 GENERIC and the sound device drivers known working on sparc64 to use bus_get_dma_tag() to obtain the parent DMA tag so we can get rid of the sparc64_root_dma_tag kludge eventually. Except for ath(4), sk(4), stge(4) and ti(4) these changes are runtime tested (unless I booted up the wrong kernels again...).
|
165632 |
29-Dec-2006 |
jhb |
Various bpf(4) related fixes to catch places up to the new bpf(4) semantics. - Stop testing bpf pointers for NULL. In some cases use bpf_peers_present() and then call the function directly inside the conditional block instead of the macro. - For places where the entire conditional block is the macro, remove the test and make the macro unconditional. - Use BPF_MTAP() in if_pfsync on FreeBSD instead of an expanded version of the old semantics.
Reviewed by: csjp (older version)
|
164940 |
06-Dec-2006 |
cperciva |
Correct a signedness bug which allowed members of the operator group to read kernel memory.
Security: FreeBSD-SA-06:25.kmem
|
163896 |
02-Nov-2006 |
mjacob |
2nd and final commit that moves us to CAM_NEW_TRAN_CODE as the default.
Reviewed by multitudes.
|
163816 |
31-Oct-2006 |
mjacob |
The first of 3 major steps to move the CAM layer forward to using 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
|
159535 |
12-Jun-2006 |
imp |
Better printf
|
155315 |
04-Feb-2006 |
imp |
Don't type pun accidentally. Instead, be explicit that we're type punning with an union so that the compiler knows.
|
153706 |
24-Dec-2005 |
trhodes |
Make tv_sec a time_t on all platforms but alpha. Brings us more in line with POSIX. This also makes the struct correct we ever implement an i386-time64 architecture. Not that we need too.
Reviewed by: imp, brooks Approved by: njl (acpica), des (no objects, touches procfs) Tested with: make universe
|
152792 |
25-Nov-2005 |
simokawa |
Fix panic when we cannot find self-id of probing nodes. This shouldn't happen as far as the self-id buffer is vaild but some people have this problem.
PR: kern/83999 Submitted by: Markus Wild <fbsd-lists@dudes.ch> MFC after: 3 days
|
151229 |
11-Oct-2005 |
glebius |
Fix typo.
Submitted by: maxim MFC after: 3 days
|
150968 |
05-Oct-2005 |
glebius |
- Don't pollute opt_global.h with DEVICE_POLLING and introduce opt_device_polling.h - Include opt_device_polling.h into appropriate files. - Embrace with HAVE_KERNEL_OPTION_HEADERS the include in the files that can be compiled as loadable modules.
Reviewed by: bde
|
150789 |
01-Oct-2005 |
glebius |
Big polling(4) cleanup.
o Axe poll in trap.
o Axe IFF_POLLING flag from if_flags.
o Rework revision 1.21 (Giant removal), in such a way that poll_mtx is not dropped during call to polling handler. This fixes problem with idle polling.
o Make registration and deregistration from polling in a functional way, insted of next tick/interrupt.
o Obsolete kern.polling.enable. Polling is turned on/off with ifconfig.
Detailed kern_poll.c changes: - Remove polling handler flags, introduced in 1.21. The are not needed now. - Forget and do not check if_flags, if_capenable and if_drv_flags. - Call all registered polling handlers unconditionally. - Do not drop poll_mtx, when entering polling handlers. - In ether_poll() NET_LOCK_GIANT prior to locking poll_mtx. - In netisr_poll() axe the block, where polling code asks drivers to unregister. - In netisr_poll() and ether_poll() do polling always, if any handlers are present. - In ether_poll_[de]register() remove a lot of error hiding code. Assert that arguments are correct, instead. - In ether_poll_[de]register() use standard return values in case of error or success. - Introduce poll_switch() that is a sysctl handler for kern.polling.enable. poll_switch() goes through interface list and enabled/disables polling. A message that kern.polling.enable is deprecated is printed.
Detailed driver changes: - On attach driver announces IFCAP_POLLING in if_capabilities, but not in if_capenable. - On detach driver calls ether_poll_deregister() if polling is enabled. - In polling handler driver obtains its lock and checks IFF_DRV_RUNNING flag. If there is no, then unlocks and returns. - In ioctl handler driver checks for IFCAP_POLLING flag requested to be set or cleared. Driver first calls ether_poll_[de]register(), then obtains driver lock and [dis/en]ables interrupts. - In interrupt handler driver checks IFCAP_POLLING flag in if_capenable. If present, then returns.This is important to protect from spurious interrupts.
Reviewed by: ru, sam, jhb
|
149208 |
17-Aug-2005 |
brooks |
Remove an unnecessicary bzero that was zeroing the softc's struct ifnet pointer.
Submitted by: brueffer Reviewed by: dfr
|
148887 |
09-Aug-2005 |
rwatson |
Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE and IFF_DRV_RUNNING, as well as the move from ifnet.if_flags to ifnet.if_drv_flags. Device drivers are now responsible for synchronizing access to these flags, as they are in if_drv_flags. This helps prevent races between the network stack and device driver in maintaining the interface flags field.
Many __FreeBSD__ and __FreeBSD_version checks maintained and continued; some less so.
Reviewed by: pjd, bz MFC after: 7 days
|
148868 |
08-Aug-2005 |
rwatson |
Merge the dev_clone and dev_clone_cred event handlers into a single event handler, dev_clone, which accepts a credential argument. Implementors of the event can ignore it if they're not interested, and most do. This avoids having multiple event handler types and fall-back/precedence logic in devfs.
This changes the kernel API for /dev cloning, and may affect third party packages containg cloning kernel modules.
Requested by: phk MFC after: 3 days
|
148106 |
17-Jul-2005 |
imp |
The Sony i.LINK CXD1947 device is a firewire bridge, but it doesn't implement the OHCI programming interface. Thus it probes, but fails to attach because of an invalid OHCI version. Rather than count on the downstream tests properly failing, print a message that this chipset isn't supported and fail the probe.
|
147256 |
10-Jun-2005 |
brooks |
Stop embedding struct ifnet at the top of driver softcs. Instead the struct ifnet or the layer 2 common structure it was embedded in have been replaced with a struct ifnet pointer to be filled by a call to the new function, if_alloc(). The layer 2 common structure is also allocated via if_alloc() based on the interface type. It is hung off the new struct ifnet member, if_l2com.
This change removes the size of these structures from the kernel ABI and will allow us to better manage them as interfaces come and go.
Other changes of note: - Struct arpcom is no longer referenced in normal interface code. Instead the Ethernet address is accessed via the IFP2ENADDR() macro. To enforce this ac_enaddr has been renamed to _ac_enaddr. - The second argument to ether_ifattach is now always the mac address from driver private storage rather than sometimes being ac_enaddr.
Reviewed by: sobomax, sam
|
146439 |
20-May-2005 |
marius |
Recognize the integrated (though not necessarily enabled) FireWire controllers of Sun PCIO-2 chips which are used onboard in most of the newer PCI-based sun4u machines (cosmetic change as they were also already probed as generic FWOHCI without this). As with gem(4), hme(4) and ohci(4) detect whether their intpin register is valid and correct it if necessary, i.e. set the respective IVAR to the right value for allocating the IRQ resource, as some of them come up having it set to 0 (in fact in all machines I'm currently aware of the FireWire part being enabled). This fixes attaching affected controllers.
Apporved by: simokawa Tested by: Michiel Boland <michiel@boland.org> MFC after: 1 month
|
144389 |
31-Mar-2005 |
phk |
Explicitly hold a reference to the cdev we have just cloned. This closes the race where the cdev was reclaimed before it ever made it back to devfs lookup.
|
144263 |
29-Mar-2005 |
sam |
fix potential null ptr deref
Submitted by: Coverity Prevent analysis tool
|
143161 |
05-Mar-2005 |
imp |
Use BUS_PROBE_DEFAULT for pci probe return value
|
139759 |
06-Jan-2005 |
simokawa |
Clear PCIM_CMD_SERRESPEN and PCIM_CMD_PERRESPEN for broken hardware. Some amd64 laptops fail to boot with these flags.
PR: kern/75482
|
139749 |
06-Jan-2005 |
imp |
Start each of the license/copyright comments with /*-, minor shuffle of lines
|
139680 |
04-Jan-2005 |
jmg |
return after freeing data element, instead of falling through, and using the free'd element, and ultimate NULL deref of the failed allocation.
MFC after: 1 week
|
137503 |
10-Nov-2004 |
simokawa |
Fix malloc type in free().
|
136782 |
22-Oct-2004 |
simokawa |
Respect _BOOT flag.
|
134868 |
06-Sep-2004 |
simokawa |
Add a missing splx().
|
134485 |
29-Aug-2004 |
simokawa |
Remove an unused variable.
|
133930 |
18-Aug-2004 |
rwatson |
Assert Giant in fwe_start(), as it is not yet MPSAFE.
|
133686 |
13-Aug-2004 |
rwatson |
Since if_fwip doesn't contain locking or run with INTR_MPSAFE, mark the interface as IFF_NEEDSGIANT so if_start is run holding Giant.
Approved by: dfr
|
133538 |
12-Aug-2004 |
rwatson |
Set IFF_NEEDSGIANT for fwe network interface since the firewire framework isn't yet MPSAFE.
Approved by: simokawa
|
133116 |
04-Aug-2004 |
simokawa |
Fix and add deivce ID's.
Obtained from: DragonFly BSD
|
132771 |
28-Jul-2004 |
kan |
Avoid casts as lvalues.
|
132445 |
20-Jul-2004 |
dfr |
Temporary fix for interoperability with Windows and OS X. A more complete fix will follow when its ready.
Submitted by: simokawa
|
132432 |
20-Jul-2004 |
simokawa |
Don't output too many debug messages for bootverbose. This driver seems to be fairly stable now.
|
132430 |
20-Jul-2004 |
simokawa |
Initialize ifp->if_output for FreeBSD-4.
|
132429 |
20-Jul-2004 |
simokawa |
Adjust packet length correctly for FreeBSD-4.
Submitted by: Joerg Sonnenberger <joerg@britannica.bec.de>
|
132283 |
17-Jul-2004 |
simokawa |
Add some PCI IDs for OHCI chips.
Obtained from: DragonFly BSD
|
132199 |
15-Jul-2004 |
phk |
Do a pass over all modules in the kernel and make them return EOPNOTSUPP for unknown events.
A number of modules return EINVAL in this instance, and I have left those alone for now and instead taught MOD_QUIESCE to accept this as "didn't do anything".
|
131398 |
01-Jul-2004 |
jhb |
Trim a few things from the dmesg output and stick them under bootverbose to cut down on the clutter including PCI interrupt routing, MTRR, pcibios, etc.
Discussed with: USENIX Cabal
|
131255 |
28-Jun-2004 |
imp |
Remove the setting of the pci config variables on power state changes. The bus does this now.
|
130677 |
18-Jun-2004 |
simokawa |
Fix the description of hw.firewire.sbp.exclusive_login.
Submitted by: KIYOHARA Takashi <kiyohara@kk.iij4u.or.jp>
|
130640 |
17-Jun-2004 |
phk |
Second half of the dev_t cleanup.
The big lines are: NODEV -> NULL NOUDEV -> NODEV udev_t -> dev_t udev2dev() -> findcdev()
Various minor adjustments including handling of userland access to kernel space struct cdev etc.
|
130585 |
16-Jun-2004 |
phk |
Do the dreaded s/dev_t/struct cdev */ Bump __FreeBSD_version accordingly.
|
130532 |
15-Jun-2004 |
dfr |
Fix spelling.
|
130460 |
14-Jun-2004 |
dfr |
If we run out of transmission labels, just re-queue the packet for later instead of printing endless error messages on the console and discarding the packet.
|
130411 |
13-Jun-2004 |
dfr |
Add configuration rom entries for IP over firewire.
|
130407 |
13-Jun-2004 |
dfr |
Add a new driver to support IP over firewire. This driver is intended to conform to the rfc2734 and rfc3146 standard for IP over firewire and should eventually supercede the fwe driver. Right now the broadcast channel number is hardwired and we don't support MCAP for multicast channel allocation - more infrastructure is required in the firewire code itself to fix these problems.
|
129879 |
30-May-2004 |
phk |
Add missing <sys/module.h> includes
|
129628 |
23-May-2004 |
dfr |
Don't try to copy out the result payload if there isn't one. This ioctl interface really needs changing to split out the various async request types.
|
129616 |
23-May-2004 |
mux |
We don't need to initialize if_output, ether_ifattach() does it for us.
|
129611 |
23-May-2004 |
dfr |
Initialise OHCI_CROMHDR and OHCI_BUS_OPT in fwohci_ibr to make sure that they have the right values at the first bus reset.
|
129585 |
22-May-2004 |
dfr |
Change u_intXX_t to uintXX_t. Change a couple of 'unsigned long's to uint32_t where appropriate.
|
129552 |
21-May-2004 |
yar |
Mark the capability of this driver to receive VLAN frames >1500 bytes as initially active in if_capenable since it is always on.
Reviewed by: simokawa
|
129541 |
21-May-2004 |
dfr |
Fix spelling.
|
129274 |
16-May-2004 |
dfr |
Don't use the node id as an index into the topology map. This breaks if a node on the bus has more than three ports (like my cheapo six port hub).
|
127468 |
26-Mar-2004 |
simokawa |
MFp4: FireWire * all - s/__FUNCTION__/__func__/. Submitted by: Stefan Farfeleder <stefan@fafoe.narf.at> - Compatibility for RELENG_4 and DragonFly.
* firewire - Timestamp just before queuing. - Retry bus probe if it fails. - Use device_printf() for debug message. - Invalidiate CROM while update. - Don't process minimum/invalid CROM.
* sbp - Add ORB_SHORTAGE flag. - Add sbp.tags tunable. - Revive doorbell support. It's not enabled by default.
|
127347 |
24-Mar-2004 |
simokawa |
Fix a bug introduced in rev 1.33(mega API change). Because xfer->send.payload is a pointer to the buffer, '&' shouldn't be there.
Submitted by: John Weisgerber <weisgerberj@gsilumonics.com> PR: misc/64623
|
127135 |
17-Mar-2004 |
njl |
Convert callers to the new bus_alloc_resource_any(9) API.
Submitted by: Mark Santcroos <marks@ripe.net> Reviewed by: imp, dfr, bde
|
126102 |
22-Feb-2004 |
cperciva |
Check that xfer != NULL before dereferencing it, not after.
Reported by: "Ted Unangst" <tedu@coverity.com> Approved by: rwatson (mentor)
|
126080 |
21-Feb-2004 |
phk |
Device megapatch 4/6:
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.
|
126076 |
21-Feb-2004 |
phk |
Device megapatch 1/6:
Free approx 86 major numbers with a mostly automatically generated patch.
A number of strategic drivers have been left behind by caution, and a few because they still (ab)use their major number.
|
125747 |
12-Feb-2004 |
jhb |
Use the PCIR_BAR() macro rather than a magic number to specify the BAR for controller memory.
|
125239 |
30-Jan-2004 |
simokawa |
Add NEC uPD72873.
Submitted by: Christian Laursen <xi@borderworlds.dk>
|
125238 |
30-Jan-2004 |
simokawa |
Use device_identify and bus_add_child methods to add a firewire bus on fwohci. This should fix attach failure caused by a race between firewire and fwochi initialization for the kernel module.
|
124877 |
23-Jan-2004 |
simokawa |
* fwohci_pci.c Improve error message for attach failure.
* sbp_targ.c - Add speed in struct sbp_targ_login. - Remove unnecessary htonl().
|
124836 |
22-Jan-2004 |
simokawa |
Add missing free() in exception handlers.
Reported by: Stanford Metacompilation research group
|
124378 |
11-Jan-2004 |
simokawa |
Sync type of linkspeed with firewire.c.
|
124251 |
08-Jan-2004 |
simokawa |
* firewire Add tcode_str[] and improve debug message. * sbp If max_speed is negative, use the maximum speed which the ohci chip supports. The default max_speed is -1. * if_fwe If tx_speed is negative, use the maximum speed which the ohci chip supports. The default tx_speed is 2.
|
124169 |
06-Jan-2004 |
simokawa |
Remove __P().
|
124168 |
06-Jan-2004 |
simokawa |
Fix register mis-alignment introduced in rev1.12.
|
124145 |
05-Jan-2004 |
simokawa |
MFp4: * firewire - Remove pending list. - Ignore timeout for the FWXF_START state. - Define M_FWMEM for debugging. - Comment out DELAY() in fw_asybusy(). - Improve debugging messages * sbp - Freeze simq while bus reset.
|
123740 |
23-Dec-2003 |
peter |
Catch a few places where NULL (pointer) was used where 0 (integer) was expected.
|
123514 |
13-Dec-2003 |
simokawa |
Fix panic. - Don't call sbp_targ_status_FIFO() twice for LOGIN error. - Don't access login if it's NULL.
|
123430 |
11-Dec-2003 |
simokawa |
MFp4: - Introduce sbp_targ_login instead of sbp_targ_istate. - Implement reconnection and logout. - Freeze simq while bus reset.
|
123019 |
28-Nov-2003 |
imp |
Sometimes cardbus attachments don't attach, so while we track down this problem put these lines back in. While they should be unnecessary, they appear to be sometimes necessary.
Reviewed in concept: dfr Approved by: re (scottl@)
|
122603 |
13-Nov-2003 |
simokawa |
Add tunables.
|
122529 |
12-Nov-2003 |
simokawa |
Improve debug message.
|
122528 |
12-Nov-2003 |
simokawa |
- Reserve a ocb for management ORB. - Requeue XPT_SCSI_IO if ocb is short.
|
122526 |
12-Nov-2003 |
simokawa |
Oops, fix typo in my name.
|
122421 |
10-Nov-2003 |
simokawa |
Reduce debug message.
|
122387 |
10-Nov-2003 |
simokawa |
* Improve sbp device probe in boot process. - Notify BUS RESET to CAM in sbp_attach(). - Use last bus reset time to determine login delay.
Tested by: imura
* Add some sysctl MIB and tunables.
|
122352 |
09-Nov-2003 |
tanimura |
- Implement selwakeuppri() which allows raising the priority of a thread being waken up. The thread waken up can run at a priority as high as after tsleep().
- Replace selwakeup()s with selwakeuppri()s and pass appropriate priorities.
- Add cv_broadcastpri() which raises the priority of the broadcast threads. Used by selwakeuppri() if collision occurs.
Not objected in: -arch, -current
|
122228 |
07-Nov-2003 |
simokawa |
Allow shared open of /dev/fwmem* for read-only.
|
122227 |
07-Nov-2003 |
simokawa |
Respect a return code of fwmem_open().
|
122216 |
07-Nov-2003 |
simokawa |
Increase FWMAXQUEUE up to 128.
|
122212 |
07-Nov-2003 |
simokawa |
Add compatibility for 4-stable.
Submitted by: imura
|
122161 |
06-Nov-2003 |
simokawa |
Use if_printf() for FWEDEBUG.
|
121953 |
03-Nov-2003 |
simokawa |
- Change driver name to fix if_xname breakage in the previous revision. - Don't call device_get_unit() twice.
Tested by: nork
|
121939 |
03-Nov-2003 |
dfr |
Remove explicit cardbus attachments from drivers where this is identical to the pci attachment. Cardbus is a derived class of pci so all pci drivers are automatically available for matching against cardbus devices.
Reviewed by: imp
|
121816 |
31-Oct-2003 |
brooks |
Replace the if_name and if_unit members of struct ifnet with new members if_xname, if_dname, and if_dunit. if_xname is the name of the interface and if_dname/unit are the driver name and instance.
This change paves the way for interface renaming and enhanced pseudo device creation and configuration symantics.
Approved By: re (in principle) Reviewed By: njl, imp Tested On: i386, amd64, sparc64 Obtained From: NetBSD (if_xname)
|
121792 |
31-Oct-2003 |
simokawa |
Add a new sysctl MIB to control exclusive login.
|
121781 |
31-Oct-2003 |
simokawa |
Reject too large OHCI version number.
Invalid OHCI version indicates OHCI registers are not mapped correctly in PCI or CardBus layer.
|
121780 |
31-Oct-2003 |
simokawa |
Add a compatibility macro for FreeBSD-4.
|
121506 |
25-Oct-2003 |
simokawa |
Fix fwmem_strategy() race in 4-stable.
|
121505 |
25-Oct-2003 |
simokawa |
Move validity check of 'xfer->fc != NULL' to right place.
|
121466 |
24-Oct-2003 |
simokawa |
Fix for FW_ASYREQ. - set send.pay_len correctly. - copy response only if needed. - remove unnecessary 'err = 0'.
|
121463 |
24-Oct-2003 |
simokawa |
Don't check timeout just after booted. Some transactions could be considered wrongly to be timeout bacause interrupts are disabled during boot process.
|
121381 |
23-Oct-2003 |
simokawa |
Reduce debug messages.
|
121186 |
18-Oct-2003 |
simokawa |
Add SBP-II target mode driver.
Though this is still incomplete and has some missing features such as exclusive login and event notification, it may be enough for someone who wants to play with it.
This driver is supposed to work with firewire(4), targ(4) of CAM(4) and scsi_target(8) which can be found in /usr/share/example/scsi_target. This driver doesn't require sbp(4) which implements initiator mode.
Sample configuration:
Kernel: (you can use modules as well) device firewire device scbus device targ device sbp_targ
After reboot: # mdconfig -a -t malloc -s 10m md0 # scsi_target 0:0:0 /dev/md0 (Assuming sbp_targ0 on scbus0)
You should find the 10MB HDD on FreeBSD/MacOS X/WinXP or whatever connected to the target using FireWire.
Manpage is not finished yet.
|
121185 |
18-Oct-2003 |
simokawa |
- Call sbp_reset_start() for mgm timeout. - Change type of target->luns to allocate an array of LUNs dynamically. This allows targets to change their number of LUNs after each bus reset. - Serialize ORB POINTER command for each LUN. - Improve debug messages.
|
120850 |
06-Oct-2003 |
simokawa |
- Introduce hw.firewire.hold_count sysctl MIB by popular demand.
This MIB specifies how many bus resets should be observed before the lost device entry is removed. The default value is 3. You can set this value to 0 if you want a SBP device to be detached from CAM layer as soon as the device is physically detached like USB.
|
120847 |
06-Oct-2003 |
simokawa |
- Implement sbp_poll() to enable kernel dump on SBP-2 device.
|
120842 |
06-Oct-2003 |
simokawa |
- Fix timeout for unodered excution.
In unodered excution case, we cannot detect link-chain end only by prev == NULL if lastest ORB is executed earlyer than the former ORBs. Use ORB_LINK_DEAD flag for this case.
- Don't reset agent for management ORB. - Improve debug messages.
Spotted by: sbp target mode
|
120664 |
02-Oct-2003 |
simokawa |
Remove wrong usage of BUF_REFCNT().
Spotted by: phk
|
120660 |
02-Oct-2003 |
simokawa |
MFp4: Change struct fw_xfer to reduce memory copy in fwmem_*() functions. And many changes.
* all - Major change of struct fw_xfer. o {send,recv}.buf is splitted into hdr and payload. o Remove unnecessary fields. o spd is moved under send and recv. - Remove unnecessary 'volatile' keyword. - Add definition of rtcode and extcode.
* firewire.c - Ignore FWDEVINVAL devices in fw_noderesolve_nodeid(). - Check the existance of the bind before call STAILQ_REMOVE(). - Fix bug in the fw_bindadd(). - Change element of struct fw_bind for simplicity. - Check rtcode of response packet. - Reduce split transaction timeout to 200 msec. (100msec is the default value in the spec.) - Set watchdog timer cycle to 10 Hz. - Set xfer->tv just before calling fw_get_tlabel().
* fwohci.c - Simplifies fwohci_get_plen().
* sbp.c - Fix byte order of multibyte scsi_status informations. - Split sbp.c and sbp.h. - Unit number is not necessary for FIFO¤ address. - Reduce LOGIN_DELAY and SCAN_DELAY to 1 sec. - Add some constants defineded in SBP-2 spec.
* fwmem.c - Introduce fwmem_strategy() and reduce memory copy.
|
120624 |
01-Oct-2003 |
simokawa |
Fix a bug in fwdev_clone().
Spotted by: grog
|
120431 |
25-Sep-2003 |
simokawa |
Phy register map.
|
119556 |
29-Aug-2003 |
simokawa |
Fix byte order of multi-byte scsi_status information.
|
119418 |
24-Aug-2003 |
obrien |
Use __FBSDID(). Also some minor style cleanups.
|
119290 |
22-Aug-2003 |
simokawa |
Make this compiled on RELENG_4.
|
119289 |
22-Aug-2003 |
simokawa |
Comment out verbose debug messages.
|
119277 |
22-Aug-2003 |
imp |
Prefer new location of pci include files (which have only been in the tree for two or more years now), except in a few places where there's code to be compatible with older versions of FreeBSD.
|
119196 |
21-Aug-2003 |
simokawa |
Include order bit in sdev->type.
|
119155 |
20-Aug-2003 |
simokawa |
Fill reserved fields of transmitting packets header with zero. This fixes the if_fwe problem with 1394b chip.
PR and Tested by: nork
|
119120 |
19-Aug-2003 |
simokawa |
Remove unused code.
|
119119 |
19-Aug-2003 |
simokawa |
Drop too short packets.
|
119118 |
19-Aug-2003 |
simokawa |
Allow to access phy registers via ioctl().
|
118820 |
12-Aug-2003 |
simokawa |
Validate number of iso. DMA channels.
|
118455 |
05-Aug-2003 |
simokawa |
Change device name notation. - /dev/fw{,mem}X.Y represents the Y'th unit on the X'th bus. - /dev/fw{,mem}X is an alias of fw{,mem}X.0 for compatibility. - Clone devices.
|
118416 |
04-Aug-2003 |
simokawa |
- Don't mess with TX queue in fwohci_stop() if we failed to attach the device.
Tested by: wilko
- Detect memory mapping failure of registers by checking OHCI version.
Tested by: KONDOU, Kazuhiro <kazuhiro@alib.jp>
|
118312 |
01-Aug-2003 |
simokawa |
Workaround for gcc on alpha/ia64. (warning: `xferq' might be used uninitialized in this function)
|
118293 |
01-Aug-2003 |
simokawa |
Clean up fwdev.
Allocate iso DMA channel dynamically. This allows us to have more /dev/fw* than number of DMA channels for asyn. transactions and etc.
|
118291 |
01-Aug-2003 |
simokawa |
- Disable faking T_DIRECT as T_RBC because we have PIM_NO_6_BYTE now.
|
118289 |
01-Aug-2003 |
simokawa |
- Detect full of DMA channel correctly.
|
118105 |
28-Jul-2003 |
njl |
Add a PATH_INQ flag, PIM_NO_6_BYTE, which indicates the SIM never wishes to receive 6 byte commands. Add a check for this flag to da(4) and cd(4) so that they honor it. This is a quick workaround for many devices (especially USB) that require da(4) quirks to operate. The more complete approach is to finish the new transport code which will be aware of the SCSI version a transport implements.
MFC after: 1 day
|
118039 |
26-Jul-2003 |
peter |
Fix some recently introduced warnings. 'Declaration does not declare anything' etc.
|
117732 |
18-Jul-2003 |
simokawa |
Clean up include files.
|
117716 |
18-Jul-2003 |
simokawa |
Add some debug messages.
|
117473 |
12-Jul-2003 |
simokawa |
Allow retrieval of local Configuration ROM.
|
117350 |
09-Jul-2003 |
simokawa |
Configuraiton ROM fix: - Don't bump the generation if ROM has not changed and keep it between 0x2 and 0xf. - Refetch the ROM if CRC of the businfo block has changed.
|
117228 |
04-Jul-2003 |
simokawa |
Add compatibility for FreeBSD-4.
|
117198 |
03-Jul-2003 |
imp |
All current uses of pci_set_powerstate are bogus, at least in theory. However, they are presently necessary due to bigger bogusness in the pci bus layer not doing the right thing on suspend/resume or on initial device probe. This is exactly the sort of thing that the BURN_BRIDGES option was invented for. Mark all of them as BURN_BRIDGES. As soon as I have the powerstate stuff properly integrated into the pci bus code, I intend to remove all these workarounds.
|
117126 |
01-Jul-2003 |
scottl |
Mega busdma API commit.
Add two new arguments to bus_dma_tag_create(): lockfunc and lockfuncarg. Lockfunc allows a driver to provide a function for managing its locking semantics while using busdma. At the moment, this is used for the asynchronous busdma_swi and callback mechanism. Two lockfunc implementations are provided: busdma_lock_mutex() performs standard mutex operations on the mutex that is specified from lockfuncarg. dftl_lock() is a panic implementation and is defaulted to when NULL, NULL are passed to bus_dma_tag_create(). The only time that NULL, NULL should ever be used is when the driver ensures that bus_dmamap_load() will not be deferred. Drivers that do not provide their own locking can pass busdma_lock_mutex,&Giant args in order to preserve the former behaviour.
sparc64 and powerpc do not provide real busdma_swi functions, so this is largely a noop on those platforms. The busdma_swi on is64 is not properly locked yet, so warnings will be emitted on this platform when busdma callback deferrals happen.
If anyone gets panics or warnings from dflt_lock() being called, please let me know right away.
Reviewed by: tmm, gibbs
|
117104 |
01-Jul-2003 |
simokawa |
Fix tsleep/wakup race on FreeBSD-4.
|
117067 |
30-Jun-2003 |
simokawa |
Include file clean up.
|
116978 |
28-Jun-2003 |
simokawa |
Fix several problems related to resume: - Initialize fc->status to process bus reset correctly after resume. - Initialize AT ring buffer pointer. - Requeue stdma to stfree for active IR buffer. - Stop DMA before suspend for safe. - Set powerstate after resume.
|
116897 |
27-Jun-2003 |
simokawa |
- Use fwohci_poll() instead of fwohci_intr() to process the first bus reest. - Wait 2 cycles before starting the process for fast machines.
|
116435 |
16-Jun-2003 |
simokawa |
Bound check for broken Configuration ROM.
|
116433 |
16-Jun-2003 |
simokawa |
Fix for big endian.
|
116429 |
16-Jun-2003 |
simokawa |
Revert previos change for prior release/branch.
|
116376 |
15-Jun-2003 |
simokawa |
- Enable support for building Configuration ROM. - Improve probe message for S800 chips.
|
116374 |
15-Jun-2003 |
simokawa |
Fix crom_add_simple_text(). Bytewap Configuration ROM image.
|
116373 |
15-Jun-2003 |
simokawa |
Add CSRVAL_VENDOR_PRIVATE.
|
116360 |
15-Jun-2003 |
simokawa |
White space fix.
|
116351 |
14-Jun-2003 |
njl |
Merge common XPT_CALC_GEOMETRY functions into a single convenience function. Devices below may experience a change in geometry.
* Due to a bug, aic(4) never used extended geometry. Changes all drives >1G to now use extended translation. * sbp(4) drives exactly 1 GB in size now no longer use extended geometry. * umass(4) drives exactly 1 GB in size now no longer use extended geometry.
For all other controllers in this commit, this should be a no-op.
Looked over by: scottl
|
116150 |
10-Jun-2003 |
simokawa |
Fix typo in the previous revision.
|
116140 |
10-Jun-2003 |
simokawa |
Fix struct bus_info on big-endian machines.
|
116139 |
10-Jun-2003 |
simokawa |
Add tx_speed sysctl variable.
|
115806 |
04-Jun-2003 |
simokawa |
Add id for TI's 1394b link chip.
|
115788 |
03-Jun-2003 |
simokawa |
Don't call sbp_do_attach() recursively after agent reset while device probing.
|
115787 |
03-Jun-2003 |
simokawa |
Allocate zeroed space for fwdev.
|
115786 |
03-Jun-2003 |
simokawa |
Open fwmem device exclusively.
|
115347 |
27-May-2003 |
scottl |
Remove the redundant declaration of bus_dmasync_op_t.
|
114927 |
12-May-2003 |
simokawa |
Make it compiled on 4-stable.
Approved by: re (scottl)
|
114909 |
11-May-2003 |
simokawa |
- Use moderate gap counts listed in IEEE1394a. - Simplify and correct the bus manager election process. - Check link_active when choosing cycle master. - Fix location of the cmr bit.
Approved by: re (scottl)
|
114732 |
05-May-2003 |
simokawa |
Write to RESET_START register if TARGET_RESET ORB doesn't work for timeout.
|
114729 |
05-May-2003 |
simokawa |
Don't panic for FWXF_START state in fw_xfer_unload().
|
114540 |
02-May-2003 |
jake |
Fix printf format errors.
|
114375 |
01-May-2003 |
simokawa |
Fix printf warning caused by recent CAM change.
|
114286 |
30-Apr-2003 |
simokawa |
Release devq before detach.
|
114284 |
30-Apr-2003 |
simokawa |
Set status to FWDEVINVAL if probe failed.
|
114260 |
29-Apr-2003 |
simokawa |
Add missing crom_next() in the previous revision.
|
114224 |
29-Apr-2003 |
simokawa |
Set recv.len to zero if we get no response.
|
114223 |
29-Apr-2003 |
simokawa |
Get correct firmware/model information for multiple unit directories.
|
114218 |
29-Apr-2003 |
simokawa |
Fix indentation.
|
114215 |
29-Apr-2003 |
simokawa |
Move CSR definitions to iec*.h from firewirereg.h.
|
114142 |
28-Apr-2003 |
simokawa |
Make compiled on RELEGN_4
|
114069 |
26-Apr-2003 |
simokawa |
- Improve configuration ROM parser for multiple unit directory. - Remove getcsrdata(). - Don't print device type, this can be obtained by fwcontrol.
Tested with: Maxtor 5000XT Tested by: Daniel O'Connor <doconnor@gsoft.com.au>
|
113972 |
24-Apr-2003 |
simokawa |
Fix printf warnings for i386 with PAE.
Submitted by: harti
|
113962 |
24-Apr-2003 |
simokawa |
Fix printf warning for RELENG_4.
|
113957 |
24-Apr-2003 |
simokawa |
Add some IEEE 1394 OHCI chips.
Partially submitted by: Tetsuya Ryuchi <ryuchi@ryuchi.org> PR: misc/51336
|
113832 |
22-Apr-2003 |
simokawa |
Set the local bus address in xfer->dst.
Submitted by: Buzz Slye <buzz@gaia.arc.nasa.gov>
|
113802 |
21-Apr-2003 |
simokawa |
Remove unused code.
|
113584 |
17-Apr-2003 |
simokawa |
MFp4(simokawa_firewire): Many internal structure changes for the FireWire driver.
- Compute CRC in CROM parsing. - Add support for configuration ROM build. - Simplify dummy buffer handling. - busdma conversion - Use swi_taskqueue_giant for -current. Mark the interrupt routine as MPSAFE. - AR buffer handling. Don't reallocate AR buffer but just recycle it. Don't malloc and copy per packet in fwohci_arcv(). Pass packet to fw_rcv() using iovec. Application must prepare receiving buffer in advance. - Change fw_bind API so that application should pre-allocate xfer structure. - Add fw_xfer_unload() for recycling struct fw_xfer. - Add post_busreset hook - Remove unused 'sub' and 'act_type' in struct fw_xfer. - Remove npacket from struct fw_bulkxfer. - Don't call back handlers in fwochi_arcv() if the packet has not drained in AT queue - Make firewire works on big endian platform. - Use native endian for packet header and remove unnecessary ntohX/htonX. - Remove FWXFERQ_PACKET mode. We don't use it anymore. - Remove unnecessary restriction of FWSTMAXCHUNK. - Don't set root node for phy config packet if the root node is not cycle master capable but set myself for root node. We should be the root node after next bus reset.
Spotted by: Yoshihiro Tabira <tabira@scd.mei.co.jp> - Improve self id handling
Tested on: i386, sparc64 and i386 with forced bounce buffer
|
113506 |
15-Apr-2003 |
mdodd |
- Express hard dependencies on bus (pci, isa, pccard) and network layer (ether). - Don't abuse module names to facilitate ifconfig module loading; such abuse isn't really needed. (And if we do need type information associated with a module then we should make it explicit and not use hacks.)
|
113474 |
14-Apr-2003 |
simokawa |
Panic if bus_dmamap_load() doesn't respect maxsegsz.
|
112524 |
24-Mar-2003 |
simokawa |
- The payload of Write Request Quad must be network byte order.
|
112523 |
24-Mar-2003 |
simokawa |
- The payload of Write Request Quad and Read Response Quad must be network byte order. - Set ATRetries register after each bus reset because the value is 'undef' in OHCI spec.
|
112522 |
24-Mar-2003 |
simokawa |
Safe PCI configuration. - Clear PCIM_CMD_MWRICEN: some chips seem to have problem with write invalidate. clearing this bit fixes SBP timeout problem.
Tested by: Michael Reifenberger <Michael.Reifenberger@Plaut.de>
- Set PCIM_CMD_SERRESPEN and PCIM_CMD_PERRESPEN - Moderate value for latency timer.
|
112400 |
19-Mar-2003 |
simokawa |
Clear channel and tag bits before set them. This should fix the problem that if_fwe doesn't work after DV receiving.
|
112136 |
12-Mar-2003 |
simokawa |
Put back including sys/devicestat.h for 4-stable.
|
111979 |
08-Mar-2003 |
phk |
Centralize the devstat handling for all GEOM disk device drivers in geom_disk.c.
As a side effect this makes a lot of #include <sys/devicestat.h> lines not needed and some biofinish() calls can be reduced to biodone() again.
|
111956 |
07-Mar-2003 |
simokawa |
- improve timeout handling in fwmem.c - stop processing of TX db if we reaches the end of active db.
|
111942 |
06-Mar-2003 |
simokawa |
MFp4(simokawa_sbp)
Improve if_fwe performance. - Simplify mbuf handling by using bulkxfer. Now, it uses mbuf clusters for RX buffer as usual ethernet drivers. - Recycle struct xfer buffer and don't call malloc at runtime. - Count input and output errors. - Handle a mbuf chain longer than 6 correctly. - Increase queue length.
|
111892 |
05-Mar-2003 |
simokawa |
Set ldesc after dbch->ndesc has initialized.
|
111858 |
04-Mar-2003 |
simokawa |
Fix printf warning on RELENG_4.
|
111819 |
03-Mar-2003 |
simokawa |
Simplify ORB queue management. Don't send doorbell and send ORB pointer only if it's necessary. This reduces bus traffic and interrupts much.
|
111815 |
03-Mar-2003 |
phk |
Gigacommit to improve device-driver source compatibility between branches:
Initialize struct cdevsw using C99 sparse initializtion and remove all initializations to default values.
This patch is automatically generated and has been tested by compiling LINT with all the fields in struct cdevsw in reverse order on alpha, sparc64 and i386.
Approved by: re(scottl)
|
111787 |
03-Mar-2003 |
simokawa |
Defer allowing async. requests after self ID's have received. This should fix some problem of SBP2 device probing.
Prior to rev 1.41, we keep writing the register while bus reset phase. But in rev 1.41, we ignore successive bus reset events and some chips seem to clear the register after we write to it.
Tested by: Michael Reifenberger <root@nihil.reifenberger.com>
|
111753 |
02-Mar-2003 |
phk |
Use canonical format for cdevsw initialization.
|
111748 |
02-Mar-2003 |
des |
More low-hanging fruit: kill caddr_t in calls to wakeup(9) / [mt]sleep(9).
|
111704 |
01-Mar-2003 |
simokawa |
Don't reset agent before processing OCB has done.
|
111615 |
27-Feb-2003 |
simokawa |
MFp4(simokawa_sbp branch)
Improve SBP device probeing: - Wait 2 sec before issuing LOGIN ORB expecting the reconnection hold timer expires. - Serialize management ORB and scanning LUN by CAM on each target. This should fix the problem for devices which have multiple LUNs. Test device is donated by: Jaye Mathisen <mrcpu@internetcds.com> - Freeze SIM queue for 2 sec after BUS RESET. - Retry with LOGIN rather than RECONNECT after LOGIN is not completed for BUS RESET. - Use appropriate CAM status for BUS RESET and DEVICE RESET. - Let CAM to scan targets after BUS REST. - Implement CAM scan target function. - Keep our own devq freeze count. - Let CAM to know that SBP does tagged queuing.
These should be merged to RELENG_4 before 4.8-RELEASE.
|
111462 |
25-Feb-2003 |
mux |
Cleanup of the d_mmap_t interface.
- Get rid of the useless atop() / pmap_phys_address() detour. The device mmap handlers must now give back the physical address without atop()'ing it. - Don't borrow the physical address of the mapping in the returned int. Now we properly pass a vm_offset_t * and expect it to be filled by the mmap handler when the mapping was successful. The mmap handler must now return 0 when successful, any other value is considered as an error. Previously, returning -1 was the only way to fail. This change thus accidentally fixes some devices which were bogusly returning errno constants which would have been considered as addresses by the device pager. - Garbage collect the poorly named pmap_phys_address() now that it's no longer used. - Convert all the d_mmap_t consumers to the new API.
I'm still not sure wheter we need a __FreeBSD_version bump for this, since and we didn't guarantee API/ABI stability until 5.1-RELEASE.
Discussed with: alc, phk, jake Reviewed by: peter Compile-tested on: LINT (i386), GENERIC (alpha and sparc64) Runtime-tested on: i386
|
111203 |
21-Feb-2003 |
simokawa |
Oops, forgot to put back debug level.
|
111201 |
21-Feb-2003 |
simokawa |
remove unused code.
|
111200 |
21-Feb-2003 |
simokawa |
Fix typo
Submitted by: Masahiro Ito <m_itoh@mub.biglobe.ne.jp>
|
111199 |
21-Feb-2003 |
simokawa |
Don't scan lun by myself while boot process leave it CAM to scan the bus. Some drives seem to be confused by simultaneous probes.
Tested by: marcel
As a side effect, logical units whose lun is greater than 0 might not be probed correctly if the lun of 0 doesn't exist in the target because CAM doesn't scan such luns. I have a SCSI-FireWire bridge which maps SCSI-ID to LUN and it is an example of such targets.
|
111119 |
19-Feb-2003 |
imp |
Back out M_* changes, per decision of the TRB.
Approved by: trb
|
111078 |
18-Feb-2003 |
simokawa |
Fix fwdev memory leak on detaching.
|
111076 |
18-Feb-2003 |
simokawa |
Use pci_get_devid().
|
111075 |
18-Feb-2003 |
simokawa |
Add 'uPD72871/2 IEEE1394 1-Chip OHCI Host Controller'.
|
111074 |
18-Feb-2003 |
simokawa |
* firewire.c - Fix memory leak in detaching. - Initialize fc->status to other than FWBUSREST.
* fwohci.c - Ignore BUS reset events while BUS reset phase. We can't clear that flag during bus reset phase.
|
111040 |
17-Feb-2003 |
simokawa |
* firewire.c - Don't initiate bus reset even if probe failed for some nodes to prevent infinite bus reset loop.
Problem Reported by: Pierre Beyssac <pb@fasterix.frmug.org>
- Protect timeout routine with splfw() for 4-stable.
* sbp.c
- Make sure to release devq when start request.
|
110892 |
15-Feb-2003 |
simokawa |
Protect calling fwohci_intr() with splfw() for 4-stable.
|
110891 |
15-Feb-2003 |
simokawa |
- Increase split transaction timeout from 2 sec to 6 sec. Problem reported by: Michael Reifenberger <root@nihil.reifenberger.com>
- Improve debug message.
|
110875 |
14-Feb-2003 |
simokawa |
Clear the bus reset event flag as soon as possible after the initialization has completed to start transactions even when interrupt is disabled during the boot process.
|
110839 |
14-Feb-2003 |
simokawa |
- Though I got a feedback from the originator of kern/48129 that the previous revision fixed the panic, I found the problem exits in another part of the function by investigating the crom dump sent by him. The search was started in the middle of bus info block and the routine misunderstood the EUI64 as a crom entry. This problem is fixed.
PR: kern/48129
Fix incorrect type mask included in a logical unit number and check the validity of the lun.
|
110798 |
13-Feb-2003 |
simokawa |
firewire/fwohci - Drain fwohci TX queue first then drain xfer queue which has not started. - Check validity of the received packet length. - Don't allocate too large buffer for xfer receive buf.
sbp - Fix panic for some CROM which doesn't have a text leaf. This could fix the PR kern/48129 but no feedback has been gotten from the originator yet. - Put back some M_NOWAIT flags into malloc which could be called in interrupt context for 4-stable.
|
110593 |
09-Feb-2003 |
simokawa |
Increase atrq.ndesc for if_fwe.
|
110582 |
09-Feb-2003 |
simokawa |
Add new ioctl to specify target EUI64 for fwmem.
|
110579 |
09-Feb-2003 |
simokawa |
Remove unnecessary check for OCB_ACT_CMD.
|
110577 |
09-Feb-2003 |
simokawa |
- Detect split transcation timeout. * implement watchdog timer. * check all standing transactions in firewire_xfer_timeout(). - Add firewire_xferq_drain() for fw_busreset(). - Add/improve some debug messages. - Call fw_xfer_done() if retry handler is NULL.
|
110488 |
07-Feb-2003 |
simokawa |
Remove debug message.
|
110465 |
06-Feb-2003 |
simokawa |
Fix memory leak.
|
110406 |
05-Feb-2003 |
simokawa |
Fix for fwmem write part. - fix typo - don't need to check receive buffer. - don't forget to free xfer on errer.
|
110337 |
04-Feb-2003 |
simokawa |
- Implement write part. - Use quad access for aligned 4 byte access.
|
110336 |
04-Feb-2003 |
simokawa |
- Improve recovery after timeout. * reset agent first then reset target. * untimeout all ccbs. - Try reconnect first if the device has been seen. - Fix for ORB_FUN_ATA.
|
110273 |
03-Feb-2003 |
simokawa |
Remove unnecessary M_NOWAIT.
|
110270 |
03-Feb-2003 |
simokawa |
Add missing 'static'.
|
110269 |
03-Feb-2003 |
simokawa |
- Take malloc type as an argument in fw_xfer_alloc(). - Fix overwrite problem of freed buffers. It was rare but could happen when fwohci_arcv() is called before fwohci_txd() is called for the transcation. - Drain AT queues and pend AR queues on SID receive rather than BUS reset to make sure DMA actually stops. - Do agent reset in sbp_timeout().
|
110195 |
01-Feb-2003 |
simokawa |
Define new malloc type M_FW and use it.
|
110193 |
01-Feb-2003 |
simokawa |
- replace timeout with callout_*. - replace TAILQ with STAILQ for device list. - some clean up.
|
110189 |
01-Feb-2003 |
simokawa |
Check status FIFO more closely to report error.
|
110184 |
01-Feb-2003 |
simokawa |
Add basic support for device wiring down to specific (CAM) target id. It still needs to be hard-coded now but will be changed to be configured by tunables or device hints.
|
110179 |
01-Feb-2003 |
simokawa |
Sort device list by eui64 in acendent order correctly.
|
110146 |
31-Jan-2003 |
simokawa |
function name change.
|
110145 |
31-Jan-2003 |
simokawa |
SBP related changes. - Issue LOGOUT command on detach and shutdown. - Rename some functions.
|
110129 |
31-Jan-2003 |
simokawa |
SBP related changes. - Set dual phase retry BUSY_TIMEOUT. - Let users to know serial bus error.
|
110072 |
30-Jan-2003 |
simokawa |
Restart cycle master after bus manager election. This should fix the IR(and maybe IT) problem when the host becames the bus manager. - rename fw_noderesolve() to fw_noderesolve_eui64() and add fw_noderesolve_nodeid().
|
110071 |
30-Jan-2003 |
simokawa |
- Handle SCSI_STATUS_BUSY case.
|
110045 |
29-Jan-2003 |
simokawa |
- Probe number of IT/IR DMA contexts as specified in OHCI spec.
|
110016 |
29-Jan-2003 |
simokawa |
- Fix build on alpha. - Add a missing newline in printf.
|
109988 |
28-Jan-2003 |
simokawa |
- Allow multiple packets read/write for IR/IT to reduce system call. - Remove unused variables.
|
109892 |
26-Jan-2003 |
simokawa |
- Split db.desc.cmd into desc.control and desc.reqcount. - remove unncessary descriptor updates.
|
109890 |
26-Jan-2003 |
simokawa |
- Improve IT/IR DMA queue management. - Improve debug message for mbuf handling. - Wait 1 sec for DMA stop in fwohci_i{t,r}x_disable() before freeing buffers.
|
109814 |
25-Jan-2003 |
simokawa |
Change API of FW_GDEVLST ioctl. - include information about itself. - define struct fw_devinfo and use it in struct fw_devlstreq. - unify EUI64 representation using struct fw_eui64.
|
109802 |
24-Jan-2003 |
simokawa |
Remove FW_SSTDV ioctl. It is not used anymore.
|
109801 |
24-Jan-2003 |
simokawa |
Merge little and big endian case.
|
109736 |
23-Jan-2003 |
simokawa |
- Add sysctl knob for bus manager. (hw.firewire.try_bmr) - Check invalid SID length. - Add some debug messages.
|
109645 |
21-Jan-2003 |
simokawa |
Define misc structs outside of struct firewire_comm.
|
109644 |
21-Jan-2003 |
simokawa |
Ignore events of unused IR DMA.
|
109623 |
21-Jan-2003 |
alfred |
Remove M_TRYWAIT/M_WAITOK/M_WAIT. Callers should use 0. Merge M_NOWAIT/M_DONTWAIT into a single flag M_NOWAIT.
|
109424 |
17-Jan-2003 |
simokawa |
Replace M_DONTWAIT with M_NOWAIT for malloc().
Pointed out by: nate@root.org
|
109423 |
17-Jan-2003 |
simokawa |
Improve some debug massages.
|
109422 |
17-Jan-2003 |
simokawa |
Fix bus manager election process. - Lock response 0x3f means that the host becomes the bus manager. - Add missing htonl().
|
109403 |
17-Jan-2003 |
simokawa |
Detect underrun of IT queue for debugging. Add some comments.
|
109379 |
16-Jan-2003 |
simokawa |
Improve memory allocation. - Don't use contigmalloc() and allocate page by page to avoid allocation failure. - allocate buffer by PAGE_SIZE.
|
109356 |
16-Jan-2003 |
simokawa |
Use cycleMatch for precise IT DMA start timing.
|
109283 |
15-Jan-2003 |
simokawa |
DV_PAL shouldn't be here.
|
109282 |
15-Jan-2003 |
simokawa |
Add DV_PAL for PAL users.
|
109280 |
15-Jan-2003 |
simokawa |
Fix IT DMA underun while bus reset. - Reduce number of DELAY's
|
109227 |
14-Jan-2003 |
simokawa |
Fix for FreeBSD-4. - Protect whole fw_tbuf_update() with splfw().
|
109179 |
13-Jan-2003 |
simokawa |
Minimal fix for DV part. - Don't panic on contigmalloc failure. - Calculate timestamp by feedforward rather than feedback which depends on unreliable interrupt timing. - Overwrite timestamp in CIP header correctly. - Add debug code for timestamp synchronization. - Add comments.
|
109178 |
13-Jan-2003 |
simokawa |
Merge big endian and little endian case. Fill fdf bit fields and others.
|
108995 |
09-Jan-2003 |
simokawa |
- Add error messages for bulkxfer. - Reduce register access.
|
108877 |
07-Jan-2003 |
simokawa |
- Fix print format for FreeBSD-4 - Reduce debug message.
|
108853 |
07-Jan-2003 |
simokawa |
Don't call fw_bus_probe() twice when successive self-id packets received. This change should stabilize SBP-II device probing.
|
108782 |
06-Jan-2003 |
simokawa |
Use device_printf() and s/fc->dev/fc->bdev/.
|
108773 |
06-Jan-2003 |
simokawa |
Fix fc->dev to fc->bdev.
|
108712 |
05-Jan-2003 |
simokawa |
Reduce diff to RELENG_4.
|
108705 |
05-Jan-2003 |
simokawa |
Syntax fix in fwohci_pci_suspend().
|
108701 |
05-Jan-2003 |
simokawa |
- Change definition of fc->maxrec same as fwdev->maxrec. - 'spec' and 'ver' are attributes of a unit rather than a node. - Report Phy and Link info separatelly. - Reorder intialization step in fwohci_reset().
|
108662 |
04-Jan-2003 |
simokawa |
- Remove speed_map API because speed_map is obsoleted by 1394a. - Add definition of OHCI_HCC_BIBIV in fwohcireg.h.
|
108657 |
04-Jan-2003 |
simokawa |
- Handle zero sized directory right way. - Staticize.
|
108655 |
04-Jan-2003 |
simokawa |
- Replace printf() with device_printf(). - Separate fc->dev (i.e. fwohci0) and fc->bdev (i.e. firewire0). - Remove unused firewirebusreg.h. - Reduce size of descriptor block for asynchronous transmit and check the number of descriptor when copying from mbuf. - Skip mbuf whose length is zero. NFS seems passing such mbuf and some chips generates unrecoverable error.
|
108642 |
04-Jan-2003 |
simokawa |
- Propagate suspend/resume to child devices. - Restore pci config registers after resume. - Reinitialize and start rx buffers after resume. - Don't reallocate memory in fwohci_db_init() if the dbch is already initialized. - Fix typo. - Some clean up.
|
108530 |
01-Jan-2003 |
simokawa |
Experimental support for suspend/resume, not finished yet.
|
108529 |
01-Jan-2003 |
simokawa |
Reduce debug message.
|
108527 |
01-Jan-2003 |
simokawa |
- Retry phy access when the wait-loop count is exhausted. - Free allocated memory when detaching. - Detect contigmalloc failure.
|
108504 |
31-Dec-2002 |
simokawa |
Fix and add several device IDs.
|
108503 |
31-Dec-2002 |
simokawa |
- Implement primal Configuration ROM parser. - Support multiple LUNs for SBP-II.
|
108500 |
31-Dec-2002 |
simokawa |
Improve error checking of phy access and retry when error occurs.
|
108432 |
30-Dec-2002 |
simokawa |
- Add more CSR related definitions (IEEE-1212). - Fix struct csrtext's spec fields. - Add prototypes of upcoming configuration ROM related functions.
|
108281 |
26-Dec-2002 |
simokawa |
Cosmetic change. s/Firewire/FireWire/.
|
108280 |
26-Dec-2002 |
simokawa |
Replace ntohl() with ntohs() because orb_hi is u_int16_t.
|
108276 |
26-Dec-2002 |
simokawa |
firewire.c - Fix permission of device node.
fwochi.c, fwohcireg.h - Detect phy access failure correct way. - Set root hold-off bit before initiating bus reset. This should fix the problem with VIA6306.
fwohcivar.h - Fix over-allocation of array. (fwohcivar.h)
sbp.c - Return CAM_DEV_NOT_THERE rather than CAM_TID_INVALID to prevent retry.
|
107653 |
06-Dec-2002 |
simokawa |
Reduce and improve debug messages.
Approved by: re
|
106937 |
14-Nov-2002 |
sam |
network interface driver changes:
o don't strip the Ethernet header from inbound packets; pass packets up the stack intact (required significant changes to some drivers) o reference common definitions in net/ethernet.h (e.g. ETHER_ALIGN) o track ether_ifattach/ether_ifdetach API changes o track bpf changes (use BPF_TAP and BPF_MTAP) o track vlan changes (ifnet capabilities, revised processing scheme, etc.) o use if_input to pass packets "up" o call ether_ioctl for default handling of ioctls
Reviewed by: many Approved by: re
|
106816 |
12-Nov-2002 |
simokawa |
- Add fwmem_xfer_req() and use this in other functions.
|
106815 |
12-Nov-2002 |
simokawa |
- Remove unused code. - Fix style.
|
106814 |
12-Nov-2002 |
simokawa |
fix wording.
|
106813 |
12-Nov-2002 |
simokawa |
Split userland services to fwdev.c.
|
106810 |
12-Nov-2002 |
simokawa |
Use struct fw_device in fwmem.c - specify fwmem target by EUI64. - fw_noderesolve returns struct fw_device rather than dst. - include struct firewire_comm in struct fw_device.
|
106809 |
12-Nov-2002 |
simokawa |
Add a prototype for suspend/resume.
|
106805 |
12-Nov-2002 |
simokawa |
Change interface of fwmem_read_*() functions to be usable from other part of the module.
|
106804 |
12-Nov-2002 |
simokawa |
Change interface of fwmem_read_*() functions to be usable from other part of the module.
|
106802 |
12-Nov-2002 |
simokawa |
- clean up
|
106790 |
12-Nov-2002 |
simokawa |
- Remove unused code. - Style fixes.
|
106789 |
12-Nov-2002 |
simokawa |
Restrict process count in fwohci_arcv() and fwohci_ircv().
|
106543 |
07-Nov-2002 |
simokawa |
- Fix printf warnings on 64bit plathome. - Disable fw_vmaccess() because it's not used and unuseful 64bit plathome.
|
106506 |
06-Nov-2002 |
simokawa |
Minor clean up on cdb handling.
|
106485 |
06-Nov-2002 |
simokawa |
- Let the PCI code try to route interrupt in -current - Print warning in -stable.
|
106439 |
05-Nov-2002 |
simokawa |
Sony CXD3222 OHCI i.LINK chips needs more DELAY before starting SCLK when no devices are connected.
|
105792 |
23-Oct-2002 |
simokawa |
- Dequeue OCBs more safely in sbp_abort_all_ocbs().
|
105633 |
21-Oct-2002 |
simokawa |
- Abort all OCBs for timeout. - Improve warning message.
|
105620 |
21-Oct-2002 |
simokawa |
fix prototype of asyreqq().
|
105619 |
21-Oct-2002 |
simokawa |
These (userland) files shouldn't be here.
|
105114 |
14-Oct-2002 |
jhb |
This file doesn't need opt_bus.h.
|
103742 |
21-Sep-2002 |
simokawa |
don't include bus_dma.h which doesn't need.
|
103741 |
21-Sep-2002 |
simokawa |
remove unused code.
|
103485 |
17-Sep-2002 |
ikob |
Firewire device support for Apple eMac with PPC kernel. Contributed by Peter Grehan <grehan@freebsd.org>
|
103285 |
13-Sep-2002 |
ikob |
Initial import for IEEE1394 OHCI chipdet device driver and SBP-2 (Serial Bus Protocol 2:SCSI over IEEE1394) support for CAM.
|