7bee3f694b
add config for openocd with atmel-ice
2021-08-01 23:32:59 +02:00
c36c2182d7
sched: minor refactor
2021-08-01 23:32:12 +02:00
5a220eee5d
fix build (once again)
2021-08-01 23:29:04 +02:00
7ef26f26e9
syscall: add config option to check syscall source
2021-08-01 23:28:25 +02:00
930cbc26e1
syscall: i am so stupid it physically hurts
2021-08-01 22:54:59 +02:00
8422ab0d56
debug: add breakpoint macro
2021-08-01 22:53:47 +02:00
0eea347421
build: actually use linker scripts
2021-08-01 22:53:05 +02:00
c81ea7e7fd
printf: don't ignore return value of last write()
2021-08-01 19:04:03 +02:00
4db1702078
stdio: refactor printk to printf and friends
2021-08-01 18:53:22 +02:00
474974b779
startup: rename do_bootstrap to main
2021-08-01 17:19:53 +02:00
5fabe9db3f
vscode: use CMake plugin for IntelliSense
2021-08-01 17:16:16 +02:00
2bb39cf1c5
update readme with new config system
2021-08-01 17:12:03 +02:00
02286058d6
io: declare kstdin and kstdout in header
2021-08-01 17:06:56 +02:00
abb526f655
stddef: add typeof macro
2021-08-01 17:06:08 +02:00
3aa2c53893
stdint: use correct typedefs
2021-08-01 17:05:37 +02:00
caefad25a8
build: parameterize serial config macros
2021-08-01 16:51:06 +02:00
f54a4a0fa9
mutex: use uint8_t instead of int for lock value
2021-08-01 16:48:19 +02:00
d20da423ec
fs: implement file abstraction
2021-08-01 04:22:09 +02:00
9ca76d71ad
mutex: add mutex imlementation
2021-08-01 03:25:28 +02:00
adce3f3ed7
arch/at91sam3x8e: update struct reg_sw_snapshot
...
With my discovery of how to actually use thumb2
instructions in assembly files, the layout of
register snapshot has changed because they are
now pushed in consecutive order.
2021-08-01 02:25:34 +02:00
c2538b4516
build: parameterize STACK_SIZE in linker script
2021-08-01 01:26:16 +02:00
8f424d49e8
asm: refactor to use thumb2 instructions
2021-08-01 01:16:13 +02:00
a78a8ba59b
atom: reimplement in pure assembly
2021-08-01 00:11:13 +02:00
3ab358310c
build: ensure all symbols are included
2021-07-31 22:07:38 +02:00
643d3ed251
build: migrate to CMake
2021-07-31 19:39:51 +02:00
fc63785ca6
kent: simplify structure
2021-07-31 15:58:29 +02:00
8b3a5fd68d
sched: integrate into kent hierarchy
...
This is an initial, rudimentary attempt at integrating the scheduler
into the kent hierarchy. There are likely gonna be drastic changes
in the future, and i haven't even tried running the whole thing.
But hey, the code compiles again now!
2021-05-11 14:31:05 +02:00
f0dc3a3433
kiss capitalism goodbye for good
...
The CNPL will make sure that absolutely no corporation is going to get
anywhere near Ardix -- exactly as it should be. Fuck you, corporations!
2021-05-10 16:19:38 +02:00
6f6be12e83
printk: introduce temporary buffer
...
This is just a proof of concept for now, i am perfectly aware of the
fact that this will cause buffer overruns if the line gets too long.
2021-03-01 16:09:30 +01:00
dca3e716ca
serial: add zero-copy dma i/o api
2021-03-01 16:08:01 +01:00
c59bd3f7c6
build: make gcc less annoying
...
This is so gonna break my legs in two months but whatever
2021-03-01 16:05:33 +01:00
ec3b64d232
string: move header to standard location
...
Anything that implements POSIX should also be where POSIX defines
it to be, otherwise it would be pretty useless lol
2021-02-28 18:27:43 +01:00
a1d594f0bd
malloc: get rid of unnecessary stuff
2021-02-28 18:11:00 +01:00
7ac595289c
gitignore: add vim stuff
2021-02-28 18:09:18 +01:00
298433e15f
fix the stupid symbol attribute mess, pt. 1
2021-02-28 18:08:08 +01:00
af8210da4a
piss off capitalism
...
Ardix is being relicensed to GPL v3 or later. I have no idea whether you
can just do this if you feel like it or if it has any consequences, but
i kinda don't really care that much about it. Any changes made after
this commit will definitely fall under the GPL though, and considering
that only few things are really working yet anyways this is good enough
for me.
2021-02-28 02:18:39 +01:00
4349420217
kent: redesign api
...
This also got the dmabuf refcount hard fault issue resolved somehow.
Don't ask how or why, i'm just glad it works now.
2021-02-28 01:28:07 +01:00
5fa7639ce8
syscall: c syntax do be hard tho
2021-02-27 21:24:26 +01:00
b7abbf1cf7
kent: change param order of kent_init
2021-02-17 15:01:15 +01:00
b8c4593fc5
syscall: use vararg declaration
2021-02-17 14:30:24 +01:00
a658a7c8b3
sched: yes but what if i weren't stupid?
2021-02-17 14:13:19 +01:00
9b1eef8a64
sched: fix accidental double ptr bug
2021-02-17 14:08:43 +01:00
Felix Kopp
e79f9d5165
errno: implement strerror
...
i defo need to check my priorities but i wanted to play around with
awk and the errno cli tool so leave me alone
2021-02-03 04:58:04 +01:00
Felix Kopp
c4717d8fce
dma: add abstraction layer for dma
2021-02-03 04:30:46 +01:00
Felix Kopp
f7cbcc924b
malloc: get rid of bloat
...
the without_lsb macro was nice and all, but really not necessary.
It was used in only 3 places or so and is even longer than the current
code it is replaced with.
2021-02-03 04:04:08 +01:00
Felix Kopp
256b49b529
device: add base abstraction for all devices
2021-02-03 04:01:27 +01:00
Felix Kopp
56c76d8b4b
sched: use proper UNIX® terminology
2021-02-01 00:07:45 +01:00
Felix Kopp
61ebad5231
fs: actually include read.c in Makefile
2021-01-07 19:11:45 +01:00
Felix Kopp
d60f57f8de
fs: implement read syscall
2021-01-07 19:05:29 +01:00
Felix Kopp
50928211ca
minor fixes and improvements
2021-01-07 19:04:52 +01:00