// SPDX-License-Identifier: GPL-2.0 /* * Device Tree Source for the iWave-RZG1E SODIMM carrier board * * Copyright (C) 2017 Renesas Electronics Corp. */ /* * SSI-SGTL5000 * * 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 */ /dts-v1/; #include "r8a7745-iwg22m.dtsi" / { model = "iWave Systems RainboW-G22D-SODIMM board based on RZ/G1E"; compatible = "iwave,g22d", "iwave,g22m", "renesas,r8a7745"; aliases { ethernet0 = &avb; serial3 = &scif4; serial5 = &hscif1; }; chosen { bootargs = "ignore_loglevel rw root=/dev/nfs ip=dhcp"; stdout-path = "serial3:115200n8"; }; audio_clock: audio_clock { compatible = "fixed-clock"; #clock-cells = <0>; clock-frequency = <26000000>; }; rsnd_sgtl5000: sound { compatible = "simple-audio-card"; simple-audio-card,format = "i2s"; simple-audio-card,bitclock-master = <&sndcodec>; simple-audio-card,frame-master = <&sndcodec>; sndcpu: simple-audio-card,cpu { sound-dai = <&rcar_sound>; }; sndcodec: simple-audio-card,codec { sound-dai = <&sgtl5000>; }; }; vccq_sdhi0: regulator-vccq-sdhi0 { compatible = "regulator-gpio"; regulator-name = "SDHI0 VccQ"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <3300000>; gpios = <&gpio0 20 GPIO_ACTIVE_LOW>; gpios-states = <1>; states = <3300000 1 1800000 0>; }; }; &avb { pinctrl-0 = <&avb_pins>; pinctrl-names = "default"; phy-handle = <&phy3>; phy-mode = "gmii"; renesas,no-ether-link; status = "okay"; phy3: ethernet-phy@3 { /* * On some older versions of the platform (before R4.0) the phy address * may be 1 or 3. The address is fixed to 3 for R4.0 onwards. */ reg = <3>; micrel,led-mode = <1>; }; }; &can0 { pinctrl-0 = <&can0_pins>; pinctrl-names = "default"; status = "okay"; }; &hscif1 { pinctrl-0 = <&hscif1_pins>; pinctrl-names = "default"; uart-has-rtscts; status = "okay"; }; &hsusb { status = "okay"; pinctrl-0 = <&usb0_pins>; pinctrl-names = "default"; }; &i2c5 { pinctrl-0 = <&i2c5_pins>; pinctrl-names = "default"; status = "okay"; clock-frequency = <400000>; sgtl5000: codec@a { compatible = "fsl,sgtl5000"; #sound-dai-cells = <0>; reg = <0x0a>; clocks = <&audio_clock>; VDDA-supply = <®_3p3v>; VDDIO-supply = <®_3p3v>; }; }; &pci1 { status = "okay"; pinctrl-0 = <&usb1_pins>; pinctrl-names = "default"; }; &pfc { avb_pins: avb { groups = "avb_mdio", "avb_gmii"; function = "avb"; }; can0_pins: can0 { groups = "can0_data"; function = "can0"; }; hscif1_pins: hscif1 { groups = "hscif1_data", "hscif1_ctrl"; function = "hscif1"; }; i2c5_pins: i2c5 { groups = "i2c5_b"; function = "i2c5"; }; scif4_pins: scif4 { groups = "scif4_data_b"; function = "scif4"; }; sdhi0_pins: sd0 { groups = "sdhi0_data4", "sdhi0_ctrl"; function = "sdhi0"; power-source = <3300>; }; sound_pins: sound { groups = "ssi34_ctrl", "ssi3_data", "ssi4_data"; function = "ssi"; }; usb0_pins: usb0 { groups = "usb0"; function = "usb0"; }; usb1_pins: usb1 { groups = "usb1"; function = "usb1"; }; }; &rcar_sound { pinctrl-0 = <&sound_pins>; pinctrl-names = "default"; status = "okay"; /* Single DAI */ #sound-dai-cells = <0>; rcar_sound,dai { dai0 { playback = <&ssi3 &src3 &dvc0>; capture = <&ssi4 &src4 &dvc1>; }; }; }; &scif4 { pinctrl-0 = <&scif4_pins>; pinctrl-names = "default"; status = "okay"; }; &sdhi0 { pinctrl-0 = <&sdhi0_pins>; pinctrl-names = "default"; vmmc-supply = <®_3p3v>; vqmmc-supply = <&vccq_sdhi0>; cd-gpios = <&gpio6 6 GPIO_ACTIVE_LOW>; status = "okay"; }; &ssi4 { shared-pin; }; &usbphy { status = "okay"; };