Skip to content

Releases: VisorFolks/cyancore

cc_v0x01000401

02 May 16:43
35b69a7
Compare
Choose a tag to compare

Release Notes

Release 8 of Cyancore framework
Code Name: Boron

New CPUs Supported

  • N/A

New Platforms Supported

  • N/A

Features/What's new

  • ARM v6/7 M-profile Updates
  • Updated MegaAVR Documentation

Bugs Fixes

  • Build engine
    • Build engine will now auto extract toolchain version

Known issues

  • Float support for printf is added however "%10f" format specifier fails to stream the prints

New Projects Added

  • N/A

Cyancore Framework V0x01000400

30 Jan 07:14
e47c877
Compare
Choose a tag to compare

Release Notes

Release 7 of Cyancore framework
Code Name: Boron

New CPUs Supported

  • N/A

New Platforms Supported

  • Add support for Qemu SiFive-E

Features/What's new

  • Build engine
    • Add hardlinks to toolchains
    • Updated help (#243)
    • Updated platform specific macros management (#192)
    • Updated linting tool args (#209)
  • Platform
    • [MegaAVR]
      • Add PWM HAL (#188)
    • [RP2040] (WIP)
      • Add SIO support (#203)
    • Add support new PRNG across all platforms
  • CPU Updates
    • [AVR8]
      • Add support for floating operations (#154)
    • [VisorCalls] (formerly (m/h/s)calls) (#155)
      • Moved all calls to vcall to streamline data flows in several exception layers
      • Updated all archs and drivers
      • Updated mcall ids to vcall
    • Add support new PRNG across all CPUs
  • libs Updates
    • [libc]
      • printf now support floating ops (#154)
      • add support for strcpy
      • Add support new PRNG (#236)
      • Add support for string to number functions (#262)
    • [libresource]
      • Add macros to instantiate SP and DPs (#256)
  • HELIOS (formerly CC-OS) Fixes and Updates (#222)
    • Add support for anti deadlock task (#197)
    • Add debug logs
    • Add support for mutex (#184)
  • Other Updates
    • Error status codes will use +ve integers only for improved error resolution (#265)

Bugs Fixes

  • Build engine
    • Script cleanup
    • Fixed build for resume and updates (#218)
  • Platform
    • [FE310]
      • Fixed memory alignment of RODATA (#212)
  • CPU Updates
    • [AVR8]
      • Reduced ctx frame for more efficient irq handling (#228)
      • Fixed SP computation in ISR (#228)
    • [RV32I]
      • Fixed startup script, order of assembler directives needed change, not critical (#257)
      • Fixed stack compute for MP targets (#230)
      • Fixed arch_ei_restore_state routine (#267)
  • libs Updates
    • [libc] Fixes and Updates
      • Fixed malloc-free operations (#234)
      • Fixed getchar function (#190)
  • HELIOS (formerly CC-OS) Fixes and Updates (#222)
    • Semaphore bugfix (#176)
    • Code restructuring and fixes
  • Other Updates
    • Updated error handling across the cyancore SDK (#237)

Known issues

  • Float support for printf is added however "%10f" format specifier fails to stream the prints

New Projects Added

  • demo_qemu_sifive_e
  • qemu_sifive_e_bl
  • demo_helios_avr
  • demo_helios_riscv

Cyancore Framework V0x01000302

29 Dec 18:47
605baaf
Compare
Choose a tag to compare

Release Notes

Release 6 of Cyancore framework
Code Name: Beryllium

New CPUs Supported

  • Added initial support for ARM Cortex-[m0, m0+, m4](untested, hence not a major release)

New Platforms Supported

  • Added initial support for RPI-Pico (RP2040)

Features/What's new

  • Added suspend/resume apis for fully supported cpu archs
  • Inital support for CC OS
    • Added support for semaphores
    • Added support for multitasking
  • [FE310] Added support for AON-PMU HAL driver for power management
  • Added support new math library functions

Bugs Fixes

  • N/A

Known issues

  • Float support for printf is absent
  • Few data typecast issue do exist (severity: Low) hence can be ignore for now. Will be fixed in upcoming release

New Projects Added

  • N/A

Cyancore Framework V0x01000301

16 Sep 13:02
95da023
Compare
Choose a tag to compare

Release Notes

Release 5 of Cyancore framework
Code Name: Lithium
Since Release: cc_v0x01000300

New CPUs Supported

  • N/A

New Platforms Supported

  • N/A

Features/What's new

  • N/A

Bugs Fixes

  • Fixed MegaAVR boot issue

Known issues

  • Float support for printf is absent
  • Few data typecast issue do exist (severity: Low) hence can be ignore for now. Will be fixed in upcoming release

New Projects Added

  • N/A

Cyancore Framework V0x01000300

29 Aug 17:32
30e7b40
Compare
Choose a tag to compare

Release Notes

Release 4 of Cyancore framework
Code Name: Lithium

New CPUs Supported

  • N/A

New Platforms Supported

  • N/A

Features/What's new

  • Updated development tools:
    • Added support for RPi-Pico uf2 file builder
    • Integrated new size of elf tool to provide correct info with analysis
  • Updated libc, now provides ctype functions
  • Driver unification:
    • Timer driver now has unified interface for all target platforms
    • Software device driver such as onboard LED driver is unified using SP
    • Improved Error handling for return codes.
  • Updated projects to take advantage of this unification:
    • This changed the project porting architecture
    • Project folder now needs:
      • "<project>.src" which hosts project source files
      • "<project>_<config>" or any name without ".src", which hosts config files to assist build
    • This reduced code duplication
  • Updated FE310 bootload project and platform to support unification
  • Added support for heap memory on all supported targets
  • Updated drivers to use heap memory, this improved static memory usage as well as run time.
  • Improved static memory allocation for DP and SP modules
  • Updated Timer driver to reset upon driver setup/start
  • Updated arch exception or environment calls to support in-lining
  • Added support for displaying memory layout information.
  • Added support for Julian Calendar and time-stamping.
  • Added feature to disable logs and optimize code.
  • Updated properties for platform:
    • ATMega328P
    • ATMega2560
    • FE310G002

Bugs Fixes

  • Fixed bugs in libresource
  • Fixed bugs in build

Known issues

  • Float support for printf is absent
  • Few data typecast issue do exist (severity: Low) hence can be ignore for now. Will be fixed in upcoming release

New Projects Added

  • "hifive1b_bl ": bootloader prototype project added

Cyancore Framework V0x01000202

30 Apr 04:39
1479c4b
Compare
Choose a tag to compare

Release Notes

Release 3 of Cyancore framework
Code Name: Helium
Since PreRelease: cc_v0x01000201

New CPUs Supported

  • N/A

New Platforms Supported

  • N/A

Features/What's new

  • Upgraded syslog driver to better support debug features
  • Updated build engine to support external sources compilation
  • [Resource] Lib upgrades
    • Revamped DP node architecture
    • Added support for pinmux nodes
  • [NMath] Added new call to libnmath
  • Added initial support for multi core support in SMP mode
  • Updated architecture of console drivers
  • Upgraded RV32 cpu arch support
  • [FE310] Plat upgrades
    • Upgraded console drivers
    • Added PLL driver
    • Added bootloader support

Bugs Fixes

  • [MegaAVR] ADC HAL driver bug fixes
  • Fixed bugs in RV32 core support
  • Fixed bugs in AVR irq calls
  • Fixed bugs in CLINT driver
  • Fixed AVR timer driver typecast issues which lead to data truncation
  • Fixed bugs in libresource calls
  • Fixed bugs in build engine

Known issues

  • Float support for printf is absent

New Projects Added

  • N/A

Cyancore Framework V0x01000201

19 Feb 17:33
5e26a22
Compare
Choose a tag to compare
Pre-release

Release Notes

Intermediate release of Cyancore framework 1.2.1
Code Name: Helium

New CPUs Supported

  • None

New Platforms Supported

  • None

Features/What's new

  • Added Pseudo File System for cyancore framework (Initial support)
  • Upgraded machine call architecture and solved pointer based call limitations
  • Lib-posix support (WIP):
    • Semaphore
    • Message Queue
    • PThread
  • Lib-syslog with support of FILE system. Following streams are up:
    • stdin
    • stdout
    • stderr
    • stddbg

Bugs Fixes

  • Addition of more devices to dp list may cause AVR Core to truncate MSB becuase of the machine_call handler's args
  • Unsigned int is not enough for passing pointers to machine_call

Known issues

  • printf doesnt print 64bit on '%llu'

New Projects Added

  • None

Cyancore Framework V0x01000200

29 Jan 19:32
Compare
Choose a tag to compare

Release Notes

Release 2 of Cyancore framework
Code Name: Helium

New CPUs Supported

  • RISC-V RV32-IMAC

New Platforms Supported

  • Atmel (now Microchip) ATMega2560
  • SiFive Hifive1 RevB [FE310-G002]

Features/What's new

  • Added platform support for
    • ATMega2560
    • FE310-G002
  • Updated arch folder organisation for AVR8 CPUs
  • Upgraded libresource
    • Introducing software properties concept
    • Updated device properties framework to accomodate software properties
    • Added support to new devices
  • Updated driver framework to support per-cpu execution
  • Updated and split console and earlycon drivers
  • Added support for interrupt controller in interrupt driver
  • Added watchdog driver support
  • Updated status return codes of function
  • Updated bootstrap routine
  • Updated project port framework to build with minimal support
  • Build Engine updates
    • build can now compile single object file
    • build can now generate pre-processed file
    • added support to copy bins to remote host
    • Added new build targets, run make help

Bugs Fixes

  • Console bug fix for UART and membuf
  • Updated linking of machine call in AVR core
  • [MegaAVR] ADC HAL driver bug fixes
  • Fixed bugs in build engine
  • Updated rules for build

Known issues

  • Addition of more devices to dp list may cause AVR Core to truncate MSB becuase of the machine_call handler's args.
  • printf doesnt print 64bit on '%llu'

New Projects Added

  • demo_2560
  • demo_riscv

Cyancore Framework V0x00000100

15 Aug 15:40
db3ebb7
Compare
Choose a tag to compare

Release Notes

First release of cyancore framework
Code Name: Aurora

New CPUs Supported

  • AVR-8 v5

New Platforms Supported

  • ATMega328P

Features

  • Console
    • UART
    • membuf
  • New concept of interrupt handler for AVR cores
  • Syslog
  • HAL (ATMega328P)
  • Resource Manager in terravisor (libresource)
    • Device properties supported
  • Custom libc, libnmath,

Known issues

  • Core dump feature absent
  • Console-membuf getc can cause issue.
  • "error codes" in status.h doesn't return valid info. (work in progress at priority)

New Projects Added

  • demo_avr
  • demo_avr_cpp
  • demo_avr_bit_banding