xref: /linux/lib/xz/Kconfig (revision 3a39d672e7f48b8d6b91a09afa4b55352773b4b5)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
224fa0402SLasse Collinconfig XZ_DEC
324fa0402SLasse Collin	tristate "XZ decompression support"
424fa0402SLasse Collin	select CRC32
524fa0402SLasse Collin	help
624fa0402SLasse Collin	  LZMA2 compression algorithm and BCJ filters are supported using
724fa0402SLasse Collin	  the .xz file format as the container. For integrity checking,
8ff221153SLasse Collin	  CRC32 is supported. See Documentation/staging/xz.rst for more
9ff221153SLasse Collin	  information.
1024fa0402SLasse Collin
119d749629SFlorian Fainelliif XZ_DEC
129d749629SFlorian Fainelli
1324fa0402SLasse Collinconfig XZ_DEC_X86
14bf4d064dSLasse Collin	bool "x86 BCJ filter decoder" if EXPERT
15bf4d064dSLasse Collin	default y
1624fa0402SLasse Collin	select XZ_DEC_BCJ
1724fa0402SLasse Collin
1824fa0402SLasse Collinconfig XZ_DEC_POWERPC
19bf4d064dSLasse Collin	bool "PowerPC BCJ filter decoder" if EXPERT
20bf4d064dSLasse Collin	default y
2124fa0402SLasse Collin	select XZ_DEC_BCJ
2224fa0402SLasse Collin
2324fa0402SLasse Collinconfig XZ_DEC_ARM
24bf4d064dSLasse Collin	bool "ARM BCJ filter decoder" if EXPERT
25bf4d064dSLasse Collin	default y
2624fa0402SLasse Collin	select XZ_DEC_BCJ
2724fa0402SLasse Collin
2824fa0402SLasse Collinconfig XZ_DEC_ARMTHUMB
29bf4d064dSLasse Collin	bool "ARM-Thumb BCJ filter decoder" if EXPERT
30bf4d064dSLasse Collin	default y
3124fa0402SLasse Collin	select XZ_DEC_BCJ
3224fa0402SLasse Collin
334b62813fSLasse Collinconfig XZ_DEC_ARM64
344b62813fSLasse Collin	bool "ARM64 BCJ filter decoder" if EXPERT
354b62813fSLasse Collin	default y
364b62813fSLasse Collin	select XZ_DEC_BCJ
374b62813fSLasse Collin
3824fa0402SLasse Collinconfig XZ_DEC_SPARC
39bf4d064dSLasse Collin	bool "SPARC BCJ filter decoder" if EXPERT
40bf4d064dSLasse Collin	default y
4124fa0402SLasse Collin	select XZ_DEC_BCJ
4224fa0402SLasse Collin
43*93d09773SLasse Collinconfig XZ_DEC_RISCV
44*93d09773SLasse Collin	bool "RISC-V BCJ filter decoder" if EXPERT
45*93d09773SLasse Collin	default y
46*93d09773SLasse Collin	select XZ_DEC_BCJ
47*93d09773SLasse Collin
48aaa2975fSLasse Collinconfig XZ_DEC_MICROLZMA
49aaa2975fSLasse Collin	bool "MicroLZMA decoder"
50aaa2975fSLasse Collin	default n
51aaa2975fSLasse Collin	help
52aaa2975fSLasse Collin	  MicroLZMA is a header format variant where the first byte
53aaa2975fSLasse Collin	  of a raw LZMA stream (without the end of stream marker) has
54aaa2975fSLasse Collin	  been replaced with a bitwise-negation of the lc/lp/pb
55aaa2975fSLasse Collin	  properties byte. MicroLZMA was created to be used in EROFS
56aaa2975fSLasse Collin	  but can be used by other things too where wasting minimal
57aaa2975fSLasse Collin	  amount of space for headers is important.
58aaa2975fSLasse Collin
59aaa2975fSLasse Collin	  Unless you know that you need this, say N.
60aaa2975fSLasse Collin
619d749629SFlorian Fainelliendif
629d749629SFlorian Fainelli
6324fa0402SLasse Collinconfig XZ_DEC_BCJ
6424fa0402SLasse Collin	bool
6524fa0402SLasse Collin	default n
6624fa0402SLasse Collin
6724fa0402SLasse Collinconfig XZ_DEC_TEST
6824fa0402SLasse Collin	tristate "XZ decompressor tester"
6924fa0402SLasse Collin	default n
7024fa0402SLasse Collin	depends on XZ_DEC
7124fa0402SLasse Collin	help
7224fa0402SLasse Collin	  This allows passing .xz files to the in-kernel XZ decoder via
7324fa0402SLasse Collin	  a character special file. It calculates CRC32 of the decompressed
7424fa0402SLasse Collin	  data and writes diagnostics to the system log.
7524fa0402SLasse Collin
7624fa0402SLasse Collin	  Unless you are developing the XZ decoder, you don't need this
7724fa0402SLasse Collin	  and should say N.
78