aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sh
diff options
context:
space:
mode:
Diffstat (limited to 'arch/sh')
-rw-r--r--arch/sh/Kconfig76
-rw-r--r--arch/sh/boards/mach-ecovec24/setup.c4
-rw-r--r--arch/sh/boards/mach-se/7724/setup.c4
-rw-r--r--arch/sh/drivers/pci/pci.c5
-rw-r--r--arch/sh/include/asm/Kbuild9
-rw-r--r--arch/sh/kernel/idle.c4
-rw-r--r--arch/sh/kernel/irq.c18
7 files changed, 32 insertions, 88 deletions
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index 6357710753d5..364d204298fa 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -123,15 +123,6 @@ config SYS_SUPPORTS_NUMA
123config SYS_SUPPORTS_PCI 123config SYS_SUPPORTS_PCI
124 bool 124 bool
125 125
126config SYS_SUPPORTS_CMT
127 bool
128
129config SYS_SUPPORTS_MTU2
130 bool
131
132config SYS_SUPPORTS_TMU
133 bool
134
135config STACKTRACE_SUPPORT 126config STACKTRACE_SUPPORT
136 def_bool y 127 def_bool y
137 128
@@ -191,14 +182,14 @@ config CPU_SH3
191 bool 182 bool
192 select CPU_HAS_INTEVT 183 select CPU_HAS_INTEVT
193 select CPU_HAS_SR_RB 184 select CPU_HAS_SR_RB
194 select SYS_SUPPORTS_TMU 185 select SYS_SUPPORTS_SH_TMU
195 186
196config CPU_SH4 187config CPU_SH4
197 bool 188 bool
198 select CPU_HAS_INTEVT 189 select CPU_HAS_INTEVT
199 select CPU_HAS_SR_RB 190 select CPU_HAS_SR_RB
200 select CPU_HAS_FPU if !CPU_SH4AL_DSP 191 select CPU_HAS_FPU if !CPU_SH4AL_DSP
201 select SYS_SUPPORTS_TMU 192 select SYS_SUPPORTS_SH_TMU
202 select SYS_SUPPORTS_HUGETLBFS if MMU 193 select SYS_SUPPORTS_HUGETLBFS if MMU
203 194
204config CPU_SH4A 195config CPU_SH4A
@@ -213,7 +204,7 @@ config CPU_SH4AL_DSP
213config CPU_SH5 204config CPU_SH5
214 bool 205 bool
215 select CPU_HAS_FPU 206 select CPU_HAS_FPU
216 select SYS_SUPPORTS_TMU 207 select SYS_SUPPORTS_SH_TMU
217 select SYS_SUPPORTS_HUGETLBFS if MMU 208 select SYS_SUPPORTS_HUGETLBFS if MMU
218 209
219config CPU_SHX2 210config CPU_SHX2
@@ -250,7 +241,7 @@ choice
250config CPU_SUBTYPE_SH7619 241config CPU_SUBTYPE_SH7619
251 bool "Support SH7619 processor" 242 bool "Support SH7619 processor"
252 select CPU_SH2 243 select CPU_SH2
253 select SYS_SUPPORTS_CMT 244 select SYS_SUPPORTS_SH_CMT
254 245
255# SH-2A Processor Support 246# SH-2A Processor Support
256 247
@@ -258,50 +249,50 @@ config CPU_SUBTYPE_SH7201
258 bool "Support SH7201 processor" 249 bool "Support SH7201 processor"
259 select CPU_SH2A 250 select CPU_SH2A
260 select CPU_HAS_FPU 251 select CPU_HAS_FPU
261 select SYS_SUPPORTS_MTU2 252 select SYS_SUPPORTS_SH_MTU2
262 253
263config CPU_SUBTYPE_SH7203 254config CPU_SUBTYPE_SH7203
264 bool "Support SH7203 processor" 255 bool "Support SH7203 processor"
265 select CPU_SH2A 256 select CPU_SH2A
266 select CPU_HAS_FPU 257 select CPU_HAS_FPU
267 select SYS_SUPPORTS_CMT 258 select SYS_SUPPORTS_SH_CMT
268 select SYS_SUPPORTS_MTU2 259 select SYS_SUPPORTS_SH_MTU2
269 select ARCH_WANT_OPTIONAL_GPIOLIB 260 select ARCH_WANT_OPTIONAL_GPIOLIB
270 select PINCTRL 261 select PINCTRL
271 262
272config CPU_SUBTYPE_SH7206 263config CPU_SUBTYPE_SH7206
273 bool "Support SH7206 processor" 264 bool "Support SH7206 processor"
274 select CPU_SH2A 265 select CPU_SH2A
275 select SYS_SUPPORTS_CMT 266 select SYS_SUPPORTS_SH_CMT
276 select SYS_SUPPORTS_MTU2 267 select SYS_SUPPORTS_SH_MTU2
277 268
278config CPU_SUBTYPE_SH7263 269config CPU_SUBTYPE_SH7263
279 bool "Support SH7263 processor" 270 bool "Support SH7263 processor"
280 select CPU_SH2A 271 select CPU_SH2A
281 select CPU_HAS_FPU 272 select CPU_HAS_FPU
282 select SYS_SUPPORTS_CMT 273 select SYS_SUPPORTS_SH_CMT
283 select SYS_SUPPORTS_MTU2 274 select SYS_SUPPORTS_SH_MTU2
284 275
285config CPU_SUBTYPE_SH7264 276config CPU_SUBTYPE_SH7264
286 bool "Support SH7264 processor" 277 bool "Support SH7264 processor"
287 select CPU_SH2A 278 select CPU_SH2A
288 select CPU_HAS_FPU 279 select CPU_HAS_FPU
289 select SYS_SUPPORTS_CMT 280 select SYS_SUPPORTS_SH_CMT
290 select SYS_SUPPORTS_MTU2 281 select SYS_SUPPORTS_SH_MTU2
291 select PINCTRL 282 select PINCTRL
292 283
293config CPU_SUBTYPE_SH7269 284config CPU_SUBTYPE_SH7269
294 bool "Support SH7269 processor" 285 bool "Support SH7269 processor"
295 select CPU_SH2A 286 select CPU_SH2A
296 select CPU_HAS_FPU 287 select CPU_HAS_FPU
297 select SYS_SUPPORTS_CMT 288 select SYS_SUPPORTS_SH_CMT
298 select SYS_SUPPORTS_MTU2 289 select SYS_SUPPORTS_SH_MTU2
299 select PINCTRL 290 select PINCTRL
300 291
301config CPU_SUBTYPE_MXG 292config CPU_SUBTYPE_MXG
302 bool "Support MX-G processor" 293 bool "Support MX-G processor"
303 select CPU_SH2A 294 select CPU_SH2A
304 select SYS_SUPPORTS_MTU2 295 select SYS_SUPPORTS_SH_MTU2
305 help 296 help
306 Select MX-G if running on an R8A03022BG part. 297 Select MX-G if running on an R8A03022BG part.
307 298
@@ -354,7 +345,7 @@ config CPU_SUBTYPE_SH7720
354 bool "Support SH7720 processor" 345 bool "Support SH7720 processor"
355 select CPU_SH3 346 select CPU_SH3
356 select CPU_HAS_DSP 347 select CPU_HAS_DSP
357 select SYS_SUPPORTS_CMT 348 select SYS_SUPPORTS_SH_CMT
358 select ARCH_WANT_OPTIONAL_GPIOLIB 349 select ARCH_WANT_OPTIONAL_GPIOLIB
359 select USB_ARCH_HAS_OHCI 350 select USB_ARCH_HAS_OHCI
360 select USB_OHCI_SH if USB_OHCI_HCD 351 select USB_OHCI_SH if USB_OHCI_HCD
@@ -366,7 +357,7 @@ config CPU_SUBTYPE_SH7721
366 bool "Support SH7721 processor" 357 bool "Support SH7721 processor"
367 select CPU_SH3 358 select CPU_SH3
368 select CPU_HAS_DSP 359 select CPU_HAS_DSP
369 select SYS_SUPPORTS_CMT 360 select SYS_SUPPORTS_SH_CMT
370 select USB_ARCH_HAS_OHCI 361 select USB_ARCH_HAS_OHCI
371 select USB_OHCI_SH if USB_OHCI_HCD 362 select USB_OHCI_SH if USB_OHCI_HCD
372 help 363 help
@@ -422,7 +413,7 @@ config CPU_SUBTYPE_SH7723
422 select CPU_SHX2 413 select CPU_SHX2
423 select ARCH_SHMOBILE 414 select ARCH_SHMOBILE
424 select ARCH_SPARSEMEM_ENABLE 415 select ARCH_SPARSEMEM_ENABLE
425 select SYS_SUPPORTS_CMT 416 select SYS_SUPPORTS_SH_CMT
426 select ARCH_WANT_OPTIONAL_GPIOLIB 417 select ARCH_WANT_OPTIONAL_GPIOLIB
427 select PINCTRL 418 select PINCTRL
428 help 419 help
@@ -434,7 +425,7 @@ config CPU_SUBTYPE_SH7724
434 select CPU_SHX2 425 select CPU_SHX2
435 select ARCH_SHMOBILE 426 select ARCH_SHMOBILE
436 select ARCH_SPARSEMEM_ENABLE 427 select ARCH_SPARSEMEM_ENABLE
437 select SYS_SUPPORTS_CMT 428 select SYS_SUPPORTS_SH_CMT
438 select ARCH_WANT_OPTIONAL_GPIOLIB 429 select ARCH_WANT_OPTIONAL_GPIOLIB
439 select PINCTRL 430 select PINCTRL
440 help 431 help
@@ -514,7 +505,7 @@ config CPU_SUBTYPE_SH7343
514 bool "Support SH7343 processor" 505 bool "Support SH7343 processor"
515 select CPU_SH4AL_DSP 506 select CPU_SH4AL_DSP
516 select ARCH_SHMOBILE 507 select ARCH_SHMOBILE
517 select SYS_SUPPORTS_CMT 508 select SYS_SUPPORTS_SH_CMT
518 509
519config CPU_SUBTYPE_SH7722 510config CPU_SUBTYPE_SH7722
520 bool "Support SH7722 processor" 511 bool "Support SH7722 processor"
@@ -523,7 +514,7 @@ config CPU_SUBTYPE_SH7722
523 select ARCH_SHMOBILE 514 select ARCH_SHMOBILE
524 select ARCH_SPARSEMEM_ENABLE 515 select ARCH_SPARSEMEM_ENABLE
525 select SYS_SUPPORTS_NUMA 516 select SYS_SUPPORTS_NUMA
526 select SYS_SUPPORTS_CMT 517 select SYS_SUPPORTS_SH_CMT
527 select ARCH_WANT_OPTIONAL_GPIOLIB 518 select ARCH_WANT_OPTIONAL_GPIOLIB
528 select PINCTRL 519 select PINCTRL
529 520
@@ -534,7 +525,7 @@ config CPU_SUBTYPE_SH7366
534 select ARCH_SHMOBILE 525 select ARCH_SHMOBILE
535 select ARCH_SPARSEMEM_ENABLE 526 select ARCH_SPARSEMEM_ENABLE
536 select SYS_SUPPORTS_NUMA 527 select SYS_SUPPORTS_NUMA
537 select SYS_SUPPORTS_CMT 528 select SYS_SUPPORTS_SH_CMT
538 529
539endchoice 530endchoice
540 531
@@ -567,27 +558,6 @@ source "arch/sh/boards/Kconfig"
567 558
568menu "Timer and clock configuration" 559menu "Timer and clock configuration"
569 560
570config SH_TIMER_TMU
571 bool "TMU timer driver"
572 depends on SYS_SUPPORTS_TMU
573 default y
574 help
575 This enables the build of the TMU timer driver.
576
577config SH_TIMER_CMT
578 bool "CMT timer driver"
579 depends on SYS_SUPPORTS_CMT
580 default y
581 help
582 This enables build of the CMT timer driver.
583
584config SH_TIMER_MTU2
585 bool "MTU2 timer driver"
586 depends on SYS_SUPPORTS_MTU2
587 default y
588 help
589 This enables build of the MTU2 timer driver.
590
591config SH_PCLK_FREQ 561config SH_PCLK_FREQ
592 int "Peripheral clock frequency (in Hz)" 562 int "Peripheral clock frequency (in Hz)"
593 depends on SH_CLK_CPG_LEGACY 563 depends on SH_CLK_CPG_LEGACY
diff --git a/arch/sh/boards/mach-ecovec24/setup.c b/arch/sh/boards/mach-ecovec24/setup.c
index 5bc3a15465c7..85d5255d259f 100644
--- a/arch/sh/boards/mach-ecovec24/setup.c
+++ b/arch/sh/boards/mach-ecovec24/setup.c
@@ -861,14 +861,12 @@ static struct asoc_simple_card_info fsi_da7210_info = {
861 .card = "FSIB-DA7210", 861 .card = "FSIB-DA7210",
862 .codec = "da7210.0-001a", 862 .codec = "da7210.0-001a",
863 .platform = "sh_fsi.0", 863 .platform = "sh_fsi.0",
864 .daifmt = SND_SOC_DAIFMT_I2S, 864 .daifmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_CBM_CFM,
865 .cpu_dai = { 865 .cpu_dai = {
866 .name = "fsib-dai", 866 .name = "fsib-dai",
867 .fmt = SND_SOC_DAIFMT_CBS_CFS | SND_SOC_DAIFMT_IB_NF,
868 }, 867 },
869 .codec_dai = { 868 .codec_dai = {
870 .name = "da7210-hifi", 869 .name = "da7210-hifi",
871 .fmt = SND_SOC_DAIFMT_CBM_CFM,
872 }, 870 },
873}; 871};
874 872
diff --git a/arch/sh/boards/mach-se/7724/setup.c b/arch/sh/boards/mach-se/7724/setup.c
index 21e4230659a5..1162bc6945a3 100644
--- a/arch/sh/boards/mach-se/7724/setup.c
+++ b/arch/sh/boards/mach-se/7724/setup.c
@@ -304,14 +304,12 @@ static struct asoc_simple_card_info fsi_ak4642_info = {
304 .card = "FSIA-AK4642", 304 .card = "FSIA-AK4642",
305 .codec = "ak4642-codec.0-0012", 305 .codec = "ak4642-codec.0-0012",
306 .platform = "sh_fsi.0", 306 .platform = "sh_fsi.0",
307 .daifmt = SND_SOC_DAIFMT_LEFT_J, 307 .daifmt = SND_SOC_DAIFMT_LEFT_J | SND_SOC_DAIFMT_CBM_CFM,
308 .cpu_dai = { 308 .cpu_dai = {
309 .name = "fsia-dai", 309 .name = "fsia-dai",
310 .fmt = SND_SOC_DAIFMT_CBS_CFS | SND_SOC_DAIFMT_IB_NF,
311 }, 310 },
312 .codec_dai = { 311 .codec_dai = {
313 .name = "ak4642-hifi", 312 .name = "ak4642-hifi",
314 .fmt = SND_SOC_DAIFMT_CBM_CFM,
315 .sysclk = 11289600, 313 .sysclk = 11289600,
316 }, 314 },
317}; 315};
diff --git a/arch/sh/drivers/pci/pci.c b/arch/sh/drivers/pci/pci.c
index 60ed3e1c4b75..1bc09ee7948f 100644
--- a/arch/sh/drivers/pci/pci.c
+++ b/arch/sh/drivers/pci/pci.c
@@ -186,11 +186,6 @@ resource_size_t pcibios_align_resource(void *data, const struct resource *res,
186 return start; 186 return start;
187} 187}
188 188
189int pcibios_enable_device(struct pci_dev *dev, int mask)
190{
191 return pci_enable_resources(dev, mask);
192}
193
194static void __init 189static void __init
195pcibios_bus_report_status_early(struct pci_channel *hose, 190pcibios_bus_report_status_early(struct pci_channel *hose,
196 int top_bus, int current_bus, 191 int top_bus, int current_bus,
diff --git a/arch/sh/include/asm/Kbuild b/arch/sh/include/asm/Kbuild
index 0cd7198a4524..c19e47dacb31 100644
--- a/arch/sh/include/asm/Kbuild
+++ b/arch/sh/include/asm/Kbuild
@@ -8,18 +8,21 @@ generic-y += emergency-restart.h
8generic-y += errno.h 8generic-y += errno.h
9generic-y += exec.h 9generic-y += exec.h
10generic-y += fcntl.h 10generic-y += fcntl.h
11generic-y += hash.h
11generic-y += ioctl.h 12generic-y += ioctl.h
12generic-y += ipcbuf.h 13generic-y += ipcbuf.h
13generic-y += irq_regs.h 14generic-y += irq_regs.h
14generic-y += kvm_para.h 15generic-y += kvm_para.h
15generic-y += local.h 16generic-y += local.h
16generic-y += local64.h 17generic-y += local64.h
18generic-y += mcs_spinlock.h
19generic-y += mman.h
20generic-y += msgbuf.h
17generic-y += param.h 21generic-y += param.h
18generic-y += parport.h 22generic-y += parport.h
19generic-y += percpu.h 23generic-y += percpu.h
20generic-y += poll.h 24generic-y += poll.h
21generic-y += mman.h 25generic-y += preempt.h
22generic-y += msgbuf.h
23generic-y += resource.h 26generic-y += resource.h
24generic-y += scatterlist.h 27generic-y += scatterlist.h
25generic-y += sembuf.h 28generic-y += sembuf.h
@@ -34,5 +37,3 @@ generic-y += termios.h
34generic-y += trace_clock.h 37generic-y += trace_clock.h
35generic-y += ucontext.h 38generic-y += ucontext.h
36generic-y += xor.h 39generic-y += xor.h
37generic-y += preempt.h
38generic-y += hash.h
diff --git a/arch/sh/kernel/idle.c b/arch/sh/kernel/idle.c
index 2ea4483fd722..be616ee0cf87 100644
--- a/arch/sh/kernel/idle.c
+++ b/arch/sh/kernel/idle.c
@@ -16,7 +16,6 @@
16#include <linux/thread_info.h> 16#include <linux/thread_info.h>
17#include <linux/irqflags.h> 17#include <linux/irqflags.h>
18#include <linux/smp.h> 18#include <linux/smp.h>
19#include <linux/cpuidle.h>
20#include <linux/atomic.h> 19#include <linux/atomic.h>
21#include <asm/pgalloc.h> 20#include <asm/pgalloc.h>
22#include <asm/smp.h> 21#include <asm/smp.h>
@@ -40,8 +39,7 @@ void arch_cpu_idle_dead(void)
40 39
41void arch_cpu_idle(void) 40void arch_cpu_idle(void)
42{ 41{
43 if (cpuidle_idle_call()) 42 sh_idle();
44 sh_idle();
45} 43}
46 44
47void __init select_idle_routine(void) 45void __init select_idle_routine(void)
diff --git a/arch/sh/kernel/irq.c b/arch/sh/kernel/irq.c
index 0833736afa32..65a1ecd77f96 100644
--- a/arch/sh/kernel/irq.c
+++ b/arch/sh/kernel/irq.c
@@ -217,19 +217,6 @@ void __init init_IRQ(void)
217} 217}
218 218
219#ifdef CONFIG_HOTPLUG_CPU 219#ifdef CONFIG_HOTPLUG_CPU
220static void route_irq(struct irq_data *data, unsigned int irq, unsigned int cpu)
221{
222 struct irq_desc *desc = irq_to_desc(irq);
223 struct irq_chip *chip = irq_data_get_irq_chip(data);
224
225 printk(KERN_INFO "IRQ%u: moving from cpu%u to cpu%u\n",
226 irq, data->node, cpu);
227
228 raw_spin_lock_irq(&desc->lock);
229 chip->irq_set_affinity(data, cpumask_of(cpu), false);
230 raw_spin_unlock_irq(&desc->lock);
231}
232
233/* 220/*
234 * The CPU has been marked offline. Migrate IRQs off this CPU. If 221 * The CPU has been marked offline. Migrate IRQs off this CPU. If
235 * the affinity settings do not allow other CPUs, force them onto any 222 * the affinity settings do not allow other CPUs, force them onto any
@@ -250,11 +237,8 @@ void migrate_irqs(void)
250 irq, cpu); 237 irq, cpu);
251 238
252 cpumask_setall(data->affinity); 239 cpumask_setall(data->affinity);
253 newcpu = cpumask_any_and(data->affinity,
254 cpu_online_mask);
255 } 240 }
256 241 irq_set_affinity(irq, data->affinity);
257 route_irq(data, irq, newcpu);
258 } 242 }
259 } 243 }
260} 244}