typedef uint32_t (*libmem_driver_crc32_fn_t)(libmem_driver_handle_t *h, const uint8_t *start, size_t size, uint32_t crc);
libmem_driver_crc32_fn_t is a function pointer to a LIBMEM driver's crc32 extended function.
h — A pointer to the handle of the LIBMEM driver.
start — A pointer to the start of the address range.
size — The size of the address range in bytes.
crc — The initial CRC-32 value.
libmem_driver_crc32_fn_t returns — The computed CRC-32 value.
The driver's crc function is an optional extended function. It has been provided to allow you to write a driver for memory that is not memory mapped.
Typically memory read operations will be direct memory mapped operations however implementing a driver's crc function allows you to carry out a crc32 operation on non-memory mapped memory through the LIBMEM interface.