summaryrefslogtreecommitdiff
path: root/sys/dev
diff options
context:
space:
mode:
authorSteve Murphree <smurph@cvs.openbsd.org>2002-07-05 05:41:04 +0000
committerSteve Murphree <smurph@cvs.openbsd.org>2002-07-05 05:41:04 +0000
commitb9f69a8a4d8fcf7c22970f3a751c586506bc7660 (patch)
treedf1f0c09fc13a8fb6c80c3ae00df8298ae823710 /sys/dev
parent1b9150acab5574d57215c7b08f8f761af9ecd8ad (diff)
attempt to make ahc smaller. change PCI interrupt handler.
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/ic/aic7xxx.c6
-rw-r--r--sys/dev/ic/aic7xxx.h12
-rw-r--r--sys/dev/ic/aic7xxx_openbsd.c207
-rw-r--r--sys/dev/ic/aic7xxx_openbsd.h46
-rw-r--r--sys/dev/ic/aic7xxxreg.h6
-rw-r--r--sys/dev/microcode/aic7xxx/aic7xxx.seq11
-rw-r--r--sys/dev/microcode/aic7xxx/aic7xxx_seq.h1096
-rw-r--r--sys/dev/pci/ahc_pci.c13
8 files changed, 749 insertions, 648 deletions
diff --git a/sys/dev/ic/aic7xxx.c b/sys/dev/ic/aic7xxx.c
index ff610c24f37..7388d771c62 100644
--- a/sys/dev/ic/aic7xxx.c
+++ b/sys/dev/ic/aic7xxx.c
@@ -28,10 +28,10 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id: aic7xxx.c,v 1.40 2002/06/28 00:34:54 smurph Exp $
+ * $Id: aic7xxx.c,v 1.41 2002/07/05 05:41:03 smurph Exp $
*
* $FreeBSD: src/sys/dev/aic7xxx/aic7xxx.c,v 1.80 2001/12/16 17:38:30 gibbs Exp $
- * $OpenBSD: aic7xxx.c,v 1.40 2002/06/28 00:34:54 smurph Exp $
+ * $OpenBSD: aic7xxx.c,v 1.41 2002/07/05 05:41:03 smurph Exp $
*/
#ifdef __OpenBSD__
@@ -596,7 +596,7 @@ ahc_handle_seqint(struct ahc_softc *ahc, u_int intstat)
printf("%s:%c:%d: no active SCB for reconnecting "
"target - issuing BUS DEVICE RESET\n",
ahc_name(ahc), devinfo.channel, devinfo.target);
- printf("SAVED_SCSIID == 0x%x, SAVED_LUN == 0x%x, "
+ printf("SAVED_SCSIID == 0x%02x, SAVED_LUN == 0x%x, "
"ARG_1 == 0x%x ACCUM = 0x%x\n",
ahc_inb(ahc, SAVED_SCSIID), ahc_inb(ahc, SAVED_LUN),
ahc_inb(ahc, ARG_1), ahc_inb(ahc, ACCUM));
diff --git a/sys/dev/ic/aic7xxx.h b/sys/dev/ic/aic7xxx.h
index 29ac6feb435..b9fbd32af33 100644
--- a/sys/dev/ic/aic7xxx.h
+++ b/sys/dev/ic/aic7xxx.h
@@ -1,5 +1,5 @@
/*
- * $OpenBSD: aic7xxx.h,v 1.4 2002/06/28 00:34:54 smurph Exp $
+ * $OpenBSD: aic7xxx.h,v 1.5 2002/07/05 05:41:03 smurph Exp $
* Core definitions and data structures shareable across OS platforms.
*
* Copyright (c) 1994-2001 Justin T. Gibbs.
@@ -29,7 +29,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id: aic7xxx.h,v 1.4 2002/06/28 00:34:54 smurph Exp $
+ * $Id: aic7xxx.h,v 1.5 2002/07/05 05:41:03 smurph Exp $
*
* $FreeBSD: src/sys/dev/aic7xxx/aic7xxx.h,v 1.40 2001/07/18 21:39:47 gibbs Exp $
*/
@@ -438,8 +438,8 @@ struct hardware_scb {
*/
/*20*/ uint32_t sgptr;
#define SG_PTR_MASK 0xFFFFFFF8
-/*24*/ uint8_t control; /* See SCB_CONTROL in aic7xxx.reg for details */
-/*25*/ uint8_t scsiid; /* what to load in the SCSIID register */
+/*24*/ uint8_t control; /* See SCB_CONTROL in aic7xxx.reg for details */
+/*25*/ uint8_t scsiid; /* what to load in the SCSIID register */
/*26*/ uint8_t lun;
/*27*/ uint8_t tag; /*
* Index into our kernel SCB array.
@@ -1116,11 +1116,7 @@ int ahc_reset(struct ahc_softc *ahc);
void ahc_shutdown(void *arg);
/*************************** Interrupt Services *******************************/
-#ifdef __OpenBSD__
-int ahc_pci_intr(struct ahc_softc *ahc);
-#else
void ahc_pci_intr(struct ahc_softc *ahc);
-#endif
void ahc_clear_intstat(struct ahc_softc *ahc);
void ahc_run_qoutfifo(struct ahc_softc *ahc);
#ifdef AHC_TARGET_MODE
diff --git a/sys/dev/ic/aic7xxx_openbsd.c b/sys/dev/ic/aic7xxx_openbsd.c
index 4441d87853c..684cf73c467 100644
--- a/sys/dev/ic/aic7xxx_openbsd.c
+++ b/sys/dev/ic/aic7xxx_openbsd.c
@@ -29,10 +29,10 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id: aic7xxx_openbsd.c,v 1.7 2002/07/01 23:31:05 smurph Exp $
+ * $Id: aic7xxx_openbsd.c,v 1.8 2002/07/05 05:41:03 smurph Exp $
*
* $FreeBSD: src/sys/dev/aic7xxx/aic7xxx_freebsd.c,v 1.26 2001/07/18 21:39:47 gibbs Exp $
- * $OpenBSD: aic7xxx_openbsd.c,v 1.7 2002/07/01 23:31:05 smurph Exp $
+ * $OpenBSD: aic7xxx_openbsd.c,v 1.8 2002/07/05 05:41:03 smurph Exp $
*/
#include <dev/ic/aic7xxx_openbsd.h>
@@ -100,14 +100,11 @@ void ahc_check_tags(struct ahc_softc *ahc,
* have to pause the sequencer for chips that don't have the
* auto-pause feature. XXX smurph
*/
-static __inline u_int ahc_pause_index_busy_tcl(struct ahc_softc *ahc,
- u_int tcl);
-static __inline void ahc_pause_unbusy_tcl(struct ahc_softc *ahc,
- u_int tcl);
-static __inline void ahc_pause_busy_tcl(struct ahc_softc *ahc,
- u_int tcl, u_int busyid);
-
-static __inline u_int
+u_int ahc_pause_index_busy_tcl(struct ahc_softc *ahc, u_int tcl);
+void ahc_pause_unbusy_tcl(struct ahc_softc *ahc, u_int tcl);
+void ahc_pause_busy_tcl(struct ahc_softc *ahc, u_int tcl, u_int busyid);
+
+u_int
ahc_pause_index_busy_tcl(ahc, tcl)
struct ahc_softc *ahc;
u_int tcl;
@@ -123,7 +120,7 @@ ahc_pause_index_busy_tcl(ahc, tcl)
return retval;
}
-static __inline void
+void
ahc_pause_unbusy_tcl(ahc, tcl)
struct ahc_softc *ahc;
u_int tcl;
@@ -137,7 +134,7 @@ ahc_pause_unbusy_tcl(ahc, tcl)
}
}
-static __inline void
+void
ahc_pause_busy_tcl(ahc, tcl, busyid)
struct ahc_softc *ahc;
u_int tcl;
@@ -199,7 +196,6 @@ ahc_createdmamem(ahc, dmat, size, mapp, vaddr, baddr, seg, nseg, what)
{
int error, level = 0;
int dma_flags = BUS_DMA_NOWAIT;
- const char *myname = ahc_name(ahc);
dmat = ahc->parent_dmat;
@@ -208,32 +204,32 @@ ahc_createdmamem(ahc, dmat, size, mapp, vaddr, baddr, seg, nseg, what)
if ((error = bus_dmamem_alloc(dmat, size, NBPG, 0,
seg, 1, nseg, BUS_DMA_NOWAIT)) != 0) {
- printf("%s: failed to allocate DMA mem for %s, error = %d\n",
- myname, what, error);
+ printf("%s: failed to %s DMA map for %s, error = %d\n",
+ "allocate", ahc_name(ahc), what, error);
goto out;
}
level++;
if ((error = bus_dmamem_map(dmat, seg, *nseg, size, vaddr,
BUS_DMA_NOWAIT|BUS_DMA_COHERENT)) != 0) {
- printf("%s: failed to map DMA mem for %s, error = %d\n",
- myname, what, error);
+ printf("%s: failed to %s DMA map for %s, error = %d\n",
+ "map", ahc_name(ahc), what, error);
goto out;
}
level++;
if ((error = bus_dmamap_create(dmat, size, 1, size, 0,
dma_flags, mapp)) != 0) {
- printf("%s: failed to create DMA map for %s, error = %d\n",
- myname, what, error);
+ printf("%s: failed to %s DMA map for %s, error = %d\n",
+ "create", ahc_name(ahc), what, error);
goto out;
}
level++;
if ((error = bus_dmamap_load(dmat, *mapp, *vaddr, size, NULL,
BUS_DMA_NOWAIT)) != 0) {
- printf("%s: failed to load DMA map for %s, error = %d\n",
- myname, what, error);
+ printf("%s: failed to %s DMA map for %s, error = %d\n",
+ "load", ahc_name(ahc), what, error);
goto out;
}
@@ -428,8 +424,7 @@ ahc_init_scbdata(ahc)
ahc_alloc_scbs(ahc);
if (scb_data->numscbs == 0) {
- printf("%s: ahc_init_scbdata - "
- "Unable to allocate initial scbs\n",
+ printf("%s: Unable to allocate initial scbs\n",
ahc_name(ahc));
goto error_exit;
}
@@ -519,7 +514,7 @@ ahc_attach(ahc)
ahc_lock(ahc, &s);
ahc_controller_info(ahc, ahc_info);
- printf("%s: %s %s\n", ahc_name(ahc), ahc_info, (ahc->flags & AHC_SCB_BTT) ? "BTT" : "");
+ printf("%s: %s\n", ahc_name(ahc), ahc_info);
/*
* Initialize the software queue.
*/
@@ -595,26 +590,18 @@ ahc_platform_intr(arg)
intstat = ahc_inb(ahc, INTSTAT);
if ((intstat & INT_PEND) == 0) {
- if (ahc->platform_data->pci_intr_func &&
- (int)ahc->platform_data->pci_intr_func(ahc)) {
-#ifdef AHC_DEBUG
- printf("%s: bus intr: CCHADDR %x HADDR %x SEQADDR %x\n",
- ahc_name(ahc),
- ahc_inb(ahc, CCHADDR) |
- (ahc_inb(ahc, CCHADDR+1) << 8)
- | (ahc_inb(ahc, CCHADDR+2) << 16)
- | (ahc_inb(ahc, CCHADDR+3) << 24),
- ahc_inb(ahc, HADDR) | (ahc_inb(ahc, HADDR+1) << 8)
- | (ahc_inb(ahc, HADDR+2) << 16)
- | (ahc_inb(ahc, HADDR+3) << 24),
- ahc_inb(ahc, SEQADDR0) |
- (ahc_inb(ahc, SEQADDR1) << 8));
-#endif
- return 1;
+ if (ahc->unsolicited_ints > 500) {
+ ahc->unsolicited_ints = 0;
+ if ((ahc->chip & AHC_PCI) != 0
+ && (ahc_inb(ahc, ERROR) & PCIERRSTAT) != 0){
+ ahc->bus_intr(ahc);
+
+ }
}
- return 0;
+ ahc->unsolicited_ints++;
+ return 1;
}
-
+
ahc_intr(ahc);
return 1;
}
@@ -637,6 +624,16 @@ ahc_done(ahc, scb)
SC_DEBUG(xs->sc_link, SDEV_DB2, ("ahc_done\n"));
+#ifdef maybe_not_such_a_good_idea
+ /* Don't smash a disconnected SCB */
+ if ((scb->hscb->control & DISCONNECTED) != 0){
+ printf("disconnected sbc (tag %d) in ahc_done(ahc)!!!\n");
+ if ((xs = ahc->platform_data->sc_xxxq.lh_first) != NULL)
+ (void) ahc_action(xs);
+ return;
+ }
+#endif
+
LIST_REMOVE(scb, pending_links);
if ((scb->flags & SCB_UNTAGGEDQ) != 0) {
struct scb_tailq *untagged_q;
@@ -926,9 +923,9 @@ get_scb:
panic("ahc: queuing for busy target");
#endif
- scb->flags = SCB_FREE;
scb->io_ctx = xs;
hscb = scb->hscb;
+
hscb->control = 0;
timeout_set(&xs->stimeout, ahc_timeout, scb);
@@ -1117,6 +1114,18 @@ ahc_execute_scb(arg, dm_segs, nsegments)
LIST_INSERT_HEAD(&ahc->pending_scbs, scb, pending_links);
+#ifdef AHC_DEBUG
+ if ((ahc_debug & AHC_SHOWCMDS)) {
+ ahc_print_path(ahc, scb);
+ printf("opcode 0x%x tag %x len %d flags %x "
+ "control %x fpos %u rate %x\n",
+ xs->cmdstore.opcode, scb->hscb->tag,
+ scb->hscb->cdb_len, scb->flags,
+ scb->hscb->control, ahc->qinfifonext,
+ scb->hscb->scsirate);
+ }
+#endif
+
/*
* We only allow one untagged transaction
* per target in the initiator role unless
@@ -1138,7 +1147,7 @@ ahc_execute_scb(arg, dm_segs, nsegments)
scb->flags |= SCB_UNTAGGEDQ;
if (TAILQ_FIRST(untagged_q) != scb) {
ahc_unlock(ahc, &s);
- return (COMPLETE);
+ return (SUCCESSFULLY_QUEUED);
}
}
@@ -1160,17 +1169,6 @@ ahc_execute_scb(arg, dm_segs, nsegments)
ahc_queue_scb(ahc, scb);
}
-#ifdef AHC_DEBUG
- if ((ahc_debug & AHC_SHOWCMDS)) {
- ahc_print_path(ahc, scb);
- printf("opcode 0x%x tag %x len %d flags %x "
- "control %x fpos %u rate %x\n",
- xs->cmdstore.opcode, scb->hscb->tag,
- scb->hscb->cdb_len, scb->flags,
- scb->hscb->control, ahc->qinfifonext,
- scb->hscb->scsirate);
- }
-#endif
if (!(xs->flags & SCSI_POLL)) {
ahc_unlock(ahc, &s);
@@ -1199,9 +1197,9 @@ ahc_poll(ahc, wait)
int wait; /* in msec */
{
while (--wait) {
- if (ahc->platform_data->pci_intr_func)
- (void)ahc->platform_data->pci_intr_func(ahc);
DELAY(1000);
+ if ((ahc->chip & AHC_PCI) != 0 && (ahc_inb(ahc, ERROR) & PCIERRSTAT) != 0)
+ ahc->bus_intr(ahc);
if (ahc_inb(ahc, INTSTAT) & INT_PEND)
break;
}
@@ -1602,7 +1600,6 @@ ahc_platform_alloc(ahc, platform_arg)
/* Just do some initialization... */
ahc->scb_data = NULL;
ahc->platform_data->ih = NULL;
- ahc->platform_data->pci_intr_func = NULL;
ahc->platform_data->channel_b_primary = FALSE;
return (0);
@@ -1638,18 +1635,18 @@ ahc_check_tags(ahc, xs)
return;
ahc_compile_devinfo(&devinfo,
- SCSI_SCSI_ID(ahc, xs->sc_link),
- XS_SCSI_ID(xs),
- XS_LUN(xs),
- SCSI_CHANNEL(ahc, xs->sc_link),
- ROLE_INITIATOR);
+ SCSI_SCSI_ID(ahc, xs->sc_link),
+ XS_SCSI_ID(xs),
+ XS_LUN(xs),
+ SCSI_CHANNEL(ahc, xs->sc_link),
+ ROLE_INITIATOR);
ahc_set_tags(ahc, &devinfo, AHC_QUEUE_TAGGED);
printf("%s: target %d using tagged queuing\n",
- ahc_name(ahc), XS_SCSI_ID(xs));
+ ahc_name(ahc), XS_SCSI_ID(xs));
- if (ahc->scb_data->maxhscbs >= 16 ||
+ if (ahc->scb_data->maxhscbs >= 16 ||
(ahc->flags & AHC_PAGESCBS)) {
/* Default to 16 tags */
xs->sc_link->openings += 14;
@@ -1729,3 +1726,83 @@ ahc_dump_targcmd(cmd)
}
#endif
+#ifndef AHC_INLINES
+/*
+ * This is a hack to keep from modifying the main
+ * driver code as much as possible. This function
+ * does CAM to SCSI api stuff.
+ */
+void ahc_set_transaction_status(scb, status)
+ struct scb *scb;
+ uint32_t status;
+{
+ /* don't wipe the error */
+ if (scb->io_ctx->error == XS_NOERROR){
+ switch (status) {
+ case CAM_CMD_TIMEOUT:
+ status = XS_TIMEOUT;
+ break;
+ case CAM_BDR_SENT:
+ case CAM_SCSI_BUS_RESET:
+ status = XS_RESET;
+ break;
+ case CAM_UNEXP_BUSFREE:
+ case CAM_REQ_TOO_BIG:
+ case CAM_REQ_ABORTED:
+ case CAM_AUTOSENSE_FAIL:
+ case CAM_NO_HBA:
+ status = XS_DRIVER_STUFFUP;
+ break;
+ case CAM_SEL_TIMEOUT:
+ status = XS_SELTIMEOUT;
+ break;
+ case CAM_REQUEUE_REQ:
+ scb->platform_data->flags |= SCB_REQUEUE;
+ scb->io_ctx->error = XS_NOERROR;
+ break;
+ case CAM_SCSI_STATUS_ERROR:
+ default:
+ status = scb->io_ctx->error;
+ break;
+ }
+ } else {
+ status = scb->io_ctx->error;
+ }
+ scb->io_ctx->error = status;
+}
+
+void ahc_set_transaction_tag(scb, enabled, type)
+ struct scb *scb;
+ int enabled;
+ u_int type;
+{
+ struct scsi_xfer *xs = scb->io_ctx;
+ switch (type) {
+ case MSG_SIMPLE_TASK:
+ if (enabled)
+ xs->sc_link->quirks &= ~SDEV_NOTAGS;
+ else
+ xs->sc_link->quirks |= SDEV_NOTAGS;
+ break;
+ }
+}
+
+void ahc_platform_scb_free(ahc, scb)
+ struct ahc_softc *ahc;
+ struct scb *scb;
+{
+ int s;
+
+ ahc_lock(ahc, &s);
+
+ if ((ahc->flags & AHC_RESOURCE_SHORTAGE) != 0 ||
+ (scb->flags & SCB_RECOVERY_SCB) != 0) {
+ ahc->flags &= ~AHC_RESOURCE_SHORTAGE;
+ ahc->platform_data->queue_blocked = 0;
+ }
+
+ timeout_del(&scb->io_ctx->stimeout);
+
+ ahc_unlock(ahc, &s);
+}
+#endif
diff --git a/sys/dev/ic/aic7xxx_openbsd.h b/sys/dev/ic/aic7xxx_openbsd.h
index 7f1a9f7a59a..1bee8d7bb32 100644
--- a/sys/dev/ic/aic7xxx_openbsd.h
+++ b/sys/dev/ic/aic7xxx_openbsd.h
@@ -30,10 +30,10 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id: aic7xxx_openbsd.h,v 1.6 2002/07/01 23:31:05 smurph Exp $
+ * $Id: aic7xxx_openbsd.h,v 1.7 2002/07/05 05:41:03 smurph Exp $
*
* $FreeBSD: src/sys/dev/aic7xxx/aic7xxx_freebsd.h,v 1.12 2001/07/18 21:39:47 gibbs Exp $
- * $OpenBSD: aic7xxx_openbsd.h,v 1.6 2002/07/01 23:31:05 smurph Exp $
+ * $OpenBSD: aic7xxx_openbsd.h,v 1.7 2002/07/05 05:41:03 smurph Exp $
*/
#ifndef _AIC7XXX_OPENBSD_H_
@@ -253,9 +253,6 @@ struct ahc_platform_data {
void *ih;
int channel_b_primary;
- /* for pci error interrupts */
- int(*pci_intr_func)(struct ahc_softc *);
-
/* queue management */
int queue_blocked;
u_int16_t devqueue_blocked[AHC_NUM_TARGETS];
@@ -311,6 +308,7 @@ struct scb_platform_data {
#define ahc_insb(ahc, port, valp, count) \
bus_space_read_multi_1((ahc)->tag, (ahc)->bsh, port, valp, count)
+
static __inline void ahc_flush_device_writes(struct ahc_softc *);
static __inline void
@@ -323,6 +321,7 @@ ahc_flush_device_writes(ahc)
/**************************** Locking Primitives ******************************/
/* Lock protecting internal data structures */
+#ifdef AHC_INLINES
static __inline void ahc_lockinit(struct ahc_softc *);
static __inline void ahc_lock(struct ahc_softc *, int *flags);
static __inline void ahc_unlock(struct ahc_softc *, int *flags);
@@ -379,15 +378,37 @@ ahc_done_unlock(ahc, flags)
/* Nothing to do here for OpenBSD */
}
+#else
+
+#define ahc_lockinit(ahc);
+#define ahc_lock(ahc, flags) *(flags) = splbio()
+#define ahc_unlock(ahc, flags) splx(*(flags))
+#define ahc_done_lockinit(ahc);
+#define ahc_done_lock(ahc, flags);
+#define ahc_done_unlock(ahc, flags);
+
+#endif
+
/****************************** OS Primitives *********************************/
#define ahc_delay delay
/************************** Transaction Operations ****************************/
+
+#ifdef AHC_INLINES
static __inline void ahc_set_transaction_status(struct scb *, uint32_t);
+static __inline void ahc_set_transaction_tag(struct scb *, int, u_int);
+static __inline void ahc_platform_scb_free(struct ahc_softc *ahc,
+ struct scb *scb);
+#else
+void ahc_set_transaction_status(struct scb *, uint32_t);
+void ahc_set_transaction_tag(struct scb *, int, u_int);
+void ahc_platform_scb_free(struct ahc_softc *ahc,
+ struct scb *scb);
+#endif
+
static __inline void ahc_set_scsi_status(struct scb *, uint32_t);
static __inline uint32_t ahc_get_transaction_status(struct scb *);
static __inline uint32_t ahc_get_scsi_status(struct scb *);
-static __inline void ahc_set_transaction_tag(struct scb *, int, u_int);
static __inline u_long ahc_get_transfer_length(struct scb *);
static __inline int ahc_get_transfer_dir(struct scb *);
static __inline void ahc_set_residual(struct scb *, u_long);
@@ -398,16 +419,14 @@ static __inline uint32_t ahc_get_sense_bufsize(struct ahc_softc*, struct scb*);
static __inline void ahc_freeze_scb(struct scb *scb);
static __inline void ahc_platform_freeze_devq(struct ahc_softc *, struct scb *);
static __inline int ahc_platform_abort_scbs(struct ahc_softc *ahc, int target,
- char channel, int lun, u_int tag,
+ char channel, int lun, u_int tag,
role_t role, uint32_t status);
-static __inline void ahc_platform_scb_free(struct ahc_softc *ahc,
- struct scb *scb);
-
/*
* This is a hack to keep from modifying the main
* driver code as much as possible. This function
* does CAM to SCSI api stuff.
*/
+#ifdef AHC_INLINES
static __inline
void ahc_set_transaction_status(scb, status)
struct scb *scb;
@@ -447,7 +466,7 @@ void ahc_set_transaction_status(scb, status)
}
scb->io_ctx->error = status;
}
-
+#endif
static __inline
void ahc_set_scsi_status(scb, status)
struct scb *scb;
@@ -476,6 +495,7 @@ uint32_t ahc_get_scsi_status(scb)
return (scb->io_ctx->status);
}
+#ifdef AHC_INLINE
static __inline
void ahc_set_transaction_tag(scb, enabled, type)
struct scb *scb;
@@ -492,7 +512,7 @@ void ahc_set_transaction_tag(scb, enabled, type)
break;
}
}
-
+#endif
static __inline
u_long ahc_get_transfer_length(scb)
struct scb *scb;
@@ -582,6 +602,7 @@ ahc_platform_abort_scbs(ahc, target, channel, lun, tag, role, status)
return (0);
}
+#ifdef AHC_INLINE
static __inline void
ahc_platform_scb_free(ahc, scb)
struct ahc_softc *ahc;
@@ -601,6 +622,7 @@ ahc_platform_scb_free(ahc, scb)
ahc_unlock(ahc, &s);
}
+#endif
/********************************** PCI ***************************************/
#ifdef AHC_PCI_CONFIG
diff --git a/sys/dev/ic/aic7xxxreg.h b/sys/dev/ic/aic7xxxreg.h
index af493294aa1..a551d49ba8a 100644
--- a/sys/dev/ic/aic7xxxreg.h
+++ b/sys/dev/ic/aic7xxxreg.h
@@ -1,10 +1,10 @@
-/* $OpenBSD: aic7xxxreg.h,v 1.11 2002/06/30 19:39:09 smurph Exp $ */
+/* $OpenBSD: aic7xxxreg.h,v 1.12 2002/07/05 05:41:03 smurph Exp $ */
/*
* DO NOT EDIT - This file is automatically generated
* from the following source files:
*
- * $Id: aic7xxxreg.h,v 1.11 2002/06/30 19:39:09 smurph Exp $
- * $Id: aic7xxxreg.h,v 1.11 2002/06/30 19:39:09 smurph Exp $
+ * $Id: aic7xxxreg.h,v 1.12 2002/07/05 05:41:03 smurph Exp $
+ * $Id: aic7xxxreg.h,v 1.12 2002/07/05 05:41:03 smurph Exp $
*/
#define SCSISEQ 0x00
diff --git a/sys/dev/microcode/aic7xxx/aic7xxx.seq b/sys/dev/microcode/aic7xxx/aic7xxx.seq
index 66bdf6f42bf..b8122d7ad5d 100644
--- a/sys/dev/microcode/aic7xxx/aic7xxx.seq
+++ b/sys/dev/microcode/aic7xxx/aic7xxx.seq
@@ -1,4 +1,4 @@
-/* $OpenBSD: aic7xxx.seq,v 1.12 2002/06/30 18:25:58 smurph Exp $ */
+/* $OpenBSD: aic7xxx.seq,v 1.13 2002/07/05 05:41:03 smurph Exp $ */
/*
* Adaptec 274x/284x/294x device driver firmware for Linux and FreeBSD.
*
@@ -32,7 +32,7 @@
* $FreeBSD: src/sys/dev/aic7xxx/aic7xxx.seq,v 1.119 2001/08/05 22:20:12 gibbs Exp $
*/
-VERSION = "$Id: aic7xxx.seq,v 1.12 2002/06/30 18:25:58 smurph Exp $"
+VERSION = "$Id: aic7xxx.seq,v 1.13 2002/07/05 05:41:03 smurph Exp $"
PATCH_ARG_LIST = "struct ahc_softc *ahc"
#include <dev/microcode/aic7xxx/aic7xxx.reg>
@@ -335,8 +335,10 @@ if ((ahc->flags & AHC_INITIATORROLE) != 0) {
*/
initiator_reselect:
/* XXX test for and handle ONE BIT condition */
- or SXFRCTL0, SPIOEN|CLRSTCNT|CLRCHN;
- and SAVED_SCSIID, SELID_MASK, SELID;
+ test SELID, ONEBIT jnz await_busfree;
+
+ or SXFRCTL0, SPIOEN|CLRSTCNT|CLRCHN;
+ and SAVED_SCSIID, SELID_MASK, SELID;
if ((ahc->features & AHC_ULTRA2) != 0) {
and A, OID, SCSIID_ULTRA2;
} else {
@@ -1647,6 +1649,7 @@ mesgin_disconnect:
test SCSISIGI, ATNI jnz mesgin_done;
*/
+ test SCSISIGI, ATNI jnz mesgin_done;
or SCB_CONTROL,DISCONNECTED;
if ((ahc->flags & AHC_PAGESCBS) != 0) {
call add_scb_to_disc_list;
diff --git a/sys/dev/microcode/aic7xxx/aic7xxx_seq.h b/sys/dev/microcode/aic7xxx/aic7xxx_seq.h
index 81359508043..9362e42b28c 100644
--- a/sys/dev/microcode/aic7xxx/aic7xxx_seq.h
+++ b/sys/dev/microcode/aic7xxx/aic7xxx_seq.h
@@ -1,15 +1,15 @@
-/* $OpenBSD: aic7xxx_seq.h,v 1.9 2002/06/30 18:25:58 smurph Exp $ */
+/* $OpenBSD: aic7xxx_seq.h,v 1.10 2002/07/05 05:41:03 smurph Exp $ */
/*
* DO NOT EDIT - This file is automatically generated
* from the following source files:
*
- * $Id: aic7xxx_seq.h,v 1.9 2002/06/30 18:25:58 smurph Exp $
- * $Id: aic7xxx_seq.h,v 1.9 2002/06/30 18:25:58 smurph Exp $
+ * $Id: aic7xxx_seq.h,v 1.10 2002/07/05 05:41:03 smurph Exp $
+ * $Id: aic7xxx_seq.h,v 1.10 2002/07/05 05:41:03 smurph Exp $
*/
static u_int8_t seqprog[] = {
0xb2, 0x00, 0x00, 0x08,
0xf7, 0x11, 0x22, 0x08,
- 0x00, 0x65, 0xde, 0x59,
+ 0x00, 0x65, 0xe0, 0x59,
0xf7, 0x01, 0x02, 0x08,
0xff, 0x6a, 0x24, 0x08,
0x40, 0x00, 0x40, 0x68,
@@ -22,15 +22,15 @@ static u_int8_t seqprog[] = {
0x01, 0x4d, 0xc8, 0x30,
0x00, 0x4c, 0x12, 0x70,
0x01, 0x39, 0xa2, 0x30,
- 0x00, 0x6a, 0xa6, 0x5e,
+ 0x00, 0x6a, 0xaa, 0x5e,
0x01, 0x51, 0x20, 0x31,
0x01, 0x57, 0xae, 0x00,
0x0d, 0x6a, 0x76, 0x00,
- 0x00, 0x51, 0xf8, 0x5d,
+ 0x00, 0x51, 0xfc, 0x5d,
0x01, 0x51, 0xc8, 0x30,
- 0x00, 0x39, 0xd8, 0x60,
+ 0x00, 0x39, 0xda, 0x60,
0x00, 0xbb, 0x30, 0x70,
- 0xc1, 0x6a, 0xbe, 0x5e,
+ 0xc1, 0x6a, 0xc2, 0x5e,
0x01, 0xbf, 0x72, 0x30,
0x01, 0x40, 0x7e, 0x31,
0x01, 0x90, 0x80, 0x30,
@@ -38,22 +38,22 @@ static u_int8_t seqprog[] = {
0x01, 0x4d, 0x9a, 0x18,
0xfe, 0x57, 0xae, 0x08,
0x01, 0x40, 0x20, 0x31,
- 0x00, 0x65, 0xdc, 0x58,
+ 0x00, 0x65, 0xde, 0x58,
0x60, 0x0b, 0x40, 0x78,
0x08, 0x6a, 0x18, 0x00,
0x08, 0x11, 0x22, 0x00,
0x60, 0x0b, 0x00, 0x78,
- 0x40, 0x0b, 0x0c, 0x69,
+ 0x40, 0x0b, 0x0e, 0x69,
0x80, 0x0b, 0xc6, 0x78,
0x20, 0x6a, 0x16, 0x00,
0xa4, 0x6a, 0x06, 0x00,
0x08, 0x3c, 0x78, 0x00,
0x01, 0x50, 0xc8, 0x30,
0xe0, 0x6a, 0xcc, 0x00,
- 0x48, 0x6a, 0xe2, 0x5d,
+ 0x48, 0x6a, 0xe6, 0x5d,
0x01, 0x6a, 0xdc, 0x01,
0x88, 0x6a, 0xcc, 0x00,
- 0x48, 0x6a, 0xe2, 0x5d,
+ 0x48, 0x6a, 0xe6, 0x5d,
0x01, 0x6a, 0x26, 0x01,
0xf0, 0x19, 0x7a, 0x08,
0x0f, 0x18, 0xc8, 0x08,
@@ -64,81 +64,82 @@ static u_int8_t seqprog[] = {
0x80, 0x3d, 0x7a, 0x00,
0x01, 0x3d, 0xd8, 0x31,
0x01, 0x3d, 0x32, 0x31,
- 0x10, 0x03, 0x56, 0x79,
- 0x00, 0x65, 0x04, 0x59,
+ 0x10, 0x03, 0x58, 0x79,
+ 0x00, 0x65, 0x06, 0x59,
0x80, 0x66, 0xa2, 0x78,
0x01, 0x66, 0xd8, 0x31,
0x01, 0x66, 0x32, 0x31,
0x40, 0x66, 0x80, 0x68,
0x01, 0x3c, 0x78, 0x00,
0x10, 0x03, 0xaa, 0x78,
- 0x00, 0x65, 0x04, 0x59,
+ 0x00, 0x65, 0x06, 0x59,
0xe0, 0x66, 0xc8, 0x18,
0x00, 0x65, 0xaa, 0x50,
0xdd, 0x66, 0xc8, 0x18,
0x00, 0x65, 0xaa, 0x48,
0x01, 0x66, 0xd8, 0x31,
0x01, 0x66, 0x32, 0x31,
- 0x10, 0x03, 0x56, 0x79,
- 0x00, 0x65, 0x04, 0x59,
+ 0x10, 0x03, 0x58, 0x79,
+ 0x00, 0x65, 0x06, 0x59,
0x01, 0x66, 0xd8, 0x31,
0x01, 0x66, 0x32, 0x31,
0x01, 0x66, 0xac, 0x30,
0x40, 0x3c, 0x78, 0x00,
0x10, 0x03, 0xa0, 0x78,
- 0x00, 0x65, 0x04, 0x59,
+ 0x00, 0x65, 0x06, 0x59,
0x00, 0x65, 0xaa, 0x40,
- 0x61, 0x6a, 0xbe, 0x5e,
- 0x08, 0x51, 0x2e, 0x71,
+ 0x61, 0x6a, 0xc2, 0x5e,
+ 0x08, 0x51, 0x30, 0x71,
0x02, 0x0b, 0xa6, 0x78,
0x00, 0x65, 0xa2, 0x40,
0x80, 0x86, 0xc8, 0x08,
0x01, 0x4f, 0xc8, 0x30,
0x00, 0x50, 0xbc, 0x60,
- 0xc4, 0x6a, 0x54, 0x5d,
+ 0xc4, 0x6a, 0x58, 0x5d,
0x40, 0x3c, 0xb8, 0x78,
- 0x28, 0x6a, 0x6a, 0x5d,
- 0x00, 0x65, 0x54, 0x41,
- 0x08, 0x6a, 0x6a, 0x5d,
- 0x00, 0x65, 0x54, 0x41,
+ 0x28, 0x6a, 0x6e, 0x5d,
+ 0x00, 0x65, 0x56, 0x41,
+ 0x08, 0x6a, 0x6e, 0x5d,
+ 0x00, 0x65, 0x56, 0x41,
0xff, 0x6a, 0xd8, 0x01,
0xff, 0x6a, 0x32, 0x01,
0x90, 0x3c, 0x78, 0x00,
- 0x10, 0x03, 0x4a, 0x69,
- 0x00, 0x65, 0x2e, 0x41,
+ 0x10, 0x03, 0x4c, 0x69,
+ 0x00, 0x65, 0x30, 0x41,
+ 0x08, 0x19, 0xd2, 0x69,
0x1a, 0x01, 0x02, 0x00,
0xf0, 0x19, 0x7a, 0x08,
0x0f, 0x0f, 0xc8, 0x08,
0x0f, 0x05, 0xc8, 0x08,
0x00, 0x3d, 0x7a, 0x00,
- 0x08, 0x1f, 0xd4, 0x78,
+ 0x08, 0x1f, 0xd6, 0x78,
0x80, 0x3d, 0x7a, 0x00,
0x20, 0x6a, 0x16, 0x00,
- 0x00, 0x65, 0xbe, 0x41,
- 0x00, 0x65, 0x98, 0x5e,
+ 0x00, 0x65, 0xc0, 0x41,
+ 0x00, 0x65, 0x9c, 0x5e,
0x00, 0x65, 0x12, 0x40,
- 0x20, 0x11, 0xe2, 0x68,
+ 0x20, 0x11, 0xe4, 0x68,
0x20, 0x6a, 0x18, 0x00,
0x20, 0x11, 0x22, 0x00,
0xf7, 0x1f, 0xca, 0x08,
- 0x80, 0xb9, 0xe8, 0x78,
+ 0x80, 0xb9, 0xea, 0x78,
0x08, 0x65, 0xca, 0x00,
0x01, 0x65, 0x3e, 0x30,
0x01, 0xb9, 0x1e, 0x30,
0x7f, 0xb9, 0x0a, 0x08,
0x01, 0xb9, 0x0a, 0x30,
0x01, 0x54, 0xca, 0x30,
- 0x80, 0xb8, 0xf6, 0x78,
+ 0x80, 0xb8, 0xf8, 0x78,
0x80, 0x65, 0xca, 0x00,
0x01, 0x65, 0x00, 0x34,
0x01, 0x54, 0x00, 0x34,
0x1a, 0x01, 0x02, 0x00,
- 0x08, 0xb8, 0x00, 0x79,
+ 0x08, 0xb8, 0x02, 0x79,
0x20, 0x01, 0x02, 0x00,
0x02, 0xbd, 0x08, 0x34,
0x01, 0xbd, 0x08, 0x34,
0x08, 0x01, 0x02, 0x00,
- 0x02, 0x0b, 0x06, 0x79,
+ 0x02, 0x0b, 0x08, 0x79,
0xf7, 0x01, 0x02, 0x08,
0x01, 0x06, 0xcc, 0x34,
0xb2, 0x00, 0x00, 0x08,
@@ -147,105 +148,105 @@ static u_int8_t seqprog[] = {
0x01, 0xbf, 0x80, 0x30,
0x01, 0xb9, 0x7a, 0x30,
0x01, 0xba, 0x7c, 0x30,
- 0x00, 0x65, 0xfa, 0x58,
- 0x80, 0x0b, 0xba, 0x79,
- 0xe4, 0x6a, 0x54, 0x5d,
- 0x80, 0xba, 0x6a, 0x5d,
- 0x20, 0xb8, 0x26, 0x79,
- 0x20, 0x6a, 0x6a, 0x5d,
- 0x00, 0xa3, 0x6a, 0x5d,
+ 0x00, 0x65, 0xfc, 0x58,
+ 0x80, 0x0b, 0xbc, 0x79,
+ 0xe4, 0x6a, 0x58, 0x5d,
+ 0x80, 0xba, 0x6e, 0x5d,
+ 0x20, 0xb8, 0x28, 0x79,
+ 0x20, 0x6a, 0x6e, 0x5d,
+ 0x00, 0xa3, 0x6e, 0x5d,
0x01, 0xa0, 0x78, 0x30,
- 0x10, 0xb8, 0x2e, 0x79,
- 0xe4, 0x6a, 0x54, 0x5d,
+ 0x10, 0xb8, 0x30, 0x79,
+ 0xe4, 0x6a, 0x58, 0x5d,
0x00, 0x65, 0xa2, 0x40,
- 0x10, 0x03, 0x46, 0x69,
- 0x08, 0x3c, 0x62, 0x69,
- 0x04, 0x3c, 0x88, 0x69,
- 0x02, 0x3c, 0x8e, 0x69,
- 0x01, 0x3c, 0x4c, 0x79,
+ 0x10, 0x03, 0x48, 0x69,
+ 0x08, 0x3c, 0x64, 0x69,
+ 0x04, 0x3c, 0x8a, 0x69,
+ 0x02, 0x3c, 0x90, 0x69,
+ 0x01, 0x3c, 0x4e, 0x79,
0x01, 0x6a, 0xa2, 0x30,
- 0x00, 0x65, 0x9a, 0x59,
- 0x04, 0x51, 0x3c, 0x61,
- 0x00, 0x6a, 0xa6, 0x5e,
+ 0x00, 0x65, 0x9c, 0x59,
+ 0x04, 0x51, 0x3e, 0x61,
+ 0x00, 0x6a, 0xaa, 0x5e,
0x0d, 0x6a, 0x76, 0x00,
- 0x00, 0xbb, 0xf8, 0x5d,
- 0x00, 0x65, 0x26, 0x41,
+ 0x00, 0xbb, 0xfc, 0x5d,
+ 0x00, 0x65, 0x28, 0x41,
0xa4, 0x6a, 0x06, 0x00,
- 0x00, 0x65, 0x04, 0x59,
+ 0x00, 0x65, 0x06, 0x59,
0x00, 0x65, 0xa2, 0x40,
- 0xe4, 0x6a, 0x54, 0x5d,
- 0x20, 0x3c, 0x52, 0x79,
- 0x02, 0x6a, 0x6a, 0x5d,
- 0x04, 0x6a, 0x6a, 0x5d,
- 0x01, 0x03, 0x54, 0x69,
+ 0xe4, 0x6a, 0x58, 0x5d,
+ 0x20, 0x3c, 0x54, 0x79,
+ 0x02, 0x6a, 0x6e, 0x5d,
+ 0x04, 0x6a, 0x6e, 0x5d,
+ 0x01, 0x03, 0x56, 0x69,
0xf7, 0x11, 0x22, 0x08,
0xff, 0x6a, 0x24, 0x08,
0xff, 0x6a, 0x06, 0x08,
0x01, 0x6a, 0x7e, 0x00,
- 0x00, 0x65, 0x9a, 0x59,
+ 0x00, 0x65, 0x9c, 0x59,
0x00, 0x65, 0x04, 0x40,
- 0x84, 0x6a, 0x54, 0x5d,
- 0x00, 0x65, 0x04, 0x59,
+ 0x84, 0x6a, 0x58, 0x5d,
+ 0x00, 0x65, 0x06, 0x59,
0x01, 0x66, 0xc8, 0x30,
0x01, 0x64, 0xd8, 0x31,
0x01, 0x64, 0x32, 0x31,
0x5b, 0x64, 0xc8, 0x28,
0x30, 0x64, 0xca, 0x18,
0x01, 0x6c, 0xc8, 0x30,
- 0xff, 0x64, 0x84, 0x79,
+ 0xff, 0x64, 0x86, 0x79,
0x08, 0x01, 0x02, 0x00,
- 0x02, 0x0b, 0x76, 0x79,
- 0x01, 0x64, 0x7c, 0x61,
+ 0x02, 0x0b, 0x78, 0x79,
+ 0x01, 0x64, 0x7e, 0x61,
0xf7, 0x01, 0x02, 0x08,
0x01, 0x06, 0xd8, 0x31,
0x01, 0x06, 0x32, 0x31,
0xff, 0x64, 0xc8, 0x18,
- 0xff, 0x64, 0x76, 0x69,
+ 0xff, 0x64, 0x78, 0x69,
0xf7, 0x3c, 0x78, 0x08,
- 0x00, 0x65, 0x2e, 0x41,
+ 0x00, 0x65, 0x30, 0x41,
0x40, 0xa1, 0x7e, 0x10,
- 0x04, 0xa1, 0x54, 0x5d,
- 0x00, 0x65, 0x50, 0x42,
- 0xc4, 0x6a, 0x54, 0x5d,
+ 0x04, 0xa1, 0x58, 0x5d,
+ 0x00, 0x65, 0x52, 0x42,
+ 0xc4, 0x6a, 0x58, 0x5d,
0xc0, 0x6a, 0x7e, 0x00,
- 0x00, 0xa2, 0x6a, 0x5d,
+ 0x00, 0xa2, 0x6e, 0x5d,
0xe4, 0x6a, 0x06, 0x00,
- 0x00, 0x6a, 0x6a, 0x5d,
- 0x00, 0x65, 0x54, 0x41,
- 0x10, 0x3c, 0x9e, 0x69,
- 0x00, 0xbb, 0x74, 0x44,
+ 0x00, 0x6a, 0x6e, 0x5d,
+ 0x00, 0x65, 0x56, 0x41,
+ 0x10, 0x3c, 0xa0, 0x69,
+ 0x00, 0xbb, 0x76, 0x44,
0x18, 0x6a, 0xda, 0x01,
0x01, 0x69, 0xd8, 0x31,
0x1c, 0x6a, 0xd0, 0x01,
0x09, 0xee, 0xdc, 0x01,
- 0x80, 0xee, 0xa6, 0x79,
+ 0x80, 0xee, 0xa8, 0x79,
0xff, 0x6a, 0xdc, 0x09,
0x01, 0x93, 0x26, 0x01,
0x03, 0x6a, 0x2a, 0x01,
0x01, 0x69, 0x32, 0x31,
- 0x1c, 0x6a, 0xc6, 0x5d,
+ 0x1c, 0x6a, 0xca, 0x5d,
0x0a, 0x93, 0x26, 0x01,
- 0x00, 0x65, 0x8e, 0x5e,
+ 0x00, 0x65, 0x92, 0x5e,
0x01, 0x50, 0xa0, 0x18,
0x02, 0x6a, 0x22, 0x05,
0x80, 0x6a, 0x74, 0x00,
0x80, 0x3c, 0x78, 0x00,
- 0x00, 0x65, 0xbe, 0x5d,
+ 0x00, 0x65, 0xc2, 0x5d,
0x01, 0x3f, 0xc8, 0x30,
- 0xbf, 0x64, 0x50, 0x7a,
- 0x80, 0x64, 0x9a, 0x73,
- 0xa0, 0x64, 0xf8, 0x73,
- 0xc0, 0x64, 0xec, 0x73,
- 0xe0, 0x64, 0x28, 0x74,
- 0x01, 0x6a, 0xbe, 0x5e,
- 0x00, 0x65, 0xbe, 0x41,
+ 0xbf, 0x64, 0x52, 0x7a,
+ 0x80, 0x64, 0x9c, 0x73,
+ 0xa0, 0x64, 0xfa, 0x73,
+ 0xc0, 0x64, 0xee, 0x73,
+ 0xe0, 0x64, 0x2a, 0x74,
+ 0x01, 0x6a, 0xc2, 0x5e,
+ 0x00, 0x65, 0xc0, 0x41,
0xf7, 0x11, 0x22, 0x08,
0x01, 0x06, 0xd4, 0x30,
0xff, 0x6a, 0x24, 0x08,
0xf7, 0x01, 0x02, 0x08,
- 0x09, 0x0c, 0xd8, 0x79,
+ 0x09, 0x0c, 0xda, 0x79,
0x08, 0x0c, 0x04, 0x68,
- 0xb1, 0x6a, 0xbe, 0x5e,
+ 0xb1, 0x6a, 0xc2, 0x5e,
0xff, 0x6a, 0x26, 0x09,
0x12, 0x01, 0x02, 0x00,
0x02, 0x6a, 0x08, 0x30,
@@ -258,33 +259,33 @@ static u_int8_t seqprog[] = {
0x00, 0xa5, 0x4a, 0x21,
0x00, 0xa6, 0x4c, 0x21,
0x00, 0xa7, 0x4e, 0x25,
- 0x08, 0xeb, 0xc2, 0x7e,
- 0x80, 0xeb, 0xf8, 0x79,
+ 0x08, 0xeb, 0xc6, 0x7e,
+ 0x80, 0xeb, 0xfa, 0x79,
0xff, 0x6a, 0xd6, 0x09,
- 0x08, 0xeb, 0xfc, 0x69,
+ 0x08, 0xeb, 0xfe, 0x69,
0xff, 0x6a, 0xd4, 0x0c,
- 0x80, 0xa3, 0xc2, 0x6e,
- 0x88, 0xeb, 0x12, 0x72,
- 0x08, 0xeb, 0xc2, 0x6e,
- 0x04, 0xea, 0x16, 0xe2,
- 0x08, 0xee, 0xc2, 0x6e,
+ 0x80, 0xa3, 0xc6, 0x6e,
+ 0x88, 0xeb, 0x14, 0x72,
+ 0x08, 0xeb, 0xc6, 0x6e,
+ 0x04, 0xea, 0x18, 0xe2,
+ 0x08, 0xee, 0xc6, 0x6e,
0x04, 0x6a, 0xd0, 0x81,
0x05, 0xa4, 0xc0, 0x89,
0x03, 0xa5, 0xc2, 0x31,
0x09, 0x6a, 0xd6, 0x05,
- 0x00, 0x65, 0xfa, 0x59,
+ 0x00, 0x65, 0xfc, 0x59,
0x06, 0xa4, 0xd4, 0x89,
- 0x80, 0x94, 0xc2, 0x7e,
+ 0x80, 0x94, 0xc6, 0x7e,
0x07, 0xe9, 0x10, 0x31,
- 0x01, 0x8c, 0x1e, 0x7a,
+ 0x01, 0x8c, 0x20, 0x7a,
0x01, 0x55, 0xaa, 0x10,
0x01, 0xe9, 0x46, 0x31,
- 0x00, 0xa3, 0xa0, 0x5e,
- 0x00, 0x65, 0xec, 0x59,
+ 0x00, 0xa3, 0xa4, 0x5e,
+ 0x00, 0x65, 0xee, 0x59,
0x01, 0xa4, 0xca, 0x30,
- 0x01, 0x55, 0x2a, 0x7a,
+ 0x01, 0x55, 0x2c, 0x7a,
0x04, 0x65, 0xca, 0x00,
- 0x80, 0xa3, 0x2e, 0x7a,
+ 0x80, 0xa3, 0x30, 0x7a,
0x02, 0x65, 0xca, 0x00,
0x01, 0x65, 0xf8, 0x31,
0x80, 0x93, 0x26, 0x01,
@@ -292,168 +293,168 @@ static u_int8_t seqprog[] = {
0x01, 0x8c, 0xc8, 0x30,
0x00, 0x88, 0xc8, 0x18,
0x02, 0x64, 0xc8, 0x88,
- 0xff, 0x64, 0xc2, 0x7e,
- 0xff, 0x8d, 0x44, 0x6a,
- 0xff, 0x8e, 0x44, 0x6a,
+ 0xff, 0x64, 0xc6, 0x7e,
+ 0xff, 0x8d, 0x46, 0x6a,
+ 0xff, 0x8e, 0x46, 0x6a,
0x03, 0x8c, 0xd4, 0x98,
- 0x00, 0x65, 0xc2, 0x56,
+ 0x00, 0x65, 0xc6, 0x56,
0x01, 0x64, 0x70, 0x30,
0xff, 0x64, 0xc8, 0x10,
0x01, 0x64, 0xc8, 0x18,
0x00, 0x8c, 0x18, 0x19,
0xff, 0x8d, 0x1a, 0x21,
0xff, 0x8e, 0x1c, 0x25,
- 0x80, 0x3c, 0x54, 0x6a,
- 0x21, 0x6a, 0xbe, 0x46,
+ 0x80, 0x3c, 0x56, 0x6a,
+ 0x21, 0x6a, 0xc2, 0x46,
0xa8, 0x6a, 0x76, 0x00,
0x79, 0x6a, 0x76, 0x00,
- 0x40, 0x3f, 0x5c, 0x6a,
+ 0x40, 0x3f, 0x5e, 0x6a,
0x04, 0x3b, 0x76, 0x00,
0x04, 0x6a, 0xd4, 0x81,
- 0x20, 0x3c, 0x64, 0x7a,
- 0x51, 0x6a, 0xbe, 0x5e,
- 0x00, 0x65, 0x7e, 0x42,
+ 0x20, 0x3c, 0x66, 0x7a,
+ 0x51, 0x6a, 0xc2, 0x5e,
+ 0x00, 0x65, 0x80, 0x42,
0x20, 0x3c, 0x78, 0x00,
- 0x00, 0xb3, 0xa0, 0x5e,
+ 0x00, 0xb3, 0xa4, 0x5e,
0x07, 0xac, 0x10, 0x31,
0x05, 0xb3, 0x46, 0x31,
0x88, 0x6a, 0xcc, 0x00,
- 0xac, 0x6a, 0xd4, 0x5d,
+ 0xac, 0x6a, 0xd8, 0x5d,
0xa3, 0x6a, 0xcc, 0x00,
- 0xb3, 0x6a, 0xd8, 0x5d,
- 0x00, 0x65, 0x34, 0x5a,
+ 0xb3, 0x6a, 0xdc, 0x5d,
+ 0x00, 0x65, 0x36, 0x5a,
0xfd, 0xa4, 0x48, 0x09,
0x01, 0x8c, 0xaa, 0x08,
0x03, 0x8c, 0x10, 0x30,
- 0x00, 0x65, 0xcc, 0x5d,
- 0x01, 0xa4, 0x90, 0x7a,
+ 0x00, 0x65, 0xd0, 0x5d,
+ 0x01, 0xa4, 0x92, 0x7a,
0x04, 0x3b, 0x76, 0x08,
0x01, 0x3b, 0x26, 0x31,
0x80, 0x02, 0x04, 0x00,
- 0x10, 0x0c, 0x86, 0x7a,
- 0x03, 0x9e, 0x88, 0x6a,
+ 0x10, 0x0c, 0x88, 0x7a,
+ 0x03, 0x9e, 0x8a, 0x6a,
0x7f, 0x02, 0x04, 0x08,
- 0x91, 0x6a, 0xbe, 0x5e,
- 0x00, 0x65, 0xbe, 0x41,
+ 0x91, 0x6a, 0xc2, 0x5e,
+ 0x00, 0x65, 0xc0, 0x41,
0x01, 0xa4, 0xca, 0x30,
- 0x80, 0xa3, 0x96, 0x7a,
+ 0x80, 0xa3, 0x98, 0x7a,
0x02, 0x65, 0xca, 0x00,
- 0x01, 0x55, 0x9a, 0x7a,
+ 0x01, 0x55, 0x9c, 0x7a,
0x04, 0x65, 0xca, 0x00,
0x01, 0x65, 0xf8, 0x31,
0x01, 0x3b, 0x26, 0x31,
- 0x00, 0x65, 0x00, 0x5a,
- 0x01, 0xfc, 0xa8, 0x6a,
- 0x80, 0x0b, 0x9e, 0x6a,
- 0x10, 0x0c, 0x9e, 0x7a,
- 0x20, 0x93, 0x9e, 0x6a,
+ 0x00, 0x65, 0x02, 0x5a,
+ 0x01, 0xfc, 0xaa, 0x6a,
+ 0x80, 0x0b, 0xa0, 0x6a,
+ 0x10, 0x0c, 0xa0, 0x7a,
+ 0x20, 0x93, 0xa0, 0x6a,
0x02, 0x93, 0x26, 0x01,
- 0x02, 0xfc, 0xb2, 0x7a,
- 0x40, 0x0d, 0xcc, 0x6a,
+ 0x02, 0xfc, 0xb4, 0x7a,
+ 0x40, 0x0d, 0xce, 0x6a,
0x01, 0xa4, 0x48, 0x01,
- 0x00, 0x65, 0xcc, 0x42,
- 0x40, 0x0d, 0xb8, 0x6a,
- 0x00, 0x65, 0x00, 0x5a,
- 0x00, 0x65, 0xaa, 0x42,
- 0x80, 0xfc, 0xc2, 0x7a,
- 0x80, 0xa4, 0xc2, 0x6a,
+ 0x00, 0x65, 0xce, 0x42,
+ 0x40, 0x0d, 0xba, 0x6a,
+ 0x00, 0x65, 0x02, 0x5a,
+ 0x00, 0x65, 0xac, 0x42,
+ 0x80, 0xfc, 0xc4, 0x7a,
+ 0x80, 0xa4, 0xc4, 0x6a,
0xff, 0xa5, 0x4a, 0x19,
0xff, 0xa6, 0x4c, 0x21,
0xff, 0xa7, 0x4e, 0x21,
0xf8, 0xfc, 0x48, 0x09,
0xff, 0x6a, 0xaa, 0x08,
- 0x04, 0xfc, 0xca, 0x7a,
+ 0x04, 0xfc, 0xcc, 0x7a,
0x01, 0x55, 0xaa, 0x00,
0xff, 0x6a, 0x46, 0x09,
- 0x04, 0x3b, 0xe4, 0x6a,
+ 0x04, 0x3b, 0xe6, 0x6a,
0x02, 0x93, 0x26, 0x01,
- 0x01, 0x94, 0xce, 0x7a,
- 0x01, 0x94, 0xce, 0x7a,
- 0x01, 0x94, 0xce, 0x7a,
- 0x01, 0x94, 0xce, 0x7a,
- 0x01, 0x94, 0xce, 0x7a,
- 0x01, 0xa4, 0xe2, 0x7a,
- 0x01, 0xfc, 0xdc, 0x7a,
- 0x01, 0x94, 0xe4, 0x6a,
- 0x00, 0x65, 0x7e, 0x42,
- 0x01, 0x94, 0xe2, 0x7a,
- 0x10, 0x94, 0xe4, 0x6a,
+ 0x01, 0x94, 0xd0, 0x7a,
+ 0x01, 0x94, 0xd0, 0x7a,
+ 0x01, 0x94, 0xd0, 0x7a,
+ 0x01, 0x94, 0xd0, 0x7a,
+ 0x01, 0x94, 0xd0, 0x7a,
+ 0x01, 0xa4, 0xe4, 0x7a,
+ 0x01, 0xfc, 0xde, 0x7a,
+ 0x01, 0x94, 0xe6, 0x6a,
+ 0x00, 0x65, 0x80, 0x42,
+ 0x01, 0x94, 0xe4, 0x7a,
+ 0x10, 0x94, 0xe6, 0x6a,
0xd7, 0x93, 0x26, 0x09,
- 0x28, 0x93, 0xe8, 0x6a,
+ 0x28, 0x93, 0xea, 0x6a,
0x01, 0x85, 0x0a, 0x01,
- 0x02, 0xfc, 0xf0, 0x6a,
+ 0x02, 0xfc, 0xf2, 0x6a,
0x01, 0x14, 0x46, 0x31,
0xff, 0x6a, 0x10, 0x09,
0xfe, 0x85, 0x0a, 0x09,
- 0xff, 0x38, 0xfe, 0x6a,
- 0x80, 0xa3, 0xfe, 0x7a,
- 0x80, 0x0b, 0xfc, 0x7a,
- 0x04, 0x3b, 0xfe, 0x7a,
+ 0xff, 0x38, 0x00, 0x6b,
+ 0x80, 0xa3, 0x00, 0x7b,
+ 0x80, 0x0b, 0xfe, 0x7a,
+ 0x04, 0x3b, 0x00, 0x7b,
0xbf, 0x3b, 0x76, 0x08,
0x01, 0x3b, 0x26, 0x31,
- 0x00, 0x65, 0x00, 0x5a,
- 0x01, 0x0b, 0x0c, 0x6b,
- 0x10, 0x0c, 0x00, 0x7b,
- 0x04, 0x93, 0x0a, 0x6b,
- 0x01, 0x94, 0x08, 0x7b,
- 0x10, 0x94, 0x0a, 0x6b,
+ 0x00, 0x65, 0x02, 0x5a,
+ 0x01, 0x0b, 0x0e, 0x6b,
+ 0x10, 0x0c, 0x02, 0x7b,
+ 0x04, 0x93, 0x0c, 0x6b,
+ 0x01, 0x94, 0x0a, 0x7b,
+ 0x10, 0x94, 0x0c, 0x6b,
0xc7, 0x93, 0x26, 0x09,
0x01, 0x99, 0xd4, 0x30,
- 0x38, 0x93, 0x0e, 0x6b,
- 0xff, 0x08, 0x60, 0x6b,
- 0xff, 0x09, 0x60, 0x6b,
- 0xff, 0x0a, 0x60, 0x6b,
- 0xff, 0x38, 0x2a, 0x7b,
+ 0x38, 0x93, 0x10, 0x6b,
+ 0xff, 0x08, 0x62, 0x6b,
+ 0xff, 0x09, 0x62, 0x6b,
+ 0xff, 0x0a, 0x62, 0x6b,
+ 0xff, 0x38, 0x2c, 0x7b,
0x04, 0x14, 0x10, 0x31,
0x01, 0x38, 0x18, 0x31,
0x02, 0x6a, 0x1a, 0x31,
0x88, 0x6a, 0xcc, 0x00,
- 0x14, 0x6a, 0xda, 0x5d,
- 0x00, 0x38, 0xc6, 0x5d,
+ 0x14, 0x6a, 0xde, 0x5d,
+ 0x00, 0x38, 0xca, 0x5d,
0xff, 0x6a, 0x70, 0x08,
- 0x00, 0x65, 0x56, 0x43,
- 0x80, 0xa3, 0x30, 0x7b,
+ 0x00, 0x65, 0x58, 0x43,
+ 0x80, 0xa3, 0x32, 0x7b,
0x01, 0xa4, 0x48, 0x01,
- 0x00, 0x65, 0x60, 0x43,
- 0x08, 0xeb, 0x36, 0x7b,
- 0x00, 0x65, 0x00, 0x5a,
- 0x08, 0xeb, 0x32, 0x6b,
+ 0x00, 0x65, 0x62, 0x43,
+ 0x08, 0xeb, 0x38, 0x7b,
+ 0x00, 0x65, 0x02, 0x5a,
+ 0x08, 0xeb, 0x34, 0x6b,
0x07, 0xe9, 0x10, 0x31,
0x01, 0xe9, 0xca, 0x30,
0x01, 0x65, 0x46, 0x31,
- 0x00, 0x6a, 0xa0, 0x5e,
+ 0x00, 0x6a, 0xa4, 0x5e,
0x88, 0x6a, 0xcc, 0x00,
- 0xa4, 0x6a, 0xda, 0x5d,
- 0x08, 0x6a, 0xc6, 0x5d,
+ 0xa4, 0x6a, 0xde, 0x5d,
+ 0x08, 0x6a, 0xca, 0x5d,
0x0d, 0x93, 0x26, 0x01,
- 0x00, 0x65, 0x8e, 0x5e,
+ 0x00, 0x65, 0x92, 0x5e,
0x88, 0x6a, 0xcc, 0x00,
- 0x00, 0x65, 0x70, 0x5e,
+ 0x00, 0x65, 0x74, 0x5e,
0x01, 0x99, 0x46, 0x31,
- 0x00, 0xa3, 0xa0, 0x5e,
+ 0x00, 0xa3, 0xa4, 0x5e,
0x01, 0x88, 0x10, 0x31,
- 0x00, 0x65, 0x34, 0x5a,
- 0x00, 0x65, 0xec, 0x59,
+ 0x00, 0x65, 0x36, 0x5a,
+ 0x00, 0x65, 0xee, 0x59,
0x03, 0x8c, 0x10, 0x30,
- 0x00, 0x65, 0xcc, 0x5d,
- 0x01, 0x8c, 0x5e, 0x7b,
+ 0x00, 0x65, 0xd0, 0x5d,
+ 0x01, 0x8c, 0x60, 0x7b,
0x01, 0x55, 0xaa, 0x10,
- 0x80, 0x0b, 0x7e, 0x6a,
- 0x80, 0x0b, 0x68, 0x6b,
- 0x01, 0x0c, 0x62, 0x7b,
- 0x10, 0x0c, 0x7e, 0x7a,
- 0x03, 0x9e, 0x7e, 0x6a,
- 0x00, 0x65, 0xf6, 0x59,
- 0x00, 0x6a, 0xa0, 0x5e,
- 0x01, 0xa4, 0x88, 0x6b,
- 0xff, 0x38, 0x7e, 0x7b,
+ 0x80, 0x0b, 0x80, 0x6a,
+ 0x80, 0x0b, 0x6a, 0x6b,
+ 0x01, 0x0c, 0x64, 0x7b,
+ 0x10, 0x0c, 0x80, 0x7a,
+ 0x03, 0x9e, 0x80, 0x6a,
+ 0x00, 0x65, 0xf8, 0x59,
+ 0x00, 0x6a, 0xa4, 0x5e,
+ 0x01, 0xa4, 0x8a, 0x6b,
+ 0xff, 0x38, 0x80, 0x7b,
0x01, 0x38, 0xc8, 0x30,
0x00, 0x08, 0x40, 0x19,
0xff, 0x6a, 0xc8, 0x08,
0x00, 0x09, 0x42, 0x21,
0x00, 0x0a, 0x44, 0x21,
0xff, 0x6a, 0x70, 0x08,
- 0x00, 0x65, 0x80, 0x43,
+ 0x00, 0x65, 0x82, 0x43,
0x03, 0x08, 0x40, 0x31,
0x03, 0x08, 0x40, 0x31,
0x01, 0x08, 0x40, 0x31,
@@ -462,14 +463,14 @@ static u_int8_t seqprog[] = {
0xfd, 0xb4, 0x68, 0x09,
0x12, 0x01, 0x02, 0x00,
0x12, 0x01, 0x02, 0x00,
- 0x04, 0x3c, 0xbe, 0x79,
+ 0x04, 0x3c, 0xc0, 0x79,
0xfb, 0x3c, 0x78, 0x08,
- 0x04, 0x93, 0x2e, 0x79,
- 0x01, 0x0c, 0x94, 0x6b,
- 0x00, 0x65, 0x2e, 0x41,
- 0x00, 0x65, 0xbe, 0x41,
- 0x80, 0x3c, 0x9e, 0x6b,
- 0x21, 0x6a, 0xbe, 0x46,
+ 0x04, 0x93, 0x30, 0x79,
+ 0x01, 0x0c, 0x96, 0x6b,
+ 0x00, 0x65, 0x30, 0x41,
+ 0x00, 0x65, 0xc0, 0x41,
+ 0x80, 0x3c, 0xa0, 0x6b,
+ 0x21, 0x6a, 0xc2, 0x46,
0x01, 0xbc, 0x18, 0x31,
0x02, 0x6a, 0x1a, 0x31,
0x02, 0x6a, 0xf8, 0x01,
@@ -479,16 +480,16 @@ static u_int8_t seqprog[] = {
0xff, 0x6a, 0x12, 0x08,
0xff, 0x6a, 0x14, 0x08,
0xf3, 0xbc, 0xd4, 0x18,
- 0xa0, 0x6a, 0xc4, 0x53,
+ 0xa0, 0x6a, 0xc6, 0x53,
0x04, 0xa0, 0x10, 0x31,
0xac, 0x6a, 0x26, 0x01,
0x04, 0xa0, 0x10, 0x31,
0x03, 0x08, 0x18, 0x31,
0x88, 0x6a, 0xcc, 0x00,
- 0xa0, 0x6a, 0xda, 0x5d,
- 0x00, 0xbc, 0xc6, 0x5d,
+ 0xa0, 0x6a, 0xde, 0x5d,
+ 0x00, 0xbc, 0xca, 0x5d,
0x3d, 0x6a, 0x26, 0x01,
- 0x00, 0x65, 0xdc, 0x43,
+ 0x00, 0x65, 0xde, 0x43,
0xff, 0x6a, 0x10, 0x09,
0xa4, 0x6a, 0x26, 0x01,
0x0c, 0xa0, 0x32, 0x31,
@@ -498,117 +499,118 @@ static u_int8_t seqprog[] = {
0x36, 0x6a, 0x26, 0x01,
0x02, 0x93, 0x26, 0x01,
0x35, 0x6a, 0x26, 0x01,
- 0x00, 0x65, 0x82, 0x5e,
- 0x00, 0x65, 0x82, 0x5e,
+ 0x00, 0x65, 0x86, 0x5e,
+ 0x00, 0x65, 0x86, 0x5e,
0x02, 0x93, 0x26, 0x01,
- 0x04, 0x0b, 0xe0, 0x6b,
- 0x10, 0x0c, 0xdc, 0x7b,
- 0x01, 0x03, 0xe0, 0x6b,
- 0x20, 0x93, 0xdc, 0x6b,
+ 0x04, 0x0b, 0xe2, 0x6b,
+ 0x10, 0x0c, 0xde, 0x7b,
+ 0x01, 0x03, 0xe2, 0x6b,
+ 0x20, 0x93, 0xde, 0x6b,
0xc7, 0x93, 0x26, 0x09,
- 0x38, 0x93, 0xe6, 0x6b,
+ 0x38, 0x93, 0xe8, 0x6b,
0x10, 0x01, 0x02, 0x00,
- 0x00, 0x65, 0xbe, 0x41,
- 0x80, 0x3c, 0xf0, 0x6b,
- 0x21, 0x6a, 0xbe, 0x46,
+ 0x00, 0x65, 0xc0, 0x41,
+ 0x80, 0x3c, 0xf2, 0x6b,
+ 0x21, 0x6a, 0xc2, 0x46,
0x01, 0x06, 0x50, 0x31,
- 0x00, 0x65, 0xbe, 0x41,
+ 0x00, 0x65, 0xc0, 0x41,
0x10, 0x3f, 0x06, 0x00,
0x10, 0x6a, 0x06, 0x00,
0x01, 0x3a, 0xca, 0x30,
- 0x80, 0x65, 0x14, 0x64,
- 0x10, 0xb8, 0x38, 0x6c,
+ 0x80, 0x65, 0x16, 0x64,
+ 0x10, 0xb8, 0x3a, 0x6c,
0xc0, 0xba, 0xca, 0x00,
- 0x40, 0xb8, 0x04, 0x6c,
+ 0x40, 0xb8, 0x06, 0x6c,
0xbf, 0x65, 0xca, 0x08,
- 0x20, 0xb8, 0x18, 0x7c,
+ 0x20, 0xb8, 0x1a, 0x7c,
0x01, 0x65, 0x0c, 0x30,
- 0x00, 0x65, 0xbe, 0x5d,
- 0xa0, 0x3f, 0x20, 0x64,
+ 0x00, 0x65, 0xc2, 0x5d,
+ 0xa0, 0x3f, 0x22, 0x64,
0x23, 0xb8, 0x0c, 0x08,
- 0x00, 0x65, 0xbe, 0x5d,
- 0xa0, 0x3f, 0x20, 0x64,
- 0x00, 0xbb, 0x18, 0x44,
- 0xff, 0x65, 0x18, 0x64,
- 0x00, 0x65, 0x38, 0x44,
+ 0x00, 0x65, 0xc2, 0x5d,
+ 0xa0, 0x3f, 0x22, 0x64,
+ 0x00, 0xbb, 0x1a, 0x44,
+ 0xff, 0x65, 0x1a, 0x64,
+ 0x00, 0x65, 0x3a, 0x44,
0x40, 0x6a, 0x18, 0x00,
0x01, 0x65, 0x0c, 0x30,
- 0x00, 0x65, 0xbe, 0x5d,
- 0xa0, 0x3f, 0xf4, 0x73,
+ 0x00, 0x65, 0xc2, 0x5d,
+ 0xa0, 0x3f, 0xf6, 0x73,
0x40, 0x6a, 0x18, 0x00,
0x01, 0x3a, 0xa6, 0x30,
0x08, 0x6a, 0x74, 0x00,
- 0x00, 0x65, 0xbe, 0x41,
- 0x64, 0x6a, 0x4e, 0x5d,
- 0x80, 0x64, 0xbe, 0x6c,
- 0x04, 0x64, 0x84, 0x74,
- 0x02, 0x64, 0x92, 0x74,
- 0x00, 0x6a, 0x54, 0x74,
- 0x03, 0x64, 0xb0, 0x74,
- 0x23, 0x64, 0x40, 0x74,
- 0x08, 0x64, 0x50, 0x74,
- 0x61, 0x6a, 0xbe, 0x5e,
- 0x00, 0x65, 0xbe, 0x5d,
- 0x08, 0x51, 0xc0, 0x71,
- 0x00, 0x65, 0x38, 0x44,
- 0x80, 0x04, 0x4e, 0x7c,
- 0x51, 0x6a, 0x44, 0x5d,
- 0x01, 0x51, 0x4e, 0x64,
- 0x01, 0xa4, 0x4a, 0x7c,
- 0x01, 0x55, 0x50, 0x7c,
- 0x41, 0x6a, 0xbe, 0x5e,
- 0x00, 0x65, 0x50, 0x44,
- 0x07, 0x6a, 0x3a, 0x5d,
+ 0x00, 0x65, 0xc0, 0x41,
+ 0x64, 0x6a, 0x52, 0x5d,
+ 0x80, 0x64, 0xc2, 0x6c,
+ 0x04, 0x64, 0x86, 0x74,
+ 0x02, 0x64, 0x96, 0x74,
+ 0x00, 0x6a, 0x56, 0x74,
+ 0x03, 0x64, 0xb4, 0x74,
+ 0x23, 0x64, 0x42, 0x74,
+ 0x08, 0x64, 0x52, 0x74,
+ 0x61, 0x6a, 0xc2, 0x5e,
+ 0x00, 0x65, 0xc2, 0x5d,
+ 0x08, 0x51, 0xc2, 0x71,
+ 0x00, 0x65, 0x3a, 0x44,
+ 0x80, 0x04, 0x50, 0x7c,
+ 0x51, 0x6a, 0x48, 0x5d,
+ 0x01, 0x51, 0x50, 0x64,
+ 0x01, 0xa4, 0x4c, 0x7c,
+ 0x01, 0x55, 0x52, 0x7c,
+ 0x41, 0x6a, 0xc2, 0x5e,
+ 0x00, 0x65, 0x52, 0x44,
+ 0x07, 0x6a, 0x3e, 0x5d,
0x01, 0x06, 0xd4, 0x30,
- 0x00, 0x65, 0xbe, 0x41,
- 0x10, 0xb8, 0x58, 0x7c,
- 0xa1, 0x6a, 0xbe, 0x5e,
- 0x01, 0xb4, 0x5e, 0x6c,
- 0x02, 0xb4, 0x60, 0x6c,
- 0x01, 0xa4, 0x60, 0x7c,
- 0xff, 0xa8, 0x70, 0x7c,
+ 0x00, 0x65, 0xc0, 0x41,
+ 0x10, 0xb8, 0x5a, 0x7c,
+ 0xa1, 0x6a, 0xc2, 0x5e,
+ 0x01, 0xb4, 0x60, 0x6c,
+ 0x02, 0xb4, 0x62, 0x6c,
+ 0x01, 0xa4, 0x62, 0x7c,
+ 0xff, 0xa8, 0x72, 0x7c,
0x04, 0xb4, 0x68, 0x01,
0x01, 0x6a, 0x76, 0x00,
- 0x00, 0xbb, 0xf8, 0x5d,
- 0xff, 0xa8, 0x70, 0x7c,
- 0x71, 0x6a, 0xbe, 0x5e,
- 0x40, 0x51, 0x70, 0x64,
- 0x00, 0x65, 0x98, 0x5e,
- 0x00, 0x65, 0xd0, 0x41,
- 0x00, 0xbb, 0x74, 0x5c,
- 0x00, 0x65, 0xd0, 0x41,
- 0x00, 0x65, 0x98, 0x5e,
+ 0x00, 0xbb, 0xfc, 0x5d,
+ 0xff, 0xa8, 0x72, 0x7c,
+ 0x71, 0x6a, 0xc2, 0x5e,
+ 0x40, 0x51, 0x72, 0x64,
+ 0x00, 0x65, 0x9c, 0x5e,
+ 0x00, 0x65, 0xd2, 0x41,
+ 0x00, 0xbb, 0x76, 0x5c,
+ 0x00, 0x65, 0xd2, 0x41,
+ 0x00, 0x65, 0x9c, 0x5e,
0x01, 0x65, 0xa2, 0x30,
0x01, 0xf8, 0xc8, 0x30,
0x01, 0x4e, 0xc8, 0x30,
- 0x00, 0x6a, 0x9c, 0xdd,
- 0x00, 0x51, 0xae, 0x5d,
+ 0x00, 0x6a, 0xa0, 0xdd,
+ 0x00, 0x51, 0xb2, 0x5d,
0x01, 0x4e, 0x9c, 0x18,
0x02, 0x6a, 0x22, 0x05,
+ 0x10, 0x03, 0x52, 0x6c,
0x04, 0xb8, 0x70, 0x01,
- 0x00, 0x65, 0xba, 0x5e,
- 0x20, 0xb8, 0xd0, 0x69,
+ 0x00, 0x65, 0xbe, 0x5e,
+ 0x20, 0xb8, 0xd2, 0x69,
0x01, 0xbb, 0xa2, 0x30,
0x01, 0xba, 0x7c, 0x30,
- 0x00, 0xb9, 0xb4, 0x5c,
- 0x00, 0x65, 0xd0, 0x41,
+ 0x00, 0xb9, 0xb8, 0x5c,
+ 0x00, 0x65, 0xd2, 0x41,
0x01, 0x06, 0xd4, 0x30,
- 0x20, 0x3c, 0xbe, 0x79,
- 0x20, 0x3c, 0x50, 0x7c,
- 0x01, 0xa4, 0xa0, 0x7c,
+ 0x20, 0x3c, 0xc0, 0x79,
+ 0x20, 0x3c, 0x52, 0x7c,
+ 0x01, 0xa4, 0xa4, 0x7c,
0x01, 0xb4, 0x68, 0x01,
- 0x00, 0x65, 0xbe, 0x41,
- 0x00, 0x65, 0x50, 0x44,
+ 0x00, 0x65, 0xc0, 0x41,
+ 0x00, 0x65, 0x52, 0x44,
0x04, 0x14, 0x58, 0x31,
0x01, 0x06, 0xd4, 0x30,
0x08, 0xa0, 0x60, 0x31,
0xac, 0x6a, 0xcc, 0x00,
- 0x14, 0x6a, 0xda, 0x5d,
+ 0x14, 0x6a, 0xde, 0x5d,
0x01, 0x06, 0xd4, 0x30,
- 0xa0, 0x6a, 0xd2, 0x5d,
- 0x00, 0x65, 0xbe, 0x41,
+ 0xa0, 0x6a, 0xd6, 0x5d,
+ 0x00, 0x65, 0xc0, 0x41,
0xdf, 0x3c, 0x78, 0x08,
- 0x00, 0x65, 0x50, 0x44,
+ 0x00, 0x65, 0x52, 0x44,
0x4c, 0x65, 0xcc, 0x28,
0x01, 0x3e, 0x20, 0x31,
0xd0, 0x66, 0xcc, 0x18,
@@ -619,102 +621,102 @@ static u_int8_t seqprog[] = {
0xd0, 0x65, 0xca, 0x18,
0x01, 0x3e, 0x20, 0x31,
0x30, 0x65, 0xd4, 0x18,
- 0x00, 0x65, 0xcc, 0x4c,
+ 0x00, 0x65, 0xd0, 0x4c,
0xe1, 0x6a, 0x22, 0x01,
0xff, 0x6a, 0xd4, 0x08,
0x20, 0x65, 0xd4, 0x18,
- 0x00, 0x65, 0xd4, 0x54,
+ 0x00, 0x65, 0xd8, 0x54,
0xe1, 0x6a, 0x22, 0x01,
0xff, 0x6a, 0xd4, 0x08,
0x20, 0x65, 0xca, 0x18,
0xe0, 0x65, 0xd4, 0x18,
- 0x00, 0x65, 0xde, 0x4c,
+ 0x00, 0x65, 0xe2, 0x4c,
0xe1, 0x6a, 0x22, 0x01,
0xff, 0x6a, 0xd4, 0x08,
0xd0, 0x65, 0xd4, 0x18,
- 0x00, 0x65, 0xe6, 0x54,
+ 0x00, 0x65, 0xea, 0x54,
0xe1, 0x6a, 0x22, 0x01,
0xff, 0x6a, 0xd4, 0x08,
0x01, 0x6c, 0xa2, 0x30,
- 0xff, 0x51, 0xf8, 0x74,
- 0x00, 0x51, 0x74, 0x5d,
+ 0xff, 0x51, 0xfc, 0x74,
+ 0x00, 0x51, 0x78, 0x5d,
0x01, 0x51, 0x20, 0x31,
- 0x00, 0x65, 0x1a, 0x45,
+ 0x00, 0x65, 0x1e, 0x45,
0x01, 0xba, 0xc8, 0x30,
- 0x00, 0x3e, 0x1a, 0x75,
- 0x00, 0x65, 0x96, 0x5e,
+ 0x00, 0x3e, 0x1e, 0x75,
+ 0x00, 0x65, 0x9a, 0x5e,
0x80, 0x3c, 0x78, 0x00,
0x01, 0x06, 0xd4, 0x30,
- 0x00, 0x65, 0xbe, 0x5d,
+ 0x00, 0x65, 0xc2, 0x5d,
0x01, 0x3c, 0x78, 0x00,
- 0xe0, 0x3f, 0x36, 0x65,
+ 0xe0, 0x3f, 0x3a, 0x65,
0x02, 0x3c, 0x78, 0x00,
- 0x20, 0x12, 0x36, 0x65,
- 0x51, 0x6a, 0x44, 0x5d,
- 0x00, 0x51, 0x74, 0x5d,
- 0x51, 0x6a, 0x44, 0x5d,
+ 0x20, 0x12, 0x3a, 0x65,
+ 0x51, 0x6a, 0x48, 0x5d,
+ 0x00, 0x51, 0x78, 0x5d,
+ 0x51, 0x6a, 0x48, 0x5d,
0x01, 0x51, 0x20, 0x31,
0x04, 0x3c, 0x78, 0x00,
0x01, 0xb9, 0xc8, 0x30,
- 0x00, 0x3d, 0x34, 0x65,
+ 0x00, 0x3d, 0x38, 0x65,
0x08, 0x3c, 0x78, 0x00,
0x01, 0xba, 0xc8, 0x30,
- 0x00, 0x3e, 0x34, 0x65,
+ 0x00, 0x3e, 0x38, 0x65,
0x10, 0x3c, 0x78, 0x00,
- 0x04, 0xb8, 0x34, 0x7d,
+ 0x04, 0xb8, 0x38, 0x7d,
0xfb, 0xb8, 0x70, 0x09,
- 0x20, 0xb8, 0x2a, 0x6d,
+ 0x20, 0xb8, 0x2e, 0x6d,
0x01, 0x90, 0xc8, 0x30,
0xff, 0x6a, 0xa2, 0x00,
- 0x00, 0x3d, 0xb4, 0x5c,
+ 0x00, 0x3d, 0xb8, 0x5c,
0x01, 0x64, 0x20, 0x31,
0x80, 0x6a, 0x78, 0x00,
- 0x00, 0x65, 0xfc, 0x58,
- 0x10, 0xb8, 0x50, 0x7c,
- 0xff, 0x6a, 0x3a, 0x5d,
- 0x00, 0x65, 0x50, 0x44,
- 0x00, 0x65, 0x96, 0x5e,
- 0x31, 0x6a, 0xbe, 0x5e,
- 0x00, 0x65, 0x50, 0x44,
+ 0x00, 0x65, 0xfe, 0x58,
+ 0x10, 0xb8, 0x52, 0x7c,
+ 0xff, 0x6a, 0x3e, 0x5d,
+ 0x00, 0x65, 0x52, 0x44,
+ 0x00, 0x65, 0x9a, 0x5e,
+ 0x31, 0x6a, 0xc2, 0x5e,
+ 0x00, 0x65, 0x52, 0x44,
0x10, 0x3f, 0x06, 0x00,
0x10, 0x6a, 0x06, 0x00,
0x01, 0x65, 0x74, 0x34,
- 0x81, 0x6a, 0xbe, 0x5e,
- 0x00, 0x65, 0x46, 0x45,
+ 0x81, 0x6a, 0xc2, 0x5e,
+ 0x00, 0x65, 0x4a, 0x45,
0x01, 0x06, 0xd4, 0x30,
- 0x01, 0x0c, 0x46, 0x7d,
- 0x04, 0x0c, 0x40, 0x6d,
+ 0x01, 0x0c, 0x4a, 0x7d,
+ 0x04, 0x0c, 0x44, 0x6d,
0xe0, 0x03, 0x7e, 0x08,
- 0xe0, 0x3f, 0xbe, 0x61,
+ 0xe0, 0x3f, 0xc0, 0x61,
0x01, 0x65, 0xcc, 0x30,
0x01, 0x12, 0xda, 0x34,
0x01, 0x06, 0xd4, 0x34,
- 0x01, 0x03, 0x54, 0x6d,
+ 0x01, 0x03, 0x58, 0x6d,
0x40, 0x03, 0xcc, 0x08,
0x01, 0x65, 0x06, 0x30,
0x40, 0x65, 0xc8, 0x08,
- 0x00, 0x66, 0x62, 0x75,
- 0x40, 0x65, 0x62, 0x7d,
- 0x00, 0x65, 0x62, 0x5d,
+ 0x00, 0x66, 0x66, 0x75,
+ 0x40, 0x65, 0x66, 0x7d,
+ 0x00, 0x65, 0x66, 0x5d,
0xff, 0x6a, 0xd4, 0x08,
0xff, 0x6a, 0xd4, 0x08,
0xff, 0x6a, 0xd4, 0x08,
0xff, 0x6a, 0xd4, 0x0c,
0x08, 0x01, 0x02, 0x00,
- 0x02, 0x0b, 0x6c, 0x7d,
- 0x01, 0x65, 0x0c, 0x30,
0x02, 0x0b, 0x70, 0x7d,
+ 0x01, 0x65, 0x0c, 0x30,
+ 0x02, 0x0b, 0x74, 0x7d,
0xf7, 0x01, 0x02, 0x0c,
0x01, 0x65, 0xc8, 0x30,
- 0xff, 0x41, 0x94, 0x75,
+ 0xff, 0x41, 0x98, 0x75,
0x01, 0x41, 0x20, 0x31,
0xff, 0x6a, 0xa4, 0x00,
- 0x00, 0x65, 0x84, 0x45,
- 0xff, 0xbf, 0x94, 0x75,
+ 0x00, 0x65, 0x88, 0x45,
+ 0xff, 0xbf, 0x98, 0x75,
0x01, 0x90, 0xa4, 0x30,
0x01, 0xbf, 0x20, 0x31,
- 0x00, 0xbb, 0x7e, 0x65,
- 0xff, 0x52, 0x92, 0x75,
+ 0x00, 0xbb, 0x82, 0x65,
+ 0xff, 0x52, 0x96, 0x75,
0x01, 0xbf, 0xcc, 0x30,
0x01, 0x90, 0xca, 0x30,
0x01, 0x52, 0x20, 0x31,
@@ -722,28 +724,28 @@ static u_int8_t seqprog[] = {
0x01, 0x65, 0x20, 0x35,
0x01, 0xbf, 0x82, 0x34,
0x01, 0x64, 0xa2, 0x30,
- 0x00, 0x6a, 0xa6, 0x5e,
+ 0x00, 0x6a, 0xaa, 0x5e,
0x0d, 0x6a, 0x76, 0x00,
- 0x00, 0x51, 0xf8, 0x45,
+ 0x00, 0x51, 0xfc, 0x45,
0x01, 0x65, 0xa4, 0x30,
0xe0, 0x6a, 0xcc, 0x00,
- 0x48, 0x6a, 0xec, 0x5d,
+ 0x48, 0x6a, 0xf0, 0x5d,
0x01, 0x6a, 0xd0, 0x01,
0x01, 0x6a, 0xdc, 0x05,
0x88, 0x6a, 0xcc, 0x00,
- 0x48, 0x6a, 0xec, 0x5d,
- 0x01, 0x6a, 0xc6, 0x5d,
+ 0x48, 0x6a, 0xf0, 0x5d,
+ 0x01, 0x6a, 0xca, 0x5d,
0x01, 0x6a, 0x26, 0x05,
0x01, 0x65, 0xd8, 0x31,
0x09, 0xee, 0xdc, 0x01,
- 0x80, 0xee, 0xb2, 0x7d,
+ 0x80, 0xee, 0xb6, 0x7d,
0xff, 0x6a, 0xdc, 0x0d,
0x01, 0x65, 0x32, 0x31,
0x0a, 0x93, 0x26, 0x01,
- 0x00, 0x65, 0x8e, 0x46,
- 0x81, 0x6a, 0xbe, 0x5e,
- 0x01, 0x0c, 0xbe, 0x7d,
- 0x04, 0x0c, 0xbc, 0x6d,
+ 0x00, 0x65, 0x92, 0x46,
+ 0x81, 0x6a, 0xc2, 0x5e,
+ 0x01, 0x0c, 0xc2, 0x7d,
+ 0x04, 0x0c, 0xc0, 0x6d,
0xe0, 0x03, 0x06, 0x08,
0xe0, 0x03, 0x7e, 0x0c,
0x01, 0x65, 0x18, 0x31,
@@ -762,7 +764,7 @@ static u_int8_t seqprog[] = {
0x01, 0x6c, 0xda, 0x34,
0x3d, 0x64, 0xa4, 0x28,
0x55, 0x64, 0xc8, 0x28,
- 0x00, 0x65, 0xec, 0x45,
+ 0x00, 0x65, 0xf0, 0x45,
0x2e, 0x64, 0xa4, 0x28,
0x66, 0x64, 0xc8, 0x28,
0x00, 0x6c, 0xda, 0x18,
@@ -773,63 +775,63 @@ static u_int8_t seqprog[] = {
0x00, 0x6c, 0xda, 0x24,
0x01, 0x65, 0xc8, 0x30,
0xe0, 0x6a, 0xcc, 0x00,
- 0x44, 0x6a, 0xe8, 0x5d,
+ 0x44, 0x6a, 0xec, 0x5d,
0x01, 0x90, 0xe2, 0x31,
- 0x04, 0x3b, 0x0c, 0x7e,
+ 0x04, 0x3b, 0x10, 0x7e,
0x30, 0x6a, 0xd0, 0x01,
0x20, 0x6a, 0xd0, 0x01,
0x1d, 0x6a, 0xdc, 0x01,
- 0xdc, 0xee, 0x08, 0x66,
- 0x00, 0x65, 0x24, 0x46,
+ 0xdc, 0xee, 0x0c, 0x66,
+ 0x00, 0x65, 0x28, 0x46,
0x20, 0x6a, 0xd0, 0x01,
0x01, 0x6a, 0xdc, 0x01,
0x20, 0xa0, 0xd8, 0x31,
0x09, 0xee, 0xdc, 0x01,
- 0x80, 0xee, 0x14, 0x7e,
+ 0x80, 0xee, 0x18, 0x7e,
0x11, 0x6a, 0xdc, 0x01,
- 0x50, 0xee, 0x18, 0x66,
+ 0x50, 0xee, 0x1c, 0x66,
0x20, 0x6a, 0xd0, 0x01,
0x09, 0x6a, 0xdc, 0x01,
- 0x88, 0xee, 0x1e, 0x66,
+ 0x88, 0xee, 0x22, 0x66,
0x19, 0x6a, 0xdc, 0x01,
- 0xd8, 0xee, 0x22, 0x66,
+ 0xd8, 0xee, 0x26, 0x66,
0xff, 0x6a, 0xdc, 0x09,
- 0x18, 0xee, 0x26, 0x6e,
+ 0x18, 0xee, 0x2a, 0x6e,
0xff, 0x6a, 0xd4, 0x0c,
0x88, 0x6a, 0xcc, 0x00,
- 0x44, 0x6a, 0xe8, 0x5d,
- 0x20, 0x6a, 0xc6, 0x5d,
+ 0x44, 0x6a, 0xec, 0x5d,
+ 0x20, 0x6a, 0xca, 0x5d,
0x01, 0x3b, 0x26, 0x31,
- 0x04, 0x3b, 0x40, 0x6e,
+ 0x04, 0x3b, 0x44, 0x6e,
0xa0, 0x6a, 0xca, 0x00,
0x20, 0x65, 0xc8, 0x18,
- 0x00, 0x65, 0x7e, 0x5e,
- 0x00, 0x65, 0x38, 0x66,
+ 0x00, 0x65, 0x82, 0x5e,
+ 0x00, 0x65, 0x3c, 0x66,
0x0a, 0x93, 0x26, 0x01,
- 0x00, 0x65, 0x8e, 0x46,
+ 0x00, 0x65, 0x92, 0x46,
0xa0, 0x6a, 0xcc, 0x00,
0xff, 0x6a, 0xc8, 0x08,
- 0x20, 0x94, 0x44, 0x6e,
- 0x10, 0x94, 0x46, 0x6e,
- 0x08, 0x94, 0x60, 0x6e,
- 0x08, 0x94, 0x60, 0x6e,
- 0x08, 0x94, 0x60, 0x6e,
+ 0x20, 0x94, 0x48, 0x6e,
+ 0x10, 0x94, 0x4a, 0x6e,
+ 0x08, 0x94, 0x64, 0x6e,
+ 0x08, 0x94, 0x64, 0x6e,
+ 0x08, 0x94, 0x64, 0x6e,
0xff, 0x8c, 0xc8, 0x10,
0xc1, 0x64, 0xc8, 0x18,
0xf8, 0x64, 0xc8, 0x08,
0x01, 0x99, 0xda, 0x30,
- 0x00, 0x66, 0x54, 0x66,
- 0xc0, 0x66, 0x90, 0x76,
+ 0x00, 0x66, 0x58, 0x66,
+ 0xc0, 0x66, 0x94, 0x76,
0x60, 0x66, 0xc8, 0x18,
0x3d, 0x64, 0xc8, 0x28,
- 0x00, 0x65, 0x44, 0x46,
+ 0x00, 0x65, 0x48, 0x46,
0xf7, 0x93, 0x26, 0x09,
- 0x08, 0x93, 0x62, 0x6e,
+ 0x08, 0x93, 0x66, 0x6e,
0x00, 0x62, 0xc4, 0x18,
- 0x00, 0x65, 0x8e, 0x5e,
- 0x00, 0x65, 0x6e, 0x5e,
- 0x00, 0x65, 0x6e, 0x5e,
- 0x00, 0x65, 0x6e, 0x5e,
+ 0x00, 0x65, 0x92, 0x5e,
+ 0x00, 0x65, 0x72, 0x5e,
+ 0x00, 0x65, 0x72, 0x5e,
+ 0x00, 0x65, 0x72, 0x5e,
0x01, 0x99, 0xda, 0x30,
0x01, 0x99, 0xda, 0x30,
0x01, 0x99, 0xda, 0x30,
@@ -846,11 +848,11 @@ static u_int8_t seqprog[] = {
0x01, 0x6c, 0x32, 0x31,
0x01, 0x6c, 0x32, 0x31,
0x01, 0x6c, 0x32, 0x35,
- 0x08, 0x94, 0x8e, 0x7e,
+ 0x08, 0x94, 0x92, 0x7e,
0xf7, 0x93, 0x26, 0x09,
- 0x08, 0x93, 0x92, 0x6e,
+ 0x08, 0x93, 0x96, 0x6e,
0xff, 0x6a, 0xd4, 0x0c,
- 0x04, 0xb8, 0xba, 0x6e,
+ 0x04, 0xb8, 0xbe, 0x6e,
0x01, 0x42, 0x7e, 0x31,
0xff, 0x6a, 0x76, 0x01,
0x01, 0x90, 0x84, 0x34,
@@ -858,14 +860,14 @@ static u_int8_t seqprog[] = {
0x01, 0x85, 0x0a, 0x01,
0x7f, 0x65, 0x10, 0x09,
0xfe, 0x85, 0x0a, 0x0d,
- 0xff, 0x42, 0xb6, 0x66,
- 0xff, 0x41, 0xae, 0x66,
- 0xd1, 0x6a, 0xbe, 0x5e,
+ 0xff, 0x42, 0xba, 0x66,
+ 0xff, 0x41, 0xb2, 0x66,
+ 0xd1, 0x6a, 0xc2, 0x5e,
0xff, 0x6a, 0xca, 0x04,
0x01, 0x41, 0x20, 0x31,
0x01, 0xbf, 0x82, 0x30,
0x01, 0x6a, 0x76, 0x00,
- 0x00, 0xbb, 0xf8, 0x45,
+ 0x00, 0xbb, 0xfc, 0x45,
0x01, 0x42, 0x20, 0x31,
0x01, 0xbf, 0x84, 0x34,
0x01, 0x41, 0x7e, 0x31,
@@ -1106,177 +1108,177 @@ static struct patch {
{ aic_patch0_func, 86, 1, 1 },
{ aic_patch9_func, 94, 1, 2 },
{ aic_patch0_func, 95, 1, 1 },
- { aic_patch8_func, 99, 9, 4 },
- { aic_patch1_func, 101, 1, 2 },
- { aic_patch0_func, 102, 1, 1 },
- { aic_patch2_func, 104, 2, 1 },
- { aic_patch2_func, 113, 4, 1 },
- { aic_patch1_func, 117, 1, 2 },
- { aic_patch0_func, 118, 2, 3 },
- { aic_patch2_func, 118, 1, 2 },
- { aic_patch0_func, 119, 1, 1 },
- { aic_patch7_func, 120, 4, 2 },
- { aic_patch0_func, 124, 1, 1 },
- { aic_patch12_func, 126, 2, 1 },
- { aic_patch1_func, 128, 1, 2 },
- { aic_patch0_func, 129, 1, 1 },
- { aic_patch7_func, 130, 4, 1 },
- { aic_patch7_func, 141, 80, 9 },
- { aic_patch4_func, 159, 1, 1 },
- { aic_patch1_func, 172, 1, 1 },
- { aic_patch9_func, 180, 1, 2 },
- { aic_patch0_func, 181, 1, 1 },
- { aic_patch9_func, 190, 1, 2 },
- { aic_patch0_func, 191, 1, 1 },
- { aic_patch9_func, 207, 6, 2 },
- { aic_patch0_func, 213, 6, 1 },
- { aic_patch8_func, 221, 18, 2 },
- { aic_patch1_func, 234, 1, 1 },
- { aic_patch1_func, 241, 1, 2 },
- { aic_patch0_func, 242, 2, 2 },
- { aic_patch12_func, 243, 1, 1 },
- { aic_patch9_func, 251, 31, 3 },
- { aic_patch1_func, 267, 14, 2 },
- { aic_patch13_func, 272, 1, 1 },
- { aic_patch14_func, 282, 14, 1 },
- { aic_patch1_func, 298, 1, 2 },
- { aic_patch0_func, 299, 1, 1 },
- { aic_patch9_func, 302, 1, 1 },
- { aic_patch13_func, 307, 1, 1 },
- { aic_patch9_func, 308, 2, 2 },
- { aic_patch0_func, 310, 4, 1 },
- { aic_patch14_func, 314, 1, 1 },
- { aic_patch15_func, 317, 2, 3 },
- { aic_patch9_func, 317, 1, 2 },
- { aic_patch0_func, 318, 1, 1 },
- { aic_patch6_func, 323, 1, 2 },
- { aic_patch0_func, 324, 1, 1 },
- { aic_patch1_func, 328, 50, 11 },
- { aic_patch6_func, 337, 2, 4 },
- { aic_patch7_func, 337, 1, 1 },
- { aic_patch8_func, 338, 1, 1 },
- { aic_patch0_func, 339, 1, 1 },
- { aic_patch16_func, 340, 1, 1 },
- { aic_patch6_func, 359, 6, 3 },
- { aic_patch16_func, 359, 5, 1 },
- { aic_patch0_func, 365, 5, 1 },
- { aic_patch13_func, 373, 5, 1 },
- { aic_patch0_func, 378, 54, 17 },
- { aic_patch14_func, 378, 1, 1 },
- { aic_patch7_func, 380, 2, 2 },
- { aic_patch17_func, 381, 1, 1 },
- { aic_patch9_func, 384, 1, 1 },
- { aic_patch18_func, 391, 1, 1 },
- { aic_patch14_func, 396, 9, 3 },
- { aic_patch9_func, 397, 3, 2 },
- { aic_patch0_func, 400, 3, 1 },
- { aic_patch9_func, 408, 6, 2 },
- { aic_patch0_func, 414, 9, 2 },
- { aic_patch13_func, 414, 1, 1 },
- { aic_patch13_func, 423, 2, 1 },
- { aic_patch14_func, 425, 1, 1 },
- { aic_patch9_func, 427, 1, 2 },
- { aic_patch0_func, 428, 1, 1 },
- { aic_patch7_func, 431, 1, 1 },
+ { aic_patch8_func, 99, 10, 4 },
+ { aic_patch1_func, 102, 1, 2 },
+ { aic_patch0_func, 103, 1, 1 },
+ { aic_patch2_func, 105, 2, 1 },
+ { aic_patch2_func, 114, 4, 1 },
+ { aic_patch1_func, 118, 1, 2 },
+ { aic_patch0_func, 119, 2, 3 },
+ { aic_patch2_func, 119, 1, 2 },
+ { aic_patch0_func, 120, 1, 1 },
+ { aic_patch7_func, 121, 4, 2 },
+ { aic_patch0_func, 125, 1, 1 },
+ { aic_patch12_func, 127, 2, 1 },
+ { aic_patch1_func, 129, 1, 2 },
+ { aic_patch0_func, 130, 1, 1 },
+ { aic_patch7_func, 131, 4, 1 },
+ { aic_patch7_func, 142, 80, 9 },
+ { aic_patch4_func, 160, 1, 1 },
+ { aic_patch1_func, 173, 1, 1 },
+ { aic_patch9_func, 181, 1, 2 },
+ { aic_patch0_func, 182, 1, 1 },
+ { aic_patch9_func, 191, 1, 2 },
+ { aic_patch0_func, 192, 1, 1 },
+ { aic_patch9_func, 208, 6, 2 },
+ { aic_patch0_func, 214, 6, 1 },
+ { aic_patch8_func, 222, 18, 2 },
+ { aic_patch1_func, 235, 1, 1 },
+ { aic_patch1_func, 242, 1, 2 },
+ { aic_patch0_func, 243, 2, 2 },
+ { aic_patch12_func, 244, 1, 1 },
+ { aic_patch9_func, 252, 31, 3 },
+ { aic_patch1_func, 268, 14, 2 },
+ { aic_patch13_func, 273, 1, 1 },
+ { aic_patch14_func, 283, 14, 1 },
+ { aic_patch1_func, 299, 1, 2 },
+ { aic_patch0_func, 300, 1, 1 },
+ { aic_patch9_func, 303, 1, 1 },
+ { aic_patch13_func, 308, 1, 1 },
+ { aic_patch9_func, 309, 2, 2 },
+ { aic_patch0_func, 311, 4, 1 },
+ { aic_patch14_func, 315, 1, 1 },
+ { aic_patch15_func, 318, 2, 3 },
+ { aic_patch9_func, 318, 1, 2 },
+ { aic_patch0_func, 319, 1, 1 },
+ { aic_patch6_func, 324, 1, 2 },
+ { aic_patch0_func, 325, 1, 1 },
+ { aic_patch1_func, 329, 50, 11 },
+ { aic_patch6_func, 338, 2, 4 },
+ { aic_patch7_func, 338, 1, 1 },
+ { aic_patch8_func, 339, 1, 1 },
+ { aic_patch0_func, 340, 1, 1 },
+ { aic_patch16_func, 341, 1, 1 },
+ { aic_patch6_func, 360, 6, 3 },
+ { aic_patch16_func, 360, 5, 1 },
+ { aic_patch0_func, 366, 5, 1 },
+ { aic_patch13_func, 374, 5, 1 },
+ { aic_patch0_func, 379, 54, 17 },
+ { aic_patch14_func, 379, 1, 1 },
+ { aic_patch7_func, 381, 2, 2 },
+ { aic_patch17_func, 382, 1, 1 },
+ { aic_patch9_func, 385, 1, 1 },
+ { aic_patch18_func, 392, 1, 1 },
+ { aic_patch14_func, 397, 9, 3 },
+ { aic_patch9_func, 398, 3, 2 },
+ { aic_patch0_func, 401, 3, 1 },
+ { aic_patch9_func, 409, 6, 2 },
+ { aic_patch0_func, 415, 9, 2 },
+ { aic_patch13_func, 415, 1, 1 },
+ { aic_patch13_func, 424, 2, 1 },
+ { aic_patch14_func, 426, 1, 1 },
+ { aic_patch9_func, 428, 1, 2 },
+ { aic_patch0_func, 429, 1, 1 },
{ aic_patch7_func, 432, 1, 1 },
- { aic_patch8_func, 433, 3, 3 },
- { aic_patch6_func, 434, 1, 2 },
- { aic_patch0_func, 435, 1, 1 },
- { aic_patch9_func, 436, 1, 1 },
- { aic_patch15_func, 437, 1, 2 },
- { aic_patch13_func, 437, 1, 1 },
- { aic_patch14_func, 439, 9, 4 },
- { aic_patch9_func, 439, 1, 1 },
- { aic_patch9_func, 446, 2, 1 },
- { aic_patch0_func, 448, 4, 3 },
- { aic_patch9_func, 448, 1, 2 },
- { aic_patch0_func, 449, 3, 1 },
- { aic_patch1_func, 453, 2, 1 },
- { aic_patch7_func, 455, 5, 2 },
- { aic_patch0_func, 460, 1, 1 },
- { aic_patch8_func, 461, 109, 23 },
- { aic_patch1_func, 463, 3, 2 },
- { aic_patch0_func, 466, 5, 3 },
- { aic_patch9_func, 466, 2, 2 },
- { aic_patch0_func, 468, 3, 1 },
- { aic_patch1_func, 473, 2, 2 },
- { aic_patch0_func, 475, 6, 3 },
- { aic_patch9_func, 475, 2, 2 },
- { aic_patch0_func, 477, 3, 1 },
- { aic_patch1_func, 483, 2, 2 },
- { aic_patch0_func, 485, 9, 7 },
- { aic_patch9_func, 485, 5, 6 },
- { aic_patch19_func, 485, 1, 2 },
- { aic_patch0_func, 486, 1, 1 },
- { aic_patch19_func, 488, 1, 2 },
- { aic_patch0_func, 489, 1, 1 },
- { aic_patch0_func, 490, 4, 1 },
- { aic_patch6_func, 494, 3, 2 },
- { aic_patch0_func, 497, 1, 1 },
- { aic_patch1_func, 500, 1, 1 },
- { aic_patch6_func, 506, 1, 2 },
- { aic_patch0_func, 507, 1, 1 },
- { aic_patch20_func, 544, 7, 1 },
- { aic_patch3_func, 572, 1, 2 },
- { aic_patch0_func, 573, 1, 1 },
- { aic_patch21_func, 576, 1, 1 },
- { aic_patch8_func, 578, 104, 33 },
- { aic_patch4_func, 579, 1, 1 },
- { aic_patch1_func, 585, 2, 2 },
- { aic_patch0_func, 587, 1, 1 },
- { aic_patch1_func, 590, 1, 2 },
- { aic_patch0_func, 591, 1, 1 },
- { aic_patch9_func, 592, 3, 3 },
- { aic_patch15_func, 593, 1, 1 },
- { aic_patch0_func, 595, 4, 1 },
- { aic_patch19_func, 603, 2, 2 },
- { aic_patch0_func, 605, 1, 1 },
- { aic_patch19_func, 609, 10, 3 },
- { aic_patch5_func, 611, 8, 1 },
- { aic_patch0_func, 619, 9, 2 },
- { aic_patch5_func, 620, 8, 1 },
- { aic_patch4_func, 630, 1, 2 },
- { aic_patch0_func, 631, 1, 1 },
- { aic_patch19_func, 632, 1, 2 },
- { aic_patch0_func, 633, 3, 2 },
- { aic_patch4_func, 635, 1, 1 },
- { aic_patch5_func, 636, 1, 1 },
- { aic_patch5_func, 639, 1, 1 },
+ { aic_patch7_func, 433, 1, 1 },
+ { aic_patch8_func, 434, 3, 3 },
+ { aic_patch6_func, 435, 1, 2 },
+ { aic_patch0_func, 436, 1, 1 },
+ { aic_patch9_func, 437, 1, 1 },
+ { aic_patch15_func, 438, 1, 2 },
+ { aic_patch13_func, 438, 1, 1 },
+ { aic_patch14_func, 440, 9, 4 },
+ { aic_patch9_func, 440, 1, 1 },
+ { aic_patch9_func, 447, 2, 1 },
+ { aic_patch0_func, 449, 4, 3 },
+ { aic_patch9_func, 449, 1, 2 },
+ { aic_patch0_func, 450, 3, 1 },
+ { aic_patch1_func, 454, 2, 1 },
+ { aic_patch7_func, 456, 5, 2 },
+ { aic_patch0_func, 461, 1, 1 },
+ { aic_patch8_func, 462, 109, 23 },
+ { aic_patch1_func, 464, 3, 2 },
+ { aic_patch0_func, 467, 5, 3 },
+ { aic_patch9_func, 467, 2, 2 },
+ { aic_patch0_func, 469, 3, 1 },
+ { aic_patch1_func, 474, 2, 2 },
+ { aic_patch0_func, 476, 6, 3 },
+ { aic_patch9_func, 476, 2, 2 },
+ { aic_patch0_func, 478, 3, 1 },
+ { aic_patch1_func, 484, 2, 2 },
+ { aic_patch0_func, 486, 9, 7 },
+ { aic_patch9_func, 486, 5, 6 },
+ { aic_patch19_func, 486, 1, 2 },
+ { aic_patch0_func, 487, 1, 1 },
+ { aic_patch19_func, 489, 1, 2 },
+ { aic_patch0_func, 490, 1, 1 },
+ { aic_patch0_func, 491, 4, 1 },
+ { aic_patch6_func, 495, 3, 2 },
+ { aic_patch0_func, 498, 1, 1 },
+ { aic_patch1_func, 501, 1, 1 },
+ { aic_patch6_func, 507, 1, 2 },
+ { aic_patch0_func, 508, 1, 1 },
+ { aic_patch20_func, 545, 7, 1 },
+ { aic_patch3_func, 573, 1, 2 },
+ { aic_patch0_func, 574, 1, 1 },
+ { aic_patch21_func, 577, 1, 1 },
+ { aic_patch8_func, 579, 105, 33 },
+ { aic_patch4_func, 581, 1, 1 },
+ { aic_patch1_func, 587, 2, 2 },
+ { aic_patch0_func, 589, 1, 1 },
+ { aic_patch1_func, 592, 1, 2 },
+ { aic_patch0_func, 593, 1, 1 },
+ { aic_patch9_func, 594, 3, 3 },
+ { aic_patch15_func, 595, 1, 1 },
+ { aic_patch0_func, 597, 4, 1 },
+ { aic_patch19_func, 605, 2, 2 },
+ { aic_patch0_func, 607, 1, 1 },
+ { aic_patch19_func, 611, 10, 3 },
+ { aic_patch5_func, 613, 8, 1 },
+ { aic_patch0_func, 621, 9, 2 },
+ { aic_patch5_func, 622, 8, 1 },
+ { aic_patch4_func, 632, 1, 2 },
+ { aic_patch0_func, 633, 1, 1 },
+ { aic_patch19_func, 634, 1, 2 },
+ { aic_patch0_func, 635, 3, 2 },
+ { aic_patch4_func, 637, 1, 1 },
+ { aic_patch5_func, 638, 1, 1 },
{ aic_patch5_func, 641, 1, 1 },
- { aic_patch4_func, 643, 2, 2 },
- { aic_patch0_func, 645, 2, 1 },
- { aic_patch5_func, 647, 1, 1 },
- { aic_patch5_func, 650, 1, 1 },
- { aic_patch5_func, 653, 1, 1 },
- { aic_patch19_func, 657, 1, 1 },
- { aic_patch19_func, 660, 1, 1 },
- { aic_patch4_func, 666, 1, 1 },
- { aic_patch6_func, 669, 1, 2 },
- { aic_patch0_func, 670, 1, 1 },
- { aic_patch7_func, 682, 16, 1 },
- { aic_patch4_func, 698, 20, 1 },
- { aic_patch9_func, 719, 4, 2 },
- { aic_patch0_func, 723, 4, 1 },
- { aic_patch9_func, 727, 4, 2 },
- { aic_patch0_func, 731, 3, 1 },
- { aic_patch6_func, 737, 1, 1 },
- { aic_patch22_func, 739, 14, 1 },
- { aic_patch7_func, 753, 3, 1 },
- { aic_patch9_func, 765, 24, 8 },
- { aic_patch19_func, 769, 1, 2 },
- { aic_patch0_func, 770, 1, 1 },
- { aic_patch15_func, 775, 4, 2 },
- { aic_patch0_func, 779, 7, 3 },
- { aic_patch23_func, 779, 5, 2 },
- { aic_patch0_func, 784, 2, 1 },
- { aic_patch0_func, 789, 42, 3 },
- { aic_patch18_func, 801, 18, 2 },
- { aic_patch0_func, 819, 1, 1 },
- { aic_patch4_func, 843, 1, 1 },
- { aic_patch4_func, 844, 3, 2 },
- { aic_patch0_func, 847, 1, 1 },
- { aic_patch13_func, 848, 3, 1 },
- { aic_patch4_func, 851, 12, 1 }
+ { aic_patch5_func, 643, 1, 1 },
+ { aic_patch4_func, 645, 2, 2 },
+ { aic_patch0_func, 647, 2, 1 },
+ { aic_patch5_func, 649, 1, 1 },
+ { aic_patch5_func, 652, 1, 1 },
+ { aic_patch5_func, 655, 1, 1 },
+ { aic_patch19_func, 659, 1, 1 },
+ { aic_patch19_func, 662, 1, 1 },
+ { aic_patch4_func, 668, 1, 1 },
+ { aic_patch6_func, 671, 1, 2 },
+ { aic_patch0_func, 672, 1, 1 },
+ { aic_patch7_func, 684, 16, 1 },
+ { aic_patch4_func, 700, 20, 1 },
+ { aic_patch9_func, 721, 4, 2 },
+ { aic_patch0_func, 725, 4, 1 },
+ { aic_patch9_func, 729, 4, 2 },
+ { aic_patch0_func, 733, 3, 1 },
+ { aic_patch6_func, 739, 1, 1 },
+ { aic_patch22_func, 741, 14, 1 },
+ { aic_patch7_func, 755, 3, 1 },
+ { aic_patch9_func, 767, 24, 8 },
+ { aic_patch19_func, 771, 1, 2 },
+ { aic_patch0_func, 772, 1, 1 },
+ { aic_patch15_func, 777, 4, 2 },
+ { aic_patch0_func, 781, 7, 3 },
+ { aic_patch23_func, 781, 5, 2 },
+ { aic_patch0_func, 786, 2, 1 },
+ { aic_patch0_func, 791, 42, 3 },
+ { aic_patch18_func, 803, 18, 2 },
+ { aic_patch0_func, 821, 1, 1 },
+ { aic_patch4_func, 845, 1, 1 },
+ { aic_patch4_func, 846, 3, 2 },
+ { aic_patch0_func, 849, 1, 1 },
+ { aic_patch13_func, 850, 3, 1 },
+ { aic_patch4_func, 853, 12, 1 }
};
static struct cs {
@@ -1285,11 +1287,11 @@ static struct cs {
} critical_sections[] = {
{ 11, 18 },
{ 21, 30 },
- { 698, 714 },
- { 844, 847 },
- { 851, 857 },
- { 859, 861 },
- { 861, 863 }
+ { 700, 716 },
+ { 846, 849 },
+ { 853, 859 },
+ { 861, 863 },
+ { 863, 865 }
};
static const int num_critical_sections = sizeof(critical_sections)
diff --git a/sys/dev/pci/ahc_pci.c b/sys/dev/pci/ahc_pci.c
index 7f7feadcbd2..9c26a0ab988 100644
--- a/sys/dev/pci/ahc_pci.c
+++ b/sys/dev/pci/ahc_pci.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ahc_pci.c,v 1.34 2002/06/30 19:19:49 smurph Exp $ */
+/* $OpenBSD: ahc_pci.c,v 1.35 2002/07/05 05:41:02 smurph Exp $ */
/* $NetBSD: ahc_pci.c,v 1.9 1996/10/21 22:56:24 thorpej Exp $ */
/*
@@ -405,8 +405,9 @@ void *aux;
}
/* setup the PCI interrupt */
- ahc->platform_data->pci_intr_func = ahc_pci_intr;
-
+ ahc->bus_intr = ahc_pci_intr;
+ ahc->unsolicited_ints = 0;
+
if(ahc_do_pci_config(ahc)){
ahc_free(ahc);
return;
@@ -1623,14 +1624,14 @@ release_seeprom(sd)
#define PCI_PRINT(Printstuff)
#endif
-int
+void
ahc_pci_intr(ahc)
struct ahc_softc *ahc;
{
pcireg_t status1;
if ((ahc_inb(ahc, ERROR) & PCIERRSTAT) == 0)
- return 0;
+ return;
PCI_PRINT(("%s: PCI error Interrupt at seqaddr = 0x%x\n",
ahc_name(ahc),
ahc_inb(ahc, SEQADDR0) | (ahc_inb(ahc, SEQADDR1) << 8)));
@@ -1672,5 +1673,5 @@ ahc_pci_intr(ahc)
ahc_unpause(ahc);
- return 1;
+ return;
}