eisa.c 530 B

12345678910111213141516171819202122232425
  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. #include <xen/xen.h>
  10. static __init int eisa_bus_probe(void)
  11. {
  12. u32 *p;
  13. if ((xen_pv_domain() && !xen_initial_domain()) || cc_platform_has(CC_ATTR_GUEST_SEV_SNP))
  14. return 0;
  15. p = memremap(0x0FFFD9, 4, MEMREMAP_WB);
  16. if (p && *p == 'E' + ('I' << 8) + ('S' << 16) + ('A' << 24))
  17. EISA_bus = 1;
  18. memunmap(p);
  19. return 0;
  20. }
  21. subsys_initcall(eisa_bus_probe);