You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* feat(MdmaPacket): Implement API and base structure, lacks integration with MDMA
* feat(MdmaPacket): Drop support for containers and add mdma instance as parameter
* feat(MdmaPacket): Now can specify Mdma instance
* feat(MdmaPacket): MDMA manages buffers, can now change mdma instance
* Fist draft of the MDMA
* Some fixes, there are some problems with linking i think
* Second draft of the mdma, now creates linked list (I think?)
* Fixed some stuff :)
* More changes, i think the api is finally done (hope so)
* More changes, this fucking sucks
* feat(Promises): Add Arena memory pool implementation
* fix(Primises): Remove move semantics from Arena class, since they can be problematic with resource management.
* feat(Promises): Implement Promises with fixed-size arenas
* chore(Promises): Add Promises to HALAL.
* fix(Promises): Fix circular dependency and incorrect RingBuffer usage
* fix(Promises): Fix possible race condition in destroy method
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* fix(Promises): Fix all and any methods to check correctly for existing callbacks
* style(Promises): Double free detection in Arena is now in another if
* fix(Promises): Use atomic operations for isResolved flag
* fix(Promises): Add critical sections and maximum updates per cycle
* MDMA v1.0 baby
* Merged the promises, testing on course
* fix(Promises): Revert mistake change in sntp_opts.h in commit b4df6ca
* Fixes
* style(Promises): Make maximums overwrittable in Promises.hpp
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* fix(Promises): Ensure no memroy leaks in Promise::all and Promise::any
* fix(Promises): Disable interrupts when adding to ready list
* fix(Promises): Remove Promise::update() from HALAL::start()
* feat(Promises): Add Stack class utility, doesn't use heap
* feat(Promises): Use Stack for Arena (better locality), and add iterators to Arena
* feat(Promises): Update Promises handling to avoid synchronization issues, now iterates over promises to check their state
* fix(Promises): Defer release of chained promises in update method
* fix(Promises): Defer chained promise cleanup to update
* Packets now work, merge_packets now on progress
* Promises to be tested, the rest works just fine :p
* Now checking if the mdma_id exists
* Copy paste typo, oops
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Now using array for the instances instead of unordered_maps
* feat(Promises): Improve Stack
* style(Promises): rename Arena to Pool and apply some style fixes
* fix(Promises): Fix Pool pointer checing
* feat(Promises): Fix Stack naming collision
* feat(Promises): Use bitset in Pool. Not using bitmap to allow larger pools (either way, using a stack for allocation ensures some locality, so bit manipulation is not as useful here).
* chore(Promises): Add Stack and Pool to CppUtils
* fix(Promises): Change naming in Promises to acutally use Pool, instead of Arena
* fix(Promises): Bug fixes and changes in the releasing to ensure proper memory management
* fix(Promises): Avoid unnecessary copies of elements in Stack
* fix(Promises): Fix pointer arithmetic in Pool
* doc(Promises): Add some better comments in Promise
* feat(Promises): Add null checks in Promise chaining and combinators
* fix(Promises): Fix signed and unsigned comparison in Pool
* feat(Promises): Add optimized bitmap iteration for Pool class when S <= 32
* feat(Promises): Add Promise::update() call in ST-LIB main update loop
* fix(Promises): Include Promises header in HALAL.hpp whith SIM_ON
* feat(Promises): Add wait() method for easier busy-waiting, to use only when needed
* refactor(MdmaPacket): Make MdmaPacket inherit directly from Packet and use promises
* chore(MdmaPacket): Add MdmaPacket to HALAL
* feat(MDMA)!: Make MDMA use a pool of linked list nodes managed externally instead of managing them itself
* fix(MDMA): Fix bugs with instance
* fix(MDMA): Too many linked list nodes, not enough memory
* feat(MdmaPacket): Make MdmaPacket compatible with MDMA linked list transfers, still lacks decoupling from instance logic
* fix(MDMA): Fixes
* Working on making the mdma work
* Still not working the mdma packets
* Esto es peor que el sida de testear
* Work to be done, the auxilary buffer recieves data but crashes when it sends it to the destination buffer
* Oops forgot to comment a thing :p
* Now working yipeee
* mdma V2.0
* Some errors fixed
* Cosas
* Changed Promise to bool pointer, and now working properly
* Deleted promises and mdma packets from this branch
* Now it compiles oops :p
* Some suggested changed changes donde, ty clanker
* Update Src/HALAL/Models/MDMA/MDMA.cpp
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Forgot to add the false condition to the data transfer
* Damn
* Coño con los conflictos
* Fix condition to check if instance.done is not null, now it generates an errorhandler
* MDMA packet bug fixed, now if you change the destination the bus will be selected correctly
* Change MDMA node alignment and transfer settings
* Remove NODES_MAX definition from MDMA.hpp
Removed the NODES_MAX definition and related comments.
* Now it compiles jeje
* Fixed pr
* AL final stack lo necesito
* Al final stack lo necesito
* Que lio de commits, pero solucionado
* Eliminated useless hashmaps and added type adaptative nodes
* Made transfer nodes D1_NC
---------
Co-authored-by: Boris Mladenov Beslimov <borisbeslimov@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
0 commit comments