162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-or-later */ 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Copyright (C) 2001 Ben. Herrenschmidt (benh@kernel.crashing.org) 462306a36Sopenharmony_ci * 562306a36Sopenharmony_ci * Modifications for ppc64: 662306a36Sopenharmony_ci * Copyright (C) 2003 Dave Engebretsen <engebret@us.ibm.com> 762306a36Sopenharmony_ci */ 862306a36Sopenharmony_ci 962306a36Sopenharmony_ci#ifdef CONFIG_PPC64 1062306a36Sopenharmony_ci#define COMMON_USER_BOOKE (PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU | \ 1162306a36Sopenharmony_ci PPC_FEATURE_HAS_FPU | PPC_FEATURE_64 | \ 1262306a36Sopenharmony_ci PPC_FEATURE_BOOKE) 1362306a36Sopenharmony_ci#else 1462306a36Sopenharmony_ci#define COMMON_USER_BOOKE (PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU | \ 1562306a36Sopenharmony_ci PPC_FEATURE_BOOKE) 1662306a36Sopenharmony_ci#endif 1762306a36Sopenharmony_ci 1862306a36Sopenharmony_cistatic struct cpu_spec cpu_specs[] __initdata = { 1962306a36Sopenharmony_ci#ifdef CONFIG_PPC32 2062306a36Sopenharmony_ci { /* e500mc */ 2162306a36Sopenharmony_ci .pvr_mask = 0xffff0000, 2262306a36Sopenharmony_ci .pvr_value = 0x80230000, 2362306a36Sopenharmony_ci .cpu_name = "e500mc", 2462306a36Sopenharmony_ci .cpu_features = CPU_FTRS_E500MC, 2562306a36Sopenharmony_ci .cpu_user_features = COMMON_USER_BOOKE | PPC_FEATURE_HAS_FPU, 2662306a36Sopenharmony_ci .cpu_user_features2 = PPC_FEATURE2_ISEL, 2762306a36Sopenharmony_ci .mmu_features = MMU_FTR_TYPE_FSL_E | MMU_FTR_BIG_PHYS | MMU_FTR_USE_TLBILX, 2862306a36Sopenharmony_ci .icache_bsize = 64, 2962306a36Sopenharmony_ci .dcache_bsize = 64, 3062306a36Sopenharmony_ci .num_pmcs = 4, 3162306a36Sopenharmony_ci .cpu_setup = __setup_cpu_e500mc, 3262306a36Sopenharmony_ci .machine_check = machine_check_e500mc, 3362306a36Sopenharmony_ci .platform = "ppce500mc", 3462306a36Sopenharmony_ci .cpu_down_flush = cpu_down_flush_e500mc, 3562306a36Sopenharmony_ci }, 3662306a36Sopenharmony_ci#endif /* CONFIG_PPC32 */ 3762306a36Sopenharmony_ci { /* e5500 */ 3862306a36Sopenharmony_ci .pvr_mask = 0xffff0000, 3962306a36Sopenharmony_ci .pvr_value = 0x80240000, 4062306a36Sopenharmony_ci .cpu_name = "e5500", 4162306a36Sopenharmony_ci .cpu_features = CPU_FTRS_E5500, 4262306a36Sopenharmony_ci .cpu_user_features = COMMON_USER_BOOKE | PPC_FEATURE_HAS_FPU, 4362306a36Sopenharmony_ci .cpu_user_features2 = PPC_FEATURE2_ISEL, 4462306a36Sopenharmony_ci .mmu_features = MMU_FTR_TYPE_FSL_E | MMU_FTR_BIG_PHYS | MMU_FTR_USE_TLBILX, 4562306a36Sopenharmony_ci .icache_bsize = 64, 4662306a36Sopenharmony_ci .dcache_bsize = 64, 4762306a36Sopenharmony_ci .num_pmcs = 4, 4862306a36Sopenharmony_ci .cpu_setup = __setup_cpu_e5500, 4962306a36Sopenharmony_ci#ifndef CONFIG_PPC32 5062306a36Sopenharmony_ci .cpu_restore = __restore_cpu_e5500, 5162306a36Sopenharmony_ci#endif 5262306a36Sopenharmony_ci .machine_check = machine_check_e500mc, 5362306a36Sopenharmony_ci .platform = "ppce5500", 5462306a36Sopenharmony_ci .cpu_down_flush = cpu_down_flush_e5500, 5562306a36Sopenharmony_ci }, 5662306a36Sopenharmony_ci { /* e6500 */ 5762306a36Sopenharmony_ci .pvr_mask = 0xffff0000, 5862306a36Sopenharmony_ci .pvr_value = 0x80400000, 5962306a36Sopenharmony_ci .cpu_name = "e6500", 6062306a36Sopenharmony_ci .cpu_features = CPU_FTRS_E6500, 6162306a36Sopenharmony_ci .cpu_user_features = COMMON_USER_BOOKE | PPC_FEATURE_HAS_FPU | 6262306a36Sopenharmony_ci PPC_FEATURE_HAS_ALTIVEC_COMP, 6362306a36Sopenharmony_ci .cpu_user_features2 = PPC_FEATURE2_ISEL, 6462306a36Sopenharmony_ci .mmu_features = MMU_FTR_TYPE_FSL_E | MMU_FTR_BIG_PHYS | MMU_FTR_USE_TLBILX, 6562306a36Sopenharmony_ci .icache_bsize = 64, 6662306a36Sopenharmony_ci .dcache_bsize = 64, 6762306a36Sopenharmony_ci .num_pmcs = 6, 6862306a36Sopenharmony_ci .cpu_setup = __setup_cpu_e6500, 6962306a36Sopenharmony_ci#ifndef CONFIG_PPC32 7062306a36Sopenharmony_ci .cpu_restore = __restore_cpu_e6500, 7162306a36Sopenharmony_ci#endif 7262306a36Sopenharmony_ci .machine_check = machine_check_e500mc, 7362306a36Sopenharmony_ci .platform = "ppce6500", 7462306a36Sopenharmony_ci .cpu_down_flush = cpu_down_flush_e6500, 7562306a36Sopenharmony_ci }, 7662306a36Sopenharmony_ci}; 77