flash/nor/at91samd: Use 32-bit register writes for ST-Link compat
[fw/openocd] / src / flash / common.h
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2
3 /***************************************************************************
4  *   Copyright (C) 2009 by Zachary T Welch <zw@superlucidity.net>          *
5  ***************************************************************************/
6
7 #ifndef OPENOCD_FLASH_COMMON_H
8 #define OPENOCD_FLASH_COMMON_H
9
10 #include <helper/log.h>
11 #include <helper/replacements.h>
12
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.
19  */
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.
25  */
26 bool flash_driver_name_matches(const char *name, const char *expected);
27
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)
38
39 #endif /* OPENOCD_FLASH_COMMON_H */