diff options
Diffstat (limited to 'kernel/arch/sh/kernel')
-rw-r--r-- | kernel/arch/sh/kernel/cpu/sh4/sq.c | 3 | ||||
-rw-r--r-- | kernel/arch/sh/kernel/cpu/sh4a/clock-sh7724.c | 2 | ||||
-rw-r--r-- | kernel/arch/sh/kernel/cpu/sh4a/clock-sh7734.c | 3 | ||||
-rw-r--r-- | kernel/arch/sh/kernel/cpu/sh4a/clock-sh7757.c | 4 | ||||
-rw-r--r-- | kernel/arch/sh/kernel/cpu/sh4a/clock-sh7785.c | 4 | ||||
-rw-r--r-- | kernel/arch/sh/kernel/cpu/sh4a/clock-sh7786.c | 4 | ||||
-rw-r--r-- | kernel/arch/sh/kernel/cpu/sh4a/clock-shx3.c | 4 | ||||
-rw-r--r-- | kernel/arch/sh/kernel/cpu/sh5/unwind.c | 2 | ||||
-rw-r--r-- | kernel/arch/sh/kernel/irq.c | 9 | ||||
-rw-r--r-- | kernel/arch/sh/kernel/localtimer.c | 6 | ||||
-rw-r--r-- | kernel/arch/sh/kernel/perf_event.c | 2 | ||||
-rw-r--r-- | kernel/arch/sh/kernel/traps_64.c | 2 |
12 files changed, 19 insertions, 26 deletions
diff --git a/kernel/arch/sh/kernel/cpu/sh4/sq.c b/kernel/arch/sh/kernel/cpu/sh4/sq.c index 0a47bd3e7..4ca78ed71 100644 --- a/kernel/arch/sh/kernel/cpu/sh4/sq.c +++ b/kernel/arch/sh/kernel/cpu/sh4/sq.c @@ -355,13 +355,12 @@ static int sq_dev_add(struct device *dev, struct subsys_interface *sif) return error; } -static int sq_dev_remove(struct device *dev, struct subsys_interface *sif) +static void sq_dev_remove(struct device *dev, struct subsys_interface *sif) { unsigned int cpu = dev->id; struct kobject *kobj = sq_kobject[cpu]; kobject_put(kobj); - return 0; } static struct subsys_interface sq_interface = { diff --git a/kernel/arch/sh/kernel/cpu/sh4a/clock-sh7724.c b/kernel/arch/sh/kernel/cpu/sh4a/clock-sh7724.c index c187b9579..f27c618de 100644 --- a/kernel/arch/sh/kernel/cpu/sh4a/clock-sh7724.c +++ b/kernel/arch/sh/kernel/cpu/sh4a/clock-sh7724.c @@ -343,7 +343,7 @@ static struct clk_lookup lookups[] = { CLKDEV_CON_ID("2ddmac0", &mstp_clks[HWBLK_2DDMAC]), CLKDEV_DEV_ID("sh_fsi.0", &mstp_clks[HWBLK_SPU]), CLKDEV_CON_ID("jpu0", &mstp_clks[HWBLK_JPU]), - CLKDEV_DEV_ID("sh-vou.0", &mstp_clks[HWBLK_VOU]), + CLKDEV_DEV_ID("sh-vou", &mstp_clks[HWBLK_VOU]), CLKDEV_CON_ID("beu0", &mstp_clks[HWBLK_BEU0]), CLKDEV_DEV_ID("sh_mobile_ceu.0", &mstp_clks[HWBLK_CEU0]), CLKDEV_CON_ID("veu0", &mstp_clks[HWBLK_VEU0]), diff --git a/kernel/arch/sh/kernel/cpu/sh4a/clock-sh7734.c b/kernel/arch/sh/kernel/cpu/sh4a/clock-sh7734.c index 1fdf1ee67..7f54bf2f4 100644 --- a/kernel/arch/sh/kernel/cpu/sh4a/clock-sh7734.c +++ b/kernel/arch/sh/kernel/cpu/sh4a/clock-sh7734.c @@ -246,8 +246,7 @@ int __init arch_clk_init(void) for (i = 0; i < ARRAY_SIZE(main_clks); i++) ret |= clk_register(main_clks[i]); - for (i = 0; i < ARRAY_SIZE(lookups); i++) - clkdev_add(&lookups[i]); + clkdev_add_table(lookups, ARRAY_SIZE(lookups)); if (!ret) ret = sh_clk_div4_register(div4_clks, ARRAY_SIZE(div4_clks), diff --git a/kernel/arch/sh/kernel/cpu/sh4a/clock-sh7757.c b/kernel/arch/sh/kernel/cpu/sh4a/clock-sh7757.c index 9a28fdb36..e40ec2c97 100644 --- a/kernel/arch/sh/kernel/cpu/sh4a/clock-sh7757.c +++ b/kernel/arch/sh/kernel/cpu/sh4a/clock-sh7757.c @@ -141,8 +141,8 @@ int __init arch_clk_init(void) for (i = 0; i < ARRAY_SIZE(clks); i++) ret |= clk_register(clks[i]); - for (i = 0; i < ARRAY_SIZE(lookups); i++) - clkdev_add(&lookups[i]); + + clkdev_add_table(lookups, ARRAY_SIZE(lookups)); if (!ret) ret = sh_clk_div4_register(div4_clks, ARRAY_SIZE(div4_clks), diff --git a/kernel/arch/sh/kernel/cpu/sh4a/clock-sh7785.c b/kernel/arch/sh/kernel/cpu/sh4a/clock-sh7785.c index 17d0ea55a..8eb6e6234 100644 --- a/kernel/arch/sh/kernel/cpu/sh4a/clock-sh7785.c +++ b/kernel/arch/sh/kernel/cpu/sh4a/clock-sh7785.c @@ -164,8 +164,8 @@ int __init arch_clk_init(void) for (i = 0; i < ARRAY_SIZE(clks); i++) ret |= clk_register(clks[i]); - for (i = 0; i < ARRAY_SIZE(lookups); i++) - clkdev_add(&lookups[i]); + + clkdev_add_table(lookups, ARRAY_SIZE(lookups)); if (!ret) ret = sh_clk_div4_register(div4_clks, ARRAY_SIZE(div4_clks), diff --git a/kernel/arch/sh/kernel/cpu/sh4a/clock-sh7786.c b/kernel/arch/sh/kernel/cpu/sh4a/clock-sh7786.c index bec2a83f1..5e50e7ebe 100644 --- a/kernel/arch/sh/kernel/cpu/sh4a/clock-sh7786.c +++ b/kernel/arch/sh/kernel/cpu/sh4a/clock-sh7786.c @@ -179,8 +179,8 @@ int __init arch_clk_init(void) for (i = 0; i < ARRAY_SIZE(clks); i++) ret |= clk_register(clks[i]); - for (i = 0; i < ARRAY_SIZE(lookups); i++) - clkdev_add(&lookups[i]); + + clkdev_add_table(lookups, ARRAY_SIZE(lookups)); if (!ret) ret = sh_clk_div4_register(div4_clks, ARRAY_SIZE(div4_clks), diff --git a/kernel/arch/sh/kernel/cpu/sh4a/clock-shx3.c b/kernel/arch/sh/kernel/cpu/sh4a/clock-shx3.c index 9a49a44f6..605221d14 100644 --- a/kernel/arch/sh/kernel/cpu/sh4a/clock-shx3.c +++ b/kernel/arch/sh/kernel/cpu/sh4a/clock-shx3.c @@ -138,8 +138,8 @@ int __init arch_clk_init(void) for (i = 0; i < ARRAY_SIZE(clks); i++) ret |= clk_register(clks[i]); - for (i = 0; i < ARRAY_SIZE(lookups); i++) - clkdev_add(&lookups[i]); + + clkdev_add_table(lookups, ARRAY_SIZE(lookups)); if (!ret) ret = sh_clk_div4_register(div4_clks, ARRAY_SIZE(div4_clks), diff --git a/kernel/arch/sh/kernel/cpu/sh5/unwind.c b/kernel/arch/sh/kernel/cpu/sh5/unwind.c index 10aed4175..3a4fed406 100644 --- a/kernel/arch/sh/kernel/cpu/sh5/unwind.c +++ b/kernel/arch/sh/kernel/cpu/sh5/unwind.c @@ -159,7 +159,7 @@ static int lookup_prev_stack_frame(unsigned long fp, unsigned long pc, /* Sign extend */ regcache[dest] = - ((((s64)(u64)op >> 10) & 0xffff) << 54) >> 54; + sign_extend64((((u64)op >> 10) & 0xffff), 9); break; case (0xd0 >> 2): /* addi */ case (0xd4 >> 2): /* addi.l */ diff --git a/kernel/arch/sh/kernel/irq.c b/kernel/arch/sh/kernel/irq.c index 6fe8089e6..abd58b4df 100644 --- a/kernel/arch/sh/kernel/irq.c +++ b/kernel/arch/sh/kernel/irq.c @@ -229,16 +229,17 @@ void migrate_irqs(void) for_each_active_irq(irq) { struct irq_data *data = irq_get_irq_data(irq); - if (data->node == cpu) { - unsigned int newcpu = cpumask_any_and(data->affinity, + if (irq_data_get_node(data) == cpu) { + struct cpumask *mask = irq_data_get_affinity_mask(data); + unsigned int newcpu = cpumask_any_and(mask, cpu_online_mask); if (newcpu >= nr_cpu_ids) { pr_info_ratelimited("IRQ%u no longer affine to CPU%u\n", irq, cpu); - cpumask_setall(data->affinity); + cpumask_setall(mask); } - irq_set_affinity(irq, data->affinity); + irq_set_affinity(irq, mask); } } } diff --git a/kernel/arch/sh/kernel/localtimer.c b/kernel/arch/sh/kernel/localtimer.c index b880a7e2a..cbb7d4636 100644 --- a/kernel/arch/sh/kernel/localtimer.c +++ b/kernel/arch/sh/kernel/localtimer.c @@ -39,11 +39,6 @@ void local_timer_interrupt(void) irq_exit(); } -static void dummy_timer_set_mode(enum clock_event_mode mode, - struct clock_event_device *clk) -{ -} - void local_timer_setup(unsigned int cpu) { struct clock_event_device *clk = &per_cpu(local_clockevent, cpu); @@ -54,7 +49,6 @@ void local_timer_setup(unsigned int cpu) CLOCK_EVT_FEAT_DUMMY; clk->rating = 400; clk->mult = 1; - clk->set_mode = dummy_timer_set_mode; clk->broadcast = smp_timer_broadcast; clk->cpumask = cpumask_of(cpu); diff --git a/kernel/arch/sh/kernel/perf_event.c b/kernel/arch/sh/kernel/perf_event.c index 7cfd7f153..4dca18347 100644 --- a/kernel/arch/sh/kernel/perf_event.c +++ b/kernel/arch/sh/kernel/perf_event.c @@ -10,7 +10,7 @@ * Copyright (C) 2008-2009 Red Hat, Inc., Ingo Molnar * Copyright (C) 2009 Jaswinder Singh Rajput * Copyright (C) 2009 Advanced Micro Devices, Inc., Robert Richter - * Copyright (C) 2008-2009 Red Hat, Inc., Peter Zijlstra <pzijlstr@redhat.com> + * Copyright (C) 2008-2009 Red Hat, Inc., Peter Zijlstra * Copyright (C) 2009 Intel Corporation, <markus.t.metzger@intel.com> * * ppc: diff --git a/kernel/arch/sh/kernel/traps_64.c b/kernel/arch/sh/kernel/traps_64.c index 112ea11c0..d208c27cc 100644 --- a/kernel/arch/sh/kernel/traps_64.c +++ b/kernel/arch/sh/kernel/traps_64.c @@ -101,7 +101,7 @@ static int generate_and_check_address(struct pt_regs *regs, if (displacement_not_indexed) { __s64 displacement; displacement = (opcode >> 10) & 0x3ff; - displacement = ((displacement << 54) >> 54); /* sign extend */ + displacement = sign_extend64(displacement, 9); addr = (__u64)((__s64)base_address + (displacement << width_shift)); } else { __u64 offset; |