1 /* SPDX-License-Identifier: GPL-2.0+ */ 2 3 #ifndef __ZL3073X_FLASH_H 4 #define __ZL3073X_FLASH_H 5 6 #include <linux/types.h> 7 8 struct netlink_ext_ack; 9 struct zl3073x_dev; 10 11 int zl3073x_flash_mode_enter(struct zl3073x_dev *zldev, const void *util_ptr, 12 size_t util_size, struct netlink_ext_ack *extack); 13 14 int zl3073x_flash_mode_leave(struct zl3073x_dev *zldev, 15 struct netlink_ext_ack *extack); 16 17 int zl3073x_flash_page(struct zl3073x_dev *zldev, const char *component, 18 u32 page, u32 addr, const void *data, size_t size, 19 struct netlink_ext_ack *extack); 20 21 int zl3073x_flash_page_copy(struct zl3073x_dev *zldev, const char *component, 22 u32 src_page, u32 dst_page, 23 struct netlink_ext_ack *extack); 24 25 int zl3073x_flash_sectors(struct zl3073x_dev *zldev, const char *component, 26 u32 page, u32 addr, const void *data, size_t size, 27 struct netlink_ext_ack *extack); 28 29 #endif /* __ZL3073X_FLASH_H */ 30