Commit Graph

2375 Commits

Author SHA1 Message Date
Gerwin Klein 7ce8ef4ef8 docs/Makefile: use svg directly
Apparently pandoc is good enough to be able to use svg directly for pdf
output.

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2025-07-15 19:53:41 +10:00
June Andronick b658d660c9 adding img png and update dep5
Signed-off-by: June Andronick <june.andronick@proofcraft.systems>
2025-07-15 19:53:41 +10:00
June Andronick ae1e4d2acf change echo png to svg
Signed-off-by: June Andronick <june.andronick@proofcraft.systems>
2025-07-15 19:53:41 +10:00
Gerwin Klein f3ef900d33 docs: provide two more anchors for tutorials
Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2025-07-15 16:57:53 +10:00
Gerwin Klein 1503c41347 docs: update host dependencies link
Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2025-07-11 20:02:44 +10:00
Gerwin Klein fe820f94c7 docs: add anchor to component terminology def
So it can be referenced in the tutorial.

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2025-07-11 20:02:44 +10:00
Gerwin Klein d645cbd3a2 manual: fix links
Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2025-07-10 19:02:41 +10:00
Gerwin Klein 380ebf961c docs: fix typos
- Change SIMULATE to SIMULATION. The instructions only worked by
  accident, because SIMULAITON is on by default.
- spelling

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2025-07-02 11:10:04 +01:00
Gerwin Klein eb545b0791 github: use central CI workflows
Use GitHub workflow_call feature to reduce workflow duplication.

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2025-03-17 11:00:10 +11:00
Kent McLeod 977c14bdd0 libsel4camkes: Define AT_PAGESZ in aux vector
This is required to be provided by the C runtime.

Signed-off-by: Kent McLeod <kent@kry10.com>
2025-02-28 12:10:42 +11:00
Kent McLeod 5df01a2a02 libsel4camkes: Update musl lib
New version of musllibc introduced time32 infrastructure

Signed-off-by: Kent McLeod <kent@kry10.com>
2025-02-28 12:10:42 +11:00
Gerwin Klein 9c7c211cc4 github: pin Ubuntu 22.04 for deployment step
Python 3.12 in Ubuntu 24.04 has incompatible packages.

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2024-12-19 17:41:41 +11:00
seL4 CI 5dd53c71f7 Update VERSION file to camkes-3.11.0-dev
Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2024-07-01 21:44:31 +10:00
Gerwin Klein 0863c1447f
recreate camkes-3.11.0 release state
This reverts commit 0f02fe2d18 to get CI
to trigger on the release commit state.

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2024-07-01 18:35:32 +10:00
seL4 CI 0f02fe2d18
Update VERSION file to camkes-3.11.0-dev
Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2024-07-01 17:41:07 +10:00
seL4 CI c7e778145c
Release camkes-3.11.0
Update VERSION
Update CHANGES.md

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2024-07-01 17:41:06 +10:00
Gerwin Klein c77562e389 github: ignore 403 for jinja in link check
http://jinja.pocoo.org/docs/ produces 403 for the link checker, but
works in the browser.

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2024-07-01 13:54:56 +10:00
Gerwin Klein 47814a1f19 camkes-deps: fully remove orderedset; bump version
- commit 4f7bca1931 replaced orderedset by the maintained ordered-set,
but did no yet remove the dependency. Since on more recent python
version the dependency install now fails, we are removing it completely.

- make python 3 requirement explicit

To be released on PyPi simultaneously with the next CAmkES release.

Closes #124

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2024-07-01 13:54:56 +10:00
Gerwin Klein cfa9e602b8 CHANGES: bring up to date for upcoming release
Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2024-07-01 12:31:53 +10:00
Gerwin Klein c329084755 CHANGES: clean up markdown
Make sure text is rendered correctly on different markdown engines.

- avoid bare URLs
- consistent list indent and spacing
- consistent heading style
- use level-2 head for release

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2024-07-01 12:31:53 +10:00
Gerwin Klein fab6a96ac4 CHANGES: rename into CHANGES.md
so that GitHub properly renders the file as markdown.

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2024-07-01 12:31:53 +10:00
Gerwin Klein f7be6b4fbd trivial: python style fix
Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2024-06-17 19:29:57 +10:00
Axel Heider df9fe69e3f python: sanitize number formatting
- Fix the calculation of leading zeros. Using "int(log10(cnt + 1)) + 1"
  is broken, it evaluates to 2 for cnt=9, and thus results in the
  strings "00"-"08". Using "1 if (n <= 1) else (1 + int(log10(n - 1)))"
  seems overly complicated here, so a naive and readable way is used.
- switch to f-strings

Signed-off-by: Axel Heider <axelheider@gmx.de>
2024-06-17 19:29:57 +10:00
Axel Heider 5f7ddffb81 trivial: remove trailing whitespace
Signed-off-by: Axel Heider <axelheider@gmx.de>
2024-06-17 19:29:57 +10:00
Damon Lee 9164cfac49 libsel4camkes: Add markdown documentation
This commit adds documentation written in markdown that explains each
part of the libsel4camkes library in more depth.

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2024-06-17 15:13:37 +10:00
Gerwin Klein f0fb22be4e
github: enable deployment test for all platforms (#144)
These boards are now available and should be working.

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2024-02-08 19:07:01 +11:00
Gerwin Klein 1d092ed2f7
github: bump actions to node20 (#142)
GitHub has started issuing warnings for node16 actions.

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2024-02-07 15:17:15 +11:00
Gerwin Klein e35d4fe621 visualCAmkES: recommend homebrew for Mac graphviz
The link previously used did not provide binaries any more.

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2024-02-07 15:10:02 +11:00
Gerwin Klein ba06a29d14 visualCAmkES: markdown lint for README
Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2024-02-07 15:10:02 +11:00
Gerwin Klein 11ec2e9da4
remove obsolete LICENSE_BSD2.txt file (#141)
Licenses are now located in LICENSES/ directory.

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2024-02-07 14:53:46 +11:00
colorglass 11836b13ea
templates: fix mismatched type size in simple (#140)
Fix a mismatched type size error in component.simple.c:485, which may
cause data overflow when CONFIG_WORD_SIZE is 64. Use the CLZL()
macro to correctly handle the specified CONFIG_WORD_SIZE.

Signed-off-by: colorglass <55863235+colorglass@users.noreply.github.com>
2024-02-02 21:02:47 +11:00
Gerwin Klein 89af7196bd github: bump GitHub action versions
The old node12 actions are deprecated and will stop working.

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2023-10-26 14:20:15 +11:00
Robbie VanVossen add3915eeb smc_cap: Simplify camkes_get_smc_cap generation
Just use `allowed_smc_functions` to define whether a component can
make SMC calls or not.

Signed-off-by: Robbie VanVossen <robert.vanvossen@dornerworks.com>
2023-08-29 22:53:19 +10:00
Alex Pavey ea97c370d3 smc_cap: Specify SMC calls as badges in a list
Signed-off-by: Robbie VanVossen <robert.vanvossen@dornerworks.com>
2023-08-29 22:53:19 +10:00
Alex Pavey b325158e82 smc_cap: Give specified components smc capability
Signed-off-by: Robbie VanVossen <robert.vanvossen@dornerworks.com>
2023-08-29 22:53:19 +10:00
Kent McLeod fd099f3d39 parser,fdtQueryEngine: Fix parser bug with queries
When using dtb queries on a type that has multiple instances, when the
second or additional instances are evaluated, their settings have bad
values: `gpio_mux_server1.gpio.dtb = dtb({})` instead of the expected:
`gpio_mux_server1.gpio.dtb = dtb({"path" : "/gpio@2200000"})`.  This is
due to a parser bug that mutates the internal dictionary object instead
of mutating a copy.

Switching to a deep copy avoids mutating the AST object.

```
component GPIOMUXServer {

  emits FDT dummy_source;
  consumes FDT gpio;
  consumes FDT mux;

  composition {

    connection seL4DTBHardware gpio_conn(from dummy_source, to gpio);
    connection seL4DTBHardware mux_conn(from dummy_source, to mux);

  }

  configuration {
    gpio.dtb = dtb({"path" : "/gpio@2200000"});
    mux.dtb = dtb({"path" : "/pinmux@2430000"});

  }
}

assembly {
  composition {
    component GPIOMUXServer gpio_mux_server0;
    component GPIOMUXServer gpio_mux_server1;
  }
  configuration {}

}

```

Signed-off-by: Kent McLeod <kent@kry10.com>
2023-06-01 18:13:25 +10:00
Alex Pavey 73c90a4ea5 Put fault handler and control on the same core
The fault handler thread currently is set to the default core which can
cause a component's fault handler threads and control threads to be on
separate cores if the affinity attribute is set. This change sets the
fault handler thread and control thread to run on the same core.

Signed-off-by: Alex Pavey <Alex.Pavey@dornerworks.com>
2023-05-25 16:25:56 +10:00
Alex Pavey fae43ab919 Add build time error check for affinity
Signed-off-by: Alex Pavey <Alex.Pavey@dornerworks.com>
2023-05-25 16:25:56 +10:00
Chris Guikema 9e0676d193 Allow camkes components to know affinity
Signed-off-by: Alex Pavey <Alex.Pavey@dornerworks.com>
2023-05-25 16:25:56 +10:00
Joonas Onatsu bc0c86dcde dataport: Add getter for frame size
Signed-off-by: Joonas Onatsu <joonasx@ssrc.tii.ae>
2023-05-25 15:53:06 +10:00
Felix Schladt 57fd6ef6bc libsel4camkes: Fix Typo
Signed-off-by: Felix Schladt <felix.schladt@hensoldt.net>
2023-05-17 09:16:58 +10:00
Axel Heider 6eb6898683 camkes: improve error messages
Signed-off-by: Axel Heider <axel.heider@hensoldt.net>
2023-05-13 05:39:19 +10:00
Axel Heider f522974283 templates: fix field name
Signed-off-by: Axel Heider <axel.heider@hensoldt.net>
2023-05-07 11:21:24 +10:00
Axel Heider d7d37df903 cmake: improve maintainability
Signed-off-by: Axel Heider <axel.heider@hensoldt.net>
2023-02-27 10:36:32 +11:00
Axel Heider 05b772972c cmake: fix endmacro()
Signed-off-by: Axel Heider <axel.heider@hensoldt.net>
2023-02-27 10:35:12 +11:00
Axel Heider 380e9e3778 don't compare explicitly to true or false
Signed-off-by: Axel Heider <axel.heider@hensoldt.net>
2023-02-27 10:33:26 +11:00
Jingyao Zhou 66423d72b2 libsel4camkes: expose get_virtqueue_channel
Exposing this function allows us to play with the underlying channels
and their buffers.

Co-authored-by: Andy Bui <andy.bui@unsw.edu.au>
Signed-off-by: Jingyao Zhou <jingyao.zhou@unsw.edu.au>
2023-01-16 11:06:49 +11:00
Axel Heider 81626d4e08 CMake: add missing parameter DTB_FILE_PATH
Signed-off-by: Axel Heider <axelheider@gmx.de>
2022-10-24 10:47:15 +11:00
Axel Heider de4d80eb06 fix CAMKES_ROOT_DTS_FILE_PATH check
Signed-off-by: Axel Heider <axelheider@gmx.de>
2022-10-24 10:47:15 +11:00
Chris Guikema 9cfea69b09 serial: rename Serial.camkes files
This fixes an "unknown reference to 'Serial'" issue seen on MacOS.

Signed-off-by: Chris Guikema <chrisguikema@dornerworks.com>
2022-09-30 11:22:14 +02:00