flash/nor/rp2040: check target halted before flash operation
[openocd.git] / src / flash / common.h
blob15aea5b810508774bf6ec1a625a42cb42511b515
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
3 /***************************************************************************
4 * Copyright (C) 2009 by Zachary T Welch <zw@superlucidity.net> *
5 ***************************************************************************/
7 #ifndef OPENOCD_FLASH_COMMON_H
8 #define OPENOCD_FLASH_COMMON_H
10 #include <helper/log.h>
11 #include <helper/replacements.h>
13 /**
14 * Parses the optional '.index' portion of a flash bank identifier.
15 * @param name The desired driver name, passed by the user.
16 * @returns The parsed index request, or 0 if not present. If the
17 * name provides a suffix but it does not parse as an unsigned integer,
18 * the routine returns ~0U. This will prevent further matching.
20 unsigned get_flash_name_index(const char *name);
21 /**
22 * Attempt to match the @c expected name with the @c name of a driver.
23 * @param name The name of the driver (from the bank's device structure).
24 * @param expected The expected driver name, passed by the user.
26 bool flash_driver_name_matches(const char *name, const char *expected);
28 #define ERROR_FLASH_BANK_INVALID (-900)
29 #define ERROR_FLASH_SECTOR_INVALID (-901)
30 #define ERROR_FLASH_OPERATION_FAILED (-902)
31 #define ERROR_FLASH_DST_OUT_OF_BANK (-903)
32 #define ERROR_FLASH_DST_BREAKS_ALIGNMENT (-904)
33 #define ERROR_FLASH_BUSY (-905)
34 #define ERROR_FLASH_SECTOR_NOT_ERASED (-906)
35 #define ERROR_FLASH_BANK_NOT_PROBED (-907)
36 #define ERROR_FLASH_OPER_UNSUPPORTED (-908)
37 #define ERROR_FLASH_PROTECTED (-909)
39 #endif /* OPENOCD_FLASH_COMMON_H */