Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ jobs:
echo "GITHUB_WORKSPACE: $GITHUB_WORKSPACE"
git config --global --add safe.directory "$GITHUB_WORKSPACE"
git config --global --add safe.directory "$GITHUB_WORKSPACE/lib/dmod"
git config --global --add safe.directory "$GITHUB_WORKSPACE/lib/dmod/lib/third-party/dmcomp"
git config --global --add safe.directory "$GITHUB_WORKSPACE/lib/dmlog"

- name: Initialize and update submodules
Expand Down Expand Up @@ -168,6 +169,7 @@ jobs:
run: |
git config --global --add safe.directory "$GITHUB_WORKSPACE"
git config --global --add safe.directory "$GITHUB_WORKSPACE/lib/dmod"
git config --global --add safe.directory "$GITHUB_WORKSPACE/lib/dmod/lib/third-party/dmcomp"
git config --global --add safe.directory "$GITHUB_WORKSPACE/lib/dmlog"

- name: Initialize and update submodules
Expand Down
10 changes: 7 additions & 3 deletions docs/external-flash.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,9 +77,13 @@ For this board:
`umount`, `ymodem`, `tty`, `mklittlefs`, and `automount`, which mounts the SD card (see below). The root file system
`/` is a read-only dmffs embedded in the image (it holds `/mnt`); `/tmp` is a RAM file system (`dmramfs` on `/ext`,
mounted by `/ext/cfg/services/board/tmp.ini`), so nothing can be written before `/ext` is up. Built with
`-DCMAKE_BUILD_TYPE=MinSizeRel` the image is about 382 kB
(160 kB of it the core of the firmware); the `Debug` build type has no optimization at all and the same image is about
485 kB.
`-DCMAKE_BUILD_TYPE=MinSizeRel` the image is about 347 kB: 161 kB of the core of the firmware (the decoder of the
`deflate` compression included), 178 kB of the modules, 5 kB of the configuration. The modules of the registry are
compressed with DEFLATE (it was FastLZ; 32 of the 35 modules, the other three - `dmini`, `dmhaman`, `dm_sw_ring` - still
are): 178 kB instead of 216 kB. The tools that unpack them have to know `deflate` too - `dmf-get` and `todmp` of
dmod 8264cbb or newer; an older `dmf-get` does not fail, it takes the previous (FastLZ) release of the module. The
`Debug` build type has no optimization at all, and its image is bigger (about 485 kB, measured before the modules were
compressed with DEFLATE).
- **Everything else is on `/ext`** (`ext.dmd`, `configs/common/tools.dmd`): the shell tools (`ps`, `cat`, `catini`,
`mkdir`, `reboot`, `memory`, `service`, `rm`, `tree`, ...), the Ethernet and Wi-Fi stacks,
telnetd, the crypto/secrets modules, the RTC and UTC/NTP, the SD card driver and its file system (dmsdio, dmfatfs,
Expand Down
2 changes: 1 addition & 1 deletion lib/dmod
Submodule dmod updated 50 files
+8 −0 .github/workflows/ci.yml
+2 −0 .github/workflows/debian-package.yml
+3 −0 .gitmodules
+3 −0 CMakeLists.txt
+10 −0 Docker/build.sh
+4 −0 cmake/runtime/CMakeLists.txt
+13 −0 dmod-cfg.cmake
+4 −0 dmod-cfg.mk
+2 −0 dmod-config.h.in
+14 −0 dmod-defaults.cmake
+14 −0 dmod-defaults.mk
+1 −1 docs/cmake-functions.md
+1 −1 docs/development-package.md
+6 −3 docs/tools-installation.md
+3 −0 examples/system/dif_test/Makefile
+2 −0 examples/system/dif_test/dmod-cfg.mk
+3 −0 examples/system/dmod_loader/Makefile
+2 −0 examples/system/dmod_loader/dmod-cfg.mk
+1 −0 inc/dmod.h
+69 −0 inc/dmod_sal.h
+2 −1 lib/third-party/CMakeLists.txt
+1 −1 lib/third-party/Makefile
+1 −0 lib/third-party/dmcomp
+36 −0 lib/third-party/dmod_dmcomp/CMakeLists.txt
+36 −0 lib/third-party/dmod_dmcomp/Makefile
+8 −0 lib/third-party/dmod_dmcomp/README.md
+3 −0 paths.cmake
+8 −0 scripts/install-sdk.cmake
+3 −0 scripts/system-tool.mk
+2 −0 src/system/CMakeLists.txt
+4 −1 src/system/Makefile
+27 −0 src/system/dmod_system.c
+54 −3 src/system/if/dmod_if_comp.c
+29 −0 src/system/if/dmod_if_firmware.c
+68 −1 src/system/if/dmod_if_str.c
+13 −0 templates/system/dmod-cfg.cmake
+4 −0 templates/system/dmod-cfg.mk
+1 −1 tests/CMakeLists.txt
+4 −0 tests/system/if/CMakeLists.txt
+186 −0 tests/system/if/tests_dmod_compression.cpp
+34 −0 tests/system/if/tests_dmod_firmware.cpp
+76 −0 tests/system/if/tests_dmod_module_exists.cpp
+157 −0 tests/system/if/tests_dmod_str_merge.cpp
+1 −0 tests/system/public/CMakeLists.txt
+76 −0 tests/system/public/tests_dmod_dmfc_deflate.cpp
+2 −0 tools/system/todmd/dmod-cfg.mk
+9 −2 tools/system/todmfc/README.md
+2 −0 tools/system/todmfc/dmod-cfg.mk
+5 −2 tools/system/todmfc/main.c
+2 −0 tools/system/todmm/dmod-cfg.mk
Loading