143e610bbSSunila Sahu /* SPDX-License-Identifier: BSD-3-Clause 243e610bbSSunila Sahu * Copyright(c) 2018 Cavium, Inc 343e610bbSSunila Sahu */ 443e610bbSSunila Sahu 543e610bbSSunila Sahu #ifndef _RTE_OCTEONTX_ZIP_REGS_H_ 643e610bbSSunila Sahu #define _RTE_OCTEONTX_ZIP_REGS_H_ 743e610bbSSunila Sahu 843e610bbSSunila Sahu 943e610bbSSunila Sahu /** 1043e610bbSSunila Sahu * Enumeration zip_cc 1143e610bbSSunila Sahu * 1243e610bbSSunila Sahu * ZIP compression coding Enumeration 1343e610bbSSunila Sahu * Enumerates ZIP_INST_S[CC]. 1443e610bbSSunila Sahu */ 1597573583SFerruh Yigit enum zip_cc { 1643e610bbSSunila Sahu ZIP_CC_DEFAULT = 0, 1743e610bbSSunila Sahu ZIP_CC_DYN_HUFF, 1843e610bbSSunila Sahu ZIP_CC_FIXED_HUFF, 1943e610bbSSunila Sahu ZIP_CC_LZS 2097573583SFerruh Yigit }; 2143e610bbSSunila Sahu 2243e610bbSSunila Sahu /** 2343e610bbSSunila Sahu * Register (NCB) zip_vq#_ena 2443e610bbSSunila Sahu * 2543e610bbSSunila Sahu * ZIP VF Queue Enable Register 2643e610bbSSunila Sahu * If a queue is disabled, ZIP CTL stops fetching instructions from the queue. 2743e610bbSSunila Sahu */ 2843e610bbSSunila Sahu typedef union { 2943e610bbSSunila Sahu uint64_t u; 3043e610bbSSunila Sahu struct zip_vqx_ena_s { 3143e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 0 - Big Endian */ 3243e610bbSSunila Sahu uint64_t reserved_1_63 : 63; 3343e610bbSSunila Sahu uint64_t ena : 1; 3443e610bbSSunila Sahu #else /* Word 0 - Little Endian */ 3543e610bbSSunila Sahu uint64_t ena : 1; 3643e610bbSSunila Sahu uint64_t reserved_1_63 : 63; 3743e610bbSSunila Sahu #endif /* Word 0 - End */ 3843e610bbSSunila Sahu } s; 3943e610bbSSunila Sahu } zip_vqx_ena_t; 4043e610bbSSunila Sahu 4143e610bbSSunila Sahu /** 4243e610bbSSunila Sahu * Register (NCB) zip_vq#_sbuf_addr 4343e610bbSSunila Sahu * 4443e610bbSSunila Sahu * ZIP VF Queue Starting Buffer Address Registers 4543e610bbSSunila Sahu * These registers set the buffer parameters for the instruction queues. 4643e610bbSSunila Sahu * When quiescent (i.e. 4743e610bbSSunila Sahu * outstanding doorbell count is 0), it is safe to rewrite this register 4843e610bbSSunila Sahu * to effectively reset the 4943e610bbSSunila Sahu * command buffer state machine. 5043e610bbSSunila Sahu * These registers must be programmed after software programs the 5143e610bbSSunila Sahu * corresponding ZIP_QUE()_SBUF_CTL. 5243e610bbSSunila Sahu */ 5343e610bbSSunila Sahu typedef union { 5443e610bbSSunila Sahu uint64_t u; 5543e610bbSSunila Sahu struct zip_vqx_sbuf_addr_s { 5643e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 0 - Big Endian */ 5743e610bbSSunila Sahu uint64_t reserved_49_63 : 15; 5843e610bbSSunila Sahu uint64_t ptr : 42; 5943e610bbSSunila Sahu uint64_t off : 7; 6043e610bbSSunila Sahu #else /* Word 0 - Little Endian */ 6143e610bbSSunila Sahu uint64_t off : 7; 6243e610bbSSunila Sahu uint64_t ptr : 42; 6343e610bbSSunila Sahu uint64_t reserved_49_63 : 15; 6443e610bbSSunila Sahu #endif /* Word 0 - End */ 6543e610bbSSunila Sahu } s; 66a80ea5c0SMahipal Challa 67a80ea5c0SMahipal Challa struct zip_vqx_sbuf_addr_s9x { 68a80ea5c0SMahipal Challa #if defined(__BIG_ENDIAN_BITFIELD) /* Word 0 - Big Endian */ 69a80ea5c0SMahipal Challa uint64_t reserved_53_63 : 11; 70a80ea5c0SMahipal Challa uint64_t ptr : 46; 71a80ea5c0SMahipal Challa uint64_t off : 7; 72a80ea5c0SMahipal Challa #else /* Word 0 - Little Endian */ 73a80ea5c0SMahipal Challa uint64_t off : 7; 74a80ea5c0SMahipal Challa uint64_t ptr : 46; 75a80ea5c0SMahipal Challa uint64_t reserved_53_63 : 11; 76a80ea5c0SMahipal Challa #endif /* Word 0 - End */ 77a80ea5c0SMahipal Challa } s9x; 7843e610bbSSunila Sahu } zip_vqx_sbuf_addr_t; 7943e610bbSSunila Sahu 8043e610bbSSunila Sahu /** 8143e610bbSSunila Sahu * Register (NCB) zip_que#_doorbell 8243e610bbSSunila Sahu * 8343e610bbSSunila Sahu * ZIP Queue Doorbell Registers 8443e610bbSSunila Sahu * Doorbells for the ZIP instruction queues. 8543e610bbSSunila Sahu */ 8643e610bbSSunila Sahu typedef union { 8743e610bbSSunila Sahu uint64_t u; 8843e610bbSSunila Sahu struct zip_quex_doorbell_s { 8943e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 0 - Big Endian */ 9043e610bbSSunila Sahu uint64_t reserved_20_63 : 44; 9143e610bbSSunila Sahu uint64_t dbell_cnt : 20; 9243e610bbSSunila Sahu #else /* Word 0 - Little Endian */ 9343e610bbSSunila Sahu uint64_t dbell_cnt : 20; 9443e610bbSSunila Sahu uint64_t reserved_20_63 : 44; 9543e610bbSSunila Sahu #endif /* Word 0 - End */ 9643e610bbSSunila Sahu } s; 9743e610bbSSunila Sahu } zip_quex_doorbell_t; 9843e610bbSSunila Sahu 9943e610bbSSunila Sahu /** 10043e610bbSSunila Sahu * Structure zip_nptr_s 10143e610bbSSunila Sahu * 10243e610bbSSunila Sahu * ZIP Instruction Next-Chunk-Buffer Pointer (NPTR) Structure 10343e610bbSSunila Sahu * This structure is used to chain all the ZIP instruction buffers 10443e610bbSSunila Sahu * together. ZIP instruction buffers are managed 10543e610bbSSunila Sahu * (allocated and released) by software. 10643e610bbSSunila Sahu */ 10743e610bbSSunila Sahu union zip_nptr_s { 10843e610bbSSunila Sahu uint64_t u; 10943e610bbSSunila Sahu struct zip_nptr_s_s { 11043e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 0 - Big Endian */ 11143e610bbSSunila Sahu uint64_t addr : 64; 11243e610bbSSunila Sahu #else /* Word 0 - Little Endian */ 11343e610bbSSunila Sahu uint64_t addr : 64; 11443e610bbSSunila Sahu #endif /* Word 0 - End */ 11543e610bbSSunila Sahu } s; 11643e610bbSSunila Sahu }; 11743e610bbSSunila Sahu 11843e610bbSSunila Sahu /** 11943e610bbSSunila Sahu * generic ptr address 12043e610bbSSunila Sahu */ 12143e610bbSSunila Sahu union zip_zptr_addr_s { 12243e610bbSSunila Sahu /** This field can be used to set/clear all bits, or do bitwise 12343e610bbSSunila Sahu * operations over the entire structure. 12443e610bbSSunila Sahu */ 12543e610bbSSunila Sahu uint64_t u; 12643e610bbSSunila Sahu /** generic ptr address */ 12743e610bbSSunila Sahu struct { 12843e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 0 - Big Endian */ 12943e610bbSSunila Sahu uint64_t addr : 64; 13043e610bbSSunila Sahu #else /* Word 0 - Little Endian */ 13143e610bbSSunila Sahu uint64_t addr : 64; 13243e610bbSSunila Sahu #endif /* Word 0 - End */ 13343e610bbSSunila Sahu } s; 13443e610bbSSunila Sahu }; 13543e610bbSSunila Sahu 13643e610bbSSunila Sahu /** 13743e610bbSSunila Sahu * generic ptr ctl 13843e610bbSSunila Sahu */ 13943e610bbSSunila Sahu union zip_zptr_ctl_s { 14043e610bbSSunila Sahu /** This field can be used to set/clear all bits, or do bitwise 14143e610bbSSunila Sahu * operations over the entire structure. 14243e610bbSSunila Sahu */ 14343e610bbSSunila Sahu uint64_t u; 14443e610bbSSunila Sahu /** generic ptr ctl */ 14543e610bbSSunila Sahu struct { 14643e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 1 - Big Endian */ 14743e610bbSSunila Sahu uint64_t reserved_112_127 : 16; 14843e610bbSSunila Sahu uint64_t length : 16; 14943e610bbSSunila Sahu uint64_t reserved_67_95 : 29; 15043e610bbSSunila Sahu uint64_t fw : 1; 15143e610bbSSunila Sahu uint64_t nc : 1; 15243e610bbSSunila Sahu uint64_t data_be : 1; 15343e610bbSSunila Sahu #else /* Word 1 - Little Endian */ 15443e610bbSSunila Sahu uint64_t data_be : 1; 15543e610bbSSunila Sahu uint64_t nc : 1; 15643e610bbSSunila Sahu uint64_t fw : 1; 15743e610bbSSunila Sahu uint64_t reserved_67_95 : 29; 15843e610bbSSunila Sahu uint64_t length : 16; 15943e610bbSSunila Sahu uint64_t reserved_112_127 : 16; 16043e610bbSSunila Sahu #endif /* Word 1 - End */ 16143e610bbSSunila Sahu } s; 16243e610bbSSunila Sahu 16343e610bbSSunila Sahu }; 16443e610bbSSunila Sahu 16543e610bbSSunila Sahu /** 16643e610bbSSunila Sahu * Structure zip_inst_s 16743e610bbSSunila Sahu * 16843e610bbSSunila Sahu * ZIP Instruction Structure 16943e610bbSSunila Sahu * Each ZIP instruction has 16 words (they are called IWORD0 to IWORD15 17043e610bbSSunila Sahu * within the structure). 17143e610bbSSunila Sahu */ 17243e610bbSSunila Sahu union zip_inst_s { 17343e610bbSSunila Sahu /** This field can be used to set/clear all bits, or do bitwise 17443e610bbSSunila Sahu * operations over the entire structure. 17543e610bbSSunila Sahu */ 17643e610bbSSunila Sahu uint64_t u[16]; 17743e610bbSSunila Sahu /** ZIP Instruction Structure */ 17843e610bbSSunila Sahu struct zip_inst_s_s { 17943e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 0 - Big Endian */ 18043e610bbSSunila Sahu /** Done interrupt */ 18143e610bbSSunila Sahu uint64_t doneint : 1; 18243e610bbSSunila Sahu /** reserved */ 18343e610bbSSunila Sahu uint64_t reserved_56_62 : 7; 18443e610bbSSunila Sahu /** Total output length */ 18543e610bbSSunila Sahu uint64_t totaloutputlength : 24; 18643e610bbSSunila Sahu /** reserved */ 18743e610bbSSunila Sahu uint64_t reserved_27_31 : 5; 18843e610bbSSunila Sahu /** EXNUM */ 18943e610bbSSunila Sahu uint64_t exn : 3; 19043e610bbSSunila Sahu /** HASH IV */ 19143e610bbSSunila Sahu uint64_t iv : 1; 19243e610bbSSunila Sahu /** EXBITS */ 19343e610bbSSunila Sahu uint64_t exbits : 7; 19443e610bbSSunila Sahu /** Hash more-in-file */ 19543e610bbSSunila Sahu uint64_t hmif : 1; 19643e610bbSSunila Sahu /** Hash Algorithm and enable */ 19743e610bbSSunila Sahu uint64_t halg : 3; 19843e610bbSSunila Sahu /** Sync flush*/ 19943e610bbSSunila Sahu uint64_t sf : 1; 20043e610bbSSunila Sahu /** Compression speed/storage */ 20143e610bbSSunila Sahu uint64_t ss : 2; 20243e610bbSSunila Sahu /** Compression coding */ 20343e610bbSSunila Sahu uint64_t cc : 2; 20443e610bbSSunila Sahu /** End of input data */ 20543e610bbSSunila Sahu uint64_t ef : 1; 20643e610bbSSunila Sahu /** Beginning of file */ 20743e610bbSSunila Sahu uint64_t bf : 1; 20843e610bbSSunila Sahu /** Comp/decomp operation */ 20943e610bbSSunila Sahu uint64_t op : 2; 2107be78d02SJosh Soref /** Data scatter */ 21143e610bbSSunila Sahu uint64_t ds : 1; 21243e610bbSSunila Sahu /** Data gather */ 21343e610bbSSunila Sahu uint64_t dg : 1; 21443e610bbSSunila Sahu /** History gather */ 21543e610bbSSunila Sahu uint64_t hg : 1; 21643e610bbSSunila Sahu #else /* Word 0 - Little Endian */ 21743e610bbSSunila Sahu uint64_t hg : 1; 21843e610bbSSunila Sahu uint64_t dg : 1; 21943e610bbSSunila Sahu uint64_t ds : 1; 22043e610bbSSunila Sahu uint64_t op : 2; 22143e610bbSSunila Sahu uint64_t bf : 1; 22243e610bbSSunila Sahu uint64_t ef : 1; 22343e610bbSSunila Sahu uint64_t cc : 2; 22443e610bbSSunila Sahu uint64_t ss : 2; 22543e610bbSSunila Sahu uint64_t sf : 1; 22643e610bbSSunila Sahu uint64_t halg : 3; 22743e610bbSSunila Sahu uint64_t hmif : 1; 22843e610bbSSunila Sahu uint64_t exbits : 7; 22943e610bbSSunila Sahu uint64_t iv : 1; 23043e610bbSSunila Sahu uint64_t exn : 3; 23143e610bbSSunila Sahu uint64_t reserved_27_31 : 5; 23243e610bbSSunila Sahu uint64_t totaloutputlength : 24; 23343e610bbSSunila Sahu uint64_t reserved_56_62 : 7; 23443e610bbSSunila Sahu uint64_t doneint : 1; 23543e610bbSSunila Sahu 23643e610bbSSunila Sahu #endif /* Word 0 - End */ 23743e610bbSSunila Sahu 23843e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 1 - Big Endian */ 23943e610bbSSunila Sahu /** History length */ 24043e610bbSSunila Sahu uint64_t historylength : 16; 24143e610bbSSunila Sahu /** reserved */ 24243e610bbSSunila Sahu uint64_t reserved_96_111 : 16; 24343e610bbSSunila Sahu /** adler/crc32 checksum*/ 24443e610bbSSunila Sahu uint64_t adlercrc32 : 32; 24543e610bbSSunila Sahu #else /* Word 1 - Little Endian */ 24643e610bbSSunila Sahu uint64_t adlercrc32 : 32; 24743e610bbSSunila Sahu uint64_t reserved_96_111 : 16; 24843e610bbSSunila Sahu uint64_t historylength : 16; 24943e610bbSSunila Sahu #endif /* Word 1 - End */ 25043e610bbSSunila Sahu 25143e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 2 - Big Endian */ 25243e610bbSSunila Sahu /** Decompression Context Pointer Address */ 25343e610bbSSunila Sahu union zip_zptr_addr_s ctx_ptr_addr; 25443e610bbSSunila Sahu #else /* Word 2 - Little Endian */ 25543e610bbSSunila Sahu union zip_zptr_addr_s ctx_ptr_addr; 25643e610bbSSunila Sahu #endif /* Word 2 - End */ 25743e610bbSSunila Sahu 25843e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) 25943e610bbSSunila Sahu /** Decompression Context Pointer Control */ 26043e610bbSSunila Sahu union zip_zptr_ctl_s ctx_ptr_ctl; 26143e610bbSSunila Sahu #else /* Word 3 - Little Endian */ 26243e610bbSSunila Sahu union zip_zptr_ctl_s ctx_ptr_ctl; 26343e610bbSSunila Sahu #endif /* Word 3 - End */ 26443e610bbSSunila Sahu 26543e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) 26643e610bbSSunila Sahu /** Decompression history pointer address */ 26743e610bbSSunila Sahu union zip_zptr_addr_s his_ptr_addr; 26843e610bbSSunila Sahu #else /* Word 4 - Little Endian */ 26943e610bbSSunila Sahu union zip_zptr_addr_s his_ptr_addr; 27043e610bbSSunila Sahu #endif /* Word 4 - End */ 27143e610bbSSunila Sahu 27243e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) 27343e610bbSSunila Sahu /** Decompression history pointer control */ 27443e610bbSSunila Sahu union zip_zptr_ctl_s his_ptr_ctl; 27543e610bbSSunila Sahu #else /* Word 5 - Little Endian */ 27643e610bbSSunila Sahu union zip_zptr_ctl_s his_ptr_ctl; 27743e610bbSSunila Sahu #endif /* Word 5 - End */ 27843e610bbSSunila Sahu 27943e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) 28043e610bbSSunila Sahu /** Input and compression history pointer address */ 28143e610bbSSunila Sahu union zip_zptr_addr_s inp_ptr_addr; 28243e610bbSSunila Sahu #else /* Word 6 - Little Endian */ 28343e610bbSSunila Sahu union zip_zptr_addr_s inp_ptr_addr; 28443e610bbSSunila Sahu #endif /* Word 6 - End */ 28543e610bbSSunila Sahu 28643e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) 28743e610bbSSunila Sahu /** Input and compression history pointer control */ 28843e610bbSSunila Sahu union zip_zptr_ctl_s inp_ptr_ctl; 28943e610bbSSunila Sahu #else /* Word 7 - Little Endian */ 29043e610bbSSunila Sahu union zip_zptr_ctl_s inp_ptr_ctl; 29143e610bbSSunila Sahu #endif /* Word 7 - End */ 29243e610bbSSunila Sahu 29343e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) 29443e610bbSSunila Sahu /** Output pointer address */ 29543e610bbSSunila Sahu union zip_zptr_addr_s out_ptr_addr; 29643e610bbSSunila Sahu #else /* Word 8 - Little Endian */ 29743e610bbSSunila Sahu union zip_zptr_addr_s out_ptr_addr; 29843e610bbSSunila Sahu #endif /* Word 8 - End */ 29943e610bbSSunila Sahu 30043e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) 30143e610bbSSunila Sahu /** Output pointer control */ 30243e610bbSSunila Sahu union zip_zptr_ctl_s out_ptr_ctl; 30343e610bbSSunila Sahu #else /* Word 9 - Little Endian */ 30443e610bbSSunila Sahu union zip_zptr_ctl_s out_ptr_ctl; 30543e610bbSSunila Sahu #endif /* Word 9 - End */ 30643e610bbSSunila Sahu 30743e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) 30843e610bbSSunila Sahu /** Result pointer address */ 30943e610bbSSunila Sahu union zip_zptr_addr_s res_ptr_addr; 31043e610bbSSunila Sahu #else /* Word 10 - Little Endian */ 31143e610bbSSunila Sahu union zip_zptr_addr_s res_ptr_addr; 31243e610bbSSunila Sahu #endif /* Word 10 - End */ 31343e610bbSSunila Sahu 31443e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) 31543e610bbSSunila Sahu /** Result pointer control */ 31643e610bbSSunila Sahu union zip_zptr_ctl_s res_ptr_ctl; 31743e610bbSSunila Sahu #else /* Word 11 - Little Endian */ 31843e610bbSSunila Sahu union zip_zptr_ctl_s res_ptr_ctl; 31943e610bbSSunila Sahu #endif /* Word 11 - End */ 32043e610bbSSunila Sahu 32143e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 12 - Big Endian */ 32243e610bbSSunila Sahu /** reserved */ 32343e610bbSSunila Sahu uint64_t reserved_812_831 : 20; 32443e610bbSSunila Sahu /** SSO guest group */ 32543e610bbSSunila Sahu uint64_t ggrp : 10; 32643e610bbSSunila Sahu /** SSO tag type */ 32743e610bbSSunila Sahu uint64_t tt : 2; 32843e610bbSSunila Sahu /** SSO tag */ 32943e610bbSSunila Sahu uint64_t tag : 32; 33043e610bbSSunila Sahu #else /* Word 12 - Little Endian */ 33143e610bbSSunila Sahu uint64_t tag : 32; 33243e610bbSSunila Sahu uint64_t tt : 2; 33343e610bbSSunila Sahu uint64_t ggrp : 10; 33443e610bbSSunila Sahu uint64_t reserved_812_831 : 20; 33543e610bbSSunila Sahu #endif /* Word 12 - End */ 33643e610bbSSunila Sahu 33743e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 13 - Big Endian */ 33843e610bbSSunila Sahu /** Work queue entry pointer */ 33943e610bbSSunila Sahu uint64_t wq_ptr : 64; 34043e610bbSSunila Sahu #else /* Word 13 - Little Endian */ 34143e610bbSSunila Sahu uint64_t wq_ptr : 64; 34243e610bbSSunila Sahu #endif /* Word 13 - End */ 34343e610bbSSunila Sahu 34443e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) 34543e610bbSSunila Sahu /** reserved */ 34643e610bbSSunila Sahu uint64_t reserved_896_959 : 64; 34743e610bbSSunila Sahu #else /* Word 14 - Little Endian */ 34843e610bbSSunila Sahu uint64_t reserved_896_959 : 64; 34943e610bbSSunila Sahu #endif /* Word 14 - End */ 35043e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) 35143e610bbSSunila Sahu /** Hash structure pointer */ 35243e610bbSSunila Sahu uint64_t hash_ptr : 64; 35343e610bbSSunila Sahu #else /* Word 15 - Little Endian */ 35443e610bbSSunila Sahu uint64_t hash_ptr : 64; 35543e610bbSSunila Sahu #endif /* Word 15 - End */ 35643e610bbSSunila Sahu } /** ZIP 88xx Instruction Structure */zip88xx; 35743e610bbSSunila Sahu 35843e610bbSSunila Sahu /** ZIP Instruction Structure */ 35943e610bbSSunila Sahu struct zip_inst_s_cn83xx { 36043e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 0 - Big Endian */ 36143e610bbSSunila Sahu /** Done interrupt */ 36243e610bbSSunila Sahu uint64_t doneint : 1; 36343e610bbSSunila Sahu /** reserved */ 36443e610bbSSunila Sahu uint64_t reserved_56_62 : 7; 36543e610bbSSunila Sahu /** Total output length */ 36643e610bbSSunila Sahu uint64_t totaloutputlength : 24; 36743e610bbSSunila Sahu /** reserved */ 36843e610bbSSunila Sahu uint64_t reserved_27_31 : 5; 36943e610bbSSunila Sahu /** EXNUM */ 37043e610bbSSunila Sahu uint64_t exn : 3; 37143e610bbSSunila Sahu /** HASH IV */ 37243e610bbSSunila Sahu uint64_t iv : 1; 37343e610bbSSunila Sahu /** EXBITS */ 37443e610bbSSunila Sahu uint64_t exbits : 7; 37543e610bbSSunila Sahu /** Hash more-in-file */ 37643e610bbSSunila Sahu uint64_t hmif : 1; 37743e610bbSSunila Sahu /** Hash Algorithm and enable */ 37843e610bbSSunila Sahu uint64_t halg : 3; 37943e610bbSSunila Sahu /** Sync flush*/ 38043e610bbSSunila Sahu uint64_t sf : 1; 38143e610bbSSunila Sahu /** Compression speed/storage */ 38243e610bbSSunila Sahu uint64_t ss : 2; 38343e610bbSSunila Sahu /** Compression coding */ 38443e610bbSSunila Sahu uint64_t cc : 2; 38543e610bbSSunila Sahu /** End of input data */ 38643e610bbSSunila Sahu uint64_t ef : 1; 38743e610bbSSunila Sahu /** Beginning of file */ 38843e610bbSSunila Sahu uint64_t bf : 1; 38943e610bbSSunila Sahu /** Comp/decomp operation */ 39043e610bbSSunila Sahu uint64_t op : 2; 3917be78d02SJosh Soref /** Data scatter */ 39243e610bbSSunila Sahu uint64_t ds : 1; 39343e610bbSSunila Sahu /** Data gather */ 39443e610bbSSunila Sahu uint64_t dg : 1; 39543e610bbSSunila Sahu /** History gather */ 39643e610bbSSunila Sahu uint64_t hg : 1; 39743e610bbSSunila Sahu #else /* Word 0 - Little Endian */ 39843e610bbSSunila Sahu uint64_t hg : 1; 39943e610bbSSunila Sahu uint64_t dg : 1; 40043e610bbSSunila Sahu uint64_t ds : 1; 40143e610bbSSunila Sahu uint64_t op : 2; 40243e610bbSSunila Sahu uint64_t bf : 1; 40343e610bbSSunila Sahu uint64_t ef : 1; 40443e610bbSSunila Sahu uint64_t cc : 2; 40543e610bbSSunila Sahu uint64_t ss : 2; 40643e610bbSSunila Sahu uint64_t sf : 1; 40743e610bbSSunila Sahu uint64_t halg : 3; 40843e610bbSSunila Sahu uint64_t hmif : 1; 40943e610bbSSunila Sahu uint64_t exbits : 7; 41043e610bbSSunila Sahu uint64_t iv : 1; 41143e610bbSSunila Sahu uint64_t exn : 3; 41243e610bbSSunila Sahu uint64_t reserved_27_31 : 5; 41343e610bbSSunila Sahu uint64_t totaloutputlength : 24; 41443e610bbSSunila Sahu uint64_t reserved_56_62 : 7; 41543e610bbSSunila Sahu uint64_t doneint : 1; 41643e610bbSSunila Sahu #endif /* Word 0 - End */ 41743e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 1 - Big Endian */ 41843e610bbSSunila Sahu /** History length */ 41943e610bbSSunila Sahu uint64_t historylength : 16; 42043e610bbSSunila Sahu /** reserved */ 42143e610bbSSunila Sahu uint64_t reserved_96_111 : 16; 42243e610bbSSunila Sahu /** adler/crc32 checksum*/ 42343e610bbSSunila Sahu uint64_t adlercrc32 : 32; 42443e610bbSSunila Sahu #else /* Word 1 - Little Endian */ 42543e610bbSSunila Sahu uint64_t adlercrc32 : 32; 42643e610bbSSunila Sahu uint64_t reserved_96_111 : 16; 42743e610bbSSunila Sahu uint64_t historylength : 16; 42843e610bbSSunila Sahu #endif /* Word 1 - End */ 42943e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 2 - Big Endian */ 43043e610bbSSunila Sahu /** Decompression Context Pointer Address */ 43143e610bbSSunila Sahu union zip_zptr_addr_s ctx_ptr_addr; 43243e610bbSSunila Sahu #else /* Word 2 - Little Endian */ 43343e610bbSSunila Sahu union zip_zptr_addr_s ctx_ptr_addr; 43443e610bbSSunila Sahu #endif /* Word 2 - End */ 43543e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 3 - Big Endian */ 43643e610bbSSunila Sahu /** Decompression Context Pointer Control */ 43743e610bbSSunila Sahu union zip_zptr_ctl_s ctx_ptr_ctl; 43843e610bbSSunila Sahu #else /* Word 3 - Little Endian */ 43943e610bbSSunila Sahu union zip_zptr_ctl_s ctx_ptr_ctl; 44043e610bbSSunila Sahu #endif /* Word 3 - End */ 44143e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 4 - Big Endian */ 44243e610bbSSunila Sahu /** Decompression history pointer address */ 44343e610bbSSunila Sahu union zip_zptr_addr_s his_ptr_addr; 44443e610bbSSunila Sahu #else /* Word 4 - Little Endian */ 44543e610bbSSunila Sahu union zip_zptr_addr_s his_ptr_addr; 44643e610bbSSunila Sahu #endif /* Word 4 - End */ 44743e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 5 - Big Endian */ 44843e610bbSSunila Sahu /** Decompression history pointer control */ 44943e610bbSSunila Sahu union zip_zptr_ctl_s his_ptr_ctl; 45043e610bbSSunila Sahu #else /* Word 5 - Little Endian */ 45143e610bbSSunila Sahu union zip_zptr_ctl_s his_ptr_ctl; 45243e610bbSSunila Sahu #endif /* Word 5 - End */ 45343e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 6 - Big Endian */ 45443e610bbSSunila Sahu /** Input and compression history pointer address */ 45543e610bbSSunila Sahu union zip_zptr_addr_s inp_ptr_addr; 45643e610bbSSunila Sahu #else /* Word 6 - Little Endian */ 45743e610bbSSunila Sahu union zip_zptr_addr_s inp_ptr_addr; 45843e610bbSSunila Sahu #endif /* Word 6 - End */ 45943e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 7 - Big Endian */ 46043e610bbSSunila Sahu /** Input and compression history pointer control */ 46143e610bbSSunila Sahu union zip_zptr_ctl_s inp_ptr_ctl; 46243e610bbSSunila Sahu #else /* Word 7 - Little Endian */ 46343e610bbSSunila Sahu union zip_zptr_ctl_s inp_ptr_ctl; 46443e610bbSSunila Sahu #endif /* Word 7 - End */ 46543e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 8 - Big Endian */ 46643e610bbSSunila Sahu /** Output pointer address */ 46743e610bbSSunila Sahu union zip_zptr_addr_s out_ptr_addr; 46843e610bbSSunila Sahu #else /* Word 8 - Little Endian */ 46943e610bbSSunila Sahu union zip_zptr_addr_s out_ptr_addr; 47043e610bbSSunila Sahu #endif /* Word 8 - End */ 47143e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 9 - Big Endian */ 47243e610bbSSunila Sahu /** Output pointer control */ 47343e610bbSSunila Sahu union zip_zptr_ctl_s out_ptr_ctl; 47443e610bbSSunila Sahu #else /* Word 9 - Little Endian */ 47543e610bbSSunila Sahu union zip_zptr_ctl_s out_ptr_ctl; 47643e610bbSSunila Sahu #endif /* Word 9 - End */ 47743e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 10 - Big Endian */ 47843e610bbSSunila Sahu /** Result pointer address */ 47943e610bbSSunila Sahu union zip_zptr_addr_s res_ptr_addr; 48043e610bbSSunila Sahu #else /* Word 10 - Little Endian */ 48143e610bbSSunila Sahu union zip_zptr_addr_s res_ptr_addr; 48243e610bbSSunila Sahu #endif /* Word 10 - End */ 48343e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 11 - Big Endian */ 48443e610bbSSunila Sahu /** Result pointer control */ 48543e610bbSSunila Sahu union zip_zptr_ctl_s res_ptr_ctl; 48643e610bbSSunila Sahu #else /* Word 11 - Little Endian */ 48743e610bbSSunila Sahu union zip_zptr_ctl_s res_ptr_ctl; 48843e610bbSSunila Sahu #endif /* Word 11 - End */ 48943e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 12 - Big Endian */ 49043e610bbSSunila Sahu /** reserved */ 49143e610bbSSunila Sahu uint64_t reserved_812_831 : 20; 49243e610bbSSunila Sahu /** SSO guest group */ 49343e610bbSSunila Sahu uint64_t ggrp : 10; 49443e610bbSSunila Sahu /** SSO tag type */ 49543e610bbSSunila Sahu uint64_t tt : 2; 49643e610bbSSunila Sahu /** SSO tag */ 49743e610bbSSunila Sahu uint64_t tag : 32; 49843e610bbSSunila Sahu #else /* Word 12 - Little Endian */ 49943e610bbSSunila Sahu uint64_t tag : 32; 50043e610bbSSunila Sahu uint64_t tt : 2; 50143e610bbSSunila Sahu uint64_t ggrp : 10; 50243e610bbSSunila Sahu uint64_t reserved_812_831 : 20; 50343e610bbSSunila Sahu #endif /* Word 12 - End */ 50443e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 13 - Big Endian */ 50543e610bbSSunila Sahu /** Work queue entry pointer */ 50643e610bbSSunila Sahu uint64_t wq_ptr : 64; 50743e610bbSSunila Sahu #else /* Word 13 - Little Endian */ 50843e610bbSSunila Sahu uint64_t wq_ptr : 64; 50943e610bbSSunila Sahu #endif /* Word 13 - End */ 51043e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 14 - Big Endian */ 51143e610bbSSunila Sahu /** reserved */ 51243e610bbSSunila Sahu uint64_t reserved_896_959 : 64; 51343e610bbSSunila Sahu #else /* Word 14 - Little Endian */ 51443e610bbSSunila Sahu uint64_t reserved_896_959 : 64; 51543e610bbSSunila Sahu #endif /* Word 14 - End */ 51643e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 15 - Big Endian */ 51743e610bbSSunila Sahu /** Hash structure pointer */ 51843e610bbSSunila Sahu uint64_t hash_ptr : 64; 51943e610bbSSunila Sahu #else /* Word 15 - Little Endian */ 52043e610bbSSunila Sahu uint64_t hash_ptr : 64; 52143e610bbSSunila Sahu #endif /* Word 15 - End */ 52243e610bbSSunila Sahu } /** ZIP 83xx Instruction Structure */s; 52343e610bbSSunila Sahu }; 52443e610bbSSunila Sahu 52543e610bbSSunila Sahu /** 52643e610bbSSunila Sahu * Structure zip_zres_s 52743e610bbSSunila Sahu * 52843e610bbSSunila Sahu * ZIP Result Structure 52943e610bbSSunila Sahu * The ZIP coprocessor writes the result structure after it completes the 53043e610bbSSunila Sahu * invocation. The result structure is exactly 24 bytes, and each invocation 53143e610bbSSunila Sahu * of the ZIP coprocessor produces exactly one result structure. 53243e610bbSSunila Sahu */ 53343e610bbSSunila Sahu union zip_zres_s { 53443e610bbSSunila Sahu /** This field can be used to set/clear all bits, or do bitwise 53543e610bbSSunila Sahu * operations over the entire structure. 53643e610bbSSunila Sahu */ 53743e610bbSSunila Sahu uint64_t u[8]; 53843e610bbSSunila Sahu /** ZIP Result Structure */ 53943e610bbSSunila Sahu struct zip_zres_s_s { 54043e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 0 - Big Endian */ 54143e610bbSSunila Sahu /** crc32 checksum of uncompressed stream */ 54243e610bbSSunila Sahu uint64_t crc32 : 32; 54343e610bbSSunila Sahu /** adler32 checksum of uncompressed stream*/ 54443e610bbSSunila Sahu uint64_t adler32 : 32; 54543e610bbSSunila Sahu #else /* Word 0 - Little Endian */ 54643e610bbSSunila Sahu uint64_t adler32 : 32; 54743e610bbSSunila Sahu uint64_t crc32 : 32; 54843e610bbSSunila Sahu #endif /* Word 0 - End */ 54943e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 1 - Big Endian */ 55043e610bbSSunila Sahu /** Total numer of Bytes produced in output stream */ 55143e610bbSSunila Sahu uint64_t totalbyteswritten : 32; 55243e610bbSSunila Sahu /** Total number of bytes processed from the input stream */ 55343e610bbSSunila Sahu uint64_t totalbytesread : 32; 55443e610bbSSunila Sahu #else /* Word 1 - Little Endian */ 55543e610bbSSunila Sahu uint64_t totalbytesread : 32; 55643e610bbSSunila Sahu uint64_t totalbyteswritten : 32; 55743e610bbSSunila Sahu #endif /* Word 1 - End */ 55843e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 2 - Big Endian */ 55943e610bbSSunila Sahu /** Total number of compressed input bits 56043e610bbSSunila Sahu * consumed to decompress all blocks in the file 56143e610bbSSunila Sahu */ 56243e610bbSSunila Sahu uint64_t totalbitsprocessed : 32; 56343e610bbSSunila Sahu /** Done interrupt*/ 56443e610bbSSunila Sahu uint64_t doneint : 1; 56543e610bbSSunila Sahu /** reserved */ 56643e610bbSSunila Sahu uint64_t reserved_155_158 : 4; 56743e610bbSSunila Sahu /** EXNUM */ 56843e610bbSSunila Sahu uint64_t exn : 3; 56943e610bbSSunila Sahu /** reserved */ 57043e610bbSSunila Sahu uint64_t reserved_151 : 1; 57143e610bbSSunila Sahu /** EXBITS */ 57243e610bbSSunila Sahu uint64_t exbits : 7; 57343e610bbSSunila Sahu /** reserved */ 57443e610bbSSunila Sahu uint64_t reserved_137_143 : 7; 57543e610bbSSunila Sahu /** End of file */ 57643e610bbSSunila Sahu uint64_t ef : 1; 57743e610bbSSunila Sahu /** Completion/error code */ 57843e610bbSSunila Sahu uint64_t compcode : 8; 57943e610bbSSunila Sahu #else /* Word 2 - Little Endian */ 58043e610bbSSunila Sahu uint64_t compcode : 8; 58143e610bbSSunila Sahu uint64_t ef : 1; 58243e610bbSSunila Sahu uint64_t reserved_137_143 : 7; 58343e610bbSSunila Sahu uint64_t exbits : 7; 58443e610bbSSunila Sahu uint64_t reserved_151 : 1; 58543e610bbSSunila Sahu uint64_t exn : 3; 58643e610bbSSunila Sahu uint64_t reserved_155_158 : 4; 58743e610bbSSunila Sahu uint64_t doneint : 1; 58843e610bbSSunila Sahu uint64_t totalbitsprocessed : 32; 58943e610bbSSunila Sahu #endif /* Word 2 - End */ 59043e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 3 - Big Endian */ 59143e610bbSSunila Sahu /** reserved */ 59243e610bbSSunila Sahu uint64_t reserved_253_255 : 3; 59343e610bbSSunila Sahu /** Hash length in bytes */ 59443e610bbSSunila Sahu uint64_t hshlen : 61; 59543e610bbSSunila Sahu #else /* Word 3 - Little Endian */ 59643e610bbSSunila Sahu uint64_t hshlen : 61; 59743e610bbSSunila Sahu uint64_t reserved_253_255 : 3; 59843e610bbSSunila Sahu #endif /* Word 3 - End */ 59943e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 4 - Big Endian */ 60043e610bbSSunila Sahu /** Double-word 0 of computed hash */ 60143e610bbSSunila Sahu uint64_t hash0 : 64; 60243e610bbSSunila Sahu #else /* Word 4 - Little Endian */ 60343e610bbSSunila Sahu uint64_t hash0 : 64; 60443e610bbSSunila Sahu #endif /* Word 4 - End */ 60543e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 5 - Big Endian */ 60643e610bbSSunila Sahu /** Double-word 1 of computed hash */ 60743e610bbSSunila Sahu uint64_t hash1 : 64; 60843e610bbSSunila Sahu #else /* Word 5 - Little Endian */ 60943e610bbSSunila Sahu uint64_t hash1 : 64; 61043e610bbSSunila Sahu #endif /* Word 5 - End */ 61143e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 6 - Big Endian */ 61243e610bbSSunila Sahu /** Double-word 2 of computed hash */ 61343e610bbSSunila Sahu uint64_t hash2 : 64; 61443e610bbSSunila Sahu #else /* Word 6 - Little Endian */ 61543e610bbSSunila Sahu uint64_t hash2 : 64; 61643e610bbSSunila Sahu #endif /* Word 6 - End */ 61743e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 7 - Big Endian */ 61843e610bbSSunila Sahu /** Double-word 3 of computed hash */ 61943e610bbSSunila Sahu uint64_t hash3 : 64; 62043e610bbSSunila Sahu #else /* Word 7 - Little Endian */ 62143e610bbSSunila Sahu uint64_t hash3 : 64; 62243e610bbSSunila Sahu #endif /* Word 7 - End */ 62343e610bbSSunila Sahu } /** ZIP Result Structure */s; 62443e610bbSSunila Sahu }; 62543e610bbSSunila Sahu 62643e610bbSSunila Sahu /** 62743e610bbSSunila Sahu * Structure zip_zptr_s 62843e610bbSSunila Sahu * 62943e610bbSSunila Sahu * ZIP Generic Pointer Structure 63043e610bbSSunila Sahu * This structure is the generic format of pointers in ZIP_INST_S. 63143e610bbSSunila Sahu */ 63243e610bbSSunila Sahu union zip_zptr_s { 63343e610bbSSunila Sahu /** This field can be used to set/clear all bits, or do bitwise 63443e610bbSSunila Sahu * operations over the entire structure. 63543e610bbSSunila Sahu */ 63643e610bbSSunila Sahu uint64_t u[2]; 63743e610bbSSunila Sahu /** ZIP Generic Pointer Structure */ 63843e610bbSSunila Sahu struct zip_zptr_s_s { 63943e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 0 - Big Endian */ 64043e610bbSSunila Sahu /** Pointer to Data or scatter-gather list */ 64143e610bbSSunila Sahu uint64_t addr : 64; 64243e610bbSSunila Sahu #else /* Word 0 - Little Endian */ 64343e610bbSSunila Sahu uint64_t addr : 64; 64443e610bbSSunila Sahu #endif /* Word 0 - End */ 64543e610bbSSunila Sahu #if defined(__BIG_ENDIAN_BITFIELD) /* Word 1 - Big Endian */ 64643e610bbSSunila Sahu /** reserved */ 64743e610bbSSunila Sahu uint64_t reserved_112_127 : 16; 64843e610bbSSunila Sahu /** Length of Data or scatter-gather list*/ 64943e610bbSSunila Sahu uint64_t length : 16; 65043e610bbSSunila Sahu /** reserved */ 65143e610bbSSunila Sahu uint64_t reserved_67_95 : 29; 65243e610bbSSunila Sahu /** Full-block write */ 65343e610bbSSunila Sahu uint64_t fw : 1; 65443e610bbSSunila Sahu /** No cache allocation */ 65543e610bbSSunila Sahu uint64_t nc : 1; 65643e610bbSSunila Sahu /** reserved */ 65743e610bbSSunila Sahu uint64_t data_be : 1; 65843e610bbSSunila Sahu #else /* Word 1 - Little Endian */ 65943e610bbSSunila Sahu uint64_t data_be : 1; 66043e610bbSSunila Sahu uint64_t nc : 1; 66143e610bbSSunila Sahu uint64_t fw : 1; 66243e610bbSSunila Sahu uint64_t reserved_67_95 : 29; 66343e610bbSSunila Sahu uint64_t length : 16; 66443e610bbSSunila Sahu uint64_t reserved_112_127 : 16; 66543e610bbSSunila Sahu #endif /* Word 1 - End */ 66643e610bbSSunila Sahu } /** ZIP Generic Pointer Structure */s; 66743e610bbSSunila Sahu }; 66843e610bbSSunila Sahu 66943e610bbSSunila Sahu /** 67043e610bbSSunila Sahu * Enumeration zip_comp_e 67143e610bbSSunila Sahu * 67243e610bbSSunila Sahu * ZIP Completion Enumeration 67343e610bbSSunila Sahu * Enumerates the values of ZIP_ZRES_S[COMPCODE]. 67443e610bbSSunila Sahu */ 67543e610bbSSunila Sahu #define ZIP_COMP_E_NOTDONE (0) 67643e610bbSSunila Sahu #define ZIP_COMP_E_SUCCESS (1) 67743e610bbSSunila Sahu #define ZIP_COMP_E_DTRUNC (2) 67843e610bbSSunila Sahu #define ZIP_COMP_E_DSTOP (3) 67943e610bbSSunila Sahu #define ZIP_COMP_E_ITRUNC (4) 68043e610bbSSunila Sahu #define ZIP_COMP_E_RBLOCK (5) 68143e610bbSSunila Sahu #define ZIP_COMP_E_NLEN (6) 68243e610bbSSunila Sahu #define ZIP_COMP_E_BADCODE (7) 68343e610bbSSunila Sahu #define ZIP_COMP_E_BADCODE2 (8) 68443e610bbSSunila Sahu #define ZIP_COMP_E_ZERO_LEN (9) 68543e610bbSSunila Sahu #define ZIP_COMP_E_PARITY (0xa) 68643e610bbSSunila Sahu #define ZIP_COMP_E_FATAL (0xb) 68743e610bbSSunila Sahu #define ZIP_COMP_E_TIMEOUT (0xc) 68843e610bbSSunila Sahu #define ZIP_COMP_E_INSTR_ERR (0xd) 68943e610bbSSunila Sahu #define ZIP_COMP_E_HCTX_ERR (0xe) 690*938f3f5fSMahipal Challa #define ZIP_COMP_E_PTR_ERR (0xf) 69143e610bbSSunila Sahu #define ZIP_COMP_E_STOP (3) 69243e610bbSSunila Sahu 69343e610bbSSunila Sahu /** 69443e610bbSSunila Sahu * Enumeration zip_op_e 69543e610bbSSunila Sahu * 69643e610bbSSunila Sahu * ZIP Operation Enumeration 69743e610bbSSunila Sahu * Enumerates ZIP_INST_S[OP]. 69843e610bbSSunila Sahu * Internal: 69943e610bbSSunila Sahu */ 70043e610bbSSunila Sahu #define ZIP_OP_E_DECOMP (0) 70143e610bbSSunila Sahu #define ZIP_OP_E_NOCOMP (1) 70243e610bbSSunila Sahu #define ZIP_OP_E_COMP (2) 70343e610bbSSunila Sahu 70443e610bbSSunila Sahu /** 70543e610bbSSunila Sahu * Enumeration zip compression levels 70643e610bbSSunila Sahu * 70743e610bbSSunila Sahu * ZIP Compression Level Enumeration 70843e610bbSSunila Sahu * Enumerates ZIP_INST_S[SS]. 70943e610bbSSunila Sahu * Internal: 71043e610bbSSunila Sahu */ 71143e610bbSSunila Sahu #define ZIP_COMP_E_LEVEL_MAX (0) 71243e610bbSSunila Sahu #define ZIP_COMP_E_LEVEL_MED (1) 71343e610bbSSunila Sahu #define ZIP_COMP_E_LEVEL_LOW (2) 71443e610bbSSunila Sahu #define ZIP_COMP_E_LEVEL_MIN (3) 71543e610bbSSunila Sahu 71643e610bbSSunila Sahu #endif /* _RTE_ZIP_REGS_H_ */ 717