Hidetoshi Shimokawa
8a45d99b2a
- Implement write part.
...
- Use quad access for aligned 4 byte access.
2003-02-04 17:09:59 +00:00
Hidetoshi Shimokawa
a487c0f261
- 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.
2003-02-04 17:08:45 +00:00
Hidetoshi Shimokawa
beb19fc5dd
Remove unnecessary M_NOWAIT.
2003-02-03 09:41:42 +00:00
Hidetoshi Shimokawa
62dae95462
Add missing 'static'.
2003-02-03 08:10:50 +00:00
Hidetoshi Shimokawa
48249fe0c8
- 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().
2003-02-03 07:33:31 +00:00
Hidetoshi Shimokawa
5166f1df39
Define new malloc type M_FW and use it.
2003-02-01 15:04:33 +00:00
Hidetoshi Shimokawa
0981f5f00e
- replace timeout with callout_*.
...
- replace TAILQ with STAILQ for device list.
- some clean up.
2003-02-01 14:42:49 +00:00
Hidetoshi Shimokawa
3c62126d84
Check status FIFO more closely to report error.
2003-02-01 12:06:57 +00:00
Hidetoshi Shimokawa
0db3d1635c
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.
2003-02-01 08:55:33 +00:00
Hidetoshi Shimokawa
4230e8de2f
Sort device list by eui64 in acendent order correctly.
2003-02-01 06:34:36 +00:00
Hidetoshi Shimokawa
ba3129cb87
function name change.
2003-01-31 14:14:45 +00:00
Hidetoshi Shimokawa
64cf5240a9
SBP related changes.
...
- Issue LOGOUT command on detach and shutdown.
- Rename some functions.
2003-01-31 14:11:22 +00:00
Hidetoshi Shimokawa
9bb3ca0305
SBP related changes.
...
- Set dual phase retry BUSY_TIMEOUT.
- Let users to know serial bus error.
2003-01-31 03:09:13 +00:00
Hidetoshi Shimokawa
958c774916
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().
2003-01-30 05:18:35 +00:00
Hidetoshi Shimokawa
449e559cdb
- Handle SCSI_STATUS_BUSY case.
2003-01-30 05:12:56 +00:00
Hidetoshi Shimokawa
7054e8482e
- Probe number of IT/IR DMA contexts as specified in OHCI spec.
2003-01-29 15:32:35 +00:00
Hidetoshi Shimokawa
878db8920f
- Fix build on alpha.
...
- Add a missing newline in printf.
2003-01-29 02:13:31 +00:00
Hidetoshi Shimokawa
c3e9e25542
- Allow multiple packets read/write for IR/IT to reduce system call.
...
- Remove unused variables.
2003-01-28 15:09:07 +00:00
Hidetoshi Shimokawa
53f1eb8620
- Split db.desc.cmd into desc.control and desc.reqcount.
...
- remove unncessary descriptor updates.
2003-01-26 18:38:06 +00:00
Hidetoshi Shimokawa
5a7ba74dc4
- 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.
2003-01-26 15:39:04 +00:00
Hidetoshi Shimokawa
c547b896f5
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.
2003-01-25 14:47:33 +00:00
Hidetoshi Shimokawa
9190691bd0
Remove FW_SSTDV ioctl. It is not used anymore.
2003-01-24 13:03:19 +00:00
Hidetoshi Shimokawa
e715bfae6c
Merge little and big endian case.
2003-01-24 12:45:19 +00:00
Hidetoshi Shimokawa
16e0f48443
- Add sysctl knob for bus manager. (hw.firewire.try_bmr)
...
- Check invalid SID length.
- Add some debug messages.
2003-01-23 13:34:40 +00:00
Hidetoshi Shimokawa
93001c7214
Define misc structs outside of struct firewire_comm.
2003-01-21 16:37:01 +00:00
Hidetoshi Shimokawa
b9b35d1965
Ignore events of unused IR DMA.
2003-01-21 16:24:35 +00:00
Alfred Perlstein
44956c9863
Remove M_TRYWAIT/M_WAITOK/M_WAIT. Callers should use 0.
...
Merge M_NOWAIT/M_DONTWAIT into a single flag M_NOWAIT.
2003-01-21 08:56:16 +00:00
Hidetoshi Shimokawa
ae8c82bbe9
Replace M_DONTWAIT with M_NOWAIT for malloc().
...
Pointed out by: nate@root.org
2003-01-17 15:15:21 +00:00
Hidetoshi Shimokawa
0ef6095d41
Improve some debug massages.
2003-01-17 15:03:57 +00:00
Hidetoshi Shimokawa
6340b71e5f
Fix bus manager election process.
...
- Lock response 0x3f means that the host becomes the bus manager.
- Add missing htonl().
2003-01-17 15:03:25 +00:00
Hidetoshi Shimokawa
7643dc189d
Detect underrun of IT queue for debugging.
...
Add some comments.
2003-01-17 03:52:48 +00:00
Hidetoshi Shimokawa
e2ad5d6e8c
Improve memory allocation.
...
- Don't use contigmalloc() and allocate page by page to avoid
allocation failure.
- allocate buffer by PAGE_SIZE.
2003-01-16 13:09:33 +00:00
Hidetoshi Shimokawa
97ae6c1f15
Use cycleMatch for precise IT DMA start timing.
2003-01-16 07:01:54 +00:00
Hidetoshi Shimokawa
744bdf5752
DV_PAL shouldn't be here.
2003-01-15 05:28:50 +00:00
Hidetoshi Shimokawa
6d6f7f2891
Add DV_PAL for PAL users.
2003-01-15 05:26:23 +00:00
Hidetoshi Shimokawa
4ed65ce9e1
Fix IT DMA underun while bus reset.
...
- Reduce number of DELAY's
2003-01-15 04:21:16 +00:00
Hidetoshi Shimokawa
5dda08514e
Fix for FreeBSD-4.
...
- Protect whole fw_tbuf_update() with splfw().
2003-01-14 08:35:45 +00:00
Hidetoshi Shimokawa
0aaa9a23cd
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.
2003-01-13 16:08:09 +00:00
Hidetoshi Shimokawa
d0035474c3
Merge big endian and little endian case.
...
Fill fdf bit fields and others.
2003-01-13 15:08:48 +00:00
Hidetoshi Shimokawa
435dd29b27
- Add error messages for bulkxfer.
...
- Reduce register access.
2003-01-09 10:25:07 +00:00
Hidetoshi Shimokawa
9a7d0adfaa
- Fix print format for FreeBSD-4
...
- Reduce debug message.
2003-01-07 12:58:08 +00:00
Hidetoshi Shimokawa
64666ed6e7
Don't call fw_bus_probe() twice when successive self-id packets received.
...
This change should stabilize SBP-II device probing.
2003-01-07 04:26:45 +00:00
Hidetoshi Shimokawa
17faeefca6
Use device_printf() and s/fc->dev/fc->bdev/.
2003-01-06 08:07:20 +00:00
Hidetoshi Shimokawa
9bfd777adb
Fix fc->dev to fc->bdev.
2003-01-06 05:57:48 +00:00
Hidetoshi Shimokawa
a423957600
Reduce diff to RELENG_4.
2003-01-05 14:58:45 +00:00
Hidetoshi Shimokawa
bda19384a1
Syntax fix in fwohci_pci_suspend().
2003-01-05 09:12:47 +00:00
Hidetoshi Shimokawa
94b6f028fd
- 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().
2003-01-05 06:21:30 +00:00
Hidetoshi Shimokawa
bce5729a9d
- Remove speed_map API because speed_map is obsoleted by 1394a.
...
- Add definition of OHCI_HCC_BIBIV in fwohcireg.h.
2003-01-04 16:03:50 +00:00
Hidetoshi Shimokawa
7ddbf617b1
- Handle zero sized directory right way.
...
- Staticize.
2003-01-04 10:32:31 +00:00
Hidetoshi Shimokawa
d6105b602c
- 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.
2003-01-04 10:21:11 +00:00
Hidetoshi Shimokawa
9339321d89
- 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.
2003-01-04 06:40:57 +00:00
Hidetoshi Shimokawa
d0fd7bc6b5
Experimental support for suspend/resume, not finished yet.
2003-01-01 08:25:32 +00:00
Hidetoshi Shimokawa
6faac3ac96
Reduce debug message.
2003-01-01 08:22:29 +00:00
Hidetoshi Shimokawa
1f2361f8f8
- Retry phy access when the wait-loop count is exhausted.
...
- Free allocated memory when detaching.
- Detect contigmalloc failure.
2003-01-01 04:23:54 +00:00
Hidetoshi Shimokawa
7895313547
Fix and add several device IDs.
2002-12-31 13:43:44 +00:00
Hidetoshi Shimokawa
b018dcd1b8
- Implement primal Configuration ROM parser.
...
- Support multiple LUNs for SBP-II.
2002-12-31 10:28:49 +00:00
Hidetoshi Shimokawa
e4b13179f6
Improve error checking of phy access and retry when error occurs.
2002-12-31 10:00:36 +00:00
Hidetoshi Shimokawa
e238f68de5
- Add more CSR related definitions (IEEE-1212).
...
- Fix struct csrtext's spec fields.
- Add prototypes of upcoming configuration ROM related functions.
2002-12-30 09:41:32 +00:00
Hidetoshi Shimokawa
ee126d67f7
Cosmetic change. s/Firewire/FireWire/.
2002-12-26 06:50:09 +00:00
Hidetoshi Shimokawa
f3abec2274
Replace ntohl() with ntohs() because orb_hi is u_int16_t.
2002-12-26 06:41:37 +00:00
Hidetoshi Shimokawa
ac9f66922b
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.
2002-12-26 03:17:59 +00:00
Hidetoshi Shimokawa
17c3d42c9e
Reduce and improve debug messages.
...
Approved by: re
2002-12-06 02:17:30 +00:00
Sam Leffler
673d91916d
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
2002-11-14 23:54:55 +00:00
Hidetoshi Shimokawa
d6ec58858c
- Add fwmem_xfer_req() and use this in other functions.
2002-11-12 17:19:21 +00:00
Hidetoshi Shimokawa
8687c4fbcd
- Remove unused code.
...
- Fix style.
2002-11-12 17:16:20 +00:00
Hidetoshi Shimokawa
c57d646f99
fix wording.
2002-11-12 17:11:32 +00:00
Hidetoshi Shimokawa
17821895ee
Split userland services to fwdev.c.
2002-11-12 15:22:19 +00:00
Hidetoshi Shimokawa
f90ce7b125
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.
2002-11-12 13:49:17 +00:00
Hidetoshi Shimokawa
5e2a411f2d
Add a prototype for suspend/resume.
2002-11-12 13:46:09 +00:00
Hidetoshi Shimokawa
98e6731b51
Change interface of fwmem_read_*() functions to be usable from other part
...
of the module.
2002-11-12 11:15:01 +00:00
Hidetoshi Shimokawa
c3b0952272
Change interface of fwmem_read_*() functions to be usable from other part
...
of the module.
2002-11-12 11:08:50 +00:00
Hidetoshi Shimokawa
8da326fd37
- clean up
2002-11-12 10:02:50 +00:00
Hidetoshi Shimokawa
c572b81055
- Remove unused code.
...
- Style fixes.
2002-11-12 05:52:01 +00:00
Hidetoshi Shimokawa
783058fa0d
Restrict process count in fwohci_arcv() and fwohci_ircv().
2002-11-12 04:54:30 +00:00
Hidetoshi Shimokawa
70ce30b573
- Fix printf warnings on 64bit plathome.
...
- Disable fw_vmaccess() because it's not used and unuseful 64bit plathome.
2002-11-07 02:13:40 +00:00
Hidetoshi Shimokawa
1d3e59b1d3
Minor clean up on cdb handling.
2002-11-06 15:34:52 +00:00
Hidetoshi Shimokawa
aeeb228712
- Let the PCI code try to route interrupt in -current
...
- Print warning in -stable.
2002-11-06 04:07:05 +00:00
Hidetoshi Shimokawa
851c3ad031
Sony CXD3222 OHCI i.LINK chips needs more DELAY before starting SCLK
...
when no devices are connected.
2002-11-05 02:42:28 +00:00
Hidetoshi Shimokawa
06a93bac4f
- Dequeue OCBs more safely in sbp_abort_all_ocbs().
2002-10-23 13:04:02 +00:00
Hidetoshi Shimokawa
8e484a62c8
- Abort all OCBs for timeout.
...
- Improve warning message.
2002-10-21 15:36:59 +00:00
Hidetoshi Shimokawa
481df042ff
fix prototype of asyreqq().
2002-10-21 10:21:49 +00:00
Hidetoshi Shimokawa
41d45c5235
These (userland) files shouldn't be here.
2002-10-21 10:14:26 +00:00
John Baldwin
83a20b6e3e
This file doesn't need opt_bus.h.
2002-10-14 19:11:19 +00:00
Hidetoshi Shimokawa
ba68cdd304
don't include bus_dma.h which doesn't need.
2002-09-21 15:05:22 +00:00
Hidetoshi Shimokawa
b24db4ddd9
remove unused code.
2002-09-21 14:48:07 +00:00
Katsushi Kobayashi
a9c9b6989c
Firewire device support for Apple eMac with PPC kernel.
...
Contributed by Peter Grehan <grehan@freebsd.org>
2002-09-17 12:50:43 +00:00
Katsushi Kobayashi
3c60ba66c4
Initial import for IEEE1394 OHCI chipdet device driver and SBP-2 (Serial
...
Bus Protocol 2:SCSI over IEEE1394) support for CAM.
2002-09-13 12:31:56 +00:00