Loading...
Note: File does not exist in v4.17.
1/* SPDX-License-Identifier: GPL-2.0-or-later */
2/*
3 * Copyright (C) 2001 Ben. Herrenschmidt (benh@kernel.crashing.org)
4 *
5 * Modifications for ppc64:
6 * Copyright (C) 2003 Dave Engebretsen <engebret@us.ibm.com>
7 */
8
9#ifdef CONFIG_PPC64
10#define COMMON_USER_BOOKE (PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU | \
11 PPC_FEATURE_HAS_FPU | PPC_FEATURE_64 | \
12 PPC_FEATURE_BOOKE)
13#else
14#define COMMON_USER_BOOKE (PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU | \
15 PPC_FEATURE_BOOKE)
16#endif
17
18static struct cpu_spec cpu_specs[] __initdata = {
19#ifdef CONFIG_PPC32
20 { /* e500mc */
21 .pvr_mask = 0xffff0000,
22 .pvr_value = 0x80230000,
23 .cpu_name = "e500mc",
24 .cpu_features = CPU_FTRS_E500MC,
25 .cpu_user_features = COMMON_USER_BOOKE | PPC_FEATURE_HAS_FPU,
26 .cpu_user_features2 = PPC_FEATURE2_ISEL,
27 .mmu_features = MMU_FTR_TYPE_FSL_E | MMU_FTR_BIG_PHYS | MMU_FTR_USE_TLBILX,
28 .icache_bsize = 64,
29 .dcache_bsize = 64,
30 .num_pmcs = 4,
31 .cpu_setup = __setup_cpu_e500mc,
32 .machine_check = machine_check_e500mc,
33 .platform = "ppce500mc",
34 .cpu_down_flush = cpu_down_flush_e500mc,
35 },
36#endif /* CONFIG_PPC32 */
37 { /* e5500 */
38 .pvr_mask = 0xffff0000,
39 .pvr_value = 0x80240000,
40 .cpu_name = "e5500",
41 .cpu_features = CPU_FTRS_E5500,
42 .cpu_user_features = COMMON_USER_BOOKE | PPC_FEATURE_HAS_FPU,
43 .cpu_user_features2 = PPC_FEATURE2_ISEL,
44 .mmu_features = MMU_FTR_TYPE_FSL_E | MMU_FTR_BIG_PHYS | MMU_FTR_USE_TLBILX,
45 .icache_bsize = 64,
46 .dcache_bsize = 64,
47 .num_pmcs = 4,
48 .cpu_setup = __setup_cpu_e5500,
49#ifndef CONFIG_PPC32
50 .cpu_restore = __restore_cpu_e5500,
51#endif
52 .machine_check = machine_check_e500mc,
53 .platform = "ppce5500",
54 .cpu_down_flush = cpu_down_flush_e5500,
55 },
56 { /* e6500 */
57 .pvr_mask = 0xffff0000,
58 .pvr_value = 0x80400000,
59 .cpu_name = "e6500",
60 .cpu_features = CPU_FTRS_E6500,
61 .cpu_user_features = COMMON_USER_BOOKE | PPC_FEATURE_HAS_FPU |
62 PPC_FEATURE_HAS_ALTIVEC_COMP,
63 .cpu_user_features2 = PPC_FEATURE2_ISEL,
64 .mmu_features = MMU_FTR_TYPE_FSL_E | MMU_FTR_BIG_PHYS | MMU_FTR_USE_TLBILX,
65 .icache_bsize = 64,
66 .dcache_bsize = 64,
67 .num_pmcs = 6,
68 .cpu_setup = __setup_cpu_e6500,
69#ifndef CONFIG_PPC32
70 .cpu_restore = __restore_cpu_e6500,
71#endif
72 .machine_check = machine_check_e500mc,
73 .platform = "ppce6500",
74 .cpu_down_flush = cpu_down_flush_e6500,
75 },
76};