xref: /linux/arch/x86/kernel/eisa.c (revision 3a39d672e7f48b8d6b91a09afa4b55352773b4b5)
1 // SPDX-License-Identifier: GPL-2.0-only
2 /*
3  * EISA specific code
4  */
5 #include <linux/cc_platform.h>
6 #include <linux/ioport.h>
7 #include <linux/eisa.h>
8 #include <linux/io.h>
9 
10 #include <xen/xen.h>
11 
eisa_bus_probe(void)12 static __init int eisa_bus_probe(void)
13 {
14 	u32 *p;
15 
16 	if ((xen_pv_domain() && !xen_initial_domain()) || cc_platform_has(CC_ATTR_GUEST_SEV_SNP))
17 		return 0;
18 
19 	p = memremap(0x0FFFD9, 4, MEMREMAP_WB);
20 	if (p && *p == 'E' + ('I' << 8) + ('S' << 16) + ('A' << 24))
21 		EISA_bus = 1;
22 	memunmap(p);
23 	return 0;
24 }
25 subsys_initcall(eisa_bus_probe);
26