summaryrefslogtreecommitdiff
path: root/sys/dev/microcode
AgeCommit message (Collapse)Author
2002-08-29Fix typo in comment.bouyer
2002-07-26Spell '[Rr]ight' correctly. From Jim Bernard.wiz
2002-07-26enouth -> enough.wiz
2002-07-07Regen.fredette
2002-06-02Use SLIST_*() instead of accessing slh_first,sle_next directly.lukem
XXX: this program currently doesn't parse macros that cross the EOL with \ (there are a couple in sys/dev/scsipi/scsi_message.h). with that issue temporarily worked around, this change generates the same output as the version of aicasm without this change.
2002-05-02Regen: move a few things around to save a few JUMP.bouyer
2002-05-02Move a few things around, to save some JUMP.bouyer
2002-04-27Regen: use a u_int32_t in script RAM to pass flags between script and driver.bouyer
2002-04-27Use a u_int32_t in script RAM instead of the SEM bit in ISTAT to pass flagsbouyer
between script and driver. This allows more than one flag, and is easier to manage (we almost can't read/write istat outside of the irq handler).
2002-04-27Regen: implement done command ring.bouyer
2002-04-27Implement a ring for the completed commands. This avoid a (problematic onlybouyer
if error occurs after status is collected) race condition when using the status byte to detect completed commands (a command descriptor could be recycled before the device disconnected), and make the interrupt routine handling completed commands more efficient (no need to scan target * lun * tag array any more).
2002-04-25Regen: 2 DSA entry per lun, load SCRATCHC before select, avoid race conditionbouyer
when setting f_cmd_free.
2002-04-25- We can't share the per-lun DSA entry for untagged and tag table DSA;bouyer
there may be tagged commands still running when we queue a request sense command. Solve this by using 2 DSA entry per LUN - Now that we have the command DSA before select, we can load T/L/Q in SCRATCHC. This makes the selection timeout handler simpler. - Avoid a race condition when setting the free flag in the cmd ring (see comment in the script) - don't forget to update the ID in the head of LUN table after a sync/wide negotiation. This fixes the command timeout at the first data command after negotiation (the bus reset handler did update the ID properly, so subsequent commands were OK). - for DMA interrupts, clear fifo if it's not empty. Leaving the fifo dirty would prevent subsequent interrupts from coming in. - Various improvements in debug messages - misc cleanups.
2002-04-24Regen: get rid or ID in scheduler slot, to save RAM.bouyer
2002-04-24For a new command, use the id in the command table and get rid of the ID in thebouyer
scheduler slot. This costs a few more instructions but divide the size of the scheduler ring by 2, saving 1k of onboard RAM (a bus with 15 devices would overflow the on-board RAM by 128 bytes).
2002-04-24Regen: bump the number of slots in the cmd ring to 256.bouyer
2002-04-24Bump the number of slots in the command ring to 256.bouyer
2002-04-23More copyright fixes, pointed out by Thomas. Thanks !bouyer
2002-04-23Fix copyrigth.bouyer
2002-04-23Regen: bump message size to 16 octets.bouyer
2002-04-23Bump the space for SCSI messages from 8 to 16 octets, as 8 may not bebouyer
enouth for IDENTIFY + TAG + PPR. Get rid of constants in C code by use of a offsetof macro.
2002-04-22Regen: block on wait MSG_OUT after a SELECT.bouyer
2002-04-22It seems that the script processor continue to exec a few intructionsbouyer
after the selection timeout is posted but the number executed isn't reliable. So wait for MSG_OUT rigth after the select so that the state of the script when the interruption is handled is known.
2002-04-22Regen: tagged queuing support, and led on/off fragments.bouyer
2002-04-22Add the led_on/led_off script fragments.bouyer
2002-04-22Add support for tagged queuing to esiop (256 tags per device).bouyer
For this add another indirecton: the DSA in the LUN table points to a table of DSA indexed by the tag number when tagged command is in use. For non tagged command, the LUN DSA still points to the tables describing the xfer directly.
2002-04-21Generated from esiop.ss, for the new esiop driver.bouyer
2002-04-21First cut at a esiop driver (enhanced siop). Doesn't implement tagged queuingbouyer
yet. If is restricted to SIOP which implement the load/store instruction, and has 10 scratch registers (basically, 825 and newer, possibly 770). It implements a different interface between host and script, using a real ring for command starts, and improved support for reconnect which will allow 256 tag per device. It uses interrupt on the fly to signal complete command, which allows several commands to be serviced per interrupt and doesn't require the script to stop to signal command completion.
2002-04-21- handle INTFLY (interrupt on the fly) commandbouyer
- hanlde set/clear carry - handle shl, shr (shift left and rigth) and xor operators
2002-04-20Fix scratchd2 address.bouyer
2002-04-18Regen: add hooks to drive LED via GPIO.bouyer
2002-04-18Add hooks to drive the activity led via the GPIO pin 1, as required by somebouyer
tekram and symbios adapters.
2002-04-17Really use a JUMP for NOP, not a block move.bouyer
2002-04-15Generated from the firmware binaries for T3 series CF adapter.onoe
Obtained from Tim Gardner <timg@tpi.com> who developoed the Linux driver. And approved by Brad Lefore <blefore@sj.symbol.com> to redistribute it with BSD license.
2002-04-14Fix copyright notice.martin
2002-04-05Microcode for Intel i8255x 10/100 Ethernet interfaces. This optionalthorpej
microcode implements an interrupt mitigation function for several specific revisions of the i8255x family. From FreeBSD.
2002-03-22Cast for now non-const in ispdv structure.mjacob
2002-02-19Update 2300 firmware to latest release level.mjacob
2001-12-14Roll f/w to latest level, correcting several, ah, interesting bugs.mjacob
2001-12-12MKfoo=no -> NOfootv
2001-12-07Regen.fredette
2001-12-05Now generate oosiop.out, the compiled 53c700 script.fredette
2001-12-05Generated from oosiop.ss rev. 1.1:fredette
Initial compiled script for 53c700.
2001-12-05Added support for the Symbios/NCR 53c700 SCSI controller.fredette
This chip is very similar to the 53c710, except that it's missing a few registers, doesn't do relative jumps and doesn't have the table-indirect addressing mode. I have checked that this still generates the same output on the existing scripts for the other chips.
2001-12-05New script for the Symbios/NCR 53c700 SCSI controller.fredette
This is closely related to osiop.ss, the script for the 53c710.
2001-10-20Update to latest 12160 initiator firmware.mjacob
2001-08-31Ulp! Open Wide! Another Firmware Enchilada!mjacob
2-Gigabit card firmware.
2001-08-20precede, not preceed.wiz
2001-08-14Back out previous change; I've lost my card and can't test it.cjs
2001-08-13Change the '@(#)' strings in front of the copyright/version messages to '@( )'cjs
so as not to clutter the output of the what(1) command when run on a kernel.