aboutsummaryrefslogtreecommitdiffstats
path: root/arch/tile/kernel
diff options
context:
space:
mode:
Diffstat (limited to 'arch/tile/kernel')
-rw-r--r--arch/tile/kernel/intvec_32.S2
-rw-r--r--arch/tile/kernel/module.c31
-rw-r--r--arch/tile/kernel/pci.c2
-rw-r--r--arch/tile/kernel/setup.c3
-rw-r--r--arch/tile/kernel/time.c5
5 files changed, 4 insertions, 39 deletions
diff --git a/arch/tile/kernel/intvec_32.S b/arch/tile/kernel/intvec_32.S
index 72ade79b621..aecc8ed5f39 100644
--- a/arch/tile/kernel/intvec_32.S
+++ b/arch/tile/kernel/intvec_32.S
@@ -21,7 +21,7 @@
21#include <asm/ptrace.h> 21#include <asm/ptrace.h>
22#include <asm/thread_info.h> 22#include <asm/thread_info.h>
23#include <asm/irqflags.h> 23#include <asm/irqflags.h>
24#include <asm/atomic.h> 24#include <asm/atomic_32.h>
25#include <asm/asm-offsets.h> 25#include <asm/asm-offsets.h>
26#include <hv/hypervisor.h> 26#include <hv/hypervisor.h>
27#include <arch/abi.h> 27#include <arch/abi.h>
diff --git a/arch/tile/kernel/module.c b/arch/tile/kernel/module.c
index f68df69f1f6..28fa6ece9d3 100644
--- a/arch/tile/kernel/module.c
+++ b/arch/tile/kernel/module.c
@@ -98,25 +98,6 @@ void module_free(struct module *mod, void *module_region)
98 */ 98 */
99} 99}
100 100
101/* We don't need anything special. */
102int module_frob_arch_sections(Elf_Ehdr *hdr,
103 Elf_Shdr *sechdrs,
104 char *secstrings,
105 struct module *mod)
106{
107 return 0;
108}
109
110int apply_relocate(Elf_Shdr *sechdrs,
111 const char *strtab,
112 unsigned int symindex,
113 unsigned int relsec,
114 struct module *me)
115{
116 pr_err("module %s: .rel relocation unsupported\n", me->name);
117 return -ENOEXEC;
118}
119
120#ifdef __tilegx__ 101#ifdef __tilegx__
121/* 102/*
122 * Validate that the high 16 bits of "value" is just the sign-extension of 103 * Validate that the high 16 bits of "value" is just the sign-extension of
@@ -249,15 +230,3 @@ int apply_relocate_add(Elf_Shdr *sechdrs,
249 } 230 }
250 return 0; 231 return 0;
251} 232}
252
253int module_finalize(const Elf_Ehdr *hdr,
254 const Elf_Shdr *sechdrs,
255 struct module *me)
256{
257 /* FIXME: perhaps remove the "writable" bit from the TLB? */
258 return 0;
259}
260
261void module_arch_cleanup(struct module *mod)
262{
263}
diff --git a/arch/tile/kernel/pci.c b/arch/tile/kernel/pci.c
index 6d4cb5d7a9f..2a8014cb1ff 100644
--- a/arch/tile/kernel/pci.c
+++ b/arch/tile/kernel/pci.c
@@ -228,7 +228,7 @@ err_cont:
228 * (pin - 1) converts from the PCI standard's [1:4] convention to 228 * (pin - 1) converts from the PCI standard's [1:4] convention to
229 * a normal [0:3] range. 229 * a normal [0:3] range.
230 */ 230 */
231static int tile_map_irq(struct pci_dev *dev, u8 slot, u8 pin) 231static int tile_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)
232{ 232{
233 struct pci_controller *controller = 233 struct pci_controller *controller =
234 (struct pci_controller *)dev->sysdata; 234 (struct pci_controller *)dev->sysdata;
diff --git a/arch/tile/kernel/setup.c b/arch/tile/kernel/setup.c
index 6cdc9ba55fe..5f85d8b34db 100644
--- a/arch/tile/kernel/setup.c
+++ b/arch/tile/kernel/setup.c
@@ -553,8 +553,7 @@ static void __init setup_bootmem_allocator(void)
553 553
554#ifdef CONFIG_KEXEC 554#ifdef CONFIG_KEXEC
555 if (crashk_res.start != crashk_res.end) 555 if (crashk_res.start != crashk_res.end)
556 reserve_bootmem(crashk_res.start, 556 reserve_bootmem(crashk_res.start, resource_size(&crashk_res), 0);
557 crashk_res.end - crashk_res.start + 1, 0);
558#endif 557#endif
559} 558}
560 559
diff --git a/arch/tile/kernel/time.c b/arch/tile/kernel/time.c
index c4be58cc5d5..f6f50f2a5e3 100644
--- a/arch/tile/kernel/time.c
+++ b/arch/tile/kernel/time.c
@@ -78,7 +78,6 @@ static struct clocksource cycle_counter_cs = {
78 .rating = 300, 78 .rating = 300,
79 .read = clocksource_get_cycles, 79 .read = clocksource_get_cycles,
80 .mask = CLOCKSOURCE_MASK(64), 80 .mask = CLOCKSOURCE_MASK(64),
81 .shift = 22, /* typical value, e.g. x86 tsc uses this */
82 .flags = CLOCK_SOURCE_IS_CONTINUOUS, 81 .flags = CLOCK_SOURCE_IS_CONTINUOUS,
83}; 82};
84 83
@@ -91,8 +90,6 @@ void __init setup_clock(void)
91 cycles_per_sec = hv_sysconf(HV_SYSCONF_CPU_SPEED); 90 cycles_per_sec = hv_sysconf(HV_SYSCONF_CPU_SPEED);
92 sched_clock_mult = 91 sched_clock_mult =
93 clocksource_hz2mult(cycles_per_sec, SCHED_CLOCK_SHIFT); 92 clocksource_hz2mult(cycles_per_sec, SCHED_CLOCK_SHIFT);
94 cycle_counter_cs.mult =
95 clocksource_hz2mult(cycles_per_sec, cycle_counter_cs.shift);
96} 93}
97 94
98void __init calibrate_delay(void) 95void __init calibrate_delay(void)
@@ -107,7 +104,7 @@ void __init calibrate_delay(void)
107void __init time_init(void) 104void __init time_init(void)
108{ 105{
109 /* Initialize and register the clock source. */ 106 /* Initialize and register the clock source. */
110 clocksource_register(&cycle_counter_cs); 107 clocksource_register_hz(&cycle_counter_cs, cycles_per_sec);
111 108
112 /* Start up the tile-timer interrupt source on the boot cpu. */ 109 /* Start up the tile-timer interrupt source on the boot cpu. */
113 setup_tile_timer(); 110 setup_tile_timer();