Skip to content

Commit 728e322

Browse files
committed
manifest: optional: move lz4 to external
Move lz4 to become external module. It is not in the default manifest anymore (through submanifests) and will need to be added if application requires it per the docs. Samples will be moved to the module itself. Signed-off-by: Anas Nashif <anas.nashif@intel.com>
1 parent 084cda2 commit 728e322

File tree

12 files changed

+51
-317
lines changed

12 files changed

+51
-317
lines changed

MAINTAINERS.yml

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5539,16 +5539,6 @@ West:
55395539
labels:
55405540
- "area: LVGL"
55415541

5542-
"West project: lz4":
5543-
status: odd fixes
5544-
collaborators:
5545-
- parthitce
5546-
files:
5547-
- modules/lz4/
5548-
- samples/modules/compression/lz4/
5549-
labels:
5550-
- "area: Compression"
5551-
55525542
"West project: mbedtls":
55535543
status: maintained
55545544
maintainers:

doc/develop/manifest/external/lz4.rst

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
.. _external_module_lz4:
2+
3+
LZ4 - Extremely fast compression
4+
################################
5+
6+
Introduction
7+
************
8+
9+
LZ4 is a lossless compression algorithm, providing compression speed greater
10+
than 500 MB/s per core, scalable with multi-core CPUs. It features an
11+
extremely fast decoder, with speed in multiple GB/s per core, typically
12+
reaching RAM speed limits on multi-core systems.
13+
14+
Speed can be tuned dynamically by selecting an "acceleration" factor, which
15+
trades compression ratio for faster speed. On the other end, a high
16+
compression derivative, LZ4_HC, is also provided, trading CPU time for
17+
improved compression ratio. All versions feature the same decompression speed.
18+
19+
LZ4 is also compatible with dictionary compression, both at API and CLI
20+
levels. It can ingest any input file as a dictionary, though only the final
21+
64KB are used. This capability can be combined
22+
23+
24+
Usage with Zephyr
25+
*****************
26+
27+
To pull in lz4 as a Zephyr module, either add it as a West project in the ``west.yaml``
28+
file or pull it in by adding a submanifest (e.g. ``zephyr/submanifests/lz4.yaml``) file
29+
with the following content and run ``west update``:
30+
31+
.. code-block:: yaml
32+
33+
manifest:
34+
projects:
35+
- name: lz4
36+
url: https://github.com/zephyrproject-rtos/lz4
37+
revision: main
38+
path: modules/lib/lz4 # adjust the path as needed
39+
40+
For more detailed instructions and API documentation, refer to the `lz4 documentation`_ as
41+
well as the provided `lz4 examples`_.
42+
43+
44+
Reference
45+
*********
46+
47+
.. _lz4 documentation:
48+
https://github.com/lz4/lz4/tree/dev/doc
49+
50+
.. _lz4 examples:
51+
https://github.com/zephyrproject-rtos/lz4/tree/zephyr/zephyr/samples

modules/Kconfig

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -93,9 +93,6 @@ comment "Trusted-firmware-a module not available."
9393
comment "Nanopb module not available."
9494
depends on !ZEPHYR_NANOPB_MODULE
9595

96-
comment "Lz4 module not available."
97-
depends on !ZEPHYR_LZ4_MODULE
98-
9996
comment "loramac-node module not available."
10097
depends on !ZEPHYR_LORAMAC_NODE_MODULE
10198

modules/lz4/CMakeLists.txt

Lines changed: 0 additions & 46 deletions
This file was deleted.

modules/lz4/Kconfig

Lines changed: 0 additions & 102 deletions
This file was deleted.

samples/modules/compression/compression.rst

Lines changed: 0 additions & 3 deletions
This file was deleted.

samples/modules/compression/lz4/CMakeLists.txt

Lines changed: 0 additions & 8 deletions
This file was deleted.

samples/modules/compression/lz4/README.rst

Lines changed: 0 additions & 30 deletions
This file was deleted.

samples/modules/compression/lz4/prj.conf

Lines changed: 0 additions & 4 deletions
This file was deleted.

samples/modules/compression/lz4/sample.yaml

Lines changed: 0 additions & 24 deletions
This file was deleted.

0 commit comments

Comments
 (0)