Skip to content
Snippets Groups Projects
Commit fb11e65b authored by Julius Bünger's avatar Julius Bünger
Browse files

Fix typo and wrong content, delete section headings

parent dda449fb
Branches
No related tags found
No related merge requests found
Pipeline #1114 passed
......@@ -2,11 +2,9 @@
title: Epicardium API Development
---
# Epicardium API Development
## Overview
The Epicardium API allowsd user code running on core 1 (running the pycardium) to access functionality running on the epicardium (core 0).
The Epicardium API allows user code running on core 1 (running the pycardium) to access functionality running on the epicardium (core 0).
In other words: It allows you to call C code running on the Epicardium from a Python module.
......@@ -21,12 +19,9 @@ The API calls are declared in `epicardium/epicardium.h` and documented with sphi
## API implementation
The API calls are implemented in `epicardium/modules/*.c` and `pycardium/modules/*.c`.
## Build System Integration
The API calls are implemented in `epicardium/modules/*.c`.
The calls need to be added to `epicardium/modules/meson.build` and assigned unique API IDs.
The `*.c`-files need to be added to `epicardium/modules/meson.build` and assigned unique API IDs.
## Best Practices
......@@ -35,7 +30,7 @@ The calls need to be added to `epicardium/modules/meson.build` and assigned uniq
- Passing pointers into the address space of (py)cardium is fine. Do not pass pointers into the address space of epicardium to (py)cardium.
- The API functions follow the kernel convention of either returning a boolean if the function is a predicate or returning a success integer (with negative values denoting errors) if it is an action or imperative command. (See also https://www.kernel.org/doc/html/v4.10/process/coding-style.html#function-return-values-and-names.)
- Pay attention while implementing an API call that it might be called from within different FreeRTOS tasks. (Calls made from (py)cardium are executed by the dispatcher task on the epicardium.) Don't make assumptions which task you're in. Especially if using a task semaphore.
- Please format you code using the `tools/code-style.sh`.
- Please format your code using the `tools/code-style.sh`.
## Internals
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment