diff options
| -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. |
