From patchwork Thu Apr 25 16:07:41 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Marek_Beh=C3=BAn?= X-Patchwork-Id: 1090963 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=nic.cz Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; secure) header.d=nic.cz header.i=@nic.cz header.b="S5nt5rvQ"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 44qht73DFCz9s3q for ; Fri, 26 Apr 2019 02:07:57 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id 85F63C21E29; Thu, 25 Apr 2019 16:07:51 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 6B2B2C21D56; Thu, 25 Apr 2019 16:07:48 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id D7C03C21D65; Thu, 25 Apr 2019 16:07:46 +0000 (UTC) Received: from mail.nic.cz (mail.nic.cz [217.31.204.67]) by lists.denx.de (Postfix) with ESMTPS id 90545C21C51 for ; Thu, 25 Apr 2019 16:07:46 +0000 (UTC) Received: from dellmb.labs.office.nic.cz (unknown [172.20.6.125]) by mail.nic.cz (Postfix) with ESMTP id 56E8C63690; Thu, 25 Apr 2019 18:07:45 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=nic.cz; s=default; t=1556208465; bh=KYbJmxiOa4JPaUoPurGh/gc7CvR69dfaIqNCJaaWozY=; h=From:To:Date; b=S5nt5rvQRMMn5sRUCSl+/9JcwSqXzd0SKk8IPHGbTDJPjmTc6T2ZpTMD08mgafHC2 Gqcd2loN/Q+DZOLVTIEGXxABi7ZzBiDpuhsoJOF6a14mJ7inT926Mw7HYTZ9Vi3yIx vUeC8LsLpNjpWKpGeJ6VGS0na1I5foemS/x50Rj4= From: =?utf-8?q?Marek_Beh=C3=BAn?= To: u-boot@lists.denx.de Date: Thu, 25 Apr 2019 18:07:41 +0200 Message-Id: <20190425160744.6079-1-marek.behun@nic.cz> X-Mailer: git-send-email 2.21.0 MIME-Version: 1.0 X-Virus-Scanned: clamav-milter 0.99.2 at mail X-Virus-Status: Clean Cc: Tom Rini , =?utf-8?q?Alberto_S=C3=A1nchez_Molero?= , Yevgeny Popovych , Stefan Roese Subject: [U-Boot] [PATCH v1 0/3] fs: btrfs: Add zstd decompression support X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Hi, zstd has been enabled in kernel btrfs driver for over a year, it is time we support this also in U-Boot. This xxhash and zstd library are imported from kernel with minimal changes. This was tested on ARM target (Turris Omnia). Marek Marek BehĂșn (3): lib: Add xxhash support lib: add Zstandard decompression support fs: btrfs: add zstd decompression support fs/btrfs/Kconfig | 1 + fs/btrfs/btrfs_tree.h | 5 +- fs/btrfs/compression.c | 59 + include/linux/xxhash.h | 259 ++++ include/linux/zstd.h | 1157 +++++++++++++++++ lib/Kconfig | 15 + lib/Makefile | 2 + lib/xxhash.c | 497 ++++++++ lib/zstd/Makefile | 4 + lib/zstd/bitstream.h | 374 ++++++ lib/zstd/decompress.c | 2525 +++++++++++++++++++++++++++++++++++++ lib/zstd/entropy_common.c | 243 ++++ lib/zstd/error_private.h | 53 + lib/zstd/fse.h | 575 +++++++++ lib/zstd/fse_decompress.c | 332 +++++ lib/zstd/huf.h | 212 ++++ lib/zstd/huf_decompress.c | 960 ++++++++++++++ lib/zstd/mem.h | 152 +++ lib/zstd/zstd_common.c | 75 ++ lib/zstd/zstd_internal.h | 263 ++++ lib/zstd/zstd_opt.h | 1014 +++++++++++++++ 21 files changed, 8775 insertions(+), 2 deletions(-) create mode 100644 include/linux/xxhash.h create mode 100644 include/linux/zstd.h create mode 100644 lib/xxhash.c create mode 100644 lib/zstd/Makefile create mode 100644 lib/zstd/bitstream.h create mode 100644 lib/zstd/decompress.c create mode 100644 lib/zstd/entropy_common.c create mode 100644 lib/zstd/error_private.h create mode 100644 lib/zstd/fse.h create mode 100644 lib/zstd/fse_decompress.c create mode 100644 lib/zstd/huf.h create mode 100644 lib/zstd/huf_decompress.c create mode 100644 lib/zstd/mem.h create mode 100644 lib/zstd/zstd_common.c create mode 100644 lib/zstd/zstd_internal.h create mode 100644 lib/zstd/zstd_opt.h