blob: 7563f7481d583710e75e409d865c753e2dd9f0c3 [file] [log] [blame]
Nico Huber11136c22023-05-01 12:00:09 +02001/*
2 * This file is part of the flashprog project.
3 *
4 * Copyright (C) 2023 Nico Huber <nico.h@gmx.de>
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 */
16
17#ifndef __PROBING_H__
18#define __PROBING_H__ 1
19
20#include <stdint.h>
21
22enum id_type {
23 ID_FIXME = 0,
24 ID_NONE,
25
26 ID_82802AB,
27 ID_EDI,
28 ID_EN29LV640B,
29 ID_JEDEC,
30 ID_JEDEC_29GL,
31 ID_OPAQUE,
32 ID_SPI_AT25F,
33 ID_SPI_RDID,
34 ID_SPI_RDID4,
35 ID_SPI_REMS,
36 ID_SPI_RES1,
37 ID_SPI_RES2,
38 ID_SPI_RES3,
39 ID_SPI_SFDP,
40 ID_SPI_ST95,
41 ID_W29EE011,
42};
43
44/*
45 * With 32bit manufacture_id and model_id we can cover IDs up to
46 * (including) the 4th bank of JEDEC JEP106W Standard Manufacturer's
47 * Identification code.
48 */
49struct id_info {
50 uint32_t manufacture;
51 uint32_t model;
52 enum id_type type;
53};
54
55#endif /* !__PROBING_H__ */