|
@@ -102,3 +102,158 @@ static struct platform_device scif1_device = {
|
|
|
.dev = {
|
|
|
.platform_data = &scif1_platform_data,
|
|
|
},
|
|
|
+};
|
|
|
+
|
|
|
+/* SCIFA2 */
|
|
|
+static struct plat_sci_port scif2_platform_data = {
|
|
|
+ .mapbase = 0xe6c60000,
|
|
|
+ .flags = UPF_BOOT_AUTOCONF,
|
|
|
+ .scscr = SCSCR_RE | SCSCR_TE,
|
|
|
+ .scbrr_algo_id = SCBRR_ALGO_4,
|
|
|
+ .type = PORT_SCIFA,
|
|
|
+ .irqs = SCIx_IRQ_MUXED(evt2irq(0x0c40)),
|
|
|
+};
|
|
|
+
|
|
|
+static struct platform_device scif2_device = {
|
|
|
+ .name = "sh-sci",
|
|
|
+ .id = 2,
|
|
|
+ .dev = {
|
|
|
+ .platform_data = &scif2_platform_data,
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
+/* SCIFA3 */
|
|
|
+static struct plat_sci_port scif3_platform_data = {
|
|
|
+ .mapbase = 0xe6c70000,
|
|
|
+ .flags = UPF_BOOT_AUTOCONF,
|
|
|
+ .scscr = SCSCR_RE | SCSCR_TE,
|
|
|
+ .scbrr_algo_id = SCBRR_ALGO_4,
|
|
|
+ .type = PORT_SCIFA,
|
|
|
+ .irqs = SCIx_IRQ_MUXED(evt2irq(0x0c60)),
|
|
|
+};
|
|
|
+
|
|
|
+static struct platform_device scif3_device = {
|
|
|
+ .name = "sh-sci",
|
|
|
+ .id = 3,
|
|
|
+ .dev = {
|
|
|
+ .platform_data = &scif3_platform_data,
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
+/* SCIFA4 */
|
|
|
+static struct plat_sci_port scif4_platform_data = {
|
|
|
+ .mapbase = 0xe6c80000,
|
|
|
+ .flags = UPF_BOOT_AUTOCONF,
|
|
|
+ .scscr = SCSCR_RE | SCSCR_TE,
|
|
|
+ .scbrr_algo_id = SCBRR_ALGO_4,
|
|
|
+ .type = PORT_SCIFA,
|
|
|
+ .irqs = SCIx_IRQ_MUXED(evt2irq(0x0d20)),
|
|
|
+};
|
|
|
+
|
|
|
+static struct platform_device scif4_device = {
|
|
|
+ .name = "sh-sci",
|
|
|
+ .id = 4,
|
|
|
+ .dev = {
|
|
|
+ .platform_data = &scif4_platform_data,
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
+/* SCIFA5 */
|
|
|
+static struct plat_sci_port scif5_platform_data = {
|
|
|
+ .mapbase = 0xe6cb0000,
|
|
|
+ .flags = UPF_BOOT_AUTOCONF,
|
|
|
+ .scscr = SCSCR_RE | SCSCR_TE,
|
|
|
+ .scbrr_algo_id = SCBRR_ALGO_4,
|
|
|
+ .type = PORT_SCIFA,
|
|
|
+ .irqs = SCIx_IRQ_MUXED(evt2irq(0x0d40)),
|
|
|
+};
|
|
|
+
|
|
|
+static struct platform_device scif5_device = {
|
|
|
+ .name = "sh-sci",
|
|
|
+ .id = 5,
|
|
|
+ .dev = {
|
|
|
+ .platform_data = &scif5_platform_data,
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
+/* SCIFA6 */
|
|
|
+static struct plat_sci_port scif6_platform_data = {
|
|
|
+ .mapbase = 0xe6cc0000,
|
|
|
+ .flags = UPF_BOOT_AUTOCONF,
|
|
|
+ .scscr = SCSCR_RE | SCSCR_TE,
|
|
|
+ .scbrr_algo_id = SCBRR_ALGO_4,
|
|
|
+ .type = PORT_SCIFA,
|
|
|
+ .irqs = SCIx_IRQ_MUXED(evt2irq(0x04c0)),
|
|
|
+};
|
|
|
+
|
|
|
+static struct platform_device scif6_device = {
|
|
|
+ .name = "sh-sci",
|
|
|
+ .id = 6,
|
|
|
+ .dev = {
|
|
|
+ .platform_data = &scif6_platform_data,
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
+/* SCIFA7 */
|
|
|
+static struct plat_sci_port scif7_platform_data = {
|
|
|
+ .mapbase = 0xe6cd0000,
|
|
|
+ .flags = UPF_BOOT_AUTOCONF,
|
|
|
+ .scscr = SCSCR_RE | SCSCR_TE,
|
|
|
+ .scbrr_algo_id = SCBRR_ALGO_4,
|
|
|
+ .type = PORT_SCIFA,
|
|
|
+ .irqs = SCIx_IRQ_MUXED(evt2irq(0x04e0)),
|
|
|
+};
|
|
|
+
|
|
|
+static struct platform_device scif7_device = {
|
|
|
+ .name = "sh-sci",
|
|
|
+ .id = 7,
|
|
|
+ .dev = {
|
|
|
+ .platform_data = &scif7_platform_data,
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
+/* SCIFB */
|
|
|
+static struct plat_sci_port scifb_platform_data = {
|
|
|
+ .mapbase = 0xe6c30000,
|
|
|
+ .flags = UPF_BOOT_AUTOCONF,
|
|
|
+ .scscr = SCSCR_RE | SCSCR_TE,
|
|
|
+ .scbrr_algo_id = SCBRR_ALGO_4,
|
|
|
+ .type = PORT_SCIFB,
|
|
|
+ .irqs = SCIx_IRQ_MUXED(evt2irq(0x0d60)),
|
|
|
+};
|
|
|
+
|
|
|
+static struct platform_device scifb_device = {
|
|
|
+ .name = "sh-sci",
|
|
|
+ .id = 8,
|
|
|
+ .dev = {
|
|
|
+ .platform_data = &scifb_platform_data,
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
+/* CMT */
|
|
|
+static struct sh_timer_config cmt10_platform_data = {
|
|
|
+ .name = "CMT10",
|
|
|
+ .channel_offset = 0x10,
|
|
|
+ .timer_bit = 0,
|
|
|
+ .clockevent_rating = 125,
|
|
|
+ .clocksource_rating = 125,
|
|
|
+};
|
|
|
+
|
|
|
+static struct resource cmt10_resources[] = {
|
|
|
+ [0] = {
|
|
|
+ .name = "CMT10",
|
|
|
+ .start = 0xe6138010,
|
|
|
+ .end = 0xe613801b,
|
|
|
+ .flags = IORESOURCE_MEM,
|
|
|
+ },
|
|
|
+ [1] = {
|
|
|
+ .start = evt2irq(0x0b00),
|
|
|
+ .flags = IORESOURCE_IRQ,
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
+static struct platform_device cmt10_device = {
|
|
|
+ .name = "sh_cmt",
|
|
|
+ .id = 10,
|
|
|
+ .dev = {
|
|
|
+ .platform_data = &cmt10_platform_data,
|