/* sbc_harness/fs_harness_flash_bin.h - 9P access to flash storage * * Copyright (C) 2025 Luke T. Shumaker * SPDX-License-Identifier: AGPL-3.0-or-later */ #ifndef _SBC_HARNESS_FS_HARNESS_FLASH_BIN_H_ #define _SBC_HARNESS_FS_HARNESS_FLASH_BIN_H_ #include /* for FLASH_SECTOR_SIZE */ #include #include "ihex.h" struct flashio { bool finalize; struct { bool ok; size_t pos; uint8_t dat[FLASH_SECTOR_SIZE]; } wbuf, rbuf; }; struct flash_file { char *name; uint64_t pathnum; BEGIN_PRIVATE(FS_HARNESS_FLASH_BIN); struct flashio io; struct ihex_decoder ihex; END_PRIVATE(FS_HARNESS_FLASH_BIN); }; LO_IMPLEMENTATION_H(lib9p_srv_file, struct flash_file, flash_file); #endif /* _SBC_HARNESS_FS_HARNESS_FLASH_BIN_H_ */