From 4e9c4877aacc134b568e480eb8998de58b43d63e Mon Sep 17 00:00:00 2001 From: Laurent Pinchart Date: Wed, 30 Apr 2014 02:31:45 +0200 Subject: [PATCH 1/2] ARM: shmobile: lager: Enable SCIF0 and SCIF1 serial ports in DT SCIF0 and SCIF1 are used as debug serial ports. Enable them and configure pinmuxing appropriately. We can now remove the clkdev registration hack for SCIF devices from the Lager reference board file. Signed-off-by: Laurent Pinchart [horms+renesas@verge.net.au: updated changelog to remove references to device renaming] [horms+renesas@verge.net.au: resolved conflicts] Signed-off-by: Simon Horman --- arch/arm/boot/dts/r8a7790-lager.dts | 21 ++++++++++++++++++- .../arm/mach-shmobile/board-lager-reference.c | 10 --------- arch/arm/mach-shmobile/setup-r8a7790.c | 10 ++++----- 3 files changed, 25 insertions(+), 16 deletions(-) diff --git a/arch/arm/boot/dts/r8a7790-lager.dts b/arch/arm/boot/dts/r8a7790-lager.dts index 6e99eb2df076..25e048525ce6 100644 --- a/arch/arm/boot/dts/r8a7790-lager.dts +++ b/arch/arm/boot/dts/r8a7790-lager.dts @@ -17,6 +17,11 @@ / { model = "Lager"; compatible = "renesas,lager", "renesas,r8a7790"; + aliases { + serial6 = &scif0; + serial7 = &scif1; + }; + chosen { bootargs = "console=ttySC6,115200 ignore_loglevel rw root=/dev/nfs ip=dhcp"; }; @@ -112,7 +117,7 @@ &extal_clk { }; &pfc { - pinctrl-0 = <&du_pins &scif0_pins &scif1_pins>; + pinctrl-0 = <&du_pins>; pinctrl-names = "default"; du_pins: du { @@ -221,6 +226,20 @@ partition@440000 { }; }; +&scif0 { + pinctrl-0 = <&scif0_pins>; + pinctrl-names = "default"; + + status = "okay"; +}; + +&scif1 { + pinctrl-0 = <&scif1_pins>; + pinctrl-names = "default"; + + status = "okay"; +}; + &sdhi0 { pinctrl-0 = <&sdhi0_pins>; pinctrl-names = "default"; diff --git a/arch/arm/mach-shmobile/board-lager-reference.c b/arch/arm/mach-shmobile/board-lager-reference.c index 1bca2748aa7c..749832e3f33c 100644 --- a/arch/arm/mach-shmobile/board-lager-reference.c +++ b/arch/arm/mach-shmobile/board-lager-reference.c @@ -91,16 +91,6 @@ static void __init lager_add_du_device(void) */ static const struct clk_name clk_names[] __initconst = { { "cmt0", "fck", "sh-cmt-48-gen2.0" }, - { "scifa0", NULL, "sh-sci.0" }, - { "scifa1", NULL, "sh-sci.1" }, - { "scifb0", NULL, "sh-sci.2" }, - { "scifb1", NULL, "sh-sci.3" }, - { "scifb2", NULL, "sh-sci.4" }, - { "scifa2", NULL, "sh-sci.5" }, - { "scif0", NULL, "sh-sci.6" }, - { "scif1", NULL, "sh-sci.7" }, - { "hscif0", NULL, "sh-sci.8" }, - { "hscif1", NULL, "sh-sci.9" }, { "du0", "du.0", "rcar-du-r8a7790" }, { "du1", "du.1", "rcar-du-r8a7790" }, { "du2", "du.2", "rcar-du-r8a7790" }, diff --git a/arch/arm/mach-shmobile/setup-r8a7790.c b/arch/arm/mach-shmobile/setup-r8a7790.c index 87327f353d1b..5fc9b1762a33 100644 --- a/arch/arm/mach-shmobile/setup-r8a7790.c +++ b/arch/arm/mach-shmobile/setup-r8a7790.c @@ -286,6 +286,11 @@ static struct resource cmt0_resources[] = { sizeof(struct sh_timer_config)) void __init r8a7790_add_dt_devices(void) +{ + r8a7790_register_cmt(0); +} + +void __init r8a7790_add_standard_devices(void) { r8a7790_register_scif(0); r8a7790_register_scif(1); @@ -297,11 +302,6 @@ void __init r8a7790_add_dt_devices(void) r8a7790_register_scif(7); r8a7790_register_scif(8); r8a7790_register_scif(9); - r8a7790_register_cmt(0); -} - -void __init r8a7790_add_standard_devices(void) -{ r8a7790_add_dt_devices(); r8a7790_register_irqc(0); r8a7790_register_thermal(); From 5ba55fa81aee9493928c245f142a0bfe9f32d02f Mon Sep 17 00:00:00 2001 From: Laurent Pinchart Date: Wed, 30 Apr 2014 02:31:46 +0200 Subject: [PATCH 2/2] ARM: shmobile: koelsch: Enable SCIF0 and SCIF1 serial ports in DT SCIF0 and SCIF1 are used as debug serial ports. Enable them and configure pinmuxing appropriately. We can now remove the clkdev registration hack for SCIF devices from the Koelsch reference board file. Signed-off-by: Laurent Pinchart [horms+renesas@verge.net.au: added aliases to avoid device renumbering] [horms+renesas@verge.net.au: resolved conflicts] Signed-off-by: Simon Horman --- arch/arm/boot/dts/r8a7791-koelsch.dts | 21 ++++++++++++++++++- .../mach-shmobile/board-koelsch-reference.c | 15 ------------- arch/arm/mach-shmobile/setup-r8a7791.c | 10 ++++----- 3 files changed, 25 insertions(+), 21 deletions(-) diff --git a/arch/arm/boot/dts/r8a7791-koelsch.dts b/arch/arm/boot/dts/r8a7791-koelsch.dts index bdd73e6657b2..10c6b4012e12 100644 --- a/arch/arm/boot/dts/r8a7791-koelsch.dts +++ b/arch/arm/boot/dts/r8a7791-koelsch.dts @@ -18,6 +18,11 @@ / { model = "Koelsch"; compatible = "renesas,koelsch", "renesas,r8a7791"; + aliases { + serial6 = &scif0; + serial7 = &scif1; + }; + chosen { bootargs = "console=ttySC6,115200 ignore_loglevel rw root=/dev/nfs ip=dhcp"; }; @@ -196,7 +201,7 @@ eeprom@50 { }; &pfc { - pinctrl-0 = <&du_pins &scif0_pins &scif1_pins>; + pinctrl-0 = <&du_pins>; pinctrl-names = "default"; i2c2_pins: i2c { @@ -269,6 +274,20 @@ &sata0 { status = "okay"; }; +&scif0 { + pinctrl-0 = <&scif0_pins>; + pinctrl-names = "default"; + + status = "okay"; +}; + +&scif1 { + pinctrl-0 = <&scif1_pins>; + pinctrl-names = "default"; + + status = "okay"; +}; + &sdhi0 { pinctrl-0 = <&sdhi0_pins>; pinctrl-names = "default"; diff --git a/arch/arm/mach-shmobile/board-koelsch-reference.c b/arch/arm/mach-shmobile/board-koelsch-reference.c index bd9093221f76..0b0ce5a92548 100644 --- a/arch/arm/mach-shmobile/board-koelsch-reference.c +++ b/arch/arm/mach-shmobile/board-koelsch-reference.c @@ -87,21 +87,6 @@ static void __init koelsch_add_du_device(void) */ static const struct clk_name clk_names[] __initconst = { { "cmt0", "fck", "sh-cmt-48-gen2.0" }, - { "scifa0", NULL, "sh-sci.0" }, - { "scifa1", NULL, "sh-sci.1" }, - { "scifb0", NULL, "sh-sci.2" }, - { "scifb1", NULL, "sh-sci.3" }, - { "scifb2", NULL, "sh-sci.4" }, - { "scifa2", NULL, "sh-sci.5" }, - { "scif0", NULL, "sh-sci.6" }, - { "scif1", NULL, "sh-sci.7" }, - { "scif2", NULL, "sh-sci.8" }, - { "scif3", NULL, "sh-sci.9" }, - { "scif4", NULL, "sh-sci.10" }, - { "scif5", NULL, "sh-sci.11" }, - { "scifa3", NULL, "sh-sci.12" }, - { "scifa4", NULL, "sh-sci.13" }, - { "scifa5", NULL, "sh-sci.14" }, { "du0", "du.0", "rcar-du-r8a7791" }, { "du1", "du.1", "rcar-du-r8a7791" }, { "lvds0", "lvds.0", "rcar-du-r8a7791" }, diff --git a/arch/arm/mach-shmobile/setup-r8a7791.c b/arch/arm/mach-shmobile/setup-r8a7791.c index 561653d639d7..b3f42b5b1724 100644 --- a/arch/arm/mach-shmobile/setup-r8a7791.c +++ b/arch/arm/mach-shmobile/setup-r8a7791.c @@ -181,6 +181,11 @@ static const struct resource thermal_resources[] __initconst = { ARRAY_SIZE(thermal_resources)) void __init r8a7791_add_dt_devices(void) +{ + r8a7791_register_cmt(0); +} + +void __init r8a7791_add_standard_devices(void) { r8a7791_register_scif(0); r8a7791_register_scif(1); @@ -197,11 +202,6 @@ void __init r8a7791_add_dt_devices(void) r8a7791_register_scif(12); r8a7791_register_scif(13); r8a7791_register_scif(14); - r8a7791_register_cmt(0); -} - -void __init r8a7791_add_standard_devices(void) -{ r8a7791_add_dt_devices(); r8a7791_register_irqc(0); r8a7791_register_thermal();