1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * Common board functions for siemens based boards
4  * (C) Copyright 2022 Siemens Schweiz AG
5  */
6 
7 #ifndef __COMMON_BOARD_H
8 #define __COMMON_BOARD_H
9 
10 /*
11  * Chip data
12  * Offset in EEPROM: 0x120 - 0x14F
13  *
14  * -----------------------------------------------------------------------------------
15  * | Address range |                          Content                                |
16  * -----------------------------------------------------------------------------------
17  * | 0x120 - 0x123 |  Magic Number - 0x43484950 (4 byte)                             |
18  * -----------------------------------------------------------------------------------
19  * | 0x124 - 0x133 |  Device Nomenclature (15 + 1 byte)                              |
20  * -----------------------------------------------------------------------------------
21  * | 0x134 - 0x13A |  HW Version of the form "v00.00" (6 + 1 byte)                 |
22  * |               |   - First 2 digits: Layout revision (starting from 1)           |
23  * |               |   - Last 2 digits: Assembly variant revision (starting from 1)  |
24  * -----------------------------------------------------------------------------------
25  * | 0x13B - 0x13F |  Flash Size in Gibit (4 + 1 byte)                               |
26  * -----------------------------------------------------------------------------------
27  * | 0x140 - 0x144 |  Ram Size in Gibit (4 + 1 byte)                                 |
28  * -----------------------------------------------------------------------------------
29  * | 0x145 - 0x14F |  Sequence number, equals DMC-code (10 + 1 byte) [OBSOLETE]      |
30  * -----------------------------------------------------------------------------------
31  */
32 
33 #define MAGIC_CHIP		0x50494843
34 #define EEPROM_CHIP_OFFSET	0x120
35 
36 struct chip_data {
37 	unsigned int magic;
38 	char sdevname[16];
39 	char shwver[7];
40 	char flash_size[5];
41 	char ram_size[5];
42 };
43 
44 #endif /* __COMMON_BOARD_H */
45