aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSergei Shtylyov <sergei.shtylyov@cogentembedded.com>2013-06-08 16:38:41 -0400
committerSimon Horman <horms+renesas@verge.net.au>2013-06-11 03:12:53 -0400
commit1a87b01d3b18709ae240ec90ae612354dd44d9a9 (patch)
tree0cc6780fb9071c96548b4c78bbd751b591a99778
parent02474a41e6180521a2b9b30b84888670e290dba0 (diff)
ARM: shmobile: BOCK-W: add USB support
Register the USB PHY device from bockw_init(), passing the platform data to it. Set machine's init_late() method to r8a7778_init_late() in order for [EO]HCI to get registered too... Don't forget to add USB PENC0/1 pins to bockw_pinctrl_map[]. The patch has been tested on the BOCK-W board. Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-rw-r--r--arch/arm/mach-shmobile/board-bockw.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/arm/mach-shmobile/board-bockw.c b/arch/arm/mach-shmobile/board-bockw.c
index dac4365c5158..7ed2401b899c 100644
--- a/arch/arm/mach-shmobile/board-bockw.c
+++ b/arch/arm/mach-shmobile/board-bockw.c
@@ -38,12 +38,18 @@ static struct resource smsc911x_resources[] = {
38 DEFINE_RES_IRQ(irq_pin(0)), /* IRQ 0 */ 38 DEFINE_RES_IRQ(irq_pin(0)), /* IRQ 0 */
39}; 39};
40 40
41static struct rcar_phy_platform_data usb_phy_platform_data __initdata;
42
41static const struct pinctrl_map bockw_pinctrl_map[] = { 43static const struct pinctrl_map bockw_pinctrl_map[] = {
42 /* SCIF0 */ 44 /* SCIF0 */
43 PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.0", "pfc-r8a7778", 45 PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.0", "pfc-r8a7778",
44 "scif0_data_a", "scif0"), 46 "scif0_data_a", "scif0"),
45 PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.0", "pfc-r8a7778", 47 PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.0", "pfc-r8a7778",
46 "scif0_ctrl", "scif0"), 48 "scif0_ctrl", "scif0"),
49 PIN_MAP_MUX_GROUP_DEFAULT("ehci-platform", "pfc-r8a7778",
50 "usb0", "usb0"),
51 PIN_MAP_MUX_GROUP_DEFAULT("ehci-platform", "pfc-r8a7778",
52 "usb1", "usb1"),
47}; 53};
48 54
49#define IRQ0MR 0x30 55#define IRQ0MR 0x30
@@ -54,6 +60,7 @@ static void __init bockw_init(void)
54 r8a7778_clock_init(); 60 r8a7778_clock_init();
55 r8a7778_init_irq_extpin(1); 61 r8a7778_init_irq_extpin(1);
56 r8a7778_add_standard_devices(); 62 r8a7778_add_standard_devices();
63 r8a7778_add_usb_phy_device(&usb_phy_platform_data);
57 64
58 pinctrl_register_mappings(bockw_pinctrl_map, 65 pinctrl_register_mappings(bockw_pinctrl_map,
59 ARRAY_SIZE(bockw_pinctrl_map)); 66 ARRAY_SIZE(bockw_pinctrl_map));
@@ -91,4 +98,5 @@ DT_MACHINE_START(BOCKW_DT, "bockw")
91 .init_machine = bockw_init, 98 .init_machine = bockw_init,
92 .init_time = shmobile_timer_init, 99 .init_time = shmobile_timer_init,
93 .dt_compat = bockw_boards_compat_dt, 100 .dt_compat = bockw_boards_compat_dt,
101 .init_late = r8a7778_init_late,
94MACHINE_END 102MACHINE_END