summaryrefslogtreecommitdiffstats
path: root/apps
diff options
context:
space:
mode:
authorJames Buren <braewoods+rb@braewoods.net>2021-06-21 03:37:17 +0000
committerJames Buren <braewoods+rb@braewoods.net>2021-06-21 03:37:17 +0000
commitfc9208108052440ccde79b6cd33e3598e8fb7c26 (patch)
treecf3c54cd5ca8bfb75596dee27f117b55adc748b2 /apps
parent2ca5774cf9613b0f2c1d31d6054911b8cb36e131 (diff)
downloadrockbox-fc9208108052440ccde79b6cd33e3598e8fb7c26.tar.gz
rockbox-fc9208108052440ccde79b6cd33e3598e8fb7c26.tar.bz2
rockbox-fc9208108052440ccde79b6cd33e3598e8fb7c26.zip
rockbox: add a crc32 reverse polynomial function
This uses the reverse of the polynomial used by the current crc_32 function. The code for this was derived from the implementation used by tinf. This version is space optimized and should be a good way to reduce code duplication in other parts of rockbox that use the same crc32 algorithm. This is mainly of use in areas where DEFLATE is in use. Change-Id: I918da5b4ea4dc441c0e7e6b5007abcc2da463bcb
Diffstat (limited to 'apps')
-rw-r--r--apps/plugin.c1
-rw-r--r--apps/plugin.h1
2 files changed, 2 insertions, 0 deletions
diff --git a/apps/plugin.c b/apps/plugin.c
index 32cecc320f..a3970a88a7 100644
--- a/apps/plugin.c
+++ b/apps/plugin.c
@@ -792,6 +792,7 @@ static const struct plugin_api rockbox_api = {
#ifdef PLUGIN_USE_IRAM
audio_hard_stop,
#endif
+ crc_32r,
/* new stuff at the end, sort into place next time
the API gets incompatible */
diff --git a/apps/plugin.h b/apps/plugin.h
index 394a4dbbfd..64ced00bfa 100644
--- a/apps/plugin.h
+++ b/apps/plugin.h
@@ -919,6 +919,7 @@ struct plugin_api {
#ifdef PLUGIN_USE_IRAM
void (*audio_hard_stop)(void);
#endif
+ uint32_t (*crc_32r)(const void *src, uint32_t len, uint32_t crc32);
/* new stuff at the end, sort into place next time
the API gets incompatible */