xref: /openbmc/phosphor-mboxd/mboxd_flash.h (revision acdbdd14)
1 /* SPDX-License-Identifier: Apache-2.0 */
2 /* Copyright (C) 2018 IBM Corp. */
3 
4 #ifndef MBOXD_FLASH_H
5 #define MBOXD_FLASH_H
6 
7 #define FLASH_DIRTY	0x00
8 #define FLASH_ERASED	0x01
9 
10 #include "mbox.h"
11 
12 #ifdef __cplusplus
13 extern "C" {
14 #endif
15 
16 int init_flash_dev(struct mbox_context *context);
17 void free_flash_dev(struct mbox_context *context);
18 int64_t copy_flash(struct mbox_context *context, uint32_t offset, void *mem,
19 		   uint32_t size);
20 int set_flash_bytemap(struct mbox_context *context, uint32_t offset,
21 		      uint32_t count, uint8_t val);
22 int erase_flash(struct mbox_context *context, uint32_t offset, uint32_t count);
23 int write_flash(struct mbox_context *context, uint32_t offset, void *buf,
24 		uint32_t count);
25 
26 #ifdef __cplusplus
27 }
28 #endif
29 #endif /* MBOXD_FLASH_H */
30