Skip to content

Commit

Permalink
Update main branch to dev (#6)
Browse files Browse the repository at this point in the history
* Version 0.2.

* Rename configuration files and macro names

* Moved inlined static code from s3k.h to s3k.c

* Rename memory capability fields and add definitions of blocks

* Reformat code

* Adds preemption toggle register S3K_REG_PREEMPT

* Move definition of block sizes and default s3k conf

* Add section on registers

* Make hello run on multiple harts

* Correction on scheduler time.

* Ping-ping, simpler IPC

- Simplified IPC, reduced from 5 to 2 system calls.
- Fixed MCS Lock where `node` would get overwritten in `_release`.
- Added an example project, `ping-pong`.

* Adds WCET register to accomendate reading the WCET of non-preemptible syscall parts

* Format cap_monitor

* Restore format target

* Made exception and interrupt handlers noreturn

* New scripts for running code

* Improve qemu and gdb scripts

* Remove dead code

* Improve WCET instrumentation

* Simplify ABI definition

* Replace trap_frame with array, become more similar to user-space definitions.

* Adds comments to cap_monitor.h

* Improve IPC internals

* Fixes time derivation bug

* Better memcpy and memset

* Adds a new system call s3k_mon_yield

* Fixes project/trapped scripts

* Adds new syscall s3k_mon_get_state for getting the state of a process

* Stops reflow of comments

* Improves kernel internals

* Fixes workflows

* Improves IPC with s3k_sock_recv for server socket only.

* Fixes bug in revoke and in uart

* Replace process local WCET with global WCET

* Reorganize kernel to be more independent of userland

* Reorganize userland libraries, improves naming.

* Adds demonstrator with crypto disabled

* Adds repository structure in README.md

* Adds removal of docs in Makefile

* Restructure userland, drivers and more

* Fixes projects/hello

* Adds time driver to common

* Merge with dev-common

* Updates README

* Fixes root Makefile make order

* Removes wfi() from scheduler when waiting on process start.

* Streamline project build process

* Further refininf build process

* Remove prints from Makefiles.

The behavior of make and echo varies between different linux
distributions. For example, in Arch Linux make has a --no-silent flag
while in Debian it does not.

* Fixes to makefile and gdb script

* Improved OpenOCD scripts

* Adds hex file to ignore

* Fixes typo found by Adam Hasselwander

---------

Co-authored-by: Henrik Karlsson <hakarlsson@mailbox.org>
  • Loading branch information
HAKarlsson and Henrik Karlsson authored Nov 2, 2023
1 parent c0b7800 commit f3cc4c8
Show file tree
Hide file tree
Showing 192 changed files with 8,089 additions and 4,991 deletions.
56 changes: 17 additions & 39 deletions .clang-format
Original file line number Diff line number Diff line change
@@ -1,73 +1,51 @@
---
Language: Cpp

UseTab: Always
TabWidth: 8
IndentWidth: 8
ContinuationIndentWidth: 4
ColumnLimit: 80
SortIncludes: true
MaxEmptyLinesToKeep: 1
ReflowComments: false

AlignAfterOpenBracket: Align
AlignArrayOfStructures: Left
AlignConsecutiveAssignments: false
AlignConsecutiveDeclarations: false
AlignEscapedNewlines: Left
AlignOperands: true
AlignTrailingComments: true
AlignArrayOfStructures: Left
Cpp11BracedListStyle: true
AllowAllParametersOfDeclarationOnNextLine: false


AllowShortBlocksOnASingleLine: false
AllowShortCaseLabelsOnASingleLine: false
AllowShortFunctionsOnASingleLine: false
AllowShortIfStatementsOnASingleLine: false
AllowShortLoopsOnASingleLine: false

BinPackArguments: true
BinPackParameters: true

BreakBeforeBraces: Linux
BreakBeforeBinaryOperators: true
BreakBeforeBraces: Linux
BreakBeforeTernaryOperators: false

BreakStringLiterals: false

IncludeBlocks: Regroup
IndentCaseLabels: false

KeepEmptyLinesAtTheStartOfBlocks: false
PenaltyBreakAssignment: 10
PenaltyBreakBeforeFirstCallParameter: 30
PenaltyBreakComment: 10
PenaltyBreakFirstLessLess: 0
PenaltyBreakString: 10
PenaltyExcessCharacter: 100
PenaltyReturnTypeOnItsOwnLine: 60
PointerAlignment: Right

SeparateDefinitionBlocks: Always
SpaceAfterCStyleCast: false

SpaceBeforeAssignmentOperators: true

SpaceBeforeParens: ControlStatements

SpaceInEmptyParentheses: false

SpacesBeforeTrailingComments: 1

SpacesInCStyleCastParentheses: false

SpacesInContainerLiterals: false

SpacesInCStyleCastParentheses: false
SpacesInParentheses: false

SpacesInSquareBrackets: false

Cpp11BracedListStyle: false

MaxEmptyLinesToKeep: 1
KeepEmptyLinesAtTheStartOfBlocks: false

SeparateDefinitionBlocks: Always

PenaltyBreakAssignment: 10
PenaltyBreakBeforeFirstCallParameter: 30
PenaltyBreakComment: 10
PenaltyBreakFirstLessLess: 0
PenaltyBreakString: 10
PenaltyExcessCharacter: 100
PenaltyReturnTypeOnItsOwnLine: 60

SortIncludes: true
IncludeBlocks: Regroup
2 changes: 1 addition & 1 deletion .github/workflows/clang-format.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,4 @@ jobs:
steps:
- uses: actions/checkout@v3
- run: sudo apt install clang-format
- run: clang-format --dry-run --Werror $(shell find -wholename "*.[chC]" -not -path '*/.*')
- run: clang-format --dry-run --Werror $(find -wholename "*.[ch]" -not -path '*/.*')
7 changes: 3 additions & 4 deletions .github/workflows/compilation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,8 @@ jobs:
- name: Get toolchain
run: >
cd $HOME &&
wget -q https://static.dev.sifive.com/dev-tools/riscv64-unknown-elf-gcc-8.3.0-2019.08.0-x86_64-linux-ubuntu14.tar.gz &&
tar -xf riscv64-unknown-elf-gcc-8.3.0-2019.08.0-x86_64-linux-ubuntu14.tar.gz &&
mv riscv64-unknown-elf-gcc-8.3.0-2019.08.0-x86_64-linux-ubuntu14 riscv
wget -q http://tcs79.csc.kth.se/riscv64-unknown-elf-toolchain.tgz &&
tar -xf riscv64-unknown-elf-toolchain.tgz
- name: Compile kernel
run: export PATH=$HOME/riscv/bin:$PATH && make kernel
run: export PATH=$HOME/opt/riscv/bin:$PATH && make all

19 changes: 0 additions & 19 deletions .github/workflows/unittest.yml

This file was deleted.

4 changes: 2 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
docs
test_detail.json
*.elf
*.a
*.da
*.o
*.d
*.su
*.out
*.elf
*.bin
*.hex
*.res
Loading

0 comments on commit f3cc4c8

Please sign in to comment.