1/*
2 * Marvell EBU SoC ID and revision definitions.
3 *
4 * Copyright (C) 2014 Marvell Semiconductor
5 *
6 * This file is licensed under the terms of the GNU General Public
7 * License version 2.  This program is licensed "as is" without any
8 * warranty of any kind, whether express or implied.
9 */
10
11#ifndef __LINUX_MVEBU_SOC_ID_H
12#define __LINUX_MVEBU_SOC_ID_H
13
14/* Armada XP ID */
15#define MV78230_DEV_ID	    0x7823
16#define MV78260_DEV_ID	    0x7826
17#define MV78460_DEV_ID	    0x7846
18
19/* Armada XP Revision */
20#define MV78XX0_A0_REV	    0x1
21#define MV78XX0_B0_REV	    0x2
22
23/* Amada 370 ID */
24#define ARMADA_370_DEV_ID   0x6710
25
26/* Amada 370 Revision */
27#define ARMADA_370_A1_REV   0x1
28
29/* Armada 375 ID */
30#define ARMADA_375_DEV_ID   0x6720
31
32/* Armada 375 */
33#define ARMADA_375_Z1_REV   0x0
34#define ARMADA_375_A0_REV   0x3
35
36/* Armada 38x ID */
37#define ARMADA_380_DEV_ID   0x6810
38#define ARMADA_385_DEV_ID   0x6820
39#define ARMADA_388_DEV_ID   0x6828
40
41/* Armada 38x Revision */
42#define ARMADA_38x_Z1_REV   0x0
43#define ARMADA_38x_A0_REV   0x4
44
45#ifdef CONFIG_ARCH_MVEBU
46int mvebu_get_soc_id(u32 *dev, u32 *rev);
47#else
48static inline int mvebu_get_soc_id(u32 *dev, u32 *rev)
49{
50	return -1;
51}
52#endif
53
54#endif /* __LINUX_MVEBU_SOC_ID_H */
55