xref: /linux/arch/x86/kernel/eisa.c (revision 24168c5e6dfbdd5b414f048f47f75d64533296ca)
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 
12 static __init int eisa_bus_probe(void)
13 {
14 	void __iomem *p;
15 
16 	if ((xen_pv_domain() && !xen_initial_domain()) || cc_platform_has(CC_ATTR_GUEST_SEV_SNP))
17 		return 0;
18 
19 	p = ioremap(0x0FFFD9, 4);
20 	if (p && readl(p) == 'E' + ('I' << 8) + ('S' << 16) + ('A' << 24))
21 		EISA_bus = 1;
22 	iounmap(p);
23 	return 0;
24 }
25 subsys_initcall(eisa_bus_probe);
26