/* Copyright (c) 2015, The Linux Foundation. All rights reserved. * * Permission to use, copy, modify, and/or distribute this software for any * purpose with or without fee is hereby granted, provided that the above * copyright notice and this permission notice appear in all copies. * * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * */ #include "Fritz_qcom-ipq4019.dtsi" #include "qcom-ipq4019-audio.dtsi" #include "../../../../include/linux/avm_hw_config_def.h" /* TODO: Projekt ist TOT! Dieser DT kann weg. */ / { model = "AVM FRITZ!AMP"; avm-hw-revision{ compatible = "avm,avm_hw_revision"; revision = "235"; subrevision = "0"; }; soc { #address-cells = <1>; #size-cells = <1>; vccq_sd0: regulator@0 { status = "ok"; }; pinctrl@0x01000000 { mdio_pins: mdio_pinmux { mux_1 { pins = "gpio6"; function = "mdio0"; bias-bus-hold; }; mux_2 { pins = "gpio7"; function = "mdc"; bias-bus-hold; }; }; rmii0_pins: rmii0_pinmux { rmii00 { pins = "gpio36"; function = "rmii00"; bias-bus-hold; drive-strength = <16>; }; rmii01 { pins = "gpio37"; function = "rmii01"; bias-bus-hold; drive-strength = <16>; }; rmii0_tx { pins = "gpio38"; function = "rmii0_tx"; bias-bus-hold; drive-strength = <16>; }; rmii0_rx { pins = "gpio39"; function = "rmii0_rx"; bias-bus-hold; drive-strength = <16>; }; rmii0_refclk { pins = "gpio40"; function = "rmii0_refclk"; bias-bus-hold; drive-strength = <16>; }; rmii0_rxd0{ pins = "gpio41"; function = "rmii00"; bias-bus-hold; drive-strength = <16>; }; rmii0_rxd1{ pins = "gpio42"; function = "rmii01"; bias-bus-hold; drive-strength = <16>; }; rmii0_dv { pins = "gpio43"; function = "rmii0_dv"; bias-bus-hold; drive-strength = <16>; }; }; serial_pins: serial_pinmux { mux { pins = "gpio16", "gpio17"; }; }; }; qcom: ledc@1937000 { status = "disable"; }; qpic_bam: dma@7984000 { status = "ok"; }; nand: qpic-nand@79b0000 { status = "ok"; nandcs@0 { compatible = "qcom,nandcs", "avm,nand_partitions"; }; /* Partitionen werden vom Urlader eingetragen */ /* kernel { label = "kernel"; reg = <0x00B00000 0x00400000>; }; urlader { label = "urlader"; reg = <0x00000000 0x002C0000>; }; nand-tffs { label = "nand-tffs"; reg = <0x002C0000 0x00840000>; }; reserved-kernel { label = "reserved-kernel"; reg = <0x00F00000 0x00400000>; }; ubi { label = "ubi"; reg = <0x01300000 0x06D00000>; }; */ }; ess_tcsr: ess_tcsr@1953000 { qcom,ess-interface-select = ; }; ess-switch@c000000 { pinctrl-0 = <&rmii0_pins>; pinctrl-names = "default"; switch_mac_mode = <4>; /* mac mode for RMII0 */ }; mdio@90000 { #address-cells = <1>; #size-cells = <0>; pinctrl-0 = <&mdio_pins>; pinctrl-names = "default"; status = "ok"; bias-disable; phy0: ethernet-phy@0 { reg = <0>; }; }; adcc: clock-controller@7700038 { status = "ok"; }; /* Collision with PHY reset pin 9 */ serial@78b0000 { status = "disable"; }; spi_0: spi@78b5000 { /* BLSP1 QUP1 */ status = "disable"; }; edma: edma@c080000 { qcom,num-gmac = <1>; gmac0 { qcom,phy-mdio-addr = <0>; qcom,poll-required = <1>; qcom,forced-speed = <0>; qcom,forced-duplex = <0>; vlan-tag = <0 0x20>; devname = "plc"; macname = "maca"; mac = <0>; }; }; clock-controller@7700038 { status = "ok"; }; pwm { /*--- pinctrl-0 = <&pwm_pins>; ---*/ used-pwm-indices = <1>, <1>, <1>, <1>; status = "ok"; }; /* start of pcmlink */ tdm@0 { status = "ok"; }; qca-pcm-tdm@7709000 { status = "ok"; }; audio: audio@7700000 { status = "ok"; }; pcm: pcm@7704000 { status = "ok"; }; mbox0: mbox@7708000 { status = "ok"; }; mbox1: mbox@770a000 { status = "ok"; }; mbox2: mbox@770c000 { status = "ok"; }; mbox3: mbox@770e000 { status = "ok"; }; mbox4: mbox@7706000 { status = "ok"; }; stereo0: stereo@7709000 { status = "ok"; }; stereo1: stereo@770b000 { status = "ok"; }; stereo2: stereo@770d000 { status = "ok"; }; stereo3: stereo@770f000 { status = "ok"; }; /* end of pcmlink */ avm_gpio { compatible = "avm,avm_gpio_generic"; /* 600/601 are 'special GPIO' */ /* 600 uses the PWM Interface on GPIO30-33 */ /* 601 uses the PWM Interface on GPIO64-37 */ /* Pins are configured inside the avm gpio driver */ gpio_avm_led_connect { value = <600>; }; gpio_avm_button_connect { value = <10>; param = ; }; gpio_avm_reset_plc { value = <9>; param = ; }; gpio_avm_dect_reset{ value = <18>; param = ; }; gpio_avm_dect_rd { value = <16>; param = ; }; gpio_avm_pcmlink_fsc { value = <22>; param = ; function = ; }; gpio_avm_pcmlink_fsc_2 { value = <26>; param = ; function = ; }; gpio_avm_pcmlink_dcl { value = <21>; param = ; function = ; }; gpio_avm_pcmlink_dcl_2 { value = <25>; param = ; function = ; }; gpio_avm_pcmlink_mcl { value = <20>; param = ; function = ; }; gpio_avm_pcmlink_mcl_2 { value = <24>; param = ; function = ; }; gpio_avm_pcmlink_di { value = <23>; param = ; function = ; }; gpio_avm_pcmlink_do { value = <27>; param = ; function = ; }; }; }; };