Commit Graph

128 Commits

Author SHA1 Message Date
Mateusz Faderewski
9f9c3fc19c shuffle some bits 2024-08-10 00:50:12 +02:00
Mateusz Faderewski
598a4205bb more IRQ sources + AUX data channel 2024-08-05 22:16:46 +02:00
Mateusz Faderewski
4187a5cec7 fix no error reporting 2024-08-05 01:06:35 +02:00
Mateusz Faderewski
080f4ce0ba Merge branch 'main' into new-irq 2024-08-04 18:17:35 +02:00
Mateusz Faderewski
d8976def97 [SC64][SW] Optimized memory usage in the sc64deployer 2024-07-23 18:26:17 +02:00
Mateusz Faderewski
8fd12e9d1a Merge branch 'main' into new-irq 2024-07-21 23:11:52 +02:00
Mateusz Faderewski
e9ee025e21 [SC64][FW][SW] Slightly speed up DMA write transfer speed + USB speed test fixes 2024-07-21 22:15:06 +02:00
Mateusz Faderewski
912f356650 [SC64][SW] Added USB speed test 2024-07-21 20:15:44 +02:00
Mateusz Faderewski
631f140c48 [SC64][SW] Adjust buffer sizes in sc64deployer to tune for maximum transfer speed 2024-07-21 12:19:03 +02:00
Mateusz Faderewski
71cef2cd6c [SC64][SW] Change error type starting ID to avoid reusing old error code IDs 2024-07-21 12:17:44 +02:00
Mateusz Faderewski
401e07322f Merge branch 'main' into new-irq 2024-07-21 11:17:21 +02:00
Mateusz Faderewski
1b71b4a333
[SC64][FW] Verilator tests + many bugfixes in the FPGA code (#75) 2024-07-21 11:15:08 +02:00
Mateusz Faderewski
5e33e516a2
[SC64][SW] Implement new libftdi backend in the sc64deployer (#72) 2024-07-21 10:48:20 +02:00
Mateusz Faderewski
2b396064ec Merge branch 'main' into new-irq 2024-06-15 00:43:09 +02:00
Mateusz Faderewski
acc3e588d8 [SC64][SW] Fixed RTC raw time offset calculation 2024-06-15 00:33:43 +02:00
Mateusz Faderewski
a571fe16f5 [SC64][SW] Added support for 400 leap years for the RTC 2024-06-14 21:47:10 +02:00
Mateusz Faderewski
903efe5353 [SC64][SW] Add missing cleanup during SD card initialization 2024-06-14 21:46:02 +02:00
Mateusz Faderewski
0d9e23b787 Merge branch 'main' into new-irq 2024-06-07 00:16:23 +02:00
Mateusz Faderewski
e4af127e55 [SC64][FW][SW] Added option to set and read century when updating RTC datetime 2024-06-06 23:00:38 +02:00
Mateusz Faderewski
10454f4cb6 another small cleanup 2024-05-28 01:10:28 +02:00
Mateusz Faderewski
a6a223a127 small message change 2024-05-27 22:59:36 +02:00
Mateusz Faderewski
759df3b0f3 interrupts disable macro 2024-05-27 22:52:33 +02:00
Mateusz Faderewski
392ad5bece another cleanup 2024-05-27 20:04:07 +02:00
Mateusz Faderewski
5cba981f82 set status register on reset 2024-05-25 00:31:09 +02:00
Mateusz Faderewski
ad88fefae5 small cleanup 2024-05-24 23:25:13 +02:00
Mateusz Faderewski
7d8614e456 handle irq in the bootloader 2024-05-22 00:17:24 +02:00
Mateusz Faderewski
e163ae814f Merge branch 'main' into new-irq 2024-05-20 17:05:39 +02:00
Mateusz Faderewski
6bbfee44e7 [SC64][SW] Added inverted own address SDRAM tests 2024-05-20 16:23:41 +02:00
Mateusz Faderewski
9843a79a86 [SC64][SW] controller: fixed stuck LED state when error was cleared 2024-05-20 16:18:14 +02:00
Mateusz Faderewski
554305290e [SC64][SW] controller: corrected SD card init procedure 2024-05-14 19:39:00 +02:00
Mateusz Faderewski
e6751c262d [SC64][SW] bootloader/controller: added more meaningful errors in the SD card module
Also added manual CRC16 check in the software for data blocks smaller than 512 bytes
2024-05-14 01:36:34 +02:00
Mateusz Faderewski
92838da349 [SC64][SW] Added SD card FatFs tests, rearranged SDRAM tests 2024-05-12 02:45:56 +02:00
Mateusz Faderewski
a884d69308 [SC64][SW] sc64deployer: use chunked write/read for memory access 2024-05-08 21:31:29 +02:00
Mateusz Faderewski
7bc4e6d180 [SC64][SW] sc64deployer: added SDRAM tests 2024-05-08 20:24:08 +02:00
Mateusz Faderewski
a0bd0ddd98 [SC64][SW] Bootloader: rearranged tests and added/changed SDRAM patterns 2024-05-07 00:42:07 +02:00
Mateusz Faderewski
b89ca68cb4 [SC64][SW] Bootloader: added PI tests and improved SDRAM test reliability 2024-05-05 21:01:46 +02:00
Mateusz Faderewski
cf19dc6151 [SC64][SW] Update: allow firmware update from the Flash memory 2024-05-05 01:53:19 +02:00
Mateusz Faderewski
dea9441784 Merge branch 'main' into new-irq 2024-04-11 02:35:24 +02:00
Mateusz Faderewski
e93cecfae3 [SC64][FW][SW] Fixed unreliable CIC boot 2024-04-11 01:34:36 +02:00
Mateusz Faderewski
feb3adeb50 initial irq overhaul 2024-04-10 22:01:38 +02:00
Mateusz Faderewski
cff730cafc [SC64][SW] Minor formatting and spelling fixes 2024-04-10 21:32:17 +02:00
Mateusz Faderewski
f6b94aec97 [SC64][FW][SW] Added CIC diagnostic, changed software timeout timer to hardware (derived from PIF clock) 2024-04-10 12:56:05 +02:00
Mateusz Faderewski
c156b72bee [SC64][SW] Added very basic SDRAM test in the primer before flashing bootloader 2024-03-17 02:04:05 +01:00
Mateusz Faderewski
f27f644a7e [SC64][SW] Fixed SC64 reset procedure in the deployer 2024-03-14 20:07:07 +01:00
Mateusz Faderewski
01bef4060e [SC64][SW] Updated deployer dependencies 2024-03-04 12:47:24 +01:00
Mateusz Faderewski
b4b3659458 [SC64][SW] Fix buffered receive bug in sc64deployer server 2024-03-04 00:54:51 +01:00
Mateusz Faderewski
95b78f3cd9 [SC64] v2.18.1 release 2024-01-29 14:26:22 +01:00
Mateusz Faderewski
421d0438f3
[SC64][FW][SW] Controller rewrite to remove task subsystem + minor bug fixes (#64)
This PR completely removes `task.c / task.h` from `sw/controller` STM32
code.
Additionally, these changes were implemented:
- Updated IPL3
- Added new diagnostic data (voltage and temperature) readout commands
for USB and N64
- Fixed some issues with FlashRAM save type
- Joybus timings were relaxed to accommodate communication with
unsynchronized master controller (like _Datel Game Killer_, thanks
@RWeick)
- N64 embedded test program now waits for release of button press to
proceed
- Fixed issue where, in rare circumstances, I2C peripheral in STM32
would get locked-up on power-up
- LED blinking behavior on SD card access was changed
- LED blink duration on save writeback has been extended
- Minor fixes through the entire of hardware abstraction layer for STM32
code
- Primer now correctly detects issues with I2C bus during first time
programming
- `primer.py` script gives more meaningful error messages
- Fixed bug where RTC time was always written on N64FlashcartMenu boot
- sc64deployer now displays "Diagnostic data" instead of "MCU stack
usage"
2024-01-29 14:23:18 +01:00
Mateusz Faderewski
f7eb6a73b4 [SC64][SW] Removed _oscillator running after time set_ check in the RTC, lowered I2C clock speed 2024-01-12 03:12:56 +01:00
Mateusz Faderewski
13fc38fe73 [SC64][SW] Implement correct behavior for FlashRAM writes 2024-01-10 22:38:04 +01:00