xref: /linux/arch/riscv/kernel/vendor_extensions/mips.c (revision cb7e3669c683669d93139184adff68a7d9000536)
1*a8fed1bcSAleksa Paunovic // SPDX-License-Identifier: GPL-2.0-only
2*a8fed1bcSAleksa Paunovic /*
3*a8fed1bcSAleksa Paunovic  * Copyright (C) 2025 MIPS.
4*a8fed1bcSAleksa Paunovic  */
5*a8fed1bcSAleksa Paunovic 
6*a8fed1bcSAleksa Paunovic #include <asm/cpufeature.h>
7*a8fed1bcSAleksa Paunovic #include <asm/vendor_extensions.h>
8*a8fed1bcSAleksa Paunovic #include <asm/vendor_extensions/mips.h>
9*a8fed1bcSAleksa Paunovic 
10*a8fed1bcSAleksa Paunovic #include <linux/array_size.h>
11*a8fed1bcSAleksa Paunovic #include <linux/cpumask.h>
12*a8fed1bcSAleksa Paunovic #include <linux/types.h>
13*a8fed1bcSAleksa Paunovic 
14*a8fed1bcSAleksa Paunovic /* All MIPS vendor extensions supported in Linux */
15*a8fed1bcSAleksa Paunovic static const struct riscv_isa_ext_data riscv_isa_vendor_ext_mips[] = {
16*a8fed1bcSAleksa Paunovic 	__RISCV_ISA_EXT_DATA(xmipsexectl, RISCV_ISA_VENDOR_EXT_XMIPSEXECTL),
17*a8fed1bcSAleksa Paunovic };
18*a8fed1bcSAleksa Paunovic 
19*a8fed1bcSAleksa Paunovic struct riscv_isa_vendor_ext_data_list riscv_isa_vendor_ext_list_mips = {
20*a8fed1bcSAleksa Paunovic 	.ext_data_count = ARRAY_SIZE(riscv_isa_vendor_ext_mips),
21*a8fed1bcSAleksa Paunovic 	.ext_data = riscv_isa_vendor_ext_mips,
22*a8fed1bcSAleksa Paunovic };
23