Commit Graph

181 Commits

Author SHA1 Message Date
enami
6c4e6273df xs->timeout is in milliseconds so convert it to tick before passing
it to callout_reset().
2004-02-13 21:22:13 +00:00
keihan
b8702f530b netbsd.org -> NetBSD.org
This was the last commit of this kind to src/sys, which is now totally
"NetBSD.org clean".  Thanks for the patiance, and sorry for all the commits.
2003-12-04 13:57:30 +00:00
fvdl
5602142448 Fix unitialized var warning, add a comment to indicate that it's use
is suspect.
2003-10-26 21:03:34 +00:00
christos
5220c0436c Fix unitialized variable warnings. 2003-10-26 19:10:42 +00:00
mjl
088da88a56 Typos in comments. From OpenBSD. 2003-10-22 09:02:49 +00:00
enami
e7533e9811 Don't limit xfer size to SBP2_MAXPHYS. Its not transfer size limit
but just a threshold how to describe transfer.
2003-10-18 12:47:28 +00:00
mrg
9abaf7289a sprinkle some LL suffixes on >32 bit number literals 2003-08-04 07:00:19 +00:00
lukem
365cbd9428 add missing __KERNEL_RCSID() 2003-07-14 15:47:00 +00:00
itojun
7f6ed16ef4 function prototype must not have variable name 2003-07-08 10:06:28 +00:00
drochner
9897b6dfac maintain statistics counters 2003-07-03 11:36:18 +00:00
fvdl
d5aece61d6 Back out the lwp/ktrace changes. They contained a lot of colateral damage,
and need to be examined and discussed more.
2003-06-29 22:28:00 +00:00
darrenr
960df3c8d1 Pass lwp pointers throughtout the kernel, as required, so that the lwpid can
be inserted into ktrace records.  The general change has been to replace
"struct proc *" with "struct lwp *" in various function prototypes, pass
the lwp through and use l_proc to get the process pointer when needed.

Bump the kernel rev up to 1.6V
2003-06-28 14:20:43 +00:00
haya
5ae8bbc4cc Bugfix: fwohci_ir_read(): loop continues when the buffer size not only
greater than but also same as packet size.  This bug is pointed out by
FUKAUMI Naoki.
2003-05-26 16:10:36 +00:00
wiz
1ffa7b76c4 DMA, not dma nor Dma. 2003-05-03 18:10:37 +00:00
christos
d77be05384 PR/20982: Eric Fair: fix debugging printf format errors. 2003-04-02 21:53:15 +00:00
jmc
4829a1952a Redo last fix to work correctly. Need to run abort on each orb (though it
doesn't much now it will eventually) and then so a proper sbp2_free_orb.
2003-03-07 20:18:57 +00:00
drochner
c0e23f3152 -Fix ORB queue corruption / use of free()d memory
caused by bad interaction of sbp2_free() and sbp2_abort().
 sbp2_abort() requires that its argument ORB is on the
 "active" list, and it puts it onto the freelist - sometimes.
 So we had 2 causes of corruption:
 -removing the ORB from a list which it isn't on
 -free()ing recycleable items on the ORB freelist
-minor cosmetics
2003-03-07 16:29:33 +00:00
enami
fa6061e7a4 Make this file compiles when FW_DEBUG is defined but SBP2_DEBUG isn't defined. 2003-02-28 23:31:41 +00:00
thorpej
e354490475 Use aprint_*(). 2003-01-31 02:15:57 +00:00
thorpej
a5fa1cfd6a Use PRIx64 to get the correct format for 64-bit hex numbers. Don't
need \n at the end of a panic().
2003-01-09 19:16:30 +00:00
wiz
c6f1277bfa synchronous, not syncronous. 2003-01-06 13:10:25 +00:00
jmc
216f0f8cde Add some missing splx()'s noted by Krister Walfridsson 2003-01-05 08:11:33 +00:00
jmc
da000bb65b Remove arbitrary bufcnt limit in at_output. 2003-01-05 08:03:45 +00:00
thorpej
72a7af27b0 Use aprint_normal() in cfprint routines. 2003-01-01 00:10:15 +00:00
jmc
549904564e Implementation of page table support for 64k or greater transfers. This should
also handle uio structs passed in as well. All standard filesystem actions
are working at this stage (can copy, execute, mount, umount, fsck, etc).
2002-12-28 10:54:47 +00:00
jmc
ae8cc0726d Move SBP data area's below the 4G mark as some broken devices seem to clip data
address's to 32 bits.
XXX - Need to move the if_fw fifo addr as well but this needs some testing
2002-12-28 10:52:41 +00:00
jmc
8630685f69 Add support for page tables 2002-12-19 09:59:47 +00:00
jmc
ef48ba7693 Add a minphys routine since the single largest packet is less than minphys() 2002-12-19 09:58:24 +00:00
jmc
31f02beb7c Add defines for supporting page tables 2002-12-19 09:56:10 +00:00
jmc
9980e6b848 Updates 2002-12-19 07:22:40 +00:00
jmc
092fe54e3d Add additional debugging for fwohci_arrq_input: no listener conditions 2002-12-19 02:15:31 +00:00
jmc
62da7b9c60 Add SBP2_MAXPHYS 2002-12-18 06:08:21 +00:00
jmc
fe19747374 Redo state handling as ack's, status, etc can come in and be processed in
various orders depending how the upper level driver is flushing it's queue's.
This prevents the deadlocks I was seeing before with >8k writes.

XXX: Still not completely there as > 64k copies trigger bugs and the page
table support still needs to be written to break those down.
2002-12-18 04:48:33 +00:00
jmc
e627b7fefc Improve performance with disks almost 60x by redoing the callback handler to
accept ranges as well as single addresses. Still need to go through any key
areas and remove the malloc's and replace these with some sort of pooling
instead.
2002-12-13 07:47:52 +00:00
jmc
0215635717 Checkpoint commit:
1. Reduce debugging level to sane levels
2. Fix bugs in alloc_data_map related to allocing whole bytes of bitmap at
a time.

At this point the driver is functional. It talks to a local drive here and
can label/newfs. Performance is...lacking at the moment as its chewing cpu
heavily (probably due to the number of memcpy's) and will be the next area
attacked.
2002-12-09 23:42:53 +00:00
jmc
151668ce8d Drop default debugging level to something a bit more sane 2002-12-09 23:39:18 +00:00
jmc
33736c059a Ooops...Make sure for status to set error and resid before calling the
completion routines. Makes reads actually return data to userland now which
means I can now put a disklabel on the drive.
2002-12-09 22:28:21 +00:00
jmc
4d74b607a2 Restructure how the at_output dma map gets setup. Ask for a dma map that can
support up to the max ohci descriptor segments. Then attempt to fill it in
via a load. Use the number of segments filled in as the basis for figuring
out how many descriptors to supply to the ohci DMA engine.

XXX: Still needs to account for requests which because of splits may overflow
the 6 dma descriptors available today. For now this fixes cases where a
single 512 byte write was getting split into 2 dma segments from 1 incoming
iov request
2002-12-09 09:09:54 +00:00
jmc
2a3e786250 Fix fwohci_write's sanity check against large packets. Max rec is only used
when writing directly to the device (ala IEEE1394_TCODE_WRITE_REQ_BLOCK).
Otherwise the largest size is determined strictly by speed
2002-12-09 07:26:02 +00:00
jmc
11b3f4e7d1 Provide a macro for turning a speed number into a max rec value 2002-12-09 07:24:57 +00:00
jmc
3d5ded55c7 Write sbp2_free_data_mapping and fix a bug where read responses weren't sending
back the right tlabel
2002-12-09 07:23:43 +00:00
jmc
1f133763ba Don't need sbp2_datamapping. Each one is tracked via the associated orb 2002-12-09 07:23:24 +00:00
jmc
9bea8ca9b7 Fix logic screwup in determining which bits to set in alloc'ing data maps 2002-12-08 05:59:05 +00:00
jmc
5a69251dd8 Account for corner cases better in alloc_data_mapping and only ask for a 16s
reconnect time instead of 2^16s
2002-12-06 02:19:34 +00:00
jmc
9e81590397 Fill in sc1394_node_id after a self id cycle 2002-12-06 02:17:30 +00:00
jmc
9a4d03f9b2 Add a def for a smaller reconnect time that will be used by default 2002-12-06 02:14:59 +00:00
agc
ecc0017939 Cast appropriately so that this compiles on sparc, sparc64, macppc etc. 2002-12-05 12:22:37 +00:00
haya
805040f592 New Feature: add pseudo device for IEEE 1394 isochronous stream and
isochronous reception routine for IEEE 1394 OHCI (fwohci).  The
transmission part is under construction.

The minimum configuration options for this feature are:

# IEEE 1394 (i.LINK)
fwohci*	at pci? dev ? function ?
pseudo-device	fwiso		1
2002-12-04 00:28:39 +00:00
explorer
4c21f28434 make this compile without SBP2_DEBUG defined 2002-12-03 06:11:31 +00:00
jmc
bd096e500d Set the only big quirk since the drives I've tried return errors on 6 byte cdbs 2002-12-01 12:12:09 +00:00