Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
0ff7922
feat(custom_fee): add RAM-mock fee bring-up with checkpoint recovery
liubo-rtthread May 6, 2026
ebd2ffe
feat(custom_fee): add block table and multi-lane checkpoint recovery
liubo-rtthread May 6, 2026
75343c6
feat(custom_fee): add staged checkpoint flush policy
liubo-rtthread May 6, 2026
ec4cf7c
feat(custom_fee): add normal-lane dual-sector gc
liubo-rtthread May 6, 2026
754d4e0
feat(custom_fee): generalize lane gc to fast and bulk
liubo-rtthread May 6, 2026
d693612
feat(custom_fee): queue foreground requests in scheduler
liubo-rtthread May 6, 2026
ec325dd
feat(custom_fee): step gc in background with 3-sector lanes
liubo-rtthread May 6, 2026
59b8c1a
fix(custom_fee): tighten ckpt-ready boot read gating
liubo-rtthread May 6, 2026
36a0b7d
fix(custom_fee): validate on-flash records strictly
liubo-rtthread May 7, 2026
16473b9
fix(custom_fee): rebuild recovered tail dirty accounting
liubo-rtthread May 7, 2026
b3968ca
feat(custom_fee): index cache slots for fast lookup
liubo-rtthread May 7, 2026
9045aca
feat(custom_fee): persist lane state in checkpoint
liubo-rtthread May 7, 2026
154315c
feat(custom_fee): budget tail recovery scanning
liubo-rtthread May 7, 2026
f653435
feat(custom_fee): round-robin background gc lanes
liubo-rtthread May 7, 2026
b0c9456
custom_fee: move fee docs and add ram-backed smoke test
O-O-BOOK May 7, 2026
a52b55d
refactor(custom_fee): unify flash driver abstraction
O-O-BOOK May 7, 2026
31cbde3
test(custom_fee): add io and gc diagnostics
O-O-BOOK May 7, 2026
f6c2ebe
docs(custom_fee): add public api guide
O-O-BOOK May 7, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions bsp/qemu-vexpress-a9/.config
Original file line number Diff line number Diff line change
Expand Up @@ -208,6 +208,8 @@ CONFIG_RT_USING_USER_MAIN=y
CONFIG_RT_MAIN_THREAD_STACK_SIZE=8196
CONFIG_RT_MAIN_THREAD_PRIORITY=10
CONFIG_RT_USING_LEGACY=y
CONFIG_COMPONENT_USING_CUSTOM_FEE=y
CONFIG_CUSTOM_FEE_MOCK_FLASH_SIZE=0xA0000
CONFIG_RT_USING_MSH=y
CONFIG_RT_USING_FINSH=y
CONFIG_FINSH_USING_MSH=y
Expand Down Expand Up @@ -387,6 +389,7 @@ CONFIG_RT_USING_POSIX_SELECT=y
CONFIG_RT_USING_POSIX_TERMIOS=y
CONFIG_RT_USING_POSIX_AIO=y
# CONFIG_RT_USING_POSIX_MMAN is not set
CONFIG_RT_USING_CLOCK_TIME=y
CONFIG_RT_USING_POSIX_DELAY=y
CONFIG_RT_USING_POSIX_CLOCK=y
CONFIG_RT_USING_POSIX_TIMER=y
Expand Down
3 changes: 3 additions & 0 deletions bsp/qemu-vexpress-a9/rtconfig.h
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,8 @@
#define RT_MAIN_THREAD_STACK_SIZE 8196
#define RT_MAIN_THREAD_PRIORITY 10
#define RT_USING_LEGACY
#define COMPONENT_USING_CUSTOM_FEE
#define CUSTOM_FEE_MOCK_FLASH_SIZE 0xA0000
#define RT_USING_MSH
#define RT_USING_FINSH
#define FINSH_USING_MSH
Expand Down Expand Up @@ -243,6 +245,7 @@
#define RT_USING_POSIX_SELECT
#define RT_USING_POSIX_TERMIOS
#define RT_USING_POSIX_AIO
#define RT_USING_CLOCK_TIME
#define RT_USING_POSIX_DELAY
#define RT_USING_POSIX_CLOCK
#define RT_USING_POSIX_TIMER
Expand Down
1 change: 1 addition & 0 deletions components/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ endif
if !RT_USING_NANO
rsource "dfs/Kconfig"
rsource "fal/Kconfig"
rsource "custom_fee/Kconfig"
rsource "drivers/Kconfig"
rsource "libc/Kconfig"
rsource "net/Kconfig"
Expand Down
11 changes: 11 additions & 0 deletions components/custom_fee/Kconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
config COMPONENT_USING_CUSTOM_FEE
bool "using component custom fee"
default n

if COMPONENT_USING_CUSTOM_FEE

config CUSTOM_FEE_MOCK_FLASH_SIZE
hex "RAM mock flash size"
default 0xA0000

endif
29 changes: 29 additions & 0 deletions components/custom_fee/SConscript
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
from building import *

objs = []
cwd = GetCurrentDir()

if not GetDepend("COMPONENT_USING_CUSTOM_FEE"):
Return('objs')

src = [
'fee_cfg.c',
'fee_api.c',
'fee_port.c',
'fee_sched.c',
'fee_core.c',
'fee_gc.c',
'fee_recovery.c',
'fee_cache.c',
'fee_ckpt.c',
'fee_lane_fast.c',
'fee_lane_log.c',
'fee_lane_bulk.c',
'fee_onflash.c',
'fee_test.c',
]

CPPPATH = [cwd]
group = DefineGroup('custom_fee', src, depend = ['COMPONENT_USING_CUSTOM_FEE'], CPPPATH = CPPPATH)

Return('group')
Loading
Loading