268226 |
03-Jul-2014 |
hselasky |
MFC r268221 and r268222: - Remove some unused variables. - Add proper rangechecks in "axge_rx_frame()" function and fix receive loop header parsing. - Add new USB IDs.
Approved by: re, gjb @ PR: 191432 |
267654 |
20-Jun-2014 |
gjb |
Copy stable/9 to releng/9.3 as part of the 9.3-RELEASE cycle.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation
|
254306 |
13-Aug-2013 |
scottl |
Merge r254263:
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.
Candidate for 9.2
Submitted by: jhb Reviewed by: jfv, marius, adrian, achim
|
253037 |
08-Jul-2013 |
mav |
MFC r249468: 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.
|
251874 |
18-Jun-2013 |
scottl |
Big MFC of the physbio changes necessary for unmapped I/O. These changes have been in production at Netflix for several months with significant success.
MFC r246713:
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.
MFC r249538: Some compilers issue a warning when wider integer is casted to narrow pointer. Supposedly shut down the warning by casting through uintptr_t.
MFC r251479: Simplify the checking of flags for cam_periph_mapmem(). This gets rid of a lot of code redundancy and grossness at very minor expense.
MFC r251837: MFC r251842: Add infrastructure for doing compatibility shims, as has been sorely needed for the last 10 years. Far too much of the internal API is exposed, and every small adjustment causes applications to stop working. To kick this off, bump the API version to 0x17 as should have been done with r246713, but add shims to compensate. Thanks to the shims, there should be no visible change in application behavior.
Submitted by: kib, jeffr Approved by: kib Obtained from: Netflix
|
249132 |
05-Apr-2013 |
mav |
MFC r227293 (by ed): Mark MALLOC_DEFINEs static that have no corresponding MALLOC_DECLAREs.
This means that their use is restricted to a single C file.
|
248085 |
09-Mar-2013 |
marius |
MFC: r227309 (partial)
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.
|
248078 |
09-Mar-2013 |
marius |
MFC: r243857 (partial)
Mechanically substitute flags from historic mbuf allocator with malloc(9) flags in sys/dev.
|
237825 |
29-Jun-2012 |
ken |
MFC r237601: r237601 | ken | 2012-06-26 08:51:35 -0600 (Tue, 26 Jun 2012) | 38 lines
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.
|
235743 |
21-May-2012 |
jhb |
Toss bogus mergeinfo.
|
235738 |
21-May-2012 |
sbruno |
MFC r235634
Fix and update battery status bits according to linux driver
|
229093 |
31-Dec-2011 |
hselasky |
MFC r226173, r227843, r227848 and r227908: Use DEVMETHOD_END to mark end of device methods. Remove superfluous device methods. Add some missing __FBSBID() macros.
|
226067 |
06-Oct-2011 |
ken |
MFC r225950:
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.
Approved by: re (kib) Sponsored by: Spectra Logic Corporation
|
225736 |
23-Sep-2011 |
kensmith |
Copy head to stable/9 as part of 9.0-RELEASE release cycle.
Approved by: re (implicit)
|
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.
|