Eric Miao | 49cbe78 | 2009-01-20 14:15:18 +0800 | [diff] [blame] | 1 | #ifndef __ASM_MACH_CPUTYPE_H |
| 2 | #define __ASM_MACH_CPUTYPE_H |
| 3 | |
| 4 | #include <asm/cputype.h> |
| 5 | |
| 6 | /* |
| 7 | * CPU Stepping OLD_ID CPU_ID CHIP_ID |
| 8 | * |
| 9 | * PXA168 A0 0x41159263 0x56158400 0x00A0A333 |
Eric Miao | 14c6b5e | 2009-03-20 12:50:22 +0800 | [diff] [blame] | 10 | * PXA910 Y0 0x41159262 0x56158000 0x00F0C910 |
Haojian Zhuang | 2f7e8fa | 2009-12-04 09:41:28 -0500 | [diff] [blame] | 11 | * MMP2 Z0 0x560f5811 |
Eric Miao | 49cbe78 | 2009-01-20 14:15:18 +0800 | [diff] [blame] | 12 | */ |
| 13 | |
| 14 | #ifdef CONFIG_CPU_PXA168 |
| 15 | # define __cpu_is_pxa168(id) \ |
| 16 | ({ unsigned int _id = ((id) >> 8) & 0xff; _id == 0x84; }) |
| 17 | #else |
| 18 | # define __cpu_is_pxa168(id) (0) |
| 19 | #endif |
| 20 | |
Eric Miao | 14c6b5e | 2009-03-20 12:50:22 +0800 | [diff] [blame] | 21 | #ifdef CONFIG_CPU_PXA910 |
| 22 | # define __cpu_is_pxa910(id) \ |
| 23 | ({ unsigned int _id = ((id) >> 8) & 0xff; _id == 0x80; }) |
| 24 | #else |
| 25 | # define __cpu_is_pxa910(id) (0) |
| 26 | #endif |
| 27 | |
Haojian Zhuang | 2f7e8fa | 2009-12-04 09:41:28 -0500 | [diff] [blame] | 28 | #ifdef CONFIG_CPU_MMP2 |
| 29 | # define __cpu_is_mmp2(id) \ |
| 30 | ({ unsigned int _id = ((id) >> 8) & 0xff; _id == 0x58; }) |
| 31 | #else |
| 32 | # define __cpu_is_mmp2(id) (0) |
| 33 | #endif |
| 34 | |
Eric Miao | 49cbe78 | 2009-01-20 14:15:18 +0800 | [diff] [blame] | 35 | #define cpu_is_pxa168() ({ __cpu_is_pxa168(read_cpuid_id()); }) |
Eric Miao | 14c6b5e | 2009-03-20 12:50:22 +0800 | [diff] [blame] | 36 | #define cpu_is_pxa910() ({ __cpu_is_pxa910(read_cpuid_id()); }) |
Haojian Zhuang | 2f7e8fa | 2009-12-04 09:41:28 -0500 | [diff] [blame] | 37 | #define cpu_is_mmp2() ({ __cpu_is_mmp2(read_cpuid_id()); }) |
Eric Miao | 49cbe78 | 2009-01-20 14:15:18 +0800 | [diff] [blame] | 38 | |
| 39 | #endif /* __ASM_MACH_CPUTYPE_H */ |