mirror of
https://github.com/torvalds/linux.git
synced 2024-11-22 12:11:40 +00:00
a678164aad
Sparse expect an __iomem pointer, but after converting the EISA probe to
memremap() the pointer is a regular memory pointer. Access it directly
instead.
[ tglx: Converted it to fix the already applied version ]
Fixes: 80a4da0564
("x86/EISA: Use memremap() to probe for the EISA BIOS signature")
Signed-off-by: Maciej W. Rozycki <macro@orcam.me.uk>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Link: https://lore.kernel.org/all/alpine.DEB.2.21.2408261015270.30766@angie.orcam.me.uk
26 lines
530 B
C
26 lines
530 B
C
// SPDX-License-Identifier: GPL-2.0-only
|
|
/*
|
|
* EISA specific code
|
|
*/
|
|
#include <linux/cc_platform.h>
|
|
#include <linux/ioport.h>
|
|
#include <linux/eisa.h>
|
|
#include <linux/io.h>
|
|
|
|
#include <xen/xen.h>
|
|
|
|
static __init int eisa_bus_probe(void)
|
|
{
|
|
u32 *p;
|
|
|
|
if ((xen_pv_domain() && !xen_initial_domain()) || cc_platform_has(CC_ATTR_GUEST_SEV_SNP))
|
|
return 0;
|
|
|
|
p = memremap(0x0FFFD9, 4, MEMREMAP_WB);
|
|
if (p && *p == 'E' + ('I' << 8) + ('S' << 16) + ('A' << 24))
|
|
EISA_bus = 1;
|
|
memunmap(p);
|
|
return 0;
|
|
}
|
|
subsys_initcall(eisa_bus_probe);
|