xref: /linux/lib/xz/Kconfig (revision e7d759f31ca295d589f7420719c311870bb3166f)
1# SPDX-License-Identifier: GPL-2.0-only
2config XZ_DEC
3	tristate "XZ decompression support"
4	select CRC32
5	help
6	  LZMA2 compression algorithm and BCJ filters are supported using
7	  the .xz file format as the container. For integrity checking,
8	  CRC32 is supported. See Documentation/staging/xz.rst for more information.
9
10if XZ_DEC
11
12config XZ_DEC_X86
13	bool "x86 BCJ filter decoder" if EXPERT
14	default y
15	select XZ_DEC_BCJ
16
17config XZ_DEC_POWERPC
18	bool "PowerPC BCJ filter decoder" if EXPERT
19	default y
20	select XZ_DEC_BCJ
21
22config XZ_DEC_ARM
23	bool "ARM BCJ filter decoder" if EXPERT
24	default y
25	select XZ_DEC_BCJ
26
27config XZ_DEC_ARMTHUMB
28	bool "ARM-Thumb BCJ filter decoder" if EXPERT
29	default y
30	select XZ_DEC_BCJ
31
32config XZ_DEC_SPARC
33	bool "SPARC BCJ filter decoder" if EXPERT
34	default y
35	select XZ_DEC_BCJ
36
37config XZ_DEC_MICROLZMA
38	bool "MicroLZMA decoder"
39	default n
40	help
41	  MicroLZMA is a header format variant where the first byte
42	  of a raw LZMA stream (without the end of stream marker) has
43	  been replaced with a bitwise-negation of the lc/lp/pb
44	  properties byte. MicroLZMA was created to be used in EROFS
45	  but can be used by other things too where wasting minimal
46	  amount of space for headers is important.
47
48	  Unless you know that you need this, say N.
49
50endif
51
52config XZ_DEC_BCJ
53	bool
54	default n
55
56config XZ_DEC_TEST
57	tristate "XZ decompressor tester"
58	default n
59	depends on XZ_DEC
60	help
61	  This allows passing .xz files to the in-kernel XZ decoder via
62	  a character special file. It calculates CRC32 of the decompressed
63	  data and writes diagnostics to the system log.
64
65	  Unless you are developing the XZ decoder, you don't need this
66	  and should say N.
67