require '_h2ph_pre.ph';

no warnings 'redefine';

unless(defined(&_TRM_H)) {
    eval 'sub _TRM_H () {1;}' unless defined(&_TRM_H);
    eval 'sub TRM_MAX_ADAPTER_NUM () {4;}' unless defined(&TRM_MAX_ADAPTER_NUM);
    eval 'sub TRM_MAX_TARGETS () {16;}' unless defined(&TRM_MAX_TARGETS);
    eval 'sub TRM_MAX_LUNS () {8;}' unless defined(&TRM_MAX_LUNS);
    eval 'sub TRM_MAX_SG_LISTENTRY () {32;}' unless defined(&TRM_MAX_SG_LISTENTRY);
    eval 'sub TRM_MAX_CMD_PER_LUN () {32;}' unless defined(&TRM_MAX_CMD_PER_LUN);
    eval 'sub TRM_MAX_SRB_CNT () { &TRM_MAX_CMD_PER_LUN*4;}' unless defined(&TRM_MAX_SRB_CNT);
    eval 'sub TRM_MAX_PHYSG_BYTE () {(( &TRM_MAX_SG_LISTENTRY - 1) <<  &PGSHIFT);}' unless defined(&TRM_MAX_PHYSG_BYTE);
    eval 'sub TRM_MAX_SYNC_OFFSET () {15;}' unless defined(&TRM_MAX_SYNC_OFFSET);
    eval 'sub TRM_SEL_TIMEOUT () {153;}' unless defined(&TRM_SEL_TIMEOUT);
    eval 'sub TRM_FREE () {0x;}' unless defined(&TRM_FREE);
    eval 'sub TRM_WAIT () {0x1;}' unless defined(&TRM_WAIT);
    eval 'sub TRM_READY () {0x2;}' unless defined(&TRM_READY);
    eval 'sub TRM_MSGOUT () {0x4;}' unless defined(&TRM_MSGOUT);
    eval 'sub TRM_EXTEND_MSGIN () {0x10;}' unless defined(&TRM_EXTEND_MSGIN);
    eval 'sub TRM_COMMAND () {0x20;}' unless defined(&TRM_COMMAND);
    eval 'sub TRM_START () {0x40;}' unless defined(&TRM_START);
    eval 'sub TRM_DISCONNECTED () {0x80;}' unless defined(&TRM_DISCONNECTED);
    eval 'sub TRM_DATA_XFER () {0x100;}' unless defined(&TRM_DATA_XFER);
    eval 'sub TRM_XFERPAD () {0x200;}' unless defined(&TRM_XFERPAD);
    eval 'sub TRM_STATUS () {0x400;}' unless defined(&TRM_STATUS);
    eval 'sub TRM_COMPLETED () {0x800;}' unless defined(&TRM_COMPLETED);
    eval 'sub TRM_ABORT_SENT () {0x1000;}' unless defined(&TRM_ABORT_SENT);
    eval 'sub TRM_UNEXPECT_RESEL () {0x8000;}' unless defined(&TRM_UNEXPECT_RESEL);
    eval 'sub TRM_STATUS_GOOD () {0x;}' unless defined(&TRM_STATUS_GOOD);
    eval 'sub TRM_SELECTION_TIMED_OUT () {0x11;}' unless defined(&TRM_SELECTION_TIMED_OUT);
    eval 'sub TRM_OVER_UNDER_RUN () {0x12;}' unless defined(&TRM_OVER_UNDER_RUN);
    eval 'sub TRM_UNEXP_BUS_FREE () {0x13;}' unless defined(&TRM_UNEXP_BUS_FREE);
    eval 'sub TRM_TARGET_PHASE_F () {0x14;}' unless defined(&TRM_TARGET_PHASE_F);
    eval 'sub TRM_INVALID_CCB_OP () {0x16;}' unless defined(&TRM_INVALID_CCB_OP);
    eval 'sub TRM_LINK_CCB_BAD () {0x17;}' unless defined(&TRM_LINK_CCB_BAD);
    eval 'sub TRM_BAD_TARGET_DIR () {0x18;}' unless defined(&TRM_BAD_TARGET_DIR);
    eval 'sub TRM_DUPLICATE_CCB () {0x19;}' unless defined(&TRM_DUPLICATE_CCB);
    eval 'sub TRM_BAD_CCB_OR_SG () {0x1a;}' unless defined(&TRM_BAD_CCB_OR_SG);
    eval 'sub TRM_ABORT () {0xff;}' unless defined(&TRM_ABORT);
    eval 'sub TRM_AUTO_REQSENSE () {0x1;}' unless defined(&TRM_AUTO_REQSENSE);
    eval 'sub TRM_SCSI_TIMED_OUT () {0x2;}' unless defined(&TRM_SCSI_TIMED_OUT);
    eval 'sub TRM_PARITY_ERROR () {0x4;}' unless defined(&TRM_PARITY_ERROR);
    eval 'sub TRM_ON_GOING_SRB () {0x8;}' unless defined(&TRM_ON_GOING_SRB);
    eval 'sub TRM_ON_WAITING_SRB () {0x10;}' unless defined(&TRM_ON_WAITING_SRB);
    eval 'sub TRM_NO_TAG () {0x;}' unless defined(&TRM_NO_TAG);
    eval 'sub TRM_SCSI_UNEXP_BUS_FREE () {0xfd;}' unless defined(&TRM_SCSI_UNEXP_BUS_FREE);
    eval 'sub TRM_SCSI_BUS_RST_DETECTED () {0xfe;}' unless defined(&TRM_SCSI_BUS_RST_DETECTED);
    eval 'sub TRM_SCSI_SELECT_TIMEOUT () {0xff;}' unless defined(&TRM_SCSI_SELECT_TIMEOUT);
    eval 'sub TRM_WIDE_NEGO_ENABLE () {0x1;}' unless defined(&TRM_WIDE_NEGO_ENABLE);
    eval 'sub TRM_DOING_WIDE_NEGO () {0x2;}' unless defined(&TRM_DOING_WIDE_NEGO);
    eval 'sub TRM_WIDE_NEGO_DONE () {0x4;}' unless defined(&TRM_WIDE_NEGO_DONE);
    eval 'sub TRM_SYNC_NEGO_ENABLE () {0x8;}' unless defined(&TRM_SYNC_NEGO_ENABLE);
    eval 'sub TRM_DOING_SYNC_NEGO () {0x10;}' unless defined(&TRM_DOING_SYNC_NEGO);
    eval 'sub TRM_USE_TAG_QUEUING () {0x20;}' unless defined(&TRM_USE_TAG_QUEUING);
    eval 'sub TRM_QUEUE_FULL () {0x40;}' unless defined(&TRM_QUEUE_FULL);
    eval 'sub TRM_WIDE_NEGO_16BIT () {0x80;}' unless defined(&TRM_WIDE_NEGO_16BIT);
    eval 'sub TRM_QUIRKS_VALID () {0x100;}' unless defined(&TRM_QUIRKS_VALID);
    eval 'sub TRM_BAD_DCB () {0x200;}' unless defined(&TRM_BAD_DCB);
    eval 'sub HCC_WIDE_CARD () {0x20;}' unless defined(&HCC_WIDE_CARD);
    eval 'sub HCC_SCSI_RESET () {0x10;}' unless defined(&HCC_SCSI_RESET);
    eval 'sub HCC_PARITY () {0x8;}' unless defined(&HCC_PARITY);
    eval 'sub HCC_AUTOTERM () {0x4;}' unless defined(&HCC_AUTOTERM);
    eval 'sub HCC_LOW8TERM () {0x2;}' unless defined(&HCC_LOW8TERM);
    eval 'sub HCC_UP8TERM () {0x1;}' unless defined(&HCC_UP8TERM);
    eval 'sub RESET_DEV () {0x1;}' unless defined(&RESET_DEV);
    eval 'sub RESET_DETECT () {0x2;}' unless defined(&RESET_DETECT);
    eval 'sub RESET_DONE () {0x4;}' unless defined(&RESET_DONE);
    eval 'sub TRM_WIDE () {0x20;}' unless defined(&TRM_WIDE);
    eval 'sub TRM_TAG_QUEUING () {0x10;}' unless defined(&TRM_TAG_QUEUING);
    eval 'sub TRM_SEND_START () {0x8;}' unless defined(&TRM_SEND_START);
    eval 'sub TRM_DISCONNECT () {0x4;}' unless defined(&TRM_DISCONNECT);
    eval 'sub TRM_SYNC () {0x2;}' unless defined(&TRM_SYNC);
    eval 'sub TRM_PARITY () {0x1;}' unless defined(&TRM_PARITY);
    eval 'sub NAC_SCANLUN () {0x20;}' unless defined(&NAC_SCANLUN);
    eval 'sub NAC_POWERON_SCSI_RESET () {0x4;}' unless defined(&NAC_POWERON_SCSI_RESET);
    eval 'sub NAC_GREATER_1G () {0x2;}' unless defined(&NAC_GREATER_1G);
    eval 'sub NAC_GT2DRIVES () {0x1;}' unless defined(&NAC_GT2DRIVES);
    eval 'sub TRM_S1040_ID () {0x;}' unless defined(&TRM_S1040_ID);
    eval 'sub TRM_S1040_COMMAND () {0x4;}' unless defined(&TRM_S1040_COMMAND);
    eval 'sub TRM_S1040_IOBASE () {0x10;}' unless defined(&TRM_S1040_IOBASE);
    eval 'sub TRM_S1040_ROMBASE () {0x30;}' unless defined(&TRM_S1040_ROMBASE);
    eval 'sub TRM_S1040_INTLINE () {0x3c;}' unless defined(&TRM_S1040_INTLINE);
    eval 'sub TRM_S1040_SCSI_STATUS () {0x80;}' unless defined(&TRM_S1040_SCSI_STATUS);
    eval 'sub COMMANDPHASEDONE () {0x2000;}' unless defined(&COMMANDPHASEDONE);
    eval 'sub SCSIXFERDONE () {0x800;}' unless defined(&SCSIXFERDONE);
    eval 'sub SCSIXFERCNT_2_ZERO () {0x100;}' unless defined(&SCSIXFERCNT_2_ZERO);
    eval 'sub SCSIINTERRUPT () {0x80;}' unless defined(&SCSIINTERRUPT);
    eval 'sub COMMANDABORT () {0x40;}' unless defined(&COMMANDABORT);
    eval 'sub SEQUENCERACTIVE () {0x20;}' unless defined(&SEQUENCERACTIVE);
    eval 'sub PHASEMISMATCH () {0x10;}' unless defined(&PHASEMISMATCH);
    eval 'sub PARITYERROR () {0x8;}' unless defined(&PARITYERROR);
    eval 'sub PHASEMASK () {0x7;}' unless defined(&PHASEMASK);
    eval 'sub PH_DATA_OUT () {0x;}' unless defined(&PH_DATA_OUT);
    eval 'sub PH_DATA_IN () {0x1;}' unless defined(&PH_DATA_IN);
    eval 'sub PH_COMMAND () {0x2;}' unless defined(&PH_COMMAND);
    eval 'sub PH_STATUS () {0x3;}' unless defined(&PH_STATUS);
    eval 'sub PH_BUS_FREE () {0x5;}' unless defined(&PH_BUS_FREE);
    eval 'sub PH_MSG_OUT () {0x6;}' unless defined(&PH_MSG_OUT);
    eval 'sub PH_MSG_IN () {0x7;}' unless defined(&PH_MSG_IN);
    eval 'sub TRM_S1040_SCSI_CONTROL () {0x80;}' unless defined(&TRM_S1040_SCSI_CONTROL);
    eval 'sub DO_CLRATN () {0x400;}' unless defined(&DO_CLRATN);
    eval 'sub DO_SETATN () {0x200;}' unless defined(&DO_SETATN);
    eval 'sub DO_CMDABORT () {0x100;}' unless defined(&DO_CMDABORT);
    eval 'sub DO_RSTMODULE () {0x10;}' unless defined(&DO_RSTMODULE);
    eval 'sub DO_RSTSCSI () {0x8;}' unless defined(&DO_RSTSCSI);
    eval 'sub DO_CLRFIFO () {0x4;}' unless defined(&DO_CLRFIFO);
    eval 'sub DO_DATALATCH () {0x2;}' unless defined(&DO_DATALATCH);
    eval 'sub DO_HWRESELECT () {0x1;}' unless defined(&DO_HWRESELECT);
    eval 'sub TRM_S1040_SCSI_FIFOCNT () {0x82;}' unless defined(&TRM_S1040_SCSI_FIFOCNT);
    eval 'sub TRM_S1040_SCSI_SIGNAL () {0x83;}' unless defined(&TRM_S1040_SCSI_SIGNAL);
    eval 'sub TRM_S1040_SCSI_INTSTATUS () {0x84;}' unless defined(&TRM_S1040_SCSI_INTSTATUS);
    eval 'sub INT_SCAM () {0x80;}' unless defined(&INT_SCAM);
    eval 'sub INT_SELECT () {0x40;}' unless defined(&INT_SELECT);
    eval 'sub INT_SELTIMEOUT () {0x20;}' unless defined(&INT_SELTIMEOUT);
    eval 'sub INT_DISCONNECT () {0x10;}' unless defined(&INT_DISCONNECT);
    eval 'sub INT_RESELECTED () {0x8;}' unless defined(&INT_RESELECTED);
    eval 'sub INT_SCSIRESET () {0x4;}' unless defined(&INT_SCSIRESET);
    eval 'sub INT_BUSSERVICE () {0x2;}' unless defined(&INT_BUSSERVICE);
    eval 'sub INT_CMDDONE () {0x1;}' unless defined(&INT_CMDDONE);
    eval 'sub TRM_S1040_SCSI_OFFSET () {0x84;}' unless defined(&TRM_S1040_SCSI_OFFSET);
    eval 'sub TRM_S1040_SCSI_SYNC () {0x85;}' unless defined(&TRM_S1040_SCSI_SYNC);
    eval 'sub LVDS_SYNC () {0x20;}' unless defined(&LVDS_SYNC);
    eval 'sub WIDE_SYNC () {0x10;}' unless defined(&WIDE_SYNC);
    eval 'sub ALT_SYNC () {0x8;}' unless defined(&ALT_SYNC);
    eval 'sub TRM_S1040_SCSI_TARGETID () {0x86;}' unless defined(&TRM_S1040_SCSI_TARGETID);
    eval 'sub TRM_S1040_SCSI_IDMSG () {0x87;}' unless defined(&TRM_S1040_SCSI_IDMSG);
    eval 'sub TRM_S1040_SCSI_HOSTID () {0x87;}' unless defined(&TRM_S1040_SCSI_HOSTID);
    eval 'sub TRM_S1040_SCSI_COUNTER () {0x88;}' unless defined(&TRM_S1040_SCSI_COUNTER);
    eval 'sub TRM_S1040_SCSI_INTEN () {0x8c;}' unless defined(&TRM_S1040_SCSI_INTEN);
    eval 'sub EN_SCAM () {0x80;}' unless defined(&EN_SCAM);
    eval 'sub EN_SELECT () {0x40;}' unless defined(&EN_SELECT);
    eval 'sub EN_SELTIMEOUT () {0x20;}' unless defined(&EN_SELTIMEOUT);
    eval 'sub EN_DISCONNECT () {0x10;}' unless defined(&EN_DISCONNECT);
    eval 'sub EN_RESELECTED () {0x8;}' unless defined(&EN_RESELECTED);
    eval 'sub EN_SCSIRESET () {0x4;}' unless defined(&EN_SCSIRESET);
    eval 'sub EN_BUSSERVICE () {0x2;}' unless defined(&EN_BUSSERVICE);
    eval 'sub EN_CMDDONE () {0x1;}' unless defined(&EN_CMDDONE);
    eval 'sub TRM_S1040_SCSI_CONFIG0 () {0x8d;}' unless defined(&TRM_S1040_SCSI_CONFIG0);
    eval 'sub PHASELATCH () {0x40;}' unless defined(&PHASELATCH);
    eval 'sub INITIATOR () {0x20;}' unless defined(&INITIATOR);
    eval 'sub PARITYCHECK () {0x10;}' unless defined(&PARITYCHECK);
    eval 'sub BLOCKRST () {0x1;}' unless defined(&BLOCKRST);
    eval 'sub TRM_S1040_SCSI_CONFIG1 () {0x8e;}' unless defined(&TRM_S1040_SCSI_CONFIG1);
    eval 'sub ACTIVE_NEGPLUS () {0x10;}' unless defined(&ACTIVE_NEGPLUS);
    eval 'sub FILTER_DISABLE () {0x8;}' unless defined(&FILTER_DISABLE);
    eval 'sub ACTIVE_NEG () {0x2;}' unless defined(&ACTIVE_NEG);
    eval 'sub TRM_S1040_SCSI_CONFIG2 () {0x8f;}' unless defined(&TRM_S1040_SCSI_CONFIG2);
    eval 'sub TRM_S1040_SCSI_COMMAND () {0x90;}' unless defined(&TRM_S1040_SCSI_COMMAND);
    eval 'sub SCMD_COMP () {0x12;}' unless defined(&SCMD_COMP);
    eval 'sub SCMD_SEL_ATN () {0x60;}' unless defined(&SCMD_SEL_ATN);
    eval 'sub SCMD_SEL_ATN3 () {0x64;}' unless defined(&SCMD_SEL_ATN3);
    eval 'sub SCMD_SEL_ATNSTOP () {0xb8;}' unless defined(&SCMD_SEL_ATNSTOP);
    eval 'sub SCMD_FIFO_OUT () {0xc0;}' unless defined(&SCMD_FIFO_OUT);
    eval 'sub SCMD_DMA_OUT () {0xc1;}' unless defined(&SCMD_DMA_OUT);
    eval 'sub SCMD_FIFO_IN () {0xc2;}' unless defined(&SCMD_FIFO_IN);
    eval 'sub SCMD_DMA_IN () {0xc3;}' unless defined(&SCMD_DMA_IN);
    eval 'sub SCMD_MSGACCEPT () {0xd8;}' unless defined(&SCMD_MSGACCEPT);
    eval 'sub TRM_S1040_SCSI_TIMEOUT () {0x91;}' unless defined(&TRM_S1040_SCSI_TIMEOUT);
    eval 'sub TRM_S1040_SCSI_FIFO () {0x98;}' unless defined(&TRM_S1040_SCSI_FIFO);
    eval 'sub TRM_S1040_SCSI_TCR0 () {0x9c;}' unless defined(&TRM_S1040_SCSI_TCR0);
    eval 'sub TCR0_WIDE_NEGO_DONE () {0x8000;}' unless defined(&TCR0_WIDE_NEGO_DONE);
    eval 'sub TCR0_SYNC_NEGO_DONE () {0x4000;}' unless defined(&TCR0_SYNC_NEGO_DONE);
    eval 'sub TCR0_ENABLE_LVDS () {0x2000;}' unless defined(&TCR0_ENABLE_LVDS);
    eval 'sub TCR0_ENABLE_WIDE () {0x1000;}' unless defined(&TCR0_ENABLE_WIDE);
    eval 'sub TCR0_ENABLE_ALT () {0x800;}' unless defined(&TCR0_ENABLE_ALT);
    eval 'sub TCR0_PERIOD_MASK () {0x700;}' unless defined(&TCR0_PERIOD_MASK);
    eval 'sub TCR0_DO_WIDE_NEGO () {0x80;}' unless defined(&TCR0_DO_WIDE_NEGO);
    eval 'sub TCR0_DO_SYNC_NEGO () {0x40;}' unless defined(&TCR0_DO_SYNC_NEGO);
    eval 'sub TCR0_DISCONNECT_EN () {0x20;}' unless defined(&TCR0_DISCONNECT_EN);
    eval 'sub TCR0_OFFSET_MASK () {0x1f;}' unless defined(&TCR0_OFFSET_MASK);
    eval 'sub TRM_S1040_SCSI_TCR1 () {0x9e;}' unless defined(&TRM_S1040_SCSI_TCR1);
    eval 'sub MAXTAG_MASK () {0x7f00;}' unless defined(&MAXTAG_MASK);
    eval 'sub NON_TAG_BUSY () {0x80;}' unless defined(&NON_TAG_BUSY);
    eval 'sub ACTTAG_MASK () {0x7f;}' unless defined(&ACTTAG_MASK);
    eval 'sub TRM_S1040_DMA_COMMAND () {0xa0;}' unless defined(&TRM_S1040_DMA_COMMAND);
    eval 'sub XFERDATAIN () {0x103;}' unless defined(&XFERDATAIN);
    eval 'sub XFERDATAOUT () {0x102;}' unless defined(&XFERDATAOUT);
    eval 'sub TRM_S1040_DMA_FIFOCNT () {0xa1;}' unless defined(&TRM_S1040_DMA_FIFOCNT);
    eval 'sub TRM_S1040_DMA_CONTROL () {0xa1;}' unless defined(&TRM_S1040_DMA_CONTROL);
    eval 'sub STOPDMAXFER () {0x8;}' unless defined(&STOPDMAXFER);
    eval 'sub ABORTXFER () {0x4;}' unless defined(&ABORTXFER);
    eval 'sub CLRXFIFO () {0x2;}' unless defined(&CLRXFIFO);
    eval 'sub STARTDMAXFER () {0x1;}' unless defined(&STARTDMAXFER);
    eval 'sub TRM_S1040_DMA_STATUS () {0xa3;}' unless defined(&TRM_S1040_DMA_STATUS);
    eval 'sub XFERPENDING () {0x80;}' unless defined(&XFERPENDING);
    eval 'sub DMAXFERCOMP () {0x2;}' unless defined(&DMAXFERCOMP);
    eval 'sub SCSICOMP () {0x1;}' unless defined(&SCSICOMP);
    eval 'sub TRM_S1040_DMA_INTEN () {0xa4;}' unless defined(&TRM_S1040_DMA_INTEN);
    eval 'sub EN_SCSIINTR () {0x1;}' unless defined(&EN_SCSIINTR);
    eval 'sub TRM_S1040_DMA_CONFIG () {0xa6;}' unless defined(&TRM_S1040_DMA_CONFIG);
    eval 'sub DMA_ENHANCE () {0x8000;}' unless defined(&DMA_ENHANCE);
    eval 'sub TRM_S1040_DMA_XCNT () {0xa8;}' unless defined(&TRM_S1040_DMA_XCNT);
    eval 'sub TRM_S1040_DMA_CXCNT () {0xac;}' unless defined(&TRM_S1040_DMA_CXCNT);
    eval 'sub TRM_S1040_DMA_XLOWADDR () {0xb0;}' unless defined(&TRM_S1040_DMA_XLOWADDR);
    eval 'sub TRM_S1040_DMA_XHIGHADDR () {0xb4;}' unless defined(&TRM_S1040_DMA_XHIGHADDR);
    eval 'sub TRM_S1040_GEN_CONTROL () {0xd4;}' unless defined(&TRM_S1040_GEN_CONTROL);
    eval 'sub EN_EEPROM () {0x10;}' unless defined(&EN_EEPROM);
    eval 'sub AUTOTERM () {0x4;}' unless defined(&AUTOTERM);
    eval 'sub LOW8TERM () {0x2;}' unless defined(&LOW8TERM);
    eval 'sub UP8TERM () {0x1;}' unless defined(&UP8TERM);
    eval 'sub TRM_S1040_GEN_STATUS () {0xd5;}' unless defined(&TRM_S1040_GEN_STATUS);
    eval 'sub GTIMEOUT () {0x80;}' unless defined(&GTIMEOUT);
    eval 'sub CON5068 () {0x10;}' unless defined(&CON5068);
    eval 'sub CON68 () {0x8;}' unless defined(&CON68);
    eval 'sub CON50 () {0x4;}' unless defined(&CON50);
    eval 'sub WIDESCSI () {0x2;}' unless defined(&WIDESCSI);
    eval 'sub TRM_S1040_GEN_NVRAM () {0xd6;}' unless defined(&TRM_S1040_GEN_NVRAM);
    eval 'sub NVR_BITOUT () {0x8;}' unless defined(&NVR_BITOUT);
    eval 'sub NVR_BITIN () {0x4;}' unless defined(&NVR_BITIN);
    eval 'sub NVR_CLOCK () {0x2;}' unless defined(&NVR_CLOCK);
    eval 'sub NVR_SELECT () {0x1;}' unless defined(&NVR_SELECT);
    eval 'sub TRM_S1040_GEN_EDATA () {0xd7;}' unless defined(&TRM_S1040_GEN_EDATA);
    eval 'sub TRM_S1040_GEN_EADDRESS () {0xd8;}' unless defined(&TRM_S1040_GEN_EADDRESS);
    eval 'sub TRM_S1040_GEN_TIMER () {0xdb;}' unless defined(&TRM_S1040_GEN_TIMER);
}
1;
