xref: /openbmc/linux/arch/arm/mach-davinci/cputype.h (revision dec85a95)
1*0fdebc5eSThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */
2ca31807bSArnd Bergmann /*
3ca31807bSArnd Bergmann  * DaVinci CPU type detection
4ca31807bSArnd Bergmann  *
5ca31807bSArnd Bergmann  * Author: Kevin Hilman, Deep Root Systems, LLC
6ca31807bSArnd Bergmann  *
7ca31807bSArnd Bergmann  * Defines the cpu_is_*() macros for runtime detection of DaVinci
8ca31807bSArnd Bergmann  * device type.  In addition, if support for a given device is not
9ca31807bSArnd Bergmann  * compiled in to the kernel, the macros return 0 so that
10ca31807bSArnd Bergmann  * resulting code can be optimized out.
11ca31807bSArnd Bergmann  *
12*0fdebc5eSThomas Gleixner  * 2009 (c) Deep Root Systems, LLC.
13ca31807bSArnd Bergmann  */
14ca31807bSArnd Bergmann #ifndef _ASM_ARCH_CPU_H
15ca31807bSArnd Bergmann #define _ASM_ARCH_CPU_H
16ca31807bSArnd Bergmann 
17ca31807bSArnd Bergmann #include "common.h"
18ca31807bSArnd Bergmann 
19ca31807bSArnd Bergmann struct davinci_id {
20ca31807bSArnd Bergmann 	u8	variant;	/* JTAG ID bits 31:28 */
21ca31807bSArnd Bergmann 	u16	part_no;	/* JTAG ID bits 27:12 */
22ca31807bSArnd Bergmann 	u16	manufacturer;	/* JTAG ID bits 11:1 */
23ca31807bSArnd Bergmann 	u32	cpu_id;
24ca31807bSArnd Bergmann 	char	*name;
25ca31807bSArnd Bergmann };
26ca31807bSArnd Bergmann 
27ca31807bSArnd Bergmann /* Can use lower 16 bits of cpu id  for a variant when required */
28ca31807bSArnd Bergmann #define	DAVINCI_CPU_ID_DA830		0x08300000
29ca31807bSArnd Bergmann #define	DAVINCI_CPU_ID_DA850		0x08500000
30ca31807bSArnd Bergmann 
31ca31807bSArnd Bergmann #endif
32