require '_h2ph_pre.ph';

no warnings 'redefine';

unless(defined(&_SAFE_SAFEREG_H_)) {
    eval 'sub _SAFE_SAFEREG_H_ () {1;}' unless defined(&_SAFE_SAFEREG_H_);
    eval 'sub SAFE_BAR () {0x10;}' unless defined(&SAFE_BAR);
    eval 'sub PCI_VENDOR_SAFENET () {0x16ae;}' unless defined(&PCI_VENDOR_SAFENET);
    eval 'sub PCI_PRODUCT_SAFEXCEL () {0x1141;}' unless defined(&PCI_PRODUCT_SAFEXCEL);
    eval 'sub SAFE_PE_CSR () {0x;}' unless defined(&SAFE_PE_CSR);
    eval 'sub SAFE_PE_SRC () {0x4;}' unless defined(&SAFE_PE_SRC);
    eval 'sub SAFE_PE_DST () {0x8;}' unless defined(&SAFE_PE_DST);
    eval 'sub SAFE_PE_SA () {0xc;}' unless defined(&SAFE_PE_SA);
    eval 'sub SAFE_PE_LEN () {0x10;}' unless defined(&SAFE_PE_LEN);
    eval 'sub SAFE_PE_DMACFG () {0x40;}' unless defined(&SAFE_PE_DMACFG);
    eval 'sub SAFE_PE_DMASTAT () {0x44;}' unless defined(&SAFE_PE_DMASTAT);
    eval 'sub SAFE_PE_PDRBASE () {0x48;}' unless defined(&SAFE_PE_PDRBASE);
    eval 'sub SAFE_PE_RDRBASE () {0x4c;}' unless defined(&SAFE_PE_RDRBASE);
    eval 'sub SAFE_PE_RINGCFG () {0x50;}' unless defined(&SAFE_PE_RINGCFG);
    eval 'sub SAFE_PE_RINGPOLL () {0x54;}' unless defined(&SAFE_PE_RINGPOLL);
    eval 'sub SAFE_PE_IRNGSTAT () {0x58;}' unless defined(&SAFE_PE_IRNGSTAT);
    eval 'sub SAFE_PE_ERNGSTAT () {0x5c;}' unless defined(&SAFE_PE_ERNGSTAT);
    eval 'sub SAFE_PE_IOTHRESH () {0x60;}' unless defined(&SAFE_PE_IOTHRESH);
    eval 'sub SAFE_PE_GRNGBASE () {0x64;}' unless defined(&SAFE_PE_GRNGBASE);
    eval 'sub SAFE_PE_SRNGBASE () {0x68;}' unless defined(&SAFE_PE_SRNGBASE);
    eval 'sub SAFE_PE_PARTSIZE () {0x6c;}' unless defined(&SAFE_PE_PARTSIZE);
    eval 'sub SAFE_PE_PARTCFG () {0x70;}' unless defined(&SAFE_PE_PARTCFG);
    eval 'sub SAFE_CRYPTO_CTRL () {0x80;}' unless defined(&SAFE_CRYPTO_CTRL);
    eval 'sub SAFE_DEVID () {0x84;}' unless defined(&SAFE_DEVID);
    eval 'sub SAFE_DEVINFO () {0x88;}' unless defined(&SAFE_DEVINFO);
    eval 'sub SAFE_HU_STAT () {0xa0;}' unless defined(&SAFE_HU_STAT);
    eval 'sub SAFE_HM_STAT () {0xa4;}' unless defined(&SAFE_HM_STAT);
    eval 'sub SAFE_HI_CLR () {0xa4;}' unless defined(&SAFE_HI_CLR);
    eval 'sub SAFE_HI_MASK () {0xa8;}' unless defined(&SAFE_HI_MASK);
    eval 'sub SAFE_HI_CFG () {0xac;}' unless defined(&SAFE_HI_CFG);
    eval 'sub SAFE_HI_RD_DESCR () {0xb4;}' unless defined(&SAFE_HI_RD_DESCR);
    eval 'sub SAFE_HI_DESC_CNT () {0xb8;}' unless defined(&SAFE_HI_DESC_CNT);
    eval 'sub SAFE_DMA_ENDIAN () {0xc0;}' unless defined(&SAFE_DMA_ENDIAN);
    eval 'sub SAFE_DMA_SRCADDR () {0xc4;}' unless defined(&SAFE_DMA_SRCADDR);
    eval 'sub SAFE_DMA_DSTADDR () {0xc8;}' unless defined(&SAFE_DMA_DSTADDR);
    eval 'sub SAFE_DMA_STAT () {0xcc;}' unless defined(&SAFE_DMA_STAT);
    eval 'sub SAFE_DMA_CFG () {0xd4;}' unless defined(&SAFE_DMA_CFG);
    eval 'sub SAFE_ENDIAN () {0xe0;}' unless defined(&SAFE_ENDIAN);
    eval 'sub SAFE_RNG_OUT () {0x100;}' unless defined(&SAFE_RNG_OUT);
    eval 'sub SAFE_RNG_STAT () {0x104;}' unless defined(&SAFE_RNG_STAT);
    eval 'sub SAFE_RNG_CTRL () {0x108;}' unless defined(&SAFE_RNG_CTRL);
    eval 'sub SAFE_RNG_A () {0x10c;}' unless defined(&SAFE_RNG_A);
    eval 'sub SAFE_RNG_B () {0x110;}' unless defined(&SAFE_RNG_B);
    eval 'sub SAFE_RNG_X_LO () {0x114;}' unless defined(&SAFE_RNG_X_LO);
    eval 'sub SAFE_RNG_X_MID () {0x118;}' unless defined(&SAFE_RNG_X_MID);
    eval 'sub SAFE_RNG_X_HI () {0x11c;}' unless defined(&SAFE_RNG_X_HI);
    eval 'sub SAFE_RNG_X_CNTR () {0x120;}' unless defined(&SAFE_RNG_X_CNTR);
    eval 'sub SAFE_RNG_ALM_CNT () {0x124;}' unless defined(&SAFE_RNG_ALM_CNT);
    eval 'sub SAFE_RNG_CNFG () {0x128;}' unless defined(&SAFE_RNG_CNFG);
    eval 'sub SAFE_RNG_LFSR1_LO () {0x12c;}' unless defined(&SAFE_RNG_LFSR1_LO);
    eval 'sub SAFE_RNG_LFSR1_HI () {0x130;}' unless defined(&SAFE_RNG_LFSR1_HI);
    eval 'sub SAFE_RNG_LFSR2_LO () {0x134;}' unless defined(&SAFE_RNG_LFSR2_LO);
    eval 'sub SAFE_RNG_LFSR2_HI () {0x138;}' unless defined(&SAFE_RNG_LFSR2_HI);
    eval 'sub SAFE_PK_A_ADDR () {0x800;}' unless defined(&SAFE_PK_A_ADDR);
    eval 'sub SAFE_PK_B_ADDR () {0x804;}' unless defined(&SAFE_PK_B_ADDR);
    eval 'sub SAFE_PK_C_ADDR () {0x808;}' unless defined(&SAFE_PK_C_ADDR);
    eval 'sub SAFE_PK_D_ADDR () {0x80c;}' unless defined(&SAFE_PK_D_ADDR);
    eval 'sub SAFE_PK_A_LEN () {0x810;}' unless defined(&SAFE_PK_A_LEN);
    eval 'sub SAFE_PK_B_LEN () {0x814;}' unless defined(&SAFE_PK_B_LEN);
    eval 'sub SAFE_PK_SHIFT () {0x818;}' unless defined(&SAFE_PK_SHIFT);
    eval 'sub SAFE_PK_FUNC () {0x81c;}' unless defined(&SAFE_PK_FUNC);
    eval 'sub SAFE_PK_RAM_START () {0x1000;}' unless defined(&SAFE_PK_RAM_START);
    eval 'sub SAFE_PK_RAM_END () {0x1fff;}' unless defined(&SAFE_PK_RAM_END);
    eval 'sub SAFE_PE_CSR_READY () {0x1;}' unless defined(&SAFE_PE_CSR_READY);
    eval 'sub SAFE_PE_CSR_DONE () {0x2;}' unless defined(&SAFE_PE_CSR_DONE);
    eval 'sub SAFE_PE_CSR_LOADSA () {0x4;}' unless defined(&SAFE_PE_CSR_LOADSA);
    eval 'sub SAFE_PE_CSR_HASHFINAL () {0x10;}' unless defined(&SAFE_PE_CSR_HASHFINAL);
    eval 'sub SAFE_PE_CSR_SABUSID () {0xc0;}' unless defined(&SAFE_PE_CSR_SABUSID);
    eval 'sub SAFE_PE_CSR_SAPCI () {0x40;}' unless defined(&SAFE_PE_CSR_SAPCI);
    eval 'sub SAFE_PE_CSR_NXTHDR () {0xff00;}' unless defined(&SAFE_PE_CSR_NXTHDR);
    eval 'sub SAFE_PE_CSR_FPAD () {0xff00;}' unless defined(&SAFE_PE_CSR_FPAD);
    eval 'sub SAFE_PE_CSR_STATUS () {0xff0000;}' unless defined(&SAFE_PE_CSR_STATUS);
    eval 'sub SAFE_PE_CSR_AUTH_FAIL () {0x10000;}' unless defined(&SAFE_PE_CSR_AUTH_FAIL);
    eval 'sub SAFE_PE_CSR_PAD_FAIL () {0x20000;}' unless defined(&SAFE_PE_CSR_PAD_FAIL);
    eval 'sub SAFE_PE_CSR_SEQ_FAIL () {0x40000;}' unless defined(&SAFE_PE_CSR_SEQ_FAIL);
    eval 'sub SAFE_PE_CSR_XERROR () {0x80000;}' unless defined(&SAFE_PE_CSR_XERROR);
    eval 'sub SAFE_PE_CSR_XECODE () {0xf00000;}' unless defined(&SAFE_PE_CSR_XECODE);
    eval 'sub SAFE_PE_CSR_XECODE_S () {20;}' unless defined(&SAFE_PE_CSR_XECODE_S);
    eval 'sub SAFE_PE_CSR_XECODE_BADCMD () {0;}' unless defined(&SAFE_PE_CSR_XECODE_BADCMD);
    eval 'sub SAFE_PE_CSR_XECODE_BADALG () {1;}' unless defined(&SAFE_PE_CSR_XECODE_BADALG);
    eval 'sub SAFE_PE_CSR_XECODE_ALGDIS () {2;}' unless defined(&SAFE_PE_CSR_XECODE_ALGDIS);
    eval 'sub SAFE_PE_CSR_XECODE_ZEROLEN () {3;}' unless defined(&SAFE_PE_CSR_XECODE_ZEROLEN);
    eval 'sub SAFE_PE_CSR_XECODE_DMAERR () {4;}' unless defined(&SAFE_PE_CSR_XECODE_DMAERR);
    eval 'sub SAFE_PE_CSR_XECODE_PIPEABORT () {5;}' unless defined(&SAFE_PE_CSR_XECODE_PIPEABORT);
    eval 'sub SAFE_PE_CSR_XECODE_BADSPI () {6;}' unless defined(&SAFE_PE_CSR_XECODE_BADSPI);
    eval 'sub SAFE_PE_CSR_XECODE_TIMEOUT () {10;}' unless defined(&SAFE_PE_CSR_XECODE_TIMEOUT);
    eval 'sub SAFE_PE_CSR_PAD () {0xff000000;}' unless defined(&SAFE_PE_CSR_PAD);
    eval 'sub SAFE_PE_CSR_PAD_MIN () {0x;}' unless defined(&SAFE_PE_CSR_PAD_MIN);
    eval 'sub SAFE_PE_CSR_PAD_16 () {0x8000000;}' unless defined(&SAFE_PE_CSR_PAD_16);
    eval 'sub SAFE_PE_CSR_PAD_32 () {0x10000000;}' unless defined(&SAFE_PE_CSR_PAD_32);
    eval 'sub SAFE_PE_CSR_PAD_64 () {0x20000000;}' unless defined(&SAFE_PE_CSR_PAD_64);
    eval 'sub SAFE_PE_CSR_PAD_128 () {0x40000000;}' unless defined(&SAFE_PE_CSR_PAD_128);
    eval 'sub SAFE_PE_CSR_PAD_256 () {0x80000000;}' unless defined(&SAFE_PE_CSR_PAD_256);
    eval 'sub SAFE_PE_CSR_IS_DONE {
        my($_csr) = @_;
	    eval q(((($_csr) & ( &SAFE_PE_CSR_READY |  &SAFE_PE_CSR_DONE)) ==  &SAFE_PE_CSR_DONE));
    }' unless defined(&SAFE_PE_CSR_IS_DONE);
    eval 'sub SAFE_PE_LEN_LENGTH () {0xfffff;}' unless defined(&SAFE_PE_LEN_LENGTH);
    eval 'sub SAFE_PE_LEN_READY () {0x400000;}' unless defined(&SAFE_PE_LEN_READY);
    eval 'sub SAFE_PE_LEN_DONE () {0x800000;}' unless defined(&SAFE_PE_LEN_DONE);
    eval 'sub SAFE_PE_LEN_BYPASS () {0xff000000;}' unless defined(&SAFE_PE_LEN_BYPASS);
    eval 'sub SAFE_PE_LEN_BYPASS_S () {24;}' unless defined(&SAFE_PE_LEN_BYPASS_S);
    eval 'sub SAFE_PE_LEN_IS_DONE {
        my($_len) = @_;
	    eval q(((($_len) & ( &SAFE_PE_LEN_READY |  &SAFE_PE_LEN_DONE)) ==  &SAFE_PE_LEN_DONE));
    }' unless defined(&SAFE_PE_LEN_IS_DONE);
    eval 'sub SAFE_INT_PE_CDONE () {0x2;}' unless defined(&SAFE_INT_PE_CDONE);
    eval 'sub SAFE_INT_PE_DDONE () {0x8;}' unless defined(&SAFE_INT_PE_DDONE);
    eval 'sub SAFE_INT_PE_ERROR () {0x10;}' unless defined(&SAFE_INT_PE_ERROR);
    eval 'sub SAFE_INT_PE_ODONE () {0x20;}' unless defined(&SAFE_INT_PE_ODONE);
    eval 'sub SAFE_HI_CFG_PULSE () {0x1;}' unless defined(&SAFE_HI_CFG_PULSE);
    eval 'sub SAFE_HI_CFG_LEVEL () {0x;}' unless defined(&SAFE_HI_CFG_LEVEL);
    eval 'sub SAFE_HI_CFG_AUTOCLR () {0x2;}' unless defined(&SAFE_HI_CFG_AUTOCLR);
    eval 'sub SAFE_ENDIAN_TGT_PASS () {0xe40000;}' unless defined(&SAFE_ENDIAN_TGT_PASS);
    eval 'sub SAFE_ENDIAN_TGT_SWAB () {0x1b0000;}' unless defined(&SAFE_ENDIAN_TGT_SWAB);
    eval 'sub SAFE_ENDIAN_DMA_PASS () {0xe4;}' unless defined(&SAFE_ENDIAN_DMA_PASS);
    eval 'sub SAFE_ENDIAN_DMA_SWAB () {0x1b;}' unless defined(&SAFE_ENDIAN_DMA_SWAB);
    eval 'sub SAFE_PE_DMACFG_PERESET () {0x1;}' unless defined(&SAFE_PE_DMACFG_PERESET);
    eval 'sub SAFE_PE_DMACFG_PDRRESET () {0x2;}' unless defined(&SAFE_PE_DMACFG_PDRRESET);
    eval 'sub SAFE_PE_DMACFG_SGRESET () {0x4;}' unless defined(&SAFE_PE_DMACFG_SGRESET);
    eval 'sub SAFE_PE_DMACFG_FSENA () {0x8;}' unless defined(&SAFE_PE_DMACFG_FSENA);
    eval 'sub SAFE_PE_DMACFG_PEMODE () {0x100;}' unless defined(&SAFE_PE_DMACFG_PEMODE);
    eval 'sub SAFE_PE_DMACFG_SAPREC () {0x200;}' unless defined(&SAFE_PE_DMACFG_SAPREC);
    eval 'sub SAFE_PE_DMACFG_PKFOLL () {0x400;}' unless defined(&SAFE_PE_DMACFG_PKFOLL);
    eval 'sub SAFE_PE_DMACFG_GPRBID () {0x3000;}' unless defined(&SAFE_PE_DMACFG_GPRBID);
    eval 'sub SAFE_PE_DMACFG_GPRPCI () {0x1000;}' unless defined(&SAFE_PE_DMACFG_GPRPCI);
    eval 'sub SAFE_PE_DMACFG_SPRBID () {0xc000;}' unless defined(&SAFE_PE_DMACFG_SPRBID);
    eval 'sub SAFE_PE_DMACFG_SPRPCI () {0x4000;}' unless defined(&SAFE_PE_DMACFG_SPRPCI);
    eval 'sub SAFE_PE_DMACFG_ESDESC () {0x10000;}' unless defined(&SAFE_PE_DMACFG_ESDESC);
    eval 'sub SAFE_PE_DMACFG_ESSA () {0x20000;}' unless defined(&SAFE_PE_DMACFG_ESSA);
    eval 'sub SAFE_PE_DMACFG_ESPACKET () {0x40000;}' unless defined(&SAFE_PE_DMACFG_ESPACKET);
    eval 'sub SAFE_PE_DMACFG_ESPDESC () {0x80000;}' unless defined(&SAFE_PE_DMACFG_ESPDESC);
    eval 'sub SAFE_PE_DMACFG_NOPDRUP () {0x100000;}' unless defined(&SAFE_PE_DMACFG_NOPDRUP);
    eval 'sub SAFE_PD_EDMACFG_PCIMODE () {0x1000000;}' unless defined(&SAFE_PD_EDMACFG_PCIMODE);
    eval 'sub SAFE_PE_DMASTAT_PEIDONE () {0x1;}' unless defined(&SAFE_PE_DMASTAT_PEIDONE);
    eval 'sub SAFE_PE_DMASTAT_PEODONE () {0x2;}' unless defined(&SAFE_PE_DMASTAT_PEODONE);
    eval 'sub SAFE_PE_DMASTAT_ENCDONE () {0x4;}' unless defined(&SAFE_PE_DMASTAT_ENCDONE);
    eval 'sub SAFE_PE_DMASTAT_IHDONE () {0x8;}' unless defined(&SAFE_PE_DMASTAT_IHDONE);
    eval 'sub SAFE_PE_DMASTAT_OHDONE () {0x10;}' unless defined(&SAFE_PE_DMASTAT_OHDONE);
    eval 'sub SAFE_PE_DMASTAT_PADFLT () {0x20;}' unless defined(&SAFE_PE_DMASTAT_PADFLT);
    eval 'sub SAFE_PE_DMASTAT_ICVFLT () {0x40;}' unless defined(&SAFE_PE_DMASTAT_ICVFLT);
    eval 'sub SAFE_PE_DMASTAT_SPIMIS () {0x80;}' unless defined(&SAFE_PE_DMASTAT_SPIMIS);
    eval 'sub SAFE_PE_DMASTAT_CRYPTO () {0x100;}' unless defined(&SAFE_PE_DMASTAT_CRYPTO);
    eval 'sub SAFE_PE_DMASTAT_CQACT () {0x200;}' unless defined(&SAFE_PE_DMASTAT_CQACT);
    eval 'sub SAFE_PE_DMASTAT_IRACT () {0x400;}' unless defined(&SAFE_PE_DMASTAT_IRACT);
    eval 'sub SAFE_PE_DMASTAT_ORACT () {0x800;}' unless defined(&SAFE_PE_DMASTAT_ORACT);
    eval 'sub SAFE_PE_DMASTAT_PEISIZE () {0x3ff000;}' unless defined(&SAFE_PE_DMASTAT_PEISIZE);
    eval 'sub SAFE_PE_DMASTAT_PEOSIZE () {0xffc00000;}' unless defined(&SAFE_PE_DMASTAT_PEOSIZE);
    eval 'sub SAFE_PE_RINGCFG_SIZE () {0x3ff;}' unless defined(&SAFE_PE_RINGCFG_SIZE);
    eval 'sub SAFE_PE_RINGCFG_OFFSET () {0xffff0000;}' unless defined(&SAFE_PE_RINGCFG_OFFSET);
    eval 'sub SAFE_PE_RINGCFG_OFFSET_S () {16;}' unless defined(&SAFE_PE_RINGCFG_OFFSET_S);
    eval 'sub SAFE_PE_RINGPOLL_POLL () {0xfff;}' unless defined(&SAFE_PE_RINGPOLL_POLL);
    eval 'sub SAFE_PE_RINGPOLL_RETRY () {0x3ff0000;}' unless defined(&SAFE_PE_RINGPOLL_RETRY);
    eval 'sub SAFE_PE_RINGPOLL_CONT () {0x80000000;}' unless defined(&SAFE_PE_RINGPOLL_CONT);
    eval 'sub SAFE_PE_IRNGSTAT_CQAVAIL () {0x1;}' unless defined(&SAFE_PE_IRNGSTAT_CQAVAIL);
    eval 'sub SAFE_PE_ERNGSTAT_NEXT () {0x3ff0000;}' unless defined(&SAFE_PE_ERNGSTAT_NEXT);
    eval 'sub SAFE_PE_ERNGSTAT_NEXT_S () {16;}' unless defined(&SAFE_PE_ERNGSTAT_NEXT_S);
    eval 'sub SAFE_PE_IOTHRESH_INPUT () {0x3ff;}' unless defined(&SAFE_PE_IOTHRESH_INPUT);
    eval 'sub SAFE_PE_IOTHRESH_OUTPUT () {0x3ff0000;}' unless defined(&SAFE_PE_IOTHRESH_OUTPUT);
    eval 'sub SAFE_PE_PARTCFG_SIZE () {0xffff;}' unless defined(&SAFE_PE_PARTCFG_SIZE);
    eval 'sub SAFE_PE_PARTCFG_GBURST () {0x30000;}' unless defined(&SAFE_PE_PARTCFG_GBURST);
    eval 'sub SAFE_PE_PARTCFG_GBURST_2 () {0x;}' unless defined(&SAFE_PE_PARTCFG_GBURST_2);
    eval 'sub SAFE_PE_PARTCFG_GBURST_4 () {0x10000;}' unless defined(&SAFE_PE_PARTCFG_GBURST_4);
    eval 'sub SAFE_PE_PARTCFG_GBURST_8 () {0x20000;}' unless defined(&SAFE_PE_PARTCFG_GBURST_8);
    eval 'sub SAFE_PE_PARTCFG_GBURST_16 () {0x30000;}' unless defined(&SAFE_PE_PARTCFG_GBURST_16);
    eval 'sub SAFE_PE_PARTCFG_SBURST () {0xc0000;}' unless defined(&SAFE_PE_PARTCFG_SBURST);
    eval 'sub SAFE_PE_PARTCFG_SBURST_2 () {0x;}' unless defined(&SAFE_PE_PARTCFG_SBURST_2);
    eval 'sub SAFE_PE_PARTCFG_SBURST_4 () {0x40000;}' unless defined(&SAFE_PE_PARTCFG_SBURST_4);
    eval 'sub SAFE_PE_PARTCFG_SBURST_8 () {0x80000;}' unless defined(&SAFE_PE_PARTCFG_SBURST_8);
    eval 'sub SAFE_PE_PARTCFG_SBURST_16 () {0xc0000;}' unless defined(&SAFE_PE_PARTCFG_SBURST_16);
    eval 'sub SAFE_PE_PARTSIZE_SCAT () {0xffff0000;}' unless defined(&SAFE_PE_PARTSIZE_SCAT);
    eval 'sub SAFE_PE_PARTSIZE_GATH () {0xffff;}' unless defined(&SAFE_PE_PARTSIZE_GATH);
    eval 'sub SAFE_CRYPTO_CTRL_3DES () {0x1;}' unless defined(&SAFE_CRYPTO_CTRL_3DES);
    eval 'sub SAFE_CRYPTO_CTRL_PKEY () {0x10000;}' unless defined(&SAFE_CRYPTO_CTRL_PKEY);
    eval 'sub SAFE_CRYPTO_CTRL_RNG () {0x20000;}' unless defined(&SAFE_CRYPTO_CTRL_RNG);
    eval 'sub SAFE_DEVINFO_REV_MIN () {0xf;}' unless defined(&SAFE_DEVINFO_REV_MIN);
    eval 'sub SAFE_DEVINFO_REV_MAJ () {0xf0;}' unless defined(&SAFE_DEVINFO_REV_MAJ);
    eval 'sub SAFE_DEVINFO_REV_MAJ_S () {4;}' unless defined(&SAFE_DEVINFO_REV_MAJ_S);
    eval 'sub SAFE_DEVINFO_DES () {0x100;}' unless defined(&SAFE_DEVINFO_DES);
    eval 'sub SAFE_DEVINFO_ARC4 () {0x200;}' unless defined(&SAFE_DEVINFO_ARC4);
    eval 'sub SAFE_DEVINFO_AES () {0x400;}' unless defined(&SAFE_DEVINFO_AES);
    eval 'sub SAFE_DEVINFO_MD5 () {0x1000;}' unless defined(&SAFE_DEVINFO_MD5);
    eval 'sub SAFE_DEVINFO_SHA1 () {0x2000;}' unless defined(&SAFE_DEVINFO_SHA1);
    eval 'sub SAFE_DEVINFO_RIPEMD () {0x4000;}' unless defined(&SAFE_DEVINFO_RIPEMD);
    eval 'sub SAFE_DEVINFO_DEFLATE () {0x10000;}' unless defined(&SAFE_DEVINFO_DEFLATE);
    eval 'sub SAFE_DEVINFO_SARAM () {0x100000;}' unless defined(&SAFE_DEVINFO_SARAM);
    eval 'sub SAFE_DEVINFO_EMIBUS () {0x200000;}' unless defined(&SAFE_DEVINFO_EMIBUS);
    eval 'sub SAFE_DEVINFO_PKEY () {0x400000;}' unless defined(&SAFE_DEVINFO_PKEY);
    eval 'sub SAFE_DEVINFO_RNG () {0x800000;}' unless defined(&SAFE_DEVINFO_RNG);
    eval 'sub SAFE_REV {
        my($_maj, $_min) = @_;
	    eval q(((($_maj) <<  &SAFE_DEVINFO_REV_MAJ_S) | ($_min)));
    }' unless defined(&SAFE_REV);
    eval 'sub SAFE_REV_MAJ {
        my($_chiprev) = @_;
	    eval q(((($_chiprev) &  &SAFE_DEVINFO_REV_MAJ) >>  &SAFE_DEVINFO_REV_MAJ_S));
    }' unless defined(&SAFE_REV_MAJ);
    eval 'sub SAFE_REV_MIN {
        my($_chiprev) = @_;
	    eval q((($_chiprev) &  &SAFE_DEVINFO_REV_MIN));
    }' unless defined(&SAFE_REV_MIN);
    eval 'sub SAFE_PK_FUNC_MULT () {0x1;}' unless defined(&SAFE_PK_FUNC_MULT);
    eval 'sub SAFE_PK_FUNC_SQUARE () {0x4;}' unless defined(&SAFE_PK_FUNC_SQUARE);
    eval 'sub SAFE_PK_FUNC_ADD () {0x10;}' unless defined(&SAFE_PK_FUNC_ADD);
    eval 'sub SAFE_PK_FUNC_SUB () {0x20;}' unless defined(&SAFE_PK_FUNC_SUB);
    eval 'sub SAFE_PK_FUNC_LSHIFT () {0x40;}' unless defined(&SAFE_PK_FUNC_LSHIFT);
    eval 'sub SAFE_PK_FUNC_RSHIFT () {0x80;}' unless defined(&SAFE_PK_FUNC_RSHIFT);
    eval 'sub SAFE_PK_FUNC_DIV () {0x100;}' unless defined(&SAFE_PK_FUNC_DIV);
    eval 'sub SAFE_PK_FUNC_CMP () {0x400;}' unless defined(&SAFE_PK_FUNC_CMP);
    eval 'sub SAFE_PK_FUNC_COPY () {0x800;}' unless defined(&SAFE_PK_FUNC_COPY);
    eval 'sub SAFE_PK_FUNC_EXP16 () {0x2000;}' unless defined(&SAFE_PK_FUNC_EXP16);
    eval 'sub SAFE_PK_FUNC_EXP4 () {0x4000;}' unless defined(&SAFE_PK_FUNC_EXP4);
    eval 'sub SAFE_PK_FUNC_RUN () {0x8000;}' unless defined(&SAFE_PK_FUNC_RUN);
    eval 'sub SAFE_RNG_STAT_BUSY () {0x1;}' unless defined(&SAFE_RNG_STAT_BUSY);
    eval 'sub SAFE_RNG_CTRL_PRE_LFSR () {0x1;}' unless defined(&SAFE_RNG_CTRL_PRE_LFSR);
    eval 'sub SAFE_RNG_CTRL_TST_MODE () {0x2;}' unless defined(&SAFE_RNG_CTRL_TST_MODE);
    eval 'sub SAFE_RNG_CTRL_TST_RUN () {0x4;}' unless defined(&SAFE_RNG_CTRL_TST_RUN);
    eval 'sub SAFE_RNG_CTRL_ENA_RING1 () {0x8;}' unless defined(&SAFE_RNG_CTRL_ENA_RING1);
    eval 'sub SAFE_RNG_CTRL_ENA_RING2 () {0x10;}' unless defined(&SAFE_RNG_CTRL_ENA_RING2);
    eval 'sub SAFE_RNG_CTRL_DIS_ALARM () {0x20;}' unless defined(&SAFE_RNG_CTRL_DIS_ALARM);
    eval 'sub SAFE_RNG_CTRL_TST_CLOCK () {0x40;}' unless defined(&SAFE_RNG_CTRL_TST_CLOCK);
    eval 'sub SAFE_RNG_CTRL_SHORTEN () {0x80;}' unless defined(&SAFE_RNG_CTRL_SHORTEN);
    eval 'sub SAFE_RNG_CTRL_TST_ALARM () {0x100;}' unless defined(&SAFE_RNG_CTRL_TST_ALARM);
    eval 'sub SAFE_RNG_CTRL_RST_LFSR () {0x200;}' unless defined(&SAFE_RNG_CTRL_RST_LFSR);
    eval 'sub SAFE_PD_LEN_M () {0xffff0000;}' unless defined(&SAFE_PD_LEN_M);
    eval 'sub SAFE_PD_LEN_S () {16;}' unless defined(&SAFE_PD_LEN_S);
    eval 'sub SAFE_PD_READY () {0x1;}' unless defined(&SAFE_PD_READY);
    eval 'sub SAFE_PD_DONE () {0x2;}' unless defined(&SAFE_PD_DONE);
    eval 'sub SAFE_SA_CMD0_OP () {0x7;}' unless defined(&SAFE_SA_CMD0_OP);
    eval 'sub SAFE_SA_CMD0_OP_CRYPT () {0x;}' unless defined(&SAFE_SA_CMD0_OP_CRYPT);
    eval 'sub SAFE_SA_CMD0_OP_BOTH () {0x1;}' unless defined(&SAFE_SA_CMD0_OP_BOTH);
    eval 'sub SAFE_SA_CMD0_OP_HASH () {0x3;}' unless defined(&SAFE_SA_CMD0_OP_HASH);
    eval 'sub SAFE_SA_CMD0_OP_ESP () {0x;}' unless defined(&SAFE_SA_CMD0_OP_ESP);
    eval 'sub SAFE_SA_CMD0_OP_AH () {0x1;}' unless defined(&SAFE_SA_CMD0_OP_AH);
    eval 'sub SAFE_SA_CMD0_INBOUND () {0x8;}' unless defined(&SAFE_SA_CMD0_INBOUND);
    eval 'sub SAFE_SA_CMD0_OUTBOUND () {0x;}' unless defined(&SAFE_SA_CMD0_OUTBOUND);
    eval 'sub SAFE_SA_CMD0_GROUP () {0x30;}' unless defined(&SAFE_SA_CMD0_GROUP);
    eval 'sub SAFE_SA_CMD0_BASIC () {0x;}' unless defined(&SAFE_SA_CMD0_BASIC);
    eval 'sub SAFE_SA_CMD0_PROTO () {0x10;}' unless defined(&SAFE_SA_CMD0_PROTO);
    eval 'sub SAFE_SA_CMD0_BUNDLE () {0x20;}' unless defined(&SAFE_SA_CMD0_BUNDLE);
    eval 'sub SAFE_SA_CMD0_PAD () {0xc0;}' unless defined(&SAFE_SA_CMD0_PAD);
    eval 'sub SAFE_SA_CMD0_PAD_IPSEC () {0x;}' unless defined(&SAFE_SA_CMD0_PAD_IPSEC);
    eval 'sub SAFE_SA_CMD0_PAD_PKCS7 () {0x40;}' unless defined(&SAFE_SA_CMD0_PAD_PKCS7);
    eval 'sub SAFE_SA_CMD0_PAD_CONS () {0x80;}' unless defined(&SAFE_SA_CMD0_PAD_CONS);
    eval 'sub SAFE_SA_CMD0_PAD_ZERO () {0xc0;}' unless defined(&SAFE_SA_CMD0_PAD_ZERO);
    eval 'sub SAFE_SA_CMD0_CRYPT_ALG () {0xf00;}' unless defined(&SAFE_SA_CMD0_CRYPT_ALG);
    eval 'sub SAFE_SA_CMD0_DES () {0x;}' unless defined(&SAFE_SA_CMD0_DES);
    eval 'sub SAFE_SA_CMD0_3DES () {0x100;}' unless defined(&SAFE_SA_CMD0_3DES);
    eval 'sub SAFE_SA_CMD0_AES () {0x300;}' unless defined(&SAFE_SA_CMD0_AES);
    eval 'sub SAFE_SA_CMD0_CRYPT_NULL () {0xf00;}' unless defined(&SAFE_SA_CMD0_CRYPT_NULL);
    eval 'sub SAFE_SA_CMD0_HASH_ALG () {0xf000;}' unless defined(&SAFE_SA_CMD0_HASH_ALG);
    eval 'sub SAFE_SA_CMD0_MD5 () {0x;}' unless defined(&SAFE_SA_CMD0_MD5);
    eval 'sub SAFE_SA_CMD0_SHA1 () {0x1000;}' unless defined(&SAFE_SA_CMD0_SHA1);
    eval 'sub SAFE_SA_CMD0_HASH_NULL () {0xf000;}' unless defined(&SAFE_SA_CMD0_HASH_NULL);
    eval 'sub SAFE_SA_CMD0_HDR_PROC () {0x80000;}' unless defined(&SAFE_SA_CMD0_HDR_PROC);
    eval 'sub SAFE_SA_CMD0_IBUSID () {0x300000;}' unless defined(&SAFE_SA_CMD0_IBUSID);
    eval 'sub SAFE_SA_CMD0_IPCI () {0x100000;}' unless defined(&SAFE_SA_CMD0_IPCI);
    eval 'sub SAFE_SA_CMD0_OBUSID () {0xc00000;}' unless defined(&SAFE_SA_CMD0_OBUSID);
    eval 'sub SAFE_SA_CMD0_OPCI () {0x400000;}' unless defined(&SAFE_SA_CMD0_OPCI);
    eval 'sub SAFE_SA_CMD0_IVLD () {0x3000000;}' unless defined(&SAFE_SA_CMD0_IVLD);
    eval 'sub SAFE_SA_CMD0_IVLD_NONE () {0x;}' unless defined(&SAFE_SA_CMD0_IVLD_NONE);
    eval 'sub SAFE_SA_CMD0_IVLD_IBUF () {0x1000000;}' unless defined(&SAFE_SA_CMD0_IVLD_IBUF);
    eval 'sub SAFE_SA_CMD0_IVLD_STATE () {0x2000000;}' unless defined(&SAFE_SA_CMD0_IVLD_STATE);
    eval 'sub SAFE_SA_CMD0_HSLD () {0xc000000;}' unless defined(&SAFE_SA_CMD0_HSLD);
    eval 'sub SAFE_SA_CMD0_HSLD_SA () {0x;}' unless defined(&SAFE_SA_CMD0_HSLD_SA);
    eval 'sub SAFE_SA_CMD0_HSLD_STATE () {0x8000000;}' unless defined(&SAFE_SA_CMD0_HSLD_STATE);
    eval 'sub SAFE_SA_CMD0_HSLD_NONE () {0xc000000;}' unless defined(&SAFE_SA_CMD0_HSLD_NONE);
    eval 'sub SAFE_SA_CMD0_SAVEIV () {0x10000000;}' unless defined(&SAFE_SA_CMD0_SAVEIV);
    eval 'sub SAFE_SA_CMD0_SAVEHASH () {0x20000000;}' unless defined(&SAFE_SA_CMD0_SAVEHASH);
    eval 'sub SAFE_SA_CMD0_IGATHER () {0x40000000;}' unless defined(&SAFE_SA_CMD0_IGATHER);
    eval 'sub SAFE_SA_CMD0_OSCATTER () {0x80000000;}' unless defined(&SAFE_SA_CMD0_OSCATTER);
    eval 'sub SAFE_SA_CMD1_HDRCOPY () {0x2;}' unless defined(&SAFE_SA_CMD1_HDRCOPY);
    eval 'sub SAFE_SA_CMD1_PAYCOPY () {0x4;}' unless defined(&SAFE_SA_CMD1_PAYCOPY);
    eval 'sub SAFE_SA_CMD1_PADCOPY () {0x8;}' unless defined(&SAFE_SA_CMD1_PADCOPY);
    eval 'sub SAFE_SA_CMD1_IPV4 () {0x;}' unless defined(&SAFE_SA_CMD1_IPV4);
    eval 'sub SAFE_SA_CMD1_IPV6 () {0x10;}' unless defined(&SAFE_SA_CMD1_IPV6);
    eval 'sub SAFE_SA_CMD1_MUTABLE () {0x20;}' unless defined(&SAFE_SA_CMD1_MUTABLE);
    eval 'sub SAFE_SA_CMD1_SRBUSID () {0xc0;}' unless defined(&SAFE_SA_CMD1_SRBUSID);
    eval 'sub SAFE_SA_CMD1_SRPCI () {0x40;}' unless defined(&SAFE_SA_CMD1_SRPCI);
    eval 'sub SAFE_SA_CMD1_CRMODE () {0x300;}' unless defined(&SAFE_SA_CMD1_CRMODE);
    eval 'sub SAFE_SA_CMD1_ECB () {0x;}' unless defined(&SAFE_SA_CMD1_ECB);
    eval 'sub SAFE_SA_CMD1_CBC () {0x100;}' unless defined(&SAFE_SA_CMD1_CBC);
    eval 'sub SAFE_SA_CMD1_OFB () {0x200;}' unless defined(&SAFE_SA_CMD1_OFB);
    eval 'sub SAFE_SA_CMD1_CFB () {0x300;}' unless defined(&SAFE_SA_CMD1_CFB);
    eval 'sub SAFE_SA_CMD1_CRFEEDBACK () {0xc00;}' unless defined(&SAFE_SA_CMD1_CRFEEDBACK);
    eval 'sub SAFE_SA_CMD1_64BIT () {0x;}' unless defined(&SAFE_SA_CMD1_64BIT);
    eval 'sub SAFE_SA_CMD1_8BIT () {0x400;}' unless defined(&SAFE_SA_CMD1_8BIT);
    eval 'sub SAFE_SA_CMD1_1BIT () {0x800;}' unless defined(&SAFE_SA_CMD1_1BIT);
    eval 'sub SAFE_SA_CMD1_128BIT () {0xc00;}' unless defined(&SAFE_SA_CMD1_128BIT);
    eval 'sub SAFE_SA_CMD1_OPTIONS () {0x1000;}' unless defined(&SAFE_SA_CMD1_OPTIONS);
    eval 'sub SAFE_SA_CMD1_HMAC () { &SAFE_SA_CMD1_OPTIONS;}' unless defined(&SAFE_SA_CMD1_HMAC);
    eval 'sub SAFE_SA_CMD1_SAREV1 () {0x8000;}' unless defined(&SAFE_SA_CMD1_SAREV1);
    eval 'sub SAFE_SA_CMD1_OFFSET () {0xff0000;}' unless defined(&SAFE_SA_CMD1_OFFSET);
    eval 'sub SAFE_SA_CMD1_OFFSET_S () {16;}' unless defined(&SAFE_SA_CMD1_OFFSET_S);
    eval 'sub SAFE_SA_CMD1_AESKEYLEN () {0xf000000;}' unless defined(&SAFE_SA_CMD1_AESKEYLEN);
    eval 'sub SAFE_SA_CMD1_AES128 () {0x2000000;}' unless defined(&SAFE_SA_CMD1_AES128);
    eval 'sub SAFE_SA_CMD1_AES192 () {0x3000000;}' unless defined(&SAFE_SA_CMD1_AES192);
    eval 'sub SAFE_SA_CMD1_AES256 () {0x4000000;}' unless defined(&SAFE_SA_CMD1_AES256);
}
1;
