There is no need for those functions/variables to be visible. Make them static and also fix the compile warnings of this sort: drivers/xen/<some file>.c: warning: symbol '<blah>' was not declared. Should it be static? Some of them just require including the header file that declares the functions. Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
		
			
				
	
	
		
			34 lines
		
	
	
	
		
			687 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
	
		
			687 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
#include <linux/init.h>
 | 
						|
 | 
						|
#include <asm/x86_init.h>
 | 
						|
#include <asm/apic.h>
 | 
						|
#include <asm/xen/hypercall.h>
 | 
						|
 | 
						|
#include <xen/xen.h>
 | 
						|
#include <xen/interface/physdev.h>
 | 
						|
#include "xen-ops.h"
 | 
						|
 | 
						|
static unsigned int xen_io_apic_read(unsigned apic, unsigned reg)
 | 
						|
{
 | 
						|
	struct physdev_apic apic_op;
 | 
						|
	int ret;
 | 
						|
 | 
						|
	apic_op.apic_physbase = mpc_ioapic_addr(apic);
 | 
						|
	apic_op.reg = reg;
 | 
						|
	ret = HYPERVISOR_physdev_op(PHYSDEVOP_apic_read, &apic_op);
 | 
						|
	if (!ret)
 | 
						|
		return apic_op.value;
 | 
						|
 | 
						|
	/* fallback to return an emulated IO_APIC values */
 | 
						|
	if (reg == 0x1)
 | 
						|
		return 0x00170020;
 | 
						|
	else if (reg == 0x0)
 | 
						|
		return apic << 24;
 | 
						|
 | 
						|
	return 0xfd;
 | 
						|
}
 | 
						|
 | 
						|
void __init xen_init_apic(void)
 | 
						|
{
 | 
						|
	x86_io_apic_ops.read = xen_io_apic_read;
 | 
						|
}
 |