S.J.R. van Schaik
|
36971300b0
|
ftl: map: only declare __wrap_find_block() in testing mode
|
7 years ago |
S.J.R. van Schaik
|
4c2f4eab24
|
ftl: call trace_path() in ftl_sync() to get the page descriptor to write out
|
7 years ago |
S.J.R. van Schaik
|
dddba0af8f
|
ftl: check outstanding flags in ftl_seek()
|
7 years ago |
S.J.R. van Schaik
|
0d1ffa71fb
|
ftl: change order of decrementing the used page count to be more logical
|
7 years ago |
S.J.R. van Schaik
|
bea048006a
|
ftl: separate code to start a transaction
|
7 years ago |
S.J.R. van Schaik
|
65d269e2d4
|
ftl: maintain state for the transaction that is currently active
|
7 years ago |
S.J.R. van Schaik
|
f3eb5df644
|
test: ftl: add tests for ftl_is_mapped()
|
7 years ago |
S.J.R. van Schaik
|
6243dabea8
|
test: ftl: add tests for find_head()
|
7 years ago |
S.J.R. van Schaik
|
920a59499b
|
test: ftl: add tests for find_root()
|
7 years ago |
S.J.R. van Schaik
|
b8426f12f2
|
test: ftl: mock read_page_desc()
|
7 years ago |
S.J.R. van Schaik
|
bbfb9ca800
|
ftl: mock is_group_erased() and find_block() and simplify implementation of binary search
|
7 years ago |
S.J.R. van Schaik
|
c1a7b885f2
|
test: call __real_write_page_desc() in tests and mock prepare_head() and write_page_desc()
|
7 years ago |
S.J.R. van Schaik
|
b4ecfb527c
|
ftl: check magic in read_page_group()
|
7 years ago |
S.J.R. van Schaik
|
a63e7656fe
|
test: ftl: add tests for next_upage()
|
7 years ago |
S.J.R. van Schaik
|
f0a8439c51
|
ftl: fix address calculation in read_page_desc()
|
7 years ago |
S.J.R. van Schaik
|
bbc799f805
|
test: add tests for find_block_div() and read_page_desc()
|
7 years ago |
S.J.R. van Schaik
|
b29e0b945d
|
tbm: fix minor issues during compilation
|
7 years ago |
S.J.R. van Schaik
|
9f5afa977e
|
make: ftl: add separate Makefile
|
7 years ago |
S.J.R. van Schaik
|
e6c1197d07
|
ftl: fix find_last_group() to use proper group offsets
|
7 years ago |
S.J.R. van Schaik
|
51da9338ea
|
ftl: return -1 when no root could be found
|
7 years ago |
S.J.R. van Schaik
|
5b21fe9813
|
ftl: fix read_page_desc() and write_page_desc() to use proper offsets
|
7 years ago |
S.J.R. van Schaik
|
f44581b648
|
ftl: fix is_group_erased() to read the proper offsets
|
7 years ago |
S.J.R. van Schaik
|
dc6365c7f8
|
ftl: fix bug in root recovery by marking page descriptors with a magic value
|
7 years ago |
S.J.R. van Schaik
|
37a25d7384
|
ftl: use default_flash_is_zero() to check if pages are erased
|
7 years ago |
S.J.R. van Schaik
|
846ea90bdc
|
ftl: initialise the offset in the map
|
7 years ago |
S.J.R. van Schaik
|
e24012af82
|
ftl: enable sync-less writes
|
7 years ago |
S.J.R. van Schaik
|
25774eaab5
|
ftl: sync dirty writes before reading or trimming
|
7 years ago |
S.J.R. van Schaik
|
4ef4aa7036
|
ftl: implement flash_sync()
|
7 years ago |
S.J.R. van Schaik
|
f7b11a8726
|
ftl: temporarily disable reading the cached va in trace_path()
|
7 years ago |
S.J.R. van Schaik
|
6c7594acaa
|
ftl: invalidate cached va during sync
|
7 years ago |
S.J.R. van Schaik
|
018b0043a3
|
ftl: implement transactions to perform partial writes
|
7 years ago |
S.J.R. van Schaik
|
15d2f6dc4b
|
ftl: cache unmapped translations
|
7 years ago |
S.J.R. van Schaik
|
f68e26ac12
|
ftl: implement flags to keep track of state
|
7 years ago |
S.J.R. van Schaik
|
8f061a808d
|
ftl: cache last virtual address translation
|
7 years ago |
S.J.R. van Schaik
|
652a90aab8
|
ftl: add newline for clarity
|
7 years ago |
S.J.R. van Schaik
|
7826eccc36
|
ftl: restructure ftl_write() to use less memory by using flash_write0() and flash_copy()
|
8 years ago |
S.J.R. van Schaik
|
22028021ca
|
ftl: use write_page_desc() in ftl_trim()
|
8 years ago |
S.J.R. van Schaik
|
c38413dc90
|
flash: change prototype of flash_copy() and use the default implementation in the sandbox
|
8 years ago |
S.J.R. van Schaik
|
1ba4e77dd6
|
ftl: copy the page of the cousin instead of the page to trim in ftl_trim()
|
8 years ago |
S.J.R. van Schaik
|
ed5e3ef8ea
|
ftl: fix typo
|
8 years ago |
S.J.R. van Schaik
|
dfa497198f
|
ftl: copy dev->log2_block_size to log2_erase_size in reset_map()
|
8 years ago |
S.J.R. van Schaik
|
4292ef2f26
|
ftl: copy log2_page_size to dev->log2_block_size
|
8 years ago |
S.J.R. van Schaik
|
8f680b9d5b
|
ftl: remove unused variable
|
8 years ago |
S.J.R. van Schaik
|
45736a5e9f
|
ftl: simplify calculations in ftl_read()/ftl_write() and remove an out-dated check
|
8 years ago |
S.J.R. van Schaik
|
f647188666
|
ftl: fix bug where constant is not bitshifted
|
8 years ago |
S.J.R. van Schaik
|
7172423f05
|
ftl: compute length after determining the offset
|
8 years ago |
S.J.R. van Schaik
|
631cc1e33a
|
ftl: fix order of preliminary checks
|
8 years ago |
S.J.R. van Schaik
|
acc18a5253
|
ftl: return length if no page was mapped
|
8 years ago |
S.J.R. van Schaik
|
32f0ca0e1a
|
flash: remove log2_page_size
|
8 years ago |
S.J.R. van Schaik
|
e131d77cf5
|
ftl: use va for ftl_read()/ftl_write() and pages for ftl_trim()/ftl_is_mapped()
|
8 years ago |