Loading arch/powerpc/include/asm/abs_addr.h +1 −20 Original line number Diff line number Diff line Loading @@ -17,7 +17,6 @@ #include <asm/types.h> #include <asm/page.h> #include <asm/prom.h> #include <asm/firmware.h> struct mschunks_map { unsigned long num_chunks; Loading Loading @@ -46,30 +45,12 @@ static inline unsigned long addr_to_chunk(unsigned long addr) static inline unsigned long phys_to_abs(unsigned long pa) { unsigned long chunk; /* This is a no-op on non-iSeries */ if (!firmware_has_feature(FW_FEATURE_ISERIES)) return pa; chunk = addr_to_chunk(pa); if (chunk < mschunks_map.num_chunks) chunk = mschunks_map.mapping[chunk]; return chunk_to_addr(chunk) + (pa & MSCHUNKS_OFFSET_MASK); } /* Convenience macros */ #define virt_to_abs(va) phys_to_abs(__pa(va)) #define abs_to_virt(aa) __va(aa) /* * Converts Virtual Address to Real Address for * Legacy iSeries Hypervisor calls */ #define iseries_hv_addr(virtaddr) \ (0x8000000000000000UL | virt_to_abs(virtaddr)) #endif /* __KERNEL__ */ #endif /* _ASM_POWERPC_ABS_ADDR_H */ arch/powerpc/include/asm/firmware.h +0 −9 Original line number Diff line number Diff line Loading @@ -41,7 +41,6 @@ #define FW_FEATURE_XDABR ASM_CONST(0x0000000000040000) #define FW_FEATURE_MULTITCE ASM_CONST(0x0000000000080000) #define FW_FEATURE_SPLPAR ASM_CONST(0x0000000000100000) #define FW_FEATURE_ISERIES ASM_CONST(0x0000000000200000) #define FW_FEATURE_LPAR ASM_CONST(0x0000000000400000) #define FW_FEATURE_PS3_LV1 ASM_CONST(0x0000000000800000) #define FW_FEATURE_BEAT ASM_CONST(0x0000000001000000) Loading @@ -65,8 +64,6 @@ enum { FW_FEATURE_MULTITCE | FW_FEATURE_SPLPAR | FW_FEATURE_LPAR | FW_FEATURE_CMO | FW_FEATURE_VPHN | FW_FEATURE_XCMO, FW_FEATURE_PSERIES_ALWAYS = 0, FW_FEATURE_ISERIES_POSSIBLE = FW_FEATURE_ISERIES | FW_FEATURE_LPAR, FW_FEATURE_ISERIES_ALWAYS = FW_FEATURE_ISERIES | FW_FEATURE_LPAR, FW_FEATURE_POWERNV_POSSIBLE = FW_FEATURE_OPAL | FW_FEATURE_OPALv2, FW_FEATURE_POWERNV_ALWAYS = 0, FW_FEATURE_PS3_POSSIBLE = FW_FEATURE_LPAR | FW_FEATURE_PS3_LV1, Loading @@ -79,9 +76,6 @@ enum { #ifdef CONFIG_PPC_PSERIES FW_FEATURE_PSERIES_POSSIBLE | #endif #ifdef CONFIG_PPC_ISERIES FW_FEATURE_ISERIES_POSSIBLE | #endif #ifdef CONFIG_PPC_POWERNV FW_FEATURE_POWERNV_POSSIBLE | #endif Loading @@ -99,9 +93,6 @@ enum { #ifdef CONFIG_PPC_PSERIES FW_FEATURE_PSERIES_ALWAYS & #endif #ifdef CONFIG_PPC_ISERIES FW_FEATURE_ISERIES_ALWAYS & #endif #ifdef CONFIG_PPC_POWERNV FW_FEATURE_POWERNV_ALWAYS & #endif Loading arch/powerpc/include/asm/time.h +0 −15 Original line number Diff line number Diff line Loading @@ -18,11 +18,6 @@ #include <linux/percpu.h> #include <asm/processor.h> #ifdef CONFIG_PPC_ISERIES #include <asm/paca.h> #include <asm/firmware.h> #include <asm/iseries/hv_call.h> #endif /* time.c */ extern unsigned long tb_ticks_per_jiffy; Loading Loading @@ -166,15 +161,6 @@ static inline void set_dec(int val) #else #ifndef CONFIG_BOOKE --val; #endif #ifdef CONFIG_PPC_ISERIES if (firmware_has_feature(FW_FEATURE_ISERIES) && get_lppaca()->shared_proc) { get_lppaca()->virtual_decr = val; if (get_dec() > val) HvCall_setVirtualDecr(); return; } #endif mtspr(SPRN_DEC, val); #endif /* not 40x or 8xx_CPU6 */ Loading Loading @@ -217,7 +203,6 @@ DECLARE_PER_CPU(struct cpu_usage, cpu_usage_array); #endif extern void secondary_cpu_time_init(void); extern void iSeries_time_init_early(void); DECLARE_PER_CPU(u64, decrementers_next_tb); Loading arch/powerpc/kernel/irq.c +0 −14 Original line number Diff line number Diff line Loading @@ -211,11 +211,6 @@ notrace void arch_local_irq_restore(unsigned long en) * External interrupt events on non-iseries will have caused * interrupts to be hard-disabled, so there is no problem, we * cannot have preempted. * * That leaves us with EEs on iSeries or decrementer interrupts, * which I decided to safely ignore. The preemption would have * itself been the result of an interrupt, upon which return we * will have checked for pending events on the old CPU. */ irq_happened = get_irq_happened(); if (!irq_happened) Loading Loading @@ -458,15 +453,6 @@ void do_IRQ(struct pt_regs *regs) irq_exit(); set_irq_regs(old_regs); #ifdef CONFIG_PPC_ISERIES if (firmware_has_feature(FW_FEATURE_ISERIES) && get_lppaca()->int_dword.fields.decr_int) { get_lppaca()->int_dword.fields.decr_int = 0; /* Signal a fake decrementer interrupt */ timer_interrupt(regs); } #endif trace_irq_exit(regs); } Loading arch/powerpc/kernel/isa-bridge.c +0 −3 Original line number Diff line number Diff line Loading @@ -29,7 +29,6 @@ #include <asm/pci-bridge.h> #include <asm/machdep.h> #include <asm/ppc-pci.h> #include <asm/firmware.h> unsigned long isa_io_base; /* NULL if no ISA bus */ EXPORT_SYMBOL(isa_io_base); Loading Loading @@ -261,8 +260,6 @@ static struct notifier_block isa_bridge_notifier = { */ static int __init isa_bridge_init(void) { if (firmware_has_feature(FW_FEATURE_ISERIES)) return 0; bus_register_notifier(&pci_bus_type, &isa_bridge_notifier); return 0; } Loading Loading
arch/powerpc/include/asm/abs_addr.h +1 −20 Original line number Diff line number Diff line Loading @@ -17,7 +17,6 @@ #include <asm/types.h> #include <asm/page.h> #include <asm/prom.h> #include <asm/firmware.h> struct mschunks_map { unsigned long num_chunks; Loading Loading @@ -46,30 +45,12 @@ static inline unsigned long addr_to_chunk(unsigned long addr) static inline unsigned long phys_to_abs(unsigned long pa) { unsigned long chunk; /* This is a no-op on non-iSeries */ if (!firmware_has_feature(FW_FEATURE_ISERIES)) return pa; chunk = addr_to_chunk(pa); if (chunk < mschunks_map.num_chunks) chunk = mschunks_map.mapping[chunk]; return chunk_to_addr(chunk) + (pa & MSCHUNKS_OFFSET_MASK); } /* Convenience macros */ #define virt_to_abs(va) phys_to_abs(__pa(va)) #define abs_to_virt(aa) __va(aa) /* * Converts Virtual Address to Real Address for * Legacy iSeries Hypervisor calls */ #define iseries_hv_addr(virtaddr) \ (0x8000000000000000UL | virt_to_abs(virtaddr)) #endif /* __KERNEL__ */ #endif /* _ASM_POWERPC_ABS_ADDR_H */
arch/powerpc/include/asm/firmware.h +0 −9 Original line number Diff line number Diff line Loading @@ -41,7 +41,6 @@ #define FW_FEATURE_XDABR ASM_CONST(0x0000000000040000) #define FW_FEATURE_MULTITCE ASM_CONST(0x0000000000080000) #define FW_FEATURE_SPLPAR ASM_CONST(0x0000000000100000) #define FW_FEATURE_ISERIES ASM_CONST(0x0000000000200000) #define FW_FEATURE_LPAR ASM_CONST(0x0000000000400000) #define FW_FEATURE_PS3_LV1 ASM_CONST(0x0000000000800000) #define FW_FEATURE_BEAT ASM_CONST(0x0000000001000000) Loading @@ -65,8 +64,6 @@ enum { FW_FEATURE_MULTITCE | FW_FEATURE_SPLPAR | FW_FEATURE_LPAR | FW_FEATURE_CMO | FW_FEATURE_VPHN | FW_FEATURE_XCMO, FW_FEATURE_PSERIES_ALWAYS = 0, FW_FEATURE_ISERIES_POSSIBLE = FW_FEATURE_ISERIES | FW_FEATURE_LPAR, FW_FEATURE_ISERIES_ALWAYS = FW_FEATURE_ISERIES | FW_FEATURE_LPAR, FW_FEATURE_POWERNV_POSSIBLE = FW_FEATURE_OPAL | FW_FEATURE_OPALv2, FW_FEATURE_POWERNV_ALWAYS = 0, FW_FEATURE_PS3_POSSIBLE = FW_FEATURE_LPAR | FW_FEATURE_PS3_LV1, Loading @@ -79,9 +76,6 @@ enum { #ifdef CONFIG_PPC_PSERIES FW_FEATURE_PSERIES_POSSIBLE | #endif #ifdef CONFIG_PPC_ISERIES FW_FEATURE_ISERIES_POSSIBLE | #endif #ifdef CONFIG_PPC_POWERNV FW_FEATURE_POWERNV_POSSIBLE | #endif Loading @@ -99,9 +93,6 @@ enum { #ifdef CONFIG_PPC_PSERIES FW_FEATURE_PSERIES_ALWAYS & #endif #ifdef CONFIG_PPC_ISERIES FW_FEATURE_ISERIES_ALWAYS & #endif #ifdef CONFIG_PPC_POWERNV FW_FEATURE_POWERNV_ALWAYS & #endif Loading
arch/powerpc/include/asm/time.h +0 −15 Original line number Diff line number Diff line Loading @@ -18,11 +18,6 @@ #include <linux/percpu.h> #include <asm/processor.h> #ifdef CONFIG_PPC_ISERIES #include <asm/paca.h> #include <asm/firmware.h> #include <asm/iseries/hv_call.h> #endif /* time.c */ extern unsigned long tb_ticks_per_jiffy; Loading Loading @@ -166,15 +161,6 @@ static inline void set_dec(int val) #else #ifndef CONFIG_BOOKE --val; #endif #ifdef CONFIG_PPC_ISERIES if (firmware_has_feature(FW_FEATURE_ISERIES) && get_lppaca()->shared_proc) { get_lppaca()->virtual_decr = val; if (get_dec() > val) HvCall_setVirtualDecr(); return; } #endif mtspr(SPRN_DEC, val); #endif /* not 40x or 8xx_CPU6 */ Loading Loading @@ -217,7 +203,6 @@ DECLARE_PER_CPU(struct cpu_usage, cpu_usage_array); #endif extern void secondary_cpu_time_init(void); extern void iSeries_time_init_early(void); DECLARE_PER_CPU(u64, decrementers_next_tb); Loading
arch/powerpc/kernel/irq.c +0 −14 Original line number Diff line number Diff line Loading @@ -211,11 +211,6 @@ notrace void arch_local_irq_restore(unsigned long en) * External interrupt events on non-iseries will have caused * interrupts to be hard-disabled, so there is no problem, we * cannot have preempted. * * That leaves us with EEs on iSeries or decrementer interrupts, * which I decided to safely ignore. The preemption would have * itself been the result of an interrupt, upon which return we * will have checked for pending events on the old CPU. */ irq_happened = get_irq_happened(); if (!irq_happened) Loading Loading @@ -458,15 +453,6 @@ void do_IRQ(struct pt_regs *regs) irq_exit(); set_irq_regs(old_regs); #ifdef CONFIG_PPC_ISERIES if (firmware_has_feature(FW_FEATURE_ISERIES) && get_lppaca()->int_dword.fields.decr_int) { get_lppaca()->int_dword.fields.decr_int = 0; /* Signal a fake decrementer interrupt */ timer_interrupt(regs); } #endif trace_irq_exit(regs); } Loading
arch/powerpc/kernel/isa-bridge.c +0 −3 Original line number Diff line number Diff line Loading @@ -29,7 +29,6 @@ #include <asm/pci-bridge.h> #include <asm/machdep.h> #include <asm/ppc-pci.h> #include <asm/firmware.h> unsigned long isa_io_base; /* NULL if no ISA bus */ EXPORT_SYMBOL(isa_io_base); Loading Loading @@ -261,8 +260,6 @@ static struct notifier_block isa_bridge_notifier = { */ static int __init isa_bridge_init(void) { if (firmware_has_feature(FW_FEATURE_ISERIES)) return 0; bus_register_notifier(&pci_bus_type, &isa_bridge_notifier); return 0; } Loading