* [GIT PULL] Second Round of Renesas ARM64 Based SoC DT Updates for v4.13 @ 2017-06-16 13:30 Simon Horman 2017-06-16 13:30 ` [PATCH 01/11] arm64: dts: salvator-x: add 12288000 for sound ADG Simon Horman ` (11 more replies) 0 siblings, 12 replies; 13+ messages in thread From: Simon Horman @ 2017-06-16 13:30 UTC (permalink / raw) To: linux-arm-kernel Hi Olof, Hi Kevin, Hi Arnd, Please consider these second round of Renesas ARM64 based SoC DT updates for v4.13. This pull request is based on the previous round of such requests, tagged as renesas-arm64-dt-for-v4.13, which you have already pulled. The following changes since commit 0b03c32db03d63de695c1e0ab1950eb12b135fa7: arm64: dts: r8a7795: salvator-x: Add support for R-Car H3 ES2.0 (2017-05-22 14:54:57 +0200) are available in the git repository at: https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas.git tags/renesas-arm64-dt2-for-v4.13 for you to fetch changes up to 4d1255ebefb6838eab4f652107433438bea0051f: arm64: dts: r8a7796: Add reset control properties for audio (2017-06-14 11:00:29 +0200) ---------------------------------------------------------------- Second Round of Renesas ARM64 Based SoC DT Updates for v4.13 * Add reset control properties for audio to r9a779[56] SoCs * Add add DMA for IIC_DVFS to r9a779[56] SoCs * Add support for Salvator-XS and H3ULCB with R-Car H3 (r8a7795) ES2 * Add missing index to PWM pinctrl subnode name to Salvator-X board * Add 12288000 for sound ADG to Salvator-X and ULCB boards ---------------------------------------------------------------- Geert Uytterhoeven (7): arm64: dts: r8a7795: h3ulcb: Add support for R-Car H3 ES2.0 arm64: dts: salvator-x: Add missing index to PWM pinctrl subnode name arm64: dts: renesas: Extract common Salvator-X/XS board support arm64: dts: renesas: Add common Salvator-XS board support arm64: dts: renesas: Add support for Salvator-XS with R-Car H3 ES2.0 arm64: dts: r8a7795: Add reset control properties for audio arm64: dts: r8a7796: Add reset control properties for audio Kuninori Morimoto (2): arm64: dts: salvator-x: add 12288000 for sound ADG arm64: dts: ulcb: add 12288000 for sound ADG Wolfram Sang (2): arm64: dts: r8a7795: add DMA for IIC_DVFS arm64: dts: r8a7796: add DMA for IIC_DVFS arch/arm64/boot/dts/renesas/Makefile | 3 +- arch/arm64/boot/dts/renesas/r8a7795-es1-h3ulcb.dts | 42 ++ arch/arm64/boot/dts/renesas/r8a7795-h3ulcb.dts | 4 +- .../arm64/boot/dts/renesas/r8a7795-salvator-xs.dts | 109 ++++ arch/arm64/boot/dts/renesas/r8a7795.dtsi | 12 + arch/arm64/boot/dts/renesas/r8a7796.dtsi | 12 + arch/arm64/boot/dts/renesas/salvator-common.dtsi | 629 +++++++++++++++++++++ arch/arm64/boot/dts/renesas/salvator-x.dtsi | 616 +------------------- arch/arm64/boot/dts/renesas/salvator-xs.dtsi | 20 + arch/arm64/boot/dts/renesas/ulcb.dtsi | 2 +- 10 files changed, 830 insertions(+), 619 deletions(-) create mode 100644 arch/arm64/boot/dts/renesas/r8a7795-es1-h3ulcb.dts create mode 100644 arch/arm64/boot/dts/renesas/r8a7795-salvator-xs.dts create mode 100644 arch/arm64/boot/dts/renesas/salvator-common.dtsi create mode 100644 arch/arm64/boot/dts/renesas/salvator-xs.dtsi ^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH 01/11] arm64: dts: salvator-x: add 12288000 for sound ADG 2017-06-16 13:30 [GIT PULL] Second Round of Renesas ARM64 Based SoC DT Updates for v4.13 Simon Horman @ 2017-06-16 13:30 ` Simon Horman 2017-06-16 13:30 ` [PATCH 02/11] arm64: dts: ulcb: " Simon Horman ` (10 subsequent siblings) 11 siblings, 0 replies; 13+ messages in thread From: Simon Horman @ 2017-06-16 13:30 UTC (permalink / raw) To: linux-arm-kernel From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Current rcar_sound only has 11289600 (= for 44.1kHz) clock-frequency, but it needs 12288000 for 48kHz too. Otherwise, 48kHz based sound can't handle correctly. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> --- arch/arm64/boot/dts/renesas/salvator-x.dtsi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm64/boot/dts/renesas/salvator-x.dtsi b/arch/arm64/boot/dts/renesas/salvator-x.dtsi index 5f0d4bdcd3b4..937bdf8842f2 100644 --- a/arch/arm64/boot/dts/renesas/salvator-x.dtsi +++ b/arch/arm64/boot/dts/renesas/salvator-x.dtsi @@ -523,7 +523,7 @@ /* audio_clkout0/1/2/3 */ #clock-cells = <1>; - clock-frequency = <11289600>; + clock-frequency = <11289600 12288000>; status = "okay"; -- 2.1.4 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH 02/11] arm64: dts: ulcb: add 12288000 for sound ADG 2017-06-16 13:30 [GIT PULL] Second Round of Renesas ARM64 Based SoC DT Updates for v4.13 Simon Horman 2017-06-16 13:30 ` [PATCH 01/11] arm64: dts: salvator-x: add 12288000 for sound ADG Simon Horman @ 2017-06-16 13:30 ` Simon Horman 2017-06-16 13:30 ` [PATCH 03/11] arm64: dts: r8a7795: add DMA for IIC_DVFS Simon Horman ` (9 subsequent siblings) 11 siblings, 0 replies; 13+ messages in thread From: Simon Horman @ 2017-06-16 13:30 UTC (permalink / raw) To: linux-arm-kernel From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Current rcar_sound only has 11289600 (= for 44.1kHz) clock-frequency, but it needs 12288000 for 48kHz too. Otherwise, 48kHz based sound can't handle correctly. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> --- arch/arm64/boot/dts/renesas/ulcb.dtsi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm64/boot/dts/renesas/ulcb.dtsi b/arch/arm64/boot/dts/renesas/ulcb.dtsi index 41e83c8530f7..b5c6ee07d7f9 100644 --- a/arch/arm64/boot/dts/renesas/ulcb.dtsi +++ b/arch/arm64/boot/dts/renesas/ulcb.dtsi @@ -281,7 +281,7 @@ /* audio_clkout0/1/2/3 */ #clock-cells = <1>; - clock-frequency = <11289600>; + clock-frequency = <11289600 12288000>; status = "okay"; -- 2.1.4 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH 03/11] arm64: dts: r8a7795: add DMA for IIC_DVFS 2017-06-16 13:30 [GIT PULL] Second Round of Renesas ARM64 Based SoC DT Updates for v4.13 Simon Horman 2017-06-16 13:30 ` [PATCH 01/11] arm64: dts: salvator-x: add 12288000 for sound ADG Simon Horman 2017-06-16 13:30 ` [PATCH 02/11] arm64: dts: ulcb: " Simon Horman @ 2017-06-16 13:30 ` Simon Horman 2017-06-16 13:30 ` [PATCH 04/11] arm64: dts: r8a7796: " Simon Horman ` (8 subsequent siblings) 11 siblings, 0 replies; 13+ messages in thread From: Simon Horman @ 2017-06-16 13:30 UTC (permalink / raw) To: linux-arm-kernel From: Wolfram Sang <wsa+renesas@sang-engineering.com> Tested with a Salvator-X. Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com> Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> --- arch/arm64/boot/dts/renesas/r8a7795.dtsi | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/arm64/boot/dts/renesas/r8a7795.dtsi b/arch/arm64/boot/dts/renesas/r8a7795.dtsi index 24c607e30009..a4ca0f5bb762 100644 --- a/arch/arm64/boot/dts/renesas/r8a7795.dtsi +++ b/arch/arm64/boot/dts/renesas/r8a7795.dtsi @@ -883,6 +883,8 @@ clocks = <&cpg CPG_MOD 926>; power-domains = <&sysc R8A7795_PD_ALWAYS_ON>; resets = <&cpg 926>; + dmas = <&dmac0 0x11>, <&dmac0 0x10>; + dma-names = "tx", "rx"; status = "disabled"; }; -- 2.1.4 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH 04/11] arm64: dts: r8a7796: add DMA for IIC_DVFS 2017-06-16 13:30 [GIT PULL] Second Round of Renesas ARM64 Based SoC DT Updates for v4.13 Simon Horman ` (2 preceding siblings ...) 2017-06-16 13:30 ` [PATCH 03/11] arm64: dts: r8a7795: add DMA for IIC_DVFS Simon Horman @ 2017-06-16 13:30 ` Simon Horman 2017-06-16 13:30 ` [PATCH 05/11] arm64: dts: r8a7795: h3ulcb: Add support for R-Car H3 ES2.0 Simon Horman ` (7 subsequent siblings) 11 siblings, 0 replies; 13+ messages in thread From: Simon Horman @ 2017-06-16 13:30 UTC (permalink / raw) To: linux-arm-kernel From: Wolfram Sang <wsa+renesas@sang-engineering.com> Tested with a Salvator-X. Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com> Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> --- arch/arm64/boot/dts/renesas/r8a7796.dtsi | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/arm64/boot/dts/renesas/r8a7796.dtsi b/arch/arm64/boot/dts/renesas/r8a7796.dtsi index b418a66f4cec..d63acd3e00b2 100644 --- a/arch/arm64/boot/dts/renesas/r8a7796.dtsi +++ b/arch/arm64/boot/dts/renesas/r8a7796.dtsi @@ -392,6 +392,8 @@ clocks = <&cpg CPG_MOD 926>; power-domains = <&sysc R8A7796_PD_ALWAYS_ON>; resets = <&cpg 926>; + dmas = <&dmac0 0x11>, <&dmac0 0x10>; + dma-names = "tx", "rx"; status = "disabled"; }; -- 2.1.4 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH 05/11] arm64: dts: r8a7795: h3ulcb: Add support for R-Car H3 ES2.0 2017-06-16 13:30 [GIT PULL] Second Round of Renesas ARM64 Based SoC DT Updates for v4.13 Simon Horman ` (3 preceding siblings ...) 2017-06-16 13:30 ` [PATCH 04/11] arm64: dts: r8a7796: " Simon Horman @ 2017-06-16 13:30 ` Simon Horman 2017-06-16 13:30 ` [PATCH 06/11] arm64: dts: salvator-x: Add missing index to PWM pinctrl subnode name Simon Horman ` (6 subsequent siblings) 11 siblings, 0 replies; 13+ messages in thread From: Simon Horman @ 2017-06-16 13:30 UTC (permalink / raw) To: linux-arm-kernel From: Geert Uytterhoeven <geert+renesas@glider.be> Split off support for H3ULCB boards with the ES1.x revision of the R-Car H3 SoC into a separate file. The main r8a7795-h3ulcb.dts file now corresponds to H3ULCB with R-Car H3 ES2.0 or later. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> --- arch/arm64/boot/dts/renesas/Makefile | 2 +- arch/arm64/boot/dts/renesas/r8a7795-es1-h3ulcb.dts | 42 ++++++++++++++++++++++ arch/arm64/boot/dts/renesas/r8a7795-h3ulcb.dts | 4 +-- 3 files changed, 45 insertions(+), 3 deletions(-) create mode 100644 arch/arm64/boot/dts/renesas/r8a7795-es1-h3ulcb.dts diff --git a/arch/arm64/boot/dts/renesas/Makefile b/arch/arm64/boot/dts/renesas/Makefile index b6c723d8f687..d5451015950e 100644 --- a/arch/arm64/boot/dts/renesas/Makefile +++ b/arch/arm64/boot/dts/renesas/Makefile @@ -1,5 +1,5 @@ dtb-$(CONFIG_ARCH_R8A7795) += r8a7795-salvator-x.dtb r8a7795-h3ulcb.dtb -dtb-$(CONFIG_ARCH_R8A7795) += r8a7795-es1-salvator-x.dtb +dtb-$(CONFIG_ARCH_R8A7795) += r8a7795-es1-salvator-x.dtb r8a7795-es1-h3ulcb.dtb dtb-$(CONFIG_ARCH_R8A7796) += r8a7796-salvator-x.dtb r8a7796-m3ulcb.dtb always := $(dtb-y) diff --git a/arch/arm64/boot/dts/renesas/r8a7795-es1-h3ulcb.dts b/arch/arm64/boot/dts/renesas/r8a7795-es1-h3ulcb.dts new file mode 100644 index 000000000000..95fe207cb6a3 --- /dev/null +++ b/arch/arm64/boot/dts/renesas/r8a7795-es1-h3ulcb.dts @@ -0,0 +1,42 @@ +/* + * Device Tree Source for the H3ULCB (R-Car Starter Kit Premier) board + * + * Copyright (C) 2016 Renesas Electronics Corp. + * Copyright (C) 2016 Cogent Embedded, Inc. + * + * This file is licensed under the terms of the GNU General Public License + * version 2. This program is licensed "as is" without any warranty of any + * kind, whether express or implied. + */ + +#define CPG_AUDIO_CLK_I R8A7795_CLK_S0D4 + +/dts-v1/; +#include "r8a7795-es1.dtsi" +#include "ulcb.dtsi" + +/ { + model = "Renesas H3ULCB board based on r8a7795 ES1.x"; + compatible = "renesas,h3ulcb", "renesas,r8a7795"; + + memory at 48000000 { + device_type = "memory"; + /* first 128MB is reserved for secure area. */ + reg = <0x0 0x48000000 0x0 0x38000000>; + }; + + memory at 500000000 { + device_type = "memory"; + reg = <0x5 0x00000000 0x0 0x40000000>; + }; + + memory at 600000000 { + device_type = "memory"; + reg = <0x6 0x00000000 0x0 0x40000000>; + }; + + memory at 700000000 { + device_type = "memory"; + reg = <0x7 0x00000000 0x0 0x40000000>; + }; +}; diff --git a/arch/arm64/boot/dts/renesas/r8a7795-h3ulcb.dts b/arch/arm64/boot/dts/renesas/r8a7795-h3ulcb.dts index 95fe207cb6a3..0426f41765f0 100644 --- a/arch/arm64/boot/dts/renesas/r8a7795-h3ulcb.dts +++ b/arch/arm64/boot/dts/renesas/r8a7795-h3ulcb.dts @@ -12,11 +12,11 @@ #define CPG_AUDIO_CLK_I R8A7795_CLK_S0D4 /dts-v1/; -#include "r8a7795-es1.dtsi" +#include "r8a7795.dtsi" #include "ulcb.dtsi" / { - model = "Renesas H3ULCB board based on r8a7795 ES1.x"; + model = "Renesas H3ULCB board based on r8a7795 ES2.0+"; compatible = "renesas,h3ulcb", "renesas,r8a7795"; memory at 48000000 { -- 2.1.4 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH 06/11] arm64: dts: salvator-x: Add missing index to PWM pinctrl subnode name 2017-06-16 13:30 [GIT PULL] Second Round of Renesas ARM64 Based SoC DT Updates for v4.13 Simon Horman ` (4 preceding siblings ...) 2017-06-16 13:30 ` [PATCH 05/11] arm64: dts: r8a7795: h3ulcb: Add support for R-Car H3 ES2.0 Simon Horman @ 2017-06-16 13:30 ` Simon Horman 2017-06-16 13:30 ` [PATCH 07/11] arm64: dts: renesas: Extract common Salvator-X/XS board support Simon Horman ` (5 subsequent siblings) 11 siblings, 0 replies; 13+ messages in thread From: Simon Horman @ 2017-06-16 13:30 UTC (permalink / raw) To: linux-arm-kernel From: Geert Uytterhoeven <geert+renesas@glider.be> R-Car Gen3 SoCs contain multiple PWM modules. Hence to avoid conflicts, pinctrl subnodes for PWM should include indices referring to their instances. Fixes: b33be33670217533 ("arm64: dts: salvator-x: Add panel backlight support") Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> --- arch/arm64/boot/dts/renesas/salvator-x.dtsi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm64/boot/dts/renesas/salvator-x.dtsi b/arch/arm64/boot/dts/renesas/salvator-x.dtsi index 937bdf8842f2..2f5386252aed 100644 --- a/arch/arm64/boot/dts/renesas/salvator-x.dtsi +++ b/arch/arm64/boot/dts/renesas/salvator-x.dtsi @@ -417,7 +417,7 @@ function = "i2c2"; }; - pwm1_pins: pwm { + pwm1_pins: pwm1 { groups = "pwm1_a"; function = "pwm1"; }; -- 2.1.4 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH 07/11] arm64: dts: renesas: Extract common Salvator-X/XS board support 2017-06-16 13:30 [GIT PULL] Second Round of Renesas ARM64 Based SoC DT Updates for v4.13 Simon Horman ` (5 preceding siblings ...) 2017-06-16 13:30 ` [PATCH 06/11] arm64: dts: salvator-x: Add missing index to PWM pinctrl subnode name Simon Horman @ 2017-06-16 13:30 ` Simon Horman 2017-06-16 13:30 ` [PATCH 08/11] arm64: dts: renesas: Add common Salvator-XS " Simon Horman ` (4 subsequent siblings) 11 siblings, 0 replies; 13+ messages in thread From: Simon Horman @ 2017-06-16 13:30 UTC (permalink / raw) To: linux-arm-kernel From: Geert Uytterhoeven <geert+renesas@glider.be> The Renesas Salvator-X and Salvator-XS (Salvator-X 2nd version) boards are very similar. To avoid duplication, prepare for the advent of the latter by extracting the common board parts into its own .dtsi file. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> --- arch/arm64/boot/dts/renesas/salvator-common.dtsi | 629 +++++++++++++++++++++++ arch/arm64/boot/dts/renesas/salvator-x.dtsi | 616 +--------------------- 2 files changed, 630 insertions(+), 615 deletions(-) create mode 100644 arch/arm64/boot/dts/renesas/salvator-common.dtsi diff --git a/arch/arm64/boot/dts/renesas/salvator-common.dtsi b/arch/arm64/boot/dts/renesas/salvator-common.dtsi new file mode 100644 index 000000000000..aef35e0b685a --- /dev/null +++ b/arch/arm64/boot/dts/renesas/salvator-common.dtsi @@ -0,0 +1,629 @@ +/* + * Device Tree Source for common parts of Salvator-X board variants + * + * Copyright (C) 2015-2016 Renesas Electronics Corp. + * + * This file is licensed under the terms of the GNU General Public License + * version 2. This program is licensed "as is" without any warranty of any + * kind, whether express or implied. + */ + +/* + * SSI-AK4613 + * + * This command is required when Playback/Capture + * + * amixer set "DVC Out" 100% + * amixer set "DVC In" 100% + * + * You can use Mute + * + * amixer set "DVC Out Mute" on + * amixer set "DVC In Mute" on + * + * You can use Volume Ramp + * + * amixer set "DVC Out Ramp Up Rate" "0.125 dB/64 steps" + * amixer set "DVC Out Ramp Down Rate" "0.125 dB/512 steps" + * amixer set "DVC Out Ramp" on + * aplay xxx.wav & + * amixer set "DVC Out" 80% // Volume Down + * amixer set "DVC Out" 100% // Volume Up + */ + +#include <dt-bindings/gpio/gpio.h> + +/ { + aliases { + serial0 = &scif2; + serial1 = &scif1; + ethernet0 = &avb; + }; + + chosen { + bootargs = "ignore_loglevel rw root=/dev/nfs ip=dhcp"; + stdout-path = "serial0:115200n8"; + }; + + audio_clkout: audio_clkout { + /* + * This is same as <&rcar_sound 0> + * but needed to avoid cs2000/rcar_sound probe dead-lock + */ + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <11289600>; + }; + + backlight: backlight { + compatible = "pwm-backlight"; + pwms = <&pwm1 0 50000>; + + brightness-levels = <256 128 64 16 8 4 0>; + default-brightness-level = <6>; + + enable-gpios = <&gpio6 7 GPIO_ACTIVE_HIGH>; + }; + + reg_1p8v: regulator0 { + compatible = "regulator-fixed"; + regulator-name = "fixed-1.8V"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-boot-on; + regulator-always-on; + }; + + reg_3p3v: regulator1 { + compatible = "regulator-fixed"; + regulator-name = "fixed-3.3V"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-boot-on; + regulator-always-on; + }; + + rsnd_ak4613: sound { + compatible = "simple-audio-card"; + + simple-audio-card,format = "left_j"; + simple-audio-card,bitclock-master = <&sndcpu>; + simple-audio-card,frame-master = <&sndcpu>; + + sndcpu: simple-audio-card,cpu { + sound-dai = <&rcar_sound>; + }; + + sndcodec: simple-audio-card,codec { + sound-dai = <&ak4613>; + }; + }; + + vbus0_usb2: regulator-vbus0-usb2 { + compatible = "regulator-fixed"; + + regulator-name = "USB20_VBUS0"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + + gpio = <&gpio6 16 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; + + vcc_sdhi0: regulator-vcc-sdhi0 { + compatible = "regulator-fixed"; + + regulator-name = "SDHI0 Vcc"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + + gpio = <&gpio5 2 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; + + vccq_sdhi0: regulator-vccq-sdhi0 { + compatible = "regulator-gpio"; + + regulator-name = "SDHI0 VccQ"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3300000>; + + gpios = <&gpio5 1 GPIO_ACTIVE_HIGH>; + gpios-states = <1>; + states = <3300000 1 + 1800000 0>; + }; + + vcc_sdhi3: regulator-vcc-sdhi3 { + compatible = "regulator-fixed"; + + regulator-name = "SDHI3 Vcc"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + + gpio = <&gpio3 15 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; + + vccq_sdhi3: regulator-vccq-sdhi3 { + compatible = "regulator-gpio"; + + regulator-name = "SDHI3 VccQ"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3300000>; + + gpios = <&gpio3 14 GPIO_ACTIVE_HIGH>; + gpios-states = <1>; + states = <3300000 1 + 1800000 0>; + }; + + hdmi0-out { + compatible = "hdmi-connector"; + label = "HDMI0 OUT"; + type = "a"; + + port { + hdmi0_con: endpoint { + }; + }; + }; + + hdmi1-out { + compatible = "hdmi-connector"; + label = "HDMI1 OUT"; + type = "a"; + + port { + hdmi1_con: endpoint { + }; + }; + }; + + vga { + compatible = "vga-connector"; + + port { + vga_in: endpoint { + remote-endpoint = <&adv7123_out>; + }; + }; + }; + + vga-encoder { + compatible = "adi,adv7123"; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port at 0 { + reg = <0>; + adv7123_in: endpoint { + remote-endpoint = <&du_out_rgb>; + }; + }; + port at 1 { + reg = <1>; + adv7123_out: endpoint { + remote-endpoint = <&vga_in>; + }; + }; + }; + }; + + x12_clk: x12 { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <24576000>; + }; + + /* External DU dot clocks */ + x21_clk: x21-clock { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <33000000>; + }; + + x22_clk: x22-clock { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <33000000>; + }; + + x23_clk: x23-clock { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <25000000>; + }; +}; + +&audio_clk_a { + clock-frequency = <22579200>; +}; + +&avb { + pinctrl-0 = <&avb_pins>; + pinctrl-names = "default"; + renesas,no-ether-link; + phy-handle = <&phy0>; + status = "okay"; + + phy0: ethernet-phy at 0 { + rxc-skew-ps = <1500>; + reg = <0>; + interrupt-parent = <&gpio2>; + interrupts = <11 IRQ_TYPE_LEVEL_LOW>; + }; +}; + +&du { + pinctrl-0 = <&du_pins>; + pinctrl-names = "default"; + status = "okay"; + + ports { + port at 0 { + endpoint { + remote-endpoint = <&adv7123_in>; + }; + }; + port at 3 { + lvds_connector: endpoint { + }; + }; + }; +}; + +&ehci0 { + status = "okay"; +}; + +&ehci1 { + status = "okay"; +}; + +&extalr_clk { + clock-frequency = <32768>; +}; + +&hsusb { + status = "okay"; +}; + +&i2c2 { + pinctrl-0 = <&i2c2_pins>; + pinctrl-names = "default"; + + status = "okay"; + + clock-frequency = <100000>; + + ak4613: codec at 10 { + compatible = "asahi-kasei,ak4613"; + #sound-dai-cells = <0>; + reg = <0x10>; + clocks = <&rcar_sound 3>; + + asahi-kasei,in1-single-end; + asahi-kasei,in2-single-end; + asahi-kasei,out1-single-end; + asahi-kasei,out2-single-end; + asahi-kasei,out3-single-end; + asahi-kasei,out4-single-end; + asahi-kasei,out5-single-end; + asahi-kasei,out6-single-end; + }; + + cs2000: clk_multiplier at 4f { + #clock-cells = <0>; + compatible = "cirrus,cs2000-cp"; + reg = <0x4f>; + clocks = <&audio_clkout>, <&x12_clk>; + clock-names = "clk_in", "ref_clk"; + + assigned-clocks = <&cs2000>; + assigned-clock-rates = <24576000>; /* 1/1 divide */ + }; +}; + +&i2c4 { + status = "okay"; + + csa_vdd: adc at 7c { + compatible = "maxim,max9611"; + reg = <0x7c>; + + shunt-resistor-micro-ohms = <5000>; + }; + + csa_dvfs: adc at 7f { + compatible = "maxim,max9611"; + reg = <0x7f>; + + shunt-resistor-micro-ohms = <5000>; + }; +}; + +&i2c_dvfs { + status = "okay"; +}; + +&ohci0 { + status = "okay"; +}; + +&ohci1 { + status = "okay"; +}; + +&pcie_bus_clk { + clock-frequency = <100000000>; +}; + +&pciec0 { + status = "okay"; +}; + +&pciec1 { + status = "okay"; +}; + +&pfc { + pinctrl-0 = <&scif_clk_pins>; + pinctrl-names = "default"; + + avb_pins: avb { + mux { + groups = "avb_link", "avb_phy_int", "avb_mdc", + "avb_mii"; + function = "avb"; + }; + + pins_mdc { + groups = "avb_mdc"; + drive-strength = <24>; + }; + + pins_mii_tx { + pins = "PIN_AVB_TX_CTL", "PIN_AVB_TXC", "PIN_AVB_TD0", + "PIN_AVB_TD1", "PIN_AVB_TD2", "PIN_AVB_TD3"; + drive-strength = <12>; + }; + }; + + du_pins: du { + groups = "du_rgb888", "du_sync", "du_oddf", "du_clk_out_0"; + function = "du"; + }; + + i2c2_pins: i2c2 { + groups = "i2c2_a"; + function = "i2c2"; + }; + + pwm1_pins: pwm1 { + groups = "pwm1_a"; + function = "pwm1"; + }; + + scif1_pins: scif1 { + groups = "scif1_data_a", "scif1_ctrl"; + function = "scif1"; + }; + + scif2_pins: scif2 { + groups = "scif2_data_a"; + function = "scif2"; + }; + + scif_clk_pins: scif_clk { + groups = "scif_clk_a"; + function = "scif_clk"; + }; + + sdhi0_pins: sd0 { + groups = "sdhi0_data4", "sdhi0_ctrl"; + function = "sdhi0"; + power-source = <3300>; + }; + + sdhi0_pins_uhs: sd0_uhs { + groups = "sdhi0_data4", "sdhi0_ctrl"; + function = "sdhi0"; + power-source = <1800>; + }; + + sdhi2_pins: sd2 { + groups = "sdhi2_data8", "sdhi2_ctrl"; + function = "sdhi2"; + power-source = <3300>; + }; + + sdhi2_pins_uhs: sd2_uhs { + groups = "sdhi2_data8", "sdhi2_ctrl"; + function = "sdhi2"; + power-source = <1800>; + }; + + sdhi3_pins: sd3 { + groups = "sdhi3_data4", "sdhi3_ctrl"; + function = "sdhi3"; + power-source = <3300>; + }; + + sdhi3_pins_uhs: sd3_uhs { + groups = "sdhi3_data4", "sdhi3_ctrl"; + function = "sdhi3"; + power-source = <1800>; + }; + + sound_pins: sound { + groups = "ssi01239_ctrl", "ssi0_data", "ssi1_data_a"; + function = "ssi"; + }; + + sound_clk_pins: sound_clk { + groups = "audio_clk_a_a", "audio_clk_b_a", "audio_clk_c_a", + "audio_clkout_a", "audio_clkout3_a"; + function = "audio_clk"; + }; + + usb0_pins: usb0 { + groups = "usb0"; + function = "usb0"; + }; + + usb1_pins: usb1 { + mux { + groups = "usb1"; + function = "usb1"; + }; + + ovc { + pins = "GP_6_27"; + bias-pull-up; + }; + + pwen { + pins = "GP_6_26"; + bias-pull-down; + }; + }; +}; + +&pwm1 { + pinctrl-0 = <&pwm1_pins>; + pinctrl-names = "default"; + + status = "okay"; +}; + +&rcar_sound { + pinctrl-0 = <&sound_pins &sound_clk_pins>; + pinctrl-names = "default"; + + /* Single DAI */ + #sound-dai-cells = <0>; + + /* audio_clkout0/1/2/3 */ + #clock-cells = <1>; + clock-frequency = <11289600 12288000>; + + status = "okay"; + + /* update <audio_clk_b> to <cs2000> */ + clocks = <&cpg CPG_MOD 1005>, + <&cpg CPG_MOD 1006>, <&cpg CPG_MOD 1007>, + <&cpg CPG_MOD 1008>, <&cpg CPG_MOD 1009>, + <&cpg CPG_MOD 1010>, <&cpg CPG_MOD 1011>, + <&cpg CPG_MOD 1012>, <&cpg CPG_MOD 1013>, + <&cpg CPG_MOD 1014>, <&cpg CPG_MOD 1015>, + <&cpg CPG_MOD 1022>, <&cpg CPG_MOD 1023>, + <&cpg CPG_MOD 1024>, <&cpg CPG_MOD 1025>, + <&cpg CPG_MOD 1026>, <&cpg CPG_MOD 1027>, + <&cpg CPG_MOD 1028>, <&cpg CPG_MOD 1029>, + <&cpg CPG_MOD 1030>, <&cpg CPG_MOD 1031>, + <&cpg CPG_MOD 1020>, <&cpg CPG_MOD 1021>, + <&cpg CPG_MOD 1020>, <&cpg CPG_MOD 1021>, + <&cpg CPG_MOD 1019>, <&cpg CPG_MOD 1018>, + <&audio_clk_a>, <&cs2000>, + <&audio_clk_c>, + <&cpg CPG_CORE CPG_AUDIO_CLK_I>; + + rcar_sound,dai { + dai0 { + playback = <&ssi0 &src0 &dvc0>; + capture = <&ssi1 &src1 &dvc1>; + }; + }; +}; + +&scif1 { + pinctrl-0 = <&scif1_pins>; + pinctrl-names = "default"; + + uart-has-rtscts; + status = "okay"; +}; + +&scif2 { + pinctrl-0 = <&scif2_pins>; + pinctrl-names = "default"; + + status = "okay"; +}; + +&scif_clk { + clock-frequency = <14745600>; +}; + +&sdhi0 { + pinctrl-0 = <&sdhi0_pins>; + pinctrl-1 = <&sdhi0_pins_uhs>; + pinctrl-names = "default", "state_uhs"; + + vmmc-supply = <&vcc_sdhi0>; + vqmmc-supply = <&vccq_sdhi0>; + cd-gpios = <&gpio3 12 GPIO_ACTIVE_LOW>; + wp-gpios = <&gpio3 13 GPIO_ACTIVE_HIGH>; + bus-width = <4>; + sd-uhs-sdr50; + status = "okay"; +}; + +&sdhi2 { + /* used for on-board 8bit eMMC */ + pinctrl-0 = <&sdhi2_pins>; + pinctrl-1 = <&sdhi2_pins_uhs>; + pinctrl-names = "default", "state_uhs"; + + vmmc-supply = <®_3p3v>; + vqmmc-supply = <®_1p8v>; + bus-width = <8>; + mmc-hs200-1_8v; + non-removable; + status = "okay"; +}; + +&sdhi3 { + pinctrl-0 = <&sdhi3_pins>; + pinctrl-1 = <&sdhi3_pins_uhs>; + pinctrl-names = "default", "state_uhs"; + + vmmc-supply = <&vcc_sdhi3>; + vqmmc-supply = <&vccq_sdhi3>; + cd-gpios = <&gpio4 15 GPIO_ACTIVE_LOW>; + wp-gpios = <&gpio4 16 GPIO_ACTIVE_HIGH>; + bus-width = <4>; + sd-uhs-sdr50; + status = "okay"; +}; + +&ssi1 { + shared-pin; +}; + +&usb2_phy0 { + pinctrl-0 = <&usb0_pins>; + pinctrl-names = "default"; + + vbus-supply = <&vbus0_usb2>; + status = "okay"; +}; + +&usb2_phy1 { + pinctrl-0 = <&usb1_pins>; + pinctrl-names = "default"; + + status = "okay"; +}; + +&wdt0 { + timeout-sec = <60>; + status = "okay"; +}; + +&xhci0 { + status = "okay"; +}; diff --git a/arch/arm64/boot/dts/renesas/salvator-x.dtsi b/arch/arm64/boot/dts/renesas/salvator-x.dtsi index 2f5386252aed..468868c8ed9f 100644 --- a/arch/arm64/boot/dts/renesas/salvator-x.dtsi +++ b/arch/arm64/boot/dts/renesas/salvator-x.dtsi @@ -8,335 +8,18 @@ * kind, whether express or implied. */ -/* - * SSI-AK4613 - * - * This command is required when Playback/Capture - * - * amixer set "DVC Out" 100% - * amixer set "DVC In" 100% - * - * You can use Mute - * - * amixer set "DVC Out Mute" on - * amixer set "DVC In Mute" on - * - * You can use Volume Ramp - * - * amixer set "DVC Out Ramp Up Rate" "0.125 dB/64 steps" - * amixer set "DVC Out Ramp Down Rate" "0.125 dB/512 steps" - * amixer set "DVC Out Ramp" on - * aplay xxx.wav & - * amixer set "DVC Out" 80% // Volume Down - * amixer set "DVC Out" 100% // Volume Up - */ - -#include <dt-bindings/gpio/gpio.h> +#include "salvator-common.dtsi" / { model = "Renesas Salvator-X board"; compatible = "renesas,salvator-x"; - - aliases { - serial0 = &scif2; - serial1 = &scif1; - ethernet0 = &avb; - }; - - chosen { - bootargs = "ignore_loglevel rw root=/dev/nfs ip=dhcp"; - stdout-path = "serial0:115200n8"; - }; - - audio_clkout: audio_clkout { - /* - * This is same as <&rcar_sound 0> - * but needed to avoid cs2000/rcar_sound probe dead-lock - */ - compatible = "fixed-clock"; - #clock-cells = <0>; - clock-frequency = <11289600>; - }; - - backlight: backlight { - compatible = "pwm-backlight"; - pwms = <&pwm1 0 50000>; - - brightness-levels = <256 128 64 16 8 4 0>; - default-brightness-level = <6>; - - enable-gpios = <&gpio6 7 GPIO_ACTIVE_HIGH>; - }; - - reg_1p8v: regulator0 { - compatible = "regulator-fixed"; - regulator-name = "fixed-1.8V"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - regulator-boot-on; - regulator-always-on; - }; - - reg_3p3v: regulator1 { - compatible = "regulator-fixed"; - regulator-name = "fixed-3.3V"; - regulator-min-microvolt = <3300000>; - regulator-max-microvolt = <3300000>; - regulator-boot-on; - regulator-always-on; - }; - - rsnd_ak4613: sound { - compatible = "simple-audio-card"; - - simple-audio-card,format = "left_j"; - simple-audio-card,bitclock-master = <&sndcpu>; - simple-audio-card,frame-master = <&sndcpu>; - - sndcpu: simple-audio-card,cpu { - sound-dai = <&rcar_sound>; - }; - - sndcodec: simple-audio-card,codec { - sound-dai = <&ak4613>; - }; - }; - - vbus0_usb2: regulator-vbus0-usb2 { - compatible = "regulator-fixed"; - - regulator-name = "USB20_VBUS0"; - regulator-min-microvolt = <5000000>; - regulator-max-microvolt = <5000000>; - - gpio = <&gpio6 16 GPIO_ACTIVE_HIGH>; - enable-active-high; - }; - - vcc_sdhi0: regulator-vcc-sdhi0 { - compatible = "regulator-fixed"; - - regulator-name = "SDHI0 Vcc"; - regulator-min-microvolt = <3300000>; - regulator-max-microvolt = <3300000>; - - gpio = <&gpio5 2 GPIO_ACTIVE_HIGH>; - enable-active-high; - }; - - vccq_sdhi0: regulator-vccq-sdhi0 { - compatible = "regulator-gpio"; - - regulator-name = "SDHI0 VccQ"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <3300000>; - - gpios = <&gpio5 1 GPIO_ACTIVE_HIGH>; - gpios-states = <1>; - states = <3300000 1 - 1800000 0>; - }; - - vcc_sdhi3: regulator-vcc-sdhi3 { - compatible = "regulator-fixed"; - - regulator-name = "SDHI3 Vcc"; - regulator-min-microvolt = <3300000>; - regulator-max-microvolt = <3300000>; - - gpio = <&gpio3 15 GPIO_ACTIVE_HIGH>; - enable-active-high; - }; - - vccq_sdhi3: regulator-vccq-sdhi3 { - compatible = "regulator-gpio"; - - regulator-name = "SDHI3 VccQ"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <3300000>; - - gpios = <&gpio3 14 GPIO_ACTIVE_HIGH>; - gpios-states = <1>; - states = <3300000 1 - 1800000 0>; - }; - - hdmi0-out { - compatible = "hdmi-connector"; - label = "HDMI0 OUT"; - type = "a"; - - port { - hdmi0_con: endpoint { - }; - }; - }; - - hdmi1-out { - compatible = "hdmi-connector"; - label = "HDMI1 OUT"; - type = "a"; - - port { - hdmi1_con: endpoint { - }; - }; - }; - - vga { - compatible = "vga-connector"; - - port { - vga_in: endpoint { - remote-endpoint = <&adv7123_out>; - }; - }; - }; - - vga-encoder { - compatible = "adi,adv7123"; - - ports { - #address-cells = <1>; - #size-cells = <0>; - - port at 0 { - reg = <0>; - adv7123_in: endpoint { - remote-endpoint = <&du_out_rgb>; - }; - }; - port at 1 { - reg = <1>; - adv7123_out: endpoint { - remote-endpoint = <&vga_in>; - }; - }; - }; - }; - - x12_clk: x12 { - compatible = "fixed-clock"; - #clock-cells = <0>; - clock-frequency = <24576000>; - }; - - /* External DU dot clocks */ - x21_clk: x21-clock { - compatible = "fixed-clock"; - #clock-cells = <0>; - clock-frequency = <33000000>; - }; - - x22_clk: x22-clock { - compatible = "fixed-clock"; - #clock-cells = <0>; - clock-frequency = <33000000>; - }; - - x23_clk: x23-clock { - compatible = "fixed-clock"; - #clock-cells = <0>; - clock-frequency = <25000000>; - }; -}; - -&audio_clk_a { - clock-frequency = <22579200>; -}; - -&avb { - pinctrl-0 = <&avb_pins>; - pinctrl-names = "default"; - renesas,no-ether-link; - phy-handle = <&phy0>; - status = "okay"; - - phy0: ethernet-phy at 0 { - rxc-skew-ps = <1500>; - reg = <0>; - interrupt-parent = <&gpio2>; - interrupts = <11 IRQ_TYPE_LEVEL_LOW>; - }; -}; - -&du { - pinctrl-0 = <&du_pins>; - pinctrl-names = "default"; - status = "okay"; - - ports { - port at 0 { - endpoint { - remote-endpoint = <&adv7123_in>; - }; - }; - port at 3 { - lvds_connector: endpoint { - }; - }; - }; -}; - -&ehci0 { - status = "okay"; -}; - -&ehci1 { - status = "okay"; }; &extal_clk { clock-frequency = <16666666>; }; -&extalr_clk { - clock-frequency = <32768>; -}; - -&hsusb { - status = "okay"; -}; - -&i2c2 { - pinctrl-0 = <&i2c2_pins>; - pinctrl-names = "default"; - - status = "okay"; - - clock-frequency = <100000>; - - ak4613: codec at 10 { - compatible = "asahi-kasei,ak4613"; - #sound-dai-cells = <0>; - reg = <0x10>; - clocks = <&rcar_sound 3>; - - asahi-kasei,in1-single-end; - asahi-kasei,in2-single-end; - asahi-kasei,out1-single-end; - asahi-kasei,out2-single-end; - asahi-kasei,out3-single-end; - asahi-kasei,out4-single-end; - asahi-kasei,out5-single-end; - asahi-kasei,out6-single-end; - }; - - cs2000: clk_multiplier at 4f { - #clock-cells = <0>; - compatible = "cirrus,cs2000-cp"; - reg = <0x4f>; - clocks = <&audio_clkout>, <&x12_clk>; - clock-names = "clk_in", "ref_clk"; - - assigned-clocks = <&cs2000>; - assigned-clock-rates = <24576000>; /* 1/1 divide */ - }; -}; - &i2c4 { - status = "okay"; - versaclock5: clock-generator at 6a { compatible = "idt,5p49v5923"; reg = <0x6a>; @@ -344,301 +27,4 @@ clocks = <&x23_clk>; clock-names = "xin"; }; - - csa_vdd: adc at 7c { - compatible = "maxim,max9611"; - reg = <0x7c>; - - shunt-resistor-micro-ohms = <5000>; - }; - - csa_dvfs: adc at 7f { - compatible = "maxim,max9611"; - reg = <0x7f>; - - shunt-resistor-micro-ohms = <5000>; - }; -}; - -&i2c_dvfs { - status = "okay"; -}; - -&ohci0 { - status = "okay"; -}; - -&ohci1 { - status = "okay"; -}; - -&pcie_bus_clk { - clock-frequency = <100000000>; -}; - -&pciec0 { - status = "okay"; -}; - -&pciec1 { - status = "okay"; -}; - -&pfc { - pinctrl-0 = <&scif_clk_pins>; - pinctrl-names = "default"; - - avb_pins: avb { - mux { - groups = "avb_link", "avb_phy_int", "avb_mdc", - "avb_mii"; - function = "avb"; - }; - - pins_mdc { - groups = "avb_mdc"; - drive-strength = <24>; - }; - - pins_mii_tx { - pins = "PIN_AVB_TX_CTL", "PIN_AVB_TXC", "PIN_AVB_TD0", - "PIN_AVB_TD1", "PIN_AVB_TD2", "PIN_AVB_TD3"; - drive-strength = <12>; - }; - }; - - du_pins: du { - groups = "du_rgb888", "du_sync", "du_oddf", "du_clk_out_0"; - function = "du"; - }; - - i2c2_pins: i2c2 { - groups = "i2c2_a"; - function = "i2c2"; - }; - - pwm1_pins: pwm1 { - groups = "pwm1_a"; - function = "pwm1"; - }; - - scif1_pins: scif1 { - groups = "scif1_data_a", "scif1_ctrl"; - function = "scif1"; - }; - - scif2_pins: scif2 { - groups = "scif2_data_a"; - function = "scif2"; - }; - - scif_clk_pins: scif_clk { - groups = "scif_clk_a"; - function = "scif_clk"; - }; - - sdhi0_pins: sd0 { - groups = "sdhi0_data4", "sdhi0_ctrl"; - function = "sdhi0"; - power-source = <3300>; - }; - - sdhi0_pins_uhs: sd0_uhs { - groups = "sdhi0_data4", "sdhi0_ctrl"; - function = "sdhi0"; - power-source = <1800>; - }; - - sdhi2_pins: sd2 { - groups = "sdhi2_data8", "sdhi2_ctrl"; - function = "sdhi2"; - power-source = <3300>; - }; - - sdhi2_pins_uhs: sd2_uhs { - groups = "sdhi2_data8", "sdhi2_ctrl"; - function = "sdhi2"; - power-source = <1800>; - }; - - sdhi3_pins: sd3 { - groups = "sdhi3_data4", "sdhi3_ctrl"; - function = "sdhi3"; - power-source = <3300>; - }; - - sdhi3_pins_uhs: sd3_uhs { - groups = "sdhi3_data4", "sdhi3_ctrl"; - function = "sdhi3"; - power-source = <1800>; - }; - - sound_pins: sound { - groups = "ssi01239_ctrl", "ssi0_data", "ssi1_data_a"; - function = "ssi"; - }; - - sound_clk_pins: sound_clk { - groups = "audio_clk_a_a", "audio_clk_b_a", "audio_clk_c_a", - "audio_clkout_a", "audio_clkout3_a"; - function = "audio_clk"; - }; - - usb0_pins: usb0 { - groups = "usb0"; - function = "usb0"; - }; - - usb1_pins: usb1 { - mux { - groups = "usb1"; - function = "usb1"; - }; - - ovc { - pins = "GP_6_27"; - bias-pull-up; - }; - - pwen { - pins = "GP_6_26"; - bias-pull-down; - }; - }; -}; - -&pwm1 { - pinctrl-0 = <&pwm1_pins>; - pinctrl-names = "default"; - - status = "okay"; -}; - -&rcar_sound { - pinctrl-0 = <&sound_pins &sound_clk_pins>; - pinctrl-names = "default"; - - /* Single DAI */ - #sound-dai-cells = <0>; - - /* audio_clkout0/1/2/3 */ - #clock-cells = <1>; - clock-frequency = <11289600 12288000>; - - status = "okay"; - - /* update <audio_clk_b> to <cs2000> */ - clocks = <&cpg CPG_MOD 1005>, - <&cpg CPG_MOD 1006>, <&cpg CPG_MOD 1007>, - <&cpg CPG_MOD 1008>, <&cpg CPG_MOD 1009>, - <&cpg CPG_MOD 1010>, <&cpg CPG_MOD 1011>, - <&cpg CPG_MOD 1012>, <&cpg CPG_MOD 1013>, - <&cpg CPG_MOD 1014>, <&cpg CPG_MOD 1015>, - <&cpg CPG_MOD 1022>, <&cpg CPG_MOD 1023>, - <&cpg CPG_MOD 1024>, <&cpg CPG_MOD 1025>, - <&cpg CPG_MOD 1026>, <&cpg CPG_MOD 1027>, - <&cpg CPG_MOD 1028>, <&cpg CPG_MOD 1029>, - <&cpg CPG_MOD 1030>, <&cpg CPG_MOD 1031>, - <&cpg CPG_MOD 1020>, <&cpg CPG_MOD 1021>, - <&cpg CPG_MOD 1020>, <&cpg CPG_MOD 1021>, - <&cpg CPG_MOD 1019>, <&cpg CPG_MOD 1018>, - <&audio_clk_a>, <&cs2000>, - <&audio_clk_c>, - <&cpg CPG_CORE CPG_AUDIO_CLK_I>; - - rcar_sound,dai { - dai0 { - playback = <&ssi0 &src0 &dvc0>; - capture = <&ssi1 &src1 &dvc1>; - }; - }; -}; - -&scif1 { - pinctrl-0 = <&scif1_pins>; - pinctrl-names = "default"; - - uart-has-rtscts; - status = "okay"; -}; - -&scif2 { - pinctrl-0 = <&scif2_pins>; - pinctrl-names = "default"; - - status = "okay"; -}; - -&scif_clk { - clock-frequency = <14745600>; -}; - -&sdhi0 { - pinctrl-0 = <&sdhi0_pins>; - pinctrl-1 = <&sdhi0_pins_uhs>; - pinctrl-names = "default", "state_uhs"; - - vmmc-supply = <&vcc_sdhi0>; - vqmmc-supply = <&vccq_sdhi0>; - cd-gpios = <&gpio3 12 GPIO_ACTIVE_LOW>; - wp-gpios = <&gpio3 13 GPIO_ACTIVE_HIGH>; - bus-width = <4>; - sd-uhs-sdr50; - status = "okay"; -}; - -&sdhi2 { - /* used for on-board 8bit eMMC */ - pinctrl-0 = <&sdhi2_pins>; - pinctrl-1 = <&sdhi2_pins_uhs>; - pinctrl-names = "default", "state_uhs"; - - vmmc-supply = <®_3p3v>; - vqmmc-supply = <®_1p8v>; - bus-width = <8>; - mmc-hs200-1_8v; - non-removable; - status = "okay"; -}; - -&sdhi3 { - pinctrl-0 = <&sdhi3_pins>; - pinctrl-1 = <&sdhi3_pins_uhs>; - pinctrl-names = "default", "state_uhs"; - - vmmc-supply = <&vcc_sdhi3>; - vqmmc-supply = <&vccq_sdhi3>; - cd-gpios = <&gpio4 15 GPIO_ACTIVE_LOW>; - wp-gpios = <&gpio4 16 GPIO_ACTIVE_HIGH>; - bus-width = <4>; - sd-uhs-sdr50; - status = "okay"; -}; - -&ssi1 { - shared-pin; -}; - -&usb2_phy0 { - pinctrl-0 = <&usb0_pins>; - pinctrl-names = "default"; - - vbus-supply = <&vbus0_usb2>; - status = "okay"; -}; - -&usb2_phy1 { - pinctrl-0 = <&usb1_pins>; - pinctrl-names = "default"; - - status = "okay"; -}; - -&wdt0 { - timeout-sec = <60>; - status = "okay"; -}; - -&xhci0 { - status = "okay"; }; -- 2.1.4 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH 08/11] arm64: dts: renesas: Add common Salvator-XS board support 2017-06-16 13:30 [GIT PULL] Second Round of Renesas ARM64 Based SoC DT Updates for v4.13 Simon Horman ` (6 preceding siblings ...) 2017-06-16 13:30 ` [PATCH 07/11] arm64: dts: renesas: Extract common Salvator-X/XS board support Simon Horman @ 2017-06-16 13:30 ` Simon Horman 2017-06-16 13:30 ` [PATCH 09/11] arm64: dts: renesas: Add support for Salvator-XS with R-Car H3 ES2.0 Simon Horman ` (3 subsequent siblings) 11 siblings, 0 replies; 13+ messages in thread From: Simon Horman @ 2017-06-16 13:30 UTC (permalink / raw) To: linux-arm-kernel From: Geert Uytterhoeven <geert+renesas@glider.be> The Renesas Salvator-XS (Salvator-X 2nd version) development board can be equipped with either an R-Car H3 ES2.0 or M3-W ES1.x SiP, which are pin-compatible. Add initial support for the common parts of the Salvator-XS board into its own .dtsi file, to be included by the DTSes for the H3/M3-W versions. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> --- arch/arm64/boot/dts/renesas/salvator-xs.dtsi | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 arch/arm64/boot/dts/renesas/salvator-xs.dtsi diff --git a/arch/arm64/boot/dts/renesas/salvator-xs.dtsi b/arch/arm64/boot/dts/renesas/salvator-xs.dtsi new file mode 100644 index 000000000000..81227e3c2c6f --- /dev/null +++ b/arch/arm64/boot/dts/renesas/salvator-xs.dtsi @@ -0,0 +1,20 @@ +/* + * Device Tree Source for the Salvator-X 2nd version board + * + * Copyright (C) 2015-2017 Renesas Electronics Corp. + * + * This file is licensed under the terms of the GNU General Public License + * version 2. This program is licensed "as is" without any warranty of any + * kind, whether express or implied. + */ + +#include "salvator-common.dtsi" + +/ { + model = "Renesas Salvator-X 2nd version board"; + compatible = "renesas,salvator-xs"; +}; + +&extal_clk { + clock-frequency = <16640000>; +}; -- 2.1.4 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH 09/11] arm64: dts: renesas: Add support for Salvator-XS with R-Car H3 ES2.0 2017-06-16 13:30 [GIT PULL] Second Round of Renesas ARM64 Based SoC DT Updates for v4.13 Simon Horman ` (7 preceding siblings ...) 2017-06-16 13:30 ` [PATCH 08/11] arm64: dts: renesas: Add common Salvator-XS " Simon Horman @ 2017-06-16 13:30 ` Simon Horman 2017-06-16 13:30 ` [PATCH 10/11] arm64: dts: r8a7795: Add reset control properties for audio Simon Horman ` (2 subsequent siblings) 11 siblings, 0 replies; 13+ messages in thread From: Simon Horman @ 2017-06-16 13:30 UTC (permalink / raw) To: linux-arm-kernel From: Geert Uytterhoeven <geert+renesas@glider.be> Add initial support for the Renesas Salvator-XS (Salvator-X 2nd version) development board equipped with an R-Car H3 ES2.0 SiP. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> --- arch/arm64/boot/dts/renesas/Makefile | 1 + .../arm64/boot/dts/renesas/r8a7795-salvator-xs.dts | 109 +++++++++++++++++++++ 2 files changed, 110 insertions(+) create mode 100644 arch/arm64/boot/dts/renesas/r8a7795-salvator-xs.dts diff --git a/arch/arm64/boot/dts/renesas/Makefile b/arch/arm64/boot/dts/renesas/Makefile index d5451015950e..acc4bb30d485 100644 --- a/arch/arm64/boot/dts/renesas/Makefile +++ b/arch/arm64/boot/dts/renesas/Makefile @@ -1,4 +1,5 @@ dtb-$(CONFIG_ARCH_R8A7795) += r8a7795-salvator-x.dtb r8a7795-h3ulcb.dtb +dtb-$(CONFIG_ARCH_R8A7795) += r8a7795-salvator-xs.dtb dtb-$(CONFIG_ARCH_R8A7795) += r8a7795-es1-salvator-x.dtb r8a7795-es1-h3ulcb.dtb dtb-$(CONFIG_ARCH_R8A7796) += r8a7796-salvator-x.dtb r8a7796-m3ulcb.dtb diff --git a/arch/arm64/boot/dts/renesas/r8a7795-salvator-xs.dts b/arch/arm64/boot/dts/renesas/r8a7795-salvator-xs.dts new file mode 100644 index 000000000000..de354957144b --- /dev/null +++ b/arch/arm64/boot/dts/renesas/r8a7795-salvator-xs.dts @@ -0,0 +1,109 @@ +/* + * Device Tree Source for the Salvator-X 2nd version board + * + * Copyright (C) 2015-2017 Renesas Electronics Corp. + * + * This file is licensed under the terms of the GNU General Public License + * version 2. This program is licensed "as is" without any warranty of any + * kind, whether express or implied. + */ + +#define CPG_AUDIO_CLK_I R8A7795_CLK_S0D4 + +/dts-v1/; +#include "r8a7795.dtsi" +#include "salvator-xs.dtsi" + +/ { + model = "Renesas Salvator-X 2nd version board based on r8a7795 ES2.0+"; + compatible = "renesas,salvator-xs", "renesas,r8a7795"; + + memory at 48000000 { + device_type = "memory"; + /* first 128MB is reserved for secure area. */ + reg = <0x0 0x48000000 0x0 0x38000000>; + }; + + memory at 500000000 { + device_type = "memory"; + reg = <0x5 0x00000000 0x0 0x40000000>; + }; + + memory at 600000000 { + device_type = "memory"; + reg = <0x6 0x00000000 0x0 0x40000000>; + }; + + memory at 700000000 { + device_type = "memory"; + reg = <0x7 0x00000000 0x0 0x40000000>; + }; +}; + +&du { + clocks = <&cpg CPG_MOD 724>, + <&cpg CPG_MOD 723>, + <&cpg CPG_MOD 722>, + <&cpg CPG_MOD 721>, + <&cpg CPG_MOD 727>, + <&x21_clk>, + <&x22_clk>; + clock-names = "du.0", "du.1", "du.2", "du.3", "lvds.0", + "dclkin.1", "dclkin.2"; +}; + +&ehci2 { + status = "okay"; +}; + +&hdmi0 { + status = "okay"; + + ports { + port at 1 { + reg = <1>; + rcar_dw_hdmi0_out: endpoint { + remote-endpoint = <&hdmi0_con>; + }; + }; + }; +}; + +&hdmi0_con { + remote-endpoint = <&rcar_dw_hdmi0_out>; +}; + +&hdmi1 { + status = "okay"; + + ports { + port at 1 { + reg = <1>; + rcar_dw_hdmi1_out: endpoint { + remote-endpoint = <&hdmi1_con>; + }; + }; + }; +}; + +&hdmi1_con { + remote-endpoint = <&rcar_dw_hdmi1_out>; +}; + +&ohci2 { + status = "okay"; +}; + +&pfc { + usb2_pins: usb2 { + groups = "usb2"; + function = "usb2"; + }; +}; + +&usb2_phy2 { + pinctrl-0 = <&usb2_pins>; + pinctrl-names = "default"; + + status = "okay"; +}; -- 2.1.4 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH 10/11] arm64: dts: r8a7795: Add reset control properties for audio 2017-06-16 13:30 [GIT PULL] Second Round of Renesas ARM64 Based SoC DT Updates for v4.13 Simon Horman ` (8 preceding siblings ...) 2017-06-16 13:30 ` [PATCH 09/11] arm64: dts: renesas: Add support for Salvator-XS with R-Car H3 ES2.0 Simon Horman @ 2017-06-16 13:30 ` Simon Horman 2017-06-16 13:30 ` [PATCH 11/11] arm64: dts: r8a7796: " Simon Horman 2017-06-19 5:44 ` [GIT PULL] Second Round of Renesas ARM64 Based SoC DT Updates for v4.13 Olof Johansson 11 siblings, 0 replies; 13+ messages in thread From: Simon Horman @ 2017-06-16 13:30 UTC (permalink / raw) To: linux-arm-kernel From: Geert Uytterhoeven <geert+renesas@glider.be> Note that the audio module has resets for the Serial Sound Interfaces only. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> --- arch/arm64/boot/dts/renesas/r8a7795.dtsi | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/arch/arm64/boot/dts/renesas/r8a7795.dtsi b/arch/arm64/boot/dts/renesas/r8a7795.dtsi index a4ca0f5bb762..e31c1b660b3f 100644 --- a/arch/arm64/boot/dts/renesas/r8a7795.dtsi +++ b/arch/arm64/boot/dts/renesas/r8a7795.dtsi @@ -1120,6 +1120,16 @@ "dvc.0", "dvc.1", "clk_a", "clk_b", "clk_c", "clk_i"; power-domains = <&sysc R8A7795_PD_ALWAYS_ON>; + resets = <&cpg 1005>, + <&cpg 1006>, <&cpg 1007>, + <&cpg 1008>, <&cpg 1009>, + <&cpg 1010>, <&cpg 1011>, + <&cpg 1012>, <&cpg 1013>, + <&cpg 1014>, <&cpg 1015>; + reset-names = "ssi-all", + "ssi.9", "ssi.8", "ssi.7", "ssi.6", + "ssi.5", "ssi.4", "ssi.3", "ssi.2", + "ssi.1", "ssi.0"; status = "disabled"; rcar_sound,dvc { -- 2.1.4 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH 11/11] arm64: dts: r8a7796: Add reset control properties for audio 2017-06-16 13:30 [GIT PULL] Second Round of Renesas ARM64 Based SoC DT Updates for v4.13 Simon Horman ` (9 preceding siblings ...) 2017-06-16 13:30 ` [PATCH 10/11] arm64: dts: r8a7795: Add reset control properties for audio Simon Horman @ 2017-06-16 13:30 ` Simon Horman 2017-06-19 5:44 ` [GIT PULL] Second Round of Renesas ARM64 Based SoC DT Updates for v4.13 Olof Johansson 11 siblings, 0 replies; 13+ messages in thread From: Simon Horman @ 2017-06-16 13:30 UTC (permalink / raw) To: linux-arm-kernel From: Geert Uytterhoeven <geert+renesas@glider.be> Note that the audio module has resets for the Serial Sound Interfaces only. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> --- arch/arm64/boot/dts/renesas/r8a7796.dtsi | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/arch/arm64/boot/dts/renesas/r8a7796.dtsi b/arch/arm64/boot/dts/renesas/r8a7796.dtsi index d63acd3e00b2..1f6710912045 100644 --- a/arch/arm64/boot/dts/renesas/r8a7796.dtsi +++ b/arch/arm64/boot/dts/renesas/r8a7796.dtsi @@ -1286,6 +1286,16 @@ "dvc.0", "dvc.1", "clk_a", "clk_b", "clk_c", "clk_i"; power-domains = <&sysc R8A7796_PD_ALWAYS_ON>; + resets = <&cpg 1005>, + <&cpg 1006>, <&cpg 1007>, + <&cpg 1008>, <&cpg 1009>, + <&cpg 1010>, <&cpg 1011>, + <&cpg 1012>, <&cpg 1013>, + <&cpg 1014>, <&cpg 1015>; + reset-names = "ssi-all", + "ssi.9", "ssi.8", "ssi.7", "ssi.6", + "ssi.5", "ssi.4", "ssi.3", "ssi.2", + "ssi.1", "ssi.0"; status = "disabled"; rcar_sound,dvc { -- 2.1.4 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* [GIT PULL] Second Round of Renesas ARM64 Based SoC DT Updates for v4.13 2017-06-16 13:30 [GIT PULL] Second Round of Renesas ARM64 Based SoC DT Updates for v4.13 Simon Horman ` (10 preceding siblings ...) 2017-06-16 13:30 ` [PATCH 11/11] arm64: dts: r8a7796: " Simon Horman @ 2017-06-19 5:44 ` Olof Johansson 11 siblings, 0 replies; 13+ messages in thread From: Olof Johansson @ 2017-06-19 5:44 UTC (permalink / raw) To: linux-arm-kernel Hi Simon, On Fri, Jun 16, 2017 at 03:30:17PM +0200, Simon Horman wrote: > Hi Olof, Hi Kevin, Hi Arnd, > > Please consider these second round of Renesas ARM64 based SoC DT updates > for v4.13. > > This pull request is based on the previous round of > such requests, tagged as renesas-arm64-dt-for-v4.13, > which you have already pulled. > > > The following changes since commit 0b03c32db03d63de695c1e0ab1950eb12b135fa7: > > arm64: dts: r8a7795: salvator-x: Add support for R-Car H3 ES2.0 (2017-05-22 14:54:57 +0200) > > are available in the git repository at: > > https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas.git tags/renesas-arm64-dt2-for-v4.13 > > for you to fetch changes up to 4d1255ebefb6838eab4f652107433438bea0051f: > > arm64: dts: r8a7796: Add reset control properties for audio (2017-06-14 11:00:29 +0200) > > ---------------------------------------------------------------- > Second Round of Renesas ARM64 Based SoC DT Updates for v4.13 > > * Add reset control properties for audio to r9a779[56] SoCs > * Add add DMA for IIC_DVFS to r9a779[56] SoCs > * Add support for Salvator-XS and H3ULCB with R-Car H3 (r8a7795) ES2 > * Add missing index to PWM pinctrl subnode name to Salvator-X board > * Add 12288000 for sound ADG to Salvator-X and ULCB boards This doesn't mean anything to me. Even if I happened to know what ADG is, I'm not sure what ADG+12288000 is!? Looking at the patch, it adds a 12288000 clock to the audio block to be able to play 48k audio. Maybe that's what you meant to say here? Merged anyway this time. -Olof ^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2017-06-19 5:44 UTC | newest] Thread overview: 13+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2017-06-16 13:30 [GIT PULL] Second Round of Renesas ARM64 Based SoC DT Updates for v4.13 Simon Horman 2017-06-16 13:30 ` [PATCH 01/11] arm64: dts: salvator-x: add 12288000 for sound ADG Simon Horman 2017-06-16 13:30 ` [PATCH 02/11] arm64: dts: ulcb: " Simon Horman 2017-06-16 13:30 ` [PATCH 03/11] arm64: dts: r8a7795: add DMA for IIC_DVFS Simon Horman 2017-06-16 13:30 ` [PATCH 04/11] arm64: dts: r8a7796: " Simon Horman 2017-06-16 13:30 ` [PATCH 05/11] arm64: dts: r8a7795: h3ulcb: Add support for R-Car H3 ES2.0 Simon Horman 2017-06-16 13:30 ` [PATCH 06/11] arm64: dts: salvator-x: Add missing index to PWM pinctrl subnode name Simon Horman 2017-06-16 13:30 ` [PATCH 07/11] arm64: dts: renesas: Extract common Salvator-X/XS board support Simon Horman 2017-06-16 13:30 ` [PATCH 08/11] arm64: dts: renesas: Add common Salvator-XS " Simon Horman 2017-06-16 13:30 ` [PATCH 09/11] arm64: dts: renesas: Add support for Salvator-XS with R-Car H3 ES2.0 Simon Horman 2017-06-16 13:30 ` [PATCH 10/11] arm64: dts: r8a7795: Add reset control properties for audio Simon Horman 2017-06-16 13:30 ` [PATCH 11/11] arm64: dts: r8a7796: " Simon Horman 2017-06-19 5:44 ` [GIT PULL] Second Round of Renesas ARM64 Based SoC DT Updates for v4.13 Olof Johansson
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).