require '_h2ph_pre.ph';

no warnings 'redefine';

unless(defined(&_DEV_IC_VICREG_H)) {
    eval 'sub _DEV_IC_VICREG_H () {1;}' unless defined(&_DEV_IC_VICREG_H);
    eval 'sub VIC_MAGIC () {0xbabe864f;}' unless defined(&VIC_MAGIC);
    eval 'sub VIC_DATA_ADDR () {0x;}' unless defined(&VIC_DATA_ADDR);
    eval 'sub VIC_DATA_LENGTH () {0x4;}' unless defined(&VIC_DATA_LENGTH);
    eval 'sub VIC_Tx_ADDR () {0x8;}' unless defined(&VIC_Tx_ADDR);
    eval 'sub VIC_CMD () {0xc;}' unless defined(&VIC_CMD);
    eval 'sub VIC_CMD_INTR_ACK () {0x1;}' unless defined(&VIC_CMD_INTR_ACK);
    eval 'sub VIC_CMD_MCASTFIL () {0x2;}' unless defined(&VIC_CMD_MCASTFIL);
    eval 'sub VIC_CMD_MCASTFIL_LENGTH () {2;}' unless defined(&VIC_CMD_MCASTFIL_LENGTH);
    eval 'sub VIC_CMD_IFF () {0x4;}' unless defined(&VIC_CMD_IFF);
    eval 'sub VIC_CMD_IFF_PROMISC () {0x1;}' unless defined(&VIC_CMD_IFF_PROMISC);
    eval 'sub VIC_CMD_IFF_BROADCAST () {0x2;}' unless defined(&VIC_CMD_IFF_BROADCAST);
    eval 'sub VIC_CMD_IFF_MULTICAST () {0x4;}' unless defined(&VIC_CMD_IFF_MULTICAST);
    eval 'sub VIC_CMD_RESERVED_8 () {0x8;}' unless defined(&VIC_CMD_RESERVED_8);
    eval 'sub VIC_CMD_RESERVED_10 () {0x10;}' unless defined(&VIC_CMD_RESERVED_10);
    eval 'sub VIC_CMD_INTR_DISABLE () {0x20;}' unless defined(&VIC_CMD_INTR_DISABLE);
    eval 'sub VIC_CMD_INTR_ENABLE () {0x40;}' unless defined(&VIC_CMD_INTR_ENABLE);
    eval 'sub VIC_CMD_RESERVED_80 () {0x80;}' unless defined(&VIC_CMD_RESERVED_80);
    eval 'sub VIC_CMD_Tx_DONE () {0x100;}' unless defined(&VIC_CMD_Tx_DONE);
    eval 'sub VIC_CMD_NUM_Rx_BUF () {0x200;}' unless defined(&VIC_CMD_NUM_Rx_BUF);
    eval 'sub VIC_CMD_NUM_Tx_BUF () {0x400;}' unless defined(&VIC_CMD_NUM_Tx_BUF);
    eval 'sub VIC_CMD_NUM_PINNED_BUF () {0x800;}' unless defined(&VIC_CMD_NUM_PINNED_BUF);
    eval 'sub VIC_CMD_HWCAP () {0x1000;}' unless defined(&VIC_CMD_HWCAP);
    eval 'sub VIC_CMD_HWCAP_SG () {0x1;}' unless defined(&VIC_CMD_HWCAP_SG);
    eval 'sub VIC_CMD_HWCAP_CSUM_IPv4 () {0x2;}' unless defined(&VIC_CMD_HWCAP_CSUM_IPv4);
    eval 'sub VIC_CMD_HWCAP_CSUM_ALL () {0x4;}' unless defined(&VIC_CMD_HWCAP_CSUM_ALL);
    eval 'sub VIC_CMD_HWCAP_CSUM () {( &VIC_CMD_HWCAP_CSUM_IPv4 |  &VIC_CMD_HWCAP_CSUM_ALL);}' unless defined(&VIC_CMD_HWCAP_CSUM);
    eval 'sub VIC_CMD_HWCAP_DMA_HIGH () {0x8;}' unless defined(&VIC_CMD_HWCAP_DMA_HIGH);
    eval 'sub VIC_CMD_HWCAP_TOE () {0x10;}' unless defined(&VIC_CMD_HWCAP_TOE);
    eval 'sub VIC_CMD_HWCAP_TSO () {0x20;}' unless defined(&VIC_CMD_HWCAP_TSO);
    eval 'sub VIC_CMD_HWCAP_TSO_SW () {0x40;}' unless defined(&VIC_CMD_HWCAP_TSO_SW);
    eval 'sub VIC_CMD_HWCAP_VPROM () {0x80;}' unless defined(&VIC_CMD_HWCAP_VPROM);
    eval 'sub VIC_CMD_HWCAP_VLAN_Tx () {0x100;}' unless defined(&VIC_CMD_HWCAP_VLAN_Tx);
    eval 'sub VIC_CMD_HWCAP_VLAN_Rx () {0x200;}' unless defined(&VIC_CMD_HWCAP_VLAN_Rx);
    eval 'sub VIC_CMD_HWCAP_VLAN_SW () {0x400;}' unless defined(&VIC_CMD_HWCAP_VLAN_SW);
    eval 'sub VIC_CMD_HWCAP_VLAN () {( &VIC_CMD_HWCAP_VLAN_Tx |  &VIC_CMD_HWCAP_VLAN_Rx |  &VIC_CMD_HWCAP_VLAN_SW);}' unless defined(&VIC_CMD_HWCAP_VLAN);
    eval 'sub VIC_CMD_HWCAP_BITS () {"\\20\\01SG\\02CSUM4\\03CSUM\\04HDMA\\05TOE" "\\06TSO\\07TSOSW\\10VPROM\\13VLANTx\\14VLANRx\\15VLANSW";}' unless defined(&VIC_CMD_HWCAP_BITS);
    eval 'sub VIC_CMD_FEATURE () {0x2000;}' unless defined(&VIC_CMD_FEATURE);
    eval 'sub VIC_CMD_FEATURE_0_Tx () {0x1;}' unless defined(&VIC_CMD_FEATURE_0_Tx);
    eval 'sub VIC_CMD_FEATURE_TSO () {0x2;}' unless defined(&VIC_CMD_FEATURE_TSO);
    eval 'sub VIC_LLADDR () {0x10;}' unless defined(&VIC_LLADDR);
    eval 'sub VIC_VERSION_MINOR () {0x18;}' unless defined(&VIC_VERSION_MINOR);
    eval 'sub VIC_VERSION_MAJOR () {0x1c;}' unless defined(&VIC_VERSION_MAJOR);
    eval 'sub VIC_VERSION_MAJOR_M () {0xffff0000;}' unless defined(&VIC_VERSION_MAJOR_M);
    eval 'sub VIC_STATUS () {0x20;}' unless defined(&VIC_STATUS);
    eval 'sub VIC_STATUS_CONNECTED () {0x1;}' unless defined(&VIC_STATUS_CONNECTED);
    eval 'sub VIC_STATUS_ENABLED () {0x2;}' unless defined(&VIC_STATUS_ENABLED);
    eval 'sub VIC_TOE_ADDR () {0x24;}' unless defined(&VIC_TOE_ADDR);
    eval 'sub VIC_VPROM () {0x28;}' unless defined(&VIC_VPROM);
    eval 'sub VIC_VPROM_LENGTH () {6;}' unless defined(&VIC_VPROM_LENGTH);
    eval 'sub VIC_SG_MAX () {6;}' unless defined(&VIC_SG_MAX);
    eval 'sub VIC_SG_ADDR_MACH () {0;}' unless defined(&VIC_SG_ADDR_MACH);
    eval 'sub VIC_SG_ADDR_PHYS () {1;}' unless defined(&VIC_SG_ADDR_PHYS);
    eval 'sub VIC_SG_ADDR_VIRT () {3;}' unless defined(&VIC_SG_ADDR_VIRT);
    eval 'sub VIC_RX_FLAGS_CSUMHW_OK () {0x1;}' unless defined(&VIC_RX_FLAGS_CSUMHW_OK);
    eval 'sub VIC_TX_FLAGS_KEEP () {0x1;}' unless defined(&VIC_TX_FLAGS_KEEP);
    eval 'sub VIC_TX_FLAGS_TXURN () {0x2;}' unless defined(&VIC_TX_FLAGS_TXURN);
    eval 'sub VIC_TX_FLAGS_CSUMHW () {0x4;}' unless defined(&VIC_TX_FLAGS_CSUMHW);
    eval 'sub VIC_TX_FLAGS_TSO () {0x8;}' unless defined(&VIC_TX_FLAGS_TSO);
    eval 'sub VIC_TX_FLAGS_PINNED () {0x10;}' unless defined(&VIC_TX_FLAGS_PINNED);
    eval 'sub VIC_TX_FLAGS_QRETRY () {0x1000;}' unless defined(&VIC_TX_FLAGS_QRETRY);
    eval 'sub VIC_OWNER_DRIVER () {0;}' unless defined(&VIC_OWNER_DRIVER);
    eval 'sub VIC_OWNER_DRIVER_PEND () {1;}' unless defined(&VIC_OWNER_DRIVER_PEND);
    eval 'sub VIC_OWNER_NIC () {2;}' unless defined(&VIC_OWNER_NIC);
    eval 'sub VIC_OWNER_NIC_PEND () {3;}' unless defined(&VIC_OWNER_NIC_PEND);
}
1;
