1/* SPDX-License-Identifier: GPL-2.0-only */
2/*
3 * Copyright (C) 2018 Chelsio Communications. All rights reserved.
4 */
5
6#ifndef __CUDBG_ZLIB_H__
7#define __CUDBG_ZLIB_H__
8
9#include <linux/zlib.h>
10
11#define CUDBG_ZLIB_COMPRESS_ID 17
12#define CUDBG_ZLIB_WIN_BITS 12
13#define CUDBG_ZLIB_MEM_LVL 4
14
15struct cudbg_compress_hdr {
16 u32 compress_id;
17 u64 decompress_size;
18 u64 compress_size;
19 u64 rsvd[32];
20};
21
22static inline int cudbg_get_workspace_size(void)
23{
24 return zlib_deflate_workspacesize(CUDBG_ZLIB_WIN_BITS,
25 CUDBG_ZLIB_MEM_LVL);
26}
27
28int cudbg_compress_buff(struct cudbg_init *pdbg_init,
29 struct cudbg_buffer *pin_buff,
30 struct cudbg_buffer *pout_buff);
31#endif /* __CUDBG_ZLIB_H__ */
32

source code of linux/drivers/net/ethernet/chelsio/cxgb4/cudbg_zlib.h