nuttx/libs/libc
Halysson 9014af9ae7 libc/crc: Add crc8rohcincr for incremental CRC8 ROHC calculation
Add crc8rohcincr() function to support byte-by-byte CRC8 calculation
using the ROHC polynomial (0x07) without XOR inversions. This is
useful for protocols that require incremental CRC accumulation,
such as GSM 07.10 (CMUX), where the CRC must be computed as frames
are parsed from circular buffers.

Changes include:
- New crc8rohcincr() function for single-byte incremental CRC
- Function takes current CRC value and returns updated CRC
- Uses same g_crc8_tab table as other ROHC functions
- No XOR inversions applied for proper accumulation

This allows protocols like CMUX to replace local CRC table
implementations with standard libc CRC functions while maintaining
correct incremental calculation behavior.

Signed-off-by: Halysson <halysson1007@gmail.com>
2025-09-30 17:30:46 -03:00
..
aio style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
assert libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
audio libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
builtin libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
ctype style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
dirent cmake:refine nuttx cmake build system fix CMake build missing part 2024-10-13 02:25:06 +08:00
dlfcn libs: unify Private Types banners 2025-05-28 10:17:15 +08:00
elf esp32s3/elf: Fix ELF loader on ESP32-S3 when using external PSRAM 2025-08-20 02:23:03 +08:00
errno libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
eventfd libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
fdt libs/libc/fdt/Make.defs: cannot move due to directory not empty bugfix 2024-10-09 15:42:17 +08:00
fixedmath libs: unify Private Types banners 2025-05-28 10:17:15 +08:00
gdbstub style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
gnssutils libc/gnssutils: remove C99 standard flag from Make.defs 2025-01-17 09:03:18 +08:00
grp libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
hex2bin stream_getc: use lib_stream_eof instead of EOF 2024-11-26 10:25:36 +08:00
inttypes libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
libgen libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
locale libs: unify Private Types banners 2025-05-28 10:17:15 +08:00
lzf libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
machine esp32s3/elf: Fix ELF loader on ESP32-S3 when using external PSRAM 2025-08-20 02:23:03 +08:00
misc libc/crc: Add crc8rohcincr for incremental CRC8 ROHC calculation 2025-09-30 17:30:46 -03:00
net libs: unify Private Types banners 2025-05-28 10:17:15 +08:00
netdb libs/libc/netdb: Optimize the timeout calculation logic: 2025-08-06 01:58:05 +08:00
obstack stream: reduce int use, handle FS_LARGEFILE correctly. 2024-11-15 01:05:04 +08:00
pthread pthread: add pthread_{get|set}concurrency support 2025-08-22 20:50:13 +08:00
pwd libs/libc/unistd: add getspnam function 2024-10-16 11:15:25 +08:00
queue libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
regex style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
sched style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
search libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
semaphore sched/semaphore: add support to customize semaphore max allowed value 2025-09-04 09:48:34 +08:00
signal cmake:refine nuttx cmake build system fix CMake build missing part 2024-10-13 02:25:06 +08:00
spawn cmake:refine nuttx cmake build system fix CMake build missing part 2024-10-13 02:25:06 +08:00
stdio libc/fclose: Validate the user provided stream pointer 2025-09-09 23:51:35 +08:00
stdlib Revert "libs/libc/stdlib/lib_exit.c: fix multiple definition of __dso_handle in msys2" 2025-07-31 22:10:36 +08:00
stream libc: lib_bsprintf reuse var instead value for string 2025-06-20 09:48:39 +08:00
string style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
symtab lib_libvsprintf.c:add option in Kconfig to control "%p*" special format specifier. 2024-10-15 15:33:13 +08:00
syslog drivers/syslog: Add RFC 5424 protocol support 2025-06-13 20:26:57 +08:00
termios libs: unify Private Types banners 2025-05-28 10:17:15 +08:00
time libs: unify Private Types banners 2025-05-28 10:17:15 +08:00
tls libc: Add debug assert to prevent tls allocation failure 2024-10-18 21:34:18 +08:00
uio move readv/writev to the kernel 2024-10-30 17:07:54 +08:00
unistd unistd: add support for confstr() 2025-08-22 20:50:13 +08:00
userfs style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
uuid libc: Refine the arc4random_buf implementation 2024-10-26 18:04:21 -03:00
wchar style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
wctype libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
wqueue libs: unify Private Types banners 2025-05-28 10:17:15 +08:00
zoneinfo libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
.gitignore libc/elf: rename modlib to libelf 2025-04-11 09:43:22 +08:00
CMakeLists.txt libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
Kconfig libc/elf: rename modlib to libelf 2025-04-11 09:43:22 +08:00
libc.csv nuttx: add get_current_dir_name implementation 2024-12-19 20:55:51 +08:00
libc.h libc/machine:Add prefixes to libc functions implemented by arch 2024-10-31 18:11:16 +08:00
Makefile libc/elf: rename modlib to libelf 2025-04-11 09:43:22 +08:00