diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2008-06-09 13:23:03 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-06-09 13:23:03 -0400 |
commit | 53207293ba96552f67028ce54b74b4cc73c6d87a (patch) | |
tree | a7999f0616e1a0f2320668dde4ac60b1a0828c25 | |
parent | dfa7e20cc0d1a7a620def4dce97de1ae5375f99b (diff) | |
parent | e50901338b23cc173f464ff8e0179c4354d16877 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6.26
* git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6.26:
sh: Add -mno-fdpic to default flags.
sh: add resource of USB host for SH7723
usb: r8a66597-hcd: Add support for SH7723 USB host
sh: Fix compile error SH7763 setup code
sh: Add SH7723 SCIF support
-rw-r--r-- | arch/sh/Makefile | 2 | ||||
-rw-r--r-- | arch/sh/kernel/cpu/sh4a/setup-sh7723.c | 41 | ||||
-rw-r--r-- | arch/sh/kernel/cpu/sh4a/setup-sh7763.c | 9 | ||||
-rw-r--r-- | drivers/usb/host/Kconfig | 8 |
4 files changed, 52 insertions, 8 deletions
diff --git a/arch/sh/Makefile b/arch/sh/Makefile index 8050b03d51fc..fb7b1b15e392 100644 --- a/arch/sh/Makefile +++ b/arch/sh/Makefile | |||
@@ -41,6 +41,8 @@ cflags-$(CONFIG_CPU_SH5) := $(call cc-option,-m5-32media-nofpu,) | |||
41 | cflags-$(CONFIG_CPU_BIG_ENDIAN) += -mb | 41 | cflags-$(CONFIG_CPU_BIG_ENDIAN) += -mb |
42 | cflags-$(CONFIG_CPU_LITTLE_ENDIAN) += -ml | 42 | cflags-$(CONFIG_CPU_LITTLE_ENDIAN) += -ml |
43 | 43 | ||
44 | cflags-y += $(call cc-option,-mno-fdpic) | ||
45 | |||
44 | # | 46 | # |
45 | # -Wa,-isa= tuning implies -Wa,-dsp for the versions of binutils that | 47 | # -Wa,-isa= tuning implies -Wa,-dsp for the versions of binutils that |
46 | # support it, while -Wa,-dsp by itself limits the range of usable opcodes | 48 | # support it, while -Wa,-dsp by itself limits the range of usable opcodes |
diff --git a/arch/sh/kernel/cpu/sh4a/setup-sh7723.c b/arch/sh/kernel/cpu/sh4a/setup-sh7723.c index 566ce79b9abf..a0470f2f5479 100644 --- a/arch/sh/kernel/cpu/sh4a/setup-sh7723.c +++ b/arch/sh/kernel/cpu/sh4a/setup-sh7723.c | |||
@@ -16,6 +16,21 @@ | |||
16 | 16 | ||
17 | static struct plat_sci_port sci_platform_data[] = { | 17 | static struct plat_sci_port sci_platform_data[] = { |
18 | { | 18 | { |
19 | .mapbase = 0xffe00000, | ||
20 | .flags = UPF_BOOT_AUTOCONF, | ||
21 | .type = PORT_SCIF, | ||
22 | .irqs = { 80, 80, 80, 80 }, | ||
23 | },{ | ||
24 | .mapbase = 0xffe10000, | ||
25 | .flags = UPF_BOOT_AUTOCONF, | ||
26 | .type = PORT_SCIF, | ||
27 | .irqs = { 81, 81, 81, 81 }, | ||
28 | },{ | ||
29 | .mapbase = 0xffe20000, | ||
30 | .flags = UPF_BOOT_AUTOCONF, | ||
31 | .type = PORT_SCIF, | ||
32 | .irqs = { 82, 82, 82, 82 }, | ||
33 | },{ | ||
19 | .mapbase = 0xa4e30000, | 34 | .mapbase = 0xa4e30000, |
20 | .flags = UPF_BOOT_AUTOCONF, | 35 | .flags = UPF_BOOT_AUTOCONF, |
21 | .type = PORT_SCI, | 36 | .type = PORT_SCI, |
@@ -73,9 +88,35 @@ static struct platform_device rtc_device = { | |||
73 | .resource = rtc_resources, | 88 | .resource = rtc_resources, |
74 | }; | 89 | }; |
75 | 90 | ||
91 | static struct resource sh7723_usb_host_resources[] = { | ||
92 | [0] = { | ||
93 | .name = "r8a66597_hcd", | ||
94 | .start = 0xa4d80000, | ||
95 | .end = 0xa4d800ff, | ||
96 | .flags = IORESOURCE_MEM, | ||
97 | }, | ||
98 | [1] = { | ||
99 | .start = 65, | ||
100 | .end = 65, | ||
101 | .flags = IORESOURCE_IRQ, | ||
102 | }, | ||
103 | }; | ||
104 | |||
105 | static struct platform_device sh7723_usb_host_device = { | ||
106 | .name = "r8a66597_hcd", | ||
107 | .id = 0, | ||
108 | .dev = { | ||
109 | .dma_mask = NULL, /* not use dma */ | ||
110 | .coherent_dma_mask = 0xffffffff, | ||
111 | }, | ||
112 | .num_resources = ARRAY_SIZE(sh7723_usb_host_resources), | ||
113 | .resource = sh7723_usb_host_resources, | ||
114 | }; | ||
115 | |||
76 | static struct platform_device *sh7723_devices[] __initdata = { | 116 | static struct platform_device *sh7723_devices[] __initdata = { |
77 | &sci_device, | 117 | &sci_device, |
78 | &rtc_device, | 118 | &rtc_device, |
119 | &sh7723_usb_host_device, | ||
79 | }; | 120 | }; |
80 | 121 | ||
81 | static int __init sh7723_devices_setup(void) | 122 | static int __init sh7723_devices_setup(void) |
diff --git a/arch/sh/kernel/cpu/sh4a/setup-sh7763.c b/arch/sh/kernel/cpu/sh4a/setup-sh7763.c index ae2b22219f02..f189a559462b 100644 --- a/arch/sh/kernel/cpu/sh4a/setup-sh7763.c +++ b/arch/sh/kernel/cpu/sh4a/setup-sh7763.c | |||
@@ -291,8 +291,9 @@ static struct intc_sense_reg irq_sense_registers[] __initdata = { | |||
291 | }; | 291 | }; |
292 | 292 | ||
293 | static DECLARE_INTC_DESC(intc_irq_desc, "sh7763-irq", irq_vectors, | 293 | static DECLARE_INTC_DESC(intc_irq_desc, "sh7763-irq", irq_vectors, |
294 | NULL, NULL, irq_mask_registers, irq_prio_registers, | 294 | NULL, irq_mask_registers, irq_prio_registers, |
295 | irq_sense_registers); | 295 | irq_sense_registers); |
296 | |||
296 | 297 | ||
297 | /* External interrupt pins in IRL mode */ | 298 | /* External interrupt pins in IRL mode */ |
298 | static struct intc_vect irl_vectors[] __initdata = { | 299 | static struct intc_vect irl_vectors[] __initdata = { |
@@ -324,10 +325,10 @@ static struct intc_mask_reg irl7654_mask_registers[] __initdata = { | |||
324 | }; | 325 | }; |
325 | 326 | ||
326 | static DECLARE_INTC_DESC(intc_irl7654_desc, "sh7763-irl7654", irl_vectors, | 327 | static DECLARE_INTC_DESC(intc_irl7654_desc, "sh7763-irl7654", irl_vectors, |
327 | NULL, NULL, irl7654_mask_registers, NULL, NULL); | 328 | NULL, irl7654_mask_registers, NULL, NULL); |
328 | 329 | ||
329 | static DECLARE_INTC_DESC(intc_irl3210_desc, "sh7763-irl3210", irl_vectors, | 330 | static DECLARE_INTC_DESC(intc_irl3210_desc, "sh7763-irl3210", irl_vectors, |
330 | NULL, NULL, irl3210_mask_registers, NULL, NULL); | 331 | NULL, irl3210_mask_registers, NULL, NULL); |
331 | 332 | ||
332 | #define INTC_ICR0 0xffd00000 | 333 | #define INTC_ICR0 0xffd00000 |
333 | #define INTC_INTMSK0 0xffd00044 | 334 | #define INTC_INTMSK0 0xffd00044 |
diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig index 1ef6df395e0c..228797e54f9c 100644 --- a/drivers/usb/host/Kconfig +++ b/drivers/usb/host/Kconfig | |||
@@ -300,8 +300,8 @@ config USB_R8A66597_HCD | |||
300 | module will be called r8a66597-hcd. | 300 | module will be called r8a66597-hcd. |
301 | 301 | ||
302 | config SUPERH_ON_CHIP_R8A66597 | 302 | config SUPERH_ON_CHIP_R8A66597 |
303 | boolean "Enable SuperH on-chip USB like the R8A66597" | 303 | boolean "Enable SuperH on-chip R8A66597 USB" |
304 | depends on USB_R8A66597_HCD && CPU_SUBTYPE_SH7366 | 304 | depends on USB_R8A66597_HCD && (CPU_SUBTYPE_SH7366 || CPU_SUBTYPE_SH7723) |
305 | help | 305 | help |
306 | Renesas SuperH processor has USB like the R8A66597. | 306 | This driver enables support for the on-chip R8A66597 in the |
307 | This driver supported processor is SH7366. | 307 | SH7366 and SH7723 processors. |