Commit Graph

80 Commits

Author SHA1 Message Date
Tobias Kohlbau
545be47670
make reset function more robust (#85)
The reset function should reset cycle a single subsystem. Therefore it
should not assume every reset of each subsystem is deasserted, when
calling this function. Additionally add some comments for the intent of
the function itself.

Signed-off-by: Tobias Kohlbau <tobias@kohlbau.de>
Co-authored-by: Matt Knight <mattnite@proton.me>
2024-01-14 12:36:55 -08:00
Tobias Kohlbau
a56b0b4121
move examples into own repository (#84)
The examples have been moved into a seperate repository. Other
controller specific repositories do not contain a copy of the examples.
The examples could be found in the folder raspberrypi-rp2040
within the repository ZigEmbeddedGroup/microzig-examples.

Signed-off-by: Tobias Kohlbau <tobias@kohlbau.de>
2024-01-05 12:22:03 +01:00
Felix Queißner
d9cbc3654e
Microzig Generation 2 Build Interface (#82)
* Starts to rework build framework.
* First building version.
* Documents paths to supported devices.
* Tiny fix for MicroZig.
* Drops CI

---------

Co-authored-by: Felix "xq" Queißner <git@random-projects.net>
2023-09-22 09:02:51 +02:00
Felix Queißner
2a0c0ff281
Implements proper support for different stage2 bootloaders (#80)
Co-authored-by: Felix "xq" Queißner <git@random-projects.net>
2023-09-12 23:06:26 +02:00
Matt Knight
6f201f7f4c
stabilize on 0.11.0 (#77) 2023-08-04 00:59:05 -07:00
Matt Knight
1dbdd0f80e
Fix eval branch quota for PIO comparison tests (#76) 2023-08-03 21:47:42 -07:00
Matt Knight
695d3dc0e4
SourceFile -> LazyFile (#75) 2023-08-03 21:24:21 -07:00
David Sugar
1cef56ad9d
Enable XIP using stage 2 bootloader (#73)
* flash enable xip calls stage two bootloader using inline assembly

* flash erase/program now works in all modes (Debug, ReleaseSmall, ReleaseSafe, ReleaseFast)

* further docs added
2023-07-31 07:20:02 -07:00
Felix Queißner
d6b3be320f
rp2040-flasher inital commit (#72)
Co-authored-by: Felix (xq) Queißner <git@random-projects.net>
2023-07-24 15:01:19 +02:00
Vlad Panazan
35e9757bdb
fix i2c reading and add bus scan example (#71) 2023-07-01 06:22:51 -07:00
Vlad Panazan
360655dbe2
use zig package manager (#70) 2023-06-29 13:53:47 -07:00
Matt Knight
2b5c6096b0
builtin type inference fix (#68) 2023-06-27 21:10:35 -07:00
Matt Knight
c197a15312
update microzig (#67)
Co-authored-by: mattnite <mattnite@users.noreply.github.com>
2023-06-27 20:32:24 -07:00
Felix Queißner
371d4efde4
Runs zig fmt, implements a good bunch of I²C functions (#65)
Co-authored-by: Felix "xq" Queißner <xq@random-projects.net>
2023-06-25 20:15:00 +02:00
Matt Knight
316e241a88
DMA API, and time API improvements from SYCL 2023 workshop (#63) 2023-05-30 22:31:44 -07:00
Matt Knight
7b7caa9eb4
improve ADC API (#62) 2023-05-18 20:51:23 -07:00
Hubert Jasudowicz
d1e35696d4
examples: Set LED GPIO function (#61)
Set the pin function to SIO instead of null (default).
2023-05-18 00:24:18 -07:00
Vlad Panazan
abff6d1f4b
add ws2812 pio example (#54) 2023-05-17 14:39:54 -07:00
Matt Knight
886234b882
improve timer API (#60) 2023-05-15 23:12:22 -07:00
Matt Knight
a2ccaff13f
improve GPIO API (#59) 2023-05-15 22:50:34 -07:00
Matt Knight
d05e8779b8
workaround for compiler bug where volatile is not propagated over a field access (#57) 2023-05-15 22:37:20 -07:00
Matt Knight
ed12908afc
turn on PIO comparison tests (#58) 2023-05-15 22:37:10 -07:00
Matt Knight
81142fdfc0
update microzig (#56)
Co-authored-by: mattnite <mattnite@users.noreply.github.com>
2023-05-15 21:47:43 -07:00
joelpaulkoch
c74f6f0634
Fix: call renamed is_uart functions (#55) 2023-05-14 19:48:21 -07:00
Matt Knight
f343617ca4
update microzig (#52)
Co-authored-by: mattnite <mattnite@users.noreply.github.com>
2023-05-03 21:40:42 -07:00
Matt Knight
c1c19d221e
Gpio api (#51)
* improve GPIO API

* fix test, update microzig

* first DMA functions, new abstraction for enumerating peripherals

* rebase main

* fix call to reset()
2023-04-26 01:02:09 -07:00
Matt Knight
bc4582cf4d
update microzig (#50)
Co-authored-by: mattnite <mattnite@users.noreply.github.com>
2023-04-26 00:29:37 -07:00
Matt Knight
a2fccb3c73
update microzig (#48)
Co-authored-by: mattnite <mattnite@users.noreply.github.com>
2023-04-25 23:41:08 -07:00
David Sugar
812fb44180
USB Device (#40) 2023-04-24 07:45:24 -07:00
Matt Knight
b0b01570c1
update microzig (#47) 2023-04-23 11:55:47 -07:00
David Sugar
975e5e446c
Random number generator (#46) 2023-04-23 08:11:05 -07:00
Matt Knight
fa78bbfc4a
update microzig (#43)
Co-authored-by: mattnite <mattnite@users.noreply.github.com>
2023-04-13 22:24:28 -07:00
Matt Knight
344f60b864
add comptime keyword where it's needed (#42) 2023-04-13 17:04:50 -07:00
Matt Knight
ed60b5f2e7
Pio updates (#41)
* program loading API

* build examples in CI

* build fixes
2023-04-12 23:50:03 -07:00
Vlad Panazan
08779dfe02
Add SPI read function (#38) 2023-04-10 21:43:12 -07:00
Vesim
b0e346608e
PIO assembler (#25)
* WIP pio assembler

* add comparison tests against the official assembler

* tokenizer passing tests

* add buildkite pipeline

* comparison tests

* assembler now outputting a few programs similar to official

* largely complete

---------

Co-authored-by: Matt Knight <mattnite@proton.me>
2023-04-08 10:22:19 -07:00
Matt Knight
666f444037
Readme fix (#37)
* fix link
2023-04-07 09:11:31 -07:00
David Sugar
20e4c9f8f6
Flash from user code (#35)
* support for a subset of the bootrom functions added: fast bit count/ manipulation functions (tested), fast bulk memory fill/ copy functions (tested), flash access functions (NOT tested), debugging support functions (not implemented), miscellaneous functions (not implemented).

* added support for erasing and programming flash from user code. between the first and last call in a programming sequence, the SSI is not in a state where it can handle XIP accesses, so the code that calls the intervening functions must be located in SRAM. this is why I added the time_critical section to rp2040.ld (maybe one should create a dedicated section in ram that is rwx and keep data rwNx).

* flash_program.zig example added
2023-04-05 17:29:08 -07:00
Matt Knight
f250134e2f
update microzig (#34)
Co-authored-by: mattnite <mattnite@users.noreply.github.com>
2023-04-05 17:20:16 -07:00
Vlad Panazan
a4de9d2f3e
add SPI hal (#33) 2023-03-23 11:37:48 -07:00
Matt Knight
623a7f24ee
update microzig (#32)
Co-authored-by: mattnite <mattnite@users.noreply.github.com>
2023-03-23 08:42:36 -07:00
Matt Knight
7c781dc377
Update microzig (#31)
* update microzig

* add zig version

---------

Co-authored-by: mattnite <mattnite@users.noreply.github.com>
2023-03-23 08:28:01 -07:00
Matt Knight
160bee73e0
update microzig (#30)
Co-authored-by: mattnite <mattnite@users.noreply.github.com>
2023-03-22 00:56:30 -07:00
Matt Knight
3cef646006
update microzig (#29) 2023-03-19 16:32:34 -07:00
Matt Knight
9a47a0183e
update microzig (#27)
Co-authored-by: mattnite <mattnite@users.noreply.github.com>
2023-02-28 01:47:34 -08:00
Matt Knight
3b129e1ca5
Update microzig (#26)
* update microzig

* update to new api

---------

Co-authored-by: mattnite <mattnite@users.noreply.github.com>
2023-02-28 01:32:34 -08:00
Matt Knight
58d73abc08
Update microzig (#24)
* update microzig

* update paths and for loops

---------

Co-authored-by: mattnite <mattnite@users.noreply.github.com>
2023-02-24 09:12:22 -08:00
Matt Knight
026af75f81
update microzig (#22)
Co-authored-by: mattnite <mattnite@users.noreply.github.com>
2023-02-20 11:09:54 -08:00
Matt Knight
7d81ecf654
Regz rewrite (#20)
* update to new regz output

* snake case

* update with changes to microzig

* remove symlink

* add microzig submodule
2023-02-19 09:39:12 -05:00
Matt Knight
e3562492df
update to master (#19) 2023-02-14 14:00:04 -05:00