v3.1.0
- kernel: add armv8m33-nrf9160 port
- armv7m7-imxrt117x-evk: BusFault when starting new psh after exit cmd
- libcache: static analysis shows invalid memory operations
- Random fails of test_prioirty
- lseek returns off_t (double word on 32-bit targets)
- project: support building all targets on MacOS
- Debug multicore on ia32 target
- ia32: implement HP timer
- plo: Implement RTT pipe driver (mainly for virtual console and phoenixd phfs)
- create multi driver for GR716
- Improve zynq flash drivers
- riscv64: Implement posix signals
- riscv64: Add optional support for FPU
- Fix pthread_detach implementation
- Port plo to the riscv64 target
- riscv64: make hal_jmp and libphoenix _start consistent with other targets
- psh: implement terminal
reset
command (to restore terminal state after abnormal exit) - Refactor parentkstack handling
- Fix execve not setting errno in some cases
- Add support for imxrt105x
- Fix pc-ata not handling byte access to raw devices
- libphoenix: extend sysconf to return valid page size information
- ia32: optimize rdtsc in kernel hal_cpuGetCycles
- Get LEON3 to run on our Mimas A7 Mini FPGA boards
- hostutils: metaelf fix build on macOS
- psh: fix cat attempting to print directories
- libphoenix: termios: Fix EINTR and errno handling
- gr716: fix SPI boot
- syspage_progShow: Remove backspace print
- ia32/smp: Implement interrupt balancing
- Unable to find the RISC-V BIOS (looking for phoenix.osbi)
- kernel: Fix pages summary printout on boot
- meterfs: fix warning
- plo: implement lspci - PCI bus device enumeration
- libklog: klog is not closed on exit
- multi/stm32l1-multi/lcd.c: buffer is accessed out of bounds
- Disable interrupts in proc_fork()
- Fix double declaration of ungetc() function
- armv7a: fix setjmp
- imxrt-multi: rt117x gpio's 10-13 are not accessible in message dispatcher
- plo: change "flash-flexspi" driver name into "flash-imxrt"
- libphoenix/dirent.h: Remove d_type enum, replace with defines
- pass missing env variable to docker-build.sh
- plo: rewrite imxrt flexspi opRead, opWrite
- msgRecv, msgRespond: Return handle instead of kernel pointer as rid
- Implement clock root tree on imxrt1176
- date command return invalid date for negative EPOCH
- psh: ls -l: seconds are always printed instead of year
- psh: touch in 01:00 set file's timestamp to 00:00
- kernel: replace duplicated code using idtree
- plo/gr716: fix filtering linker flag
- sparc toolchain: add multilib support
- create port for LEON3 GR712RC board
- port plo for GR712RC
- armv7m makefile: remove KERNEL_TARGET_DEFINE
- gr716: define SYSCLK_FREQ in board_config.h
- psh: add stream redirection
- scanf: read (nil) as null pointer
- riscv: Fix spinlock not using spinlock_ctx
- riscv: Increase KSTACKSZ
- posix: Fix memory leak when orphaned process dies
- psh: print prompt after change to raw
- psh: remove information about minimal interval in ping
- plo/jffs2: Log progress
- psh: Add ifconfig
- plo: Add zynq7000 SD card driver and boot option
- devices: Add zynq7000 SD card driver
- imx6ull-uart: drop old bytes during overrun
- libphoenix: implement ubsan run-time handlers
- Kill() return wrong errno
- Atexit not calling function registed inside previously registered function
- kernel: avoid using relative paths
- pthread/cond: Use selected clock_id
- Implement pseudo devices on (a library for) small targets
- posixsrv: allow building as library
- psh: add (dd) transfer time and speed statistics
- Fix dummyfs memory leak
- dummyfs rewrite
- psh: Increase sleep on start
- configure gr716-mimas project
- Add option to disable klog
- libphoenix: fix locking in pthread_create
- pthread: fix key handling not being posix compatible
- pthread: fix pthread_exit not being called on a return
- kernel: Replace for (;;); with LIB_ASSERT_ALWAYS
- vm/map: replace dead ends with LIB_ASSERT_ALWAYS
- kernel/imxrt1176: implement WATCHDOG
- Allow kernel lib_assertPanic to reboot instead of always halt when NDEBUG is defined
- plo/jffs2: fix log output
- flash-imxrt: fix W25Q256JVEIQ addressing beyond 128Mbit (16MB)
- imx6ull-tty: init klog on console only
- posix_mkfifo: Return valid error
- Change mmap interface - use fd instead of oid
- Add mprotect syscall
- change type of syscalls_munmap and syscalls_sygnalHandle
- assert: use abort() instead of exit()
- filesystems: ext2_getattr() checking the negative value of the pointer
- libphoenix: mktemp() wrong divisor value for modulo operation
- implement pthread_cleanup_push/_pop
- ctype: fix typo
- munmap(NULL) crashes the kernel
- ext2: Add mounting capability
- psh: directory is not closed after listing
- Handle usleep(0) (yield)
- imxrt-flashsrv: yield cpu, add gettime and rewrite flexspi read/write
- ia32/timer: Refactor
- devices/multi: generalize gr716-multi driver to work with gr712rc
- psh: add PATH support to runfile applet
- devices/storage: add flash driver for GR712RC
- psh: implement builtins for handling environment variables
- psh: implement name resolution functionality to the ping command
- kernel: add mapp and pampp to codespell ignore
- Research why zynq-qemu is slow and try to improve it
- psh: extend the functionality of the script parser with the ability to comment lines
- sparc: fix strncpy
- psh: fix ifconfig ub in interface print flags
- psh: add trigger to activate lwip dhcp client using ifconfig
- liphoenix:ia32/vfork: simplify asm
- Mount dummyfs in /dev on ia32-generic
- sparc: fix saving registers in syscall in case of handling signal
- gr712rc: add rootfs
- Add oid to mtSync
- fix endianness handling
- grlib-uart: change stack sizes
- leon3: implement amba plug'n'play scanning
- Remove proc/file.c and syscalls
- kernel: imx6ull memtest: update to linking by gcc
- devices/grlib-multi: implement spacewire driver
- Get NOEL-V to run on our Mimas A7 Mini FPGA boards
- munmap is non-compliant
- libphoenix: rename files and dirs to be more readable
- Add aliasrel cmd to plo
- imxrt: Export data cache flush from kernel
- kernel: Fix case when two threads have same wakeup
- syscalls/mmap: Mask-out user space map flags
- userintr: call broadcast instead of wakeup on cond
- gr716-mimas: fix junk being written to console
- imxrt117x: Fix frequent GPT access in idle thread
- imxrt117x: Change GPT1 bus clock
- kernel: add common list api to hal
- kernel: remove hal_getPc
- kernel: update nrf9160 port
- sparcv8leon3: add support for FPU
- psh: Add fast cursor movement and cut&paste
- build-toolchain: Move sources and build files to the separate directory
- Add TRNG STM32L4 driver to multi
- virtio-blk: add rootfs mount support and rewrite to use libstorage
- gr712rc-flash: free memory when init fails
- kernel/vm: add suport for MAP_FIXED
- kernel/vm: fix munmap spanning multiple map entries
- Fix test-ioctl failing randomly on stm32l4x6 target
- Add idtree dump
- string/strstr: handle empty special case
- crypt: fix encoding byte order
- test_disk: fix warn on riscv64
- kernel: use board config for early console on imxrt1176 and rt1064
- libphoenix: strtod() duplicate set errno if value is infinity
- string.h: remove memsetw
- Fix memory leak on sysexec on NOMMU
- kernel: Fix passing NULL envp and argvp
- proc: Fix race condition when many thread do join()
- strings.h: add ffs implementation