Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0
0002 /*
0003  * kirkwood-pogoplug-series-4.dts - Device tree file for PogoPlug Series 4
0004  * inspired by the board files made by Kevin Mihelich for ArchLinux,
0005  * and their DTS file.
0006  *
0007  * Copyright (C) 2015 Linus Walleij <linus.walleij@linaro.org>
0008  */
0009 
0010 /dts-v1/;
0011 
0012 #include "kirkwood.dtsi"
0013 #include "kirkwood-6192.dtsi"
0014 #include <dt-bindings/input/linux-event-codes.h>
0015 
0016 / {
0017         model = "Cloud Engines PogoPlug Series 4";
0018         compatible = "cloudengines,pogoplugv4", "marvell,kirkwood-88f6192",
0019                      "marvell,kirkwood";
0020 
0021         memory {
0022                 device_type = "memory";
0023                 reg = <0x00000000 0x08000000>;
0024         };
0025 
0026         chosen {
0027                 stdout-path = "uart0:115200n8";
0028         };
0029 
0030         gpio_keys {
0031                 compatible = "gpio-keys";
0032                 #address-cells = <1>;
0033                 #size-cells = <0>;
0034                 pinctrl-0 = <&pmx_button_eject>;
0035                 pinctrl-names = "default";
0036 
0037                 eject {
0038                         debounce-interval = <50>;
0039                         wakeup-source;
0040                         linux,code = <KEY_EJECTCD>;
0041                         label = "Eject Button";
0042                         gpios = <&gpio0 29 GPIO_ACTIVE_LOW>;
0043                 };
0044         };
0045 
0046         gpio-leds {
0047                 compatible = "gpio-leds";
0048                 pinctrl-0 = <&pmx_led_green &pmx_led_red>;
0049                 pinctrl-names = "default";
0050 
0051                 health {
0052                         label = "pogoplugv4:green:health";
0053                         gpios = <&gpio0 22 GPIO_ACTIVE_LOW>;
0054                         default-state = "on";
0055                 };
0056                 fault {
0057                         label = "pogoplugv4:red:fault";
0058                         gpios = <&gpio0 24 GPIO_ACTIVE_LOW>;
0059                 };
0060         };
0061 };
0062 
0063 &pinctrl {
0064         pmx_sata0: pmx-sata0 {
0065                 marvell,pins = "mpp21";
0066                 marvell,function = "sata0";
0067         };
0068 
0069         pmx_sata1: pmx-sata1 {
0070                 marvell,pins = "mpp20";
0071                 marvell,function = "sata1";
0072         };
0073 
0074         pmx_sdio_cd: pmx-sdio-cd {
0075                 marvell,pins = "mpp27";
0076                 marvell,function = "gpio";
0077         };
0078 
0079         pmx_sdio_wp: pmx-sdio-wp {
0080                 marvell,pins = "mpp28";
0081                 marvell,function = "gpio";
0082         };
0083 
0084         pmx_button_eject: pmx-button-eject {
0085                 marvell,pins = "mpp29";
0086                 marvell,function = "gpio";
0087         };
0088 
0089         pmx_led_green: pmx-led-green {
0090                 marvell,pins = "mpp22";
0091                 marvell,function = "gpio";
0092         };
0093 
0094         pmx_led_red: pmx-led-red {
0095                 marvell,pins = "mpp24";
0096                 marvell,function = "gpio";
0097         };
0098 };
0099 
0100 &uart0 {
0101         status = "okay";
0102 };
0103 
0104 /*
0105  * This PCIE controller has a USB 3.0 XHCI controller at 1,0
0106  */
0107 &pciec {
0108         status = "okay";
0109 };
0110 
0111 &pcie0 {
0112         status = "okay";
0113 };
0114 
0115 &sata {
0116         status = "okay";
0117         pinctrl-0 = <&pmx_sata0 &pmx_sata1>;
0118         pinctrl-names = "default";
0119         nr-ports = <1>;
0120 };
0121 
0122 &sdio {
0123         status = "okay";
0124         pinctrl-0 = <&pmx_sdio &pmx_sdio_cd &pmx_sdio_wp>;
0125         pinctrl-names = "default";
0126         cd-gpios = <&gpio0 27 GPIO_ACTIVE_LOW>;
0127         wp-gpios = <&gpio0 28 GPIO_ACTIVE_HIGH>;
0128 };
0129 
0130 &nand {
0131         /* 128 MiB of NAND flash */
0132         chip-delay = <40>;
0133         status = "okay";
0134         partitions {
0135                 compatible = "fixed-partitions";
0136                 #address-cells = <1>;
0137                 #size-cells = <1>;
0138 
0139                 partition@0 {
0140                         label = "u-boot";
0141                         reg = <0x00000000 0x200000>;
0142                         read-only;
0143                 };
0144 
0145                 partition@200000 {
0146                         label = "uImage";
0147                         reg = <0x00200000 0x300000>;
0148                 };
0149 
0150                 partition@500000 {
0151                         label = "uImage2";
0152                         reg = <0x00500000 0x300000>;
0153                 };
0154 
0155                 partition@800000 {
0156                         label = "failsafe";
0157                         reg = <0x00800000 0x800000>;
0158                 };
0159 
0160                 partition@1000000 {
0161                         label = "root";
0162                         reg = <0x01000000 0x7000000>;
0163                 };
0164         };
0165 };
0166 
0167 &mdio {
0168         status = "okay";
0169 
0170         ethphy0: ethernet-phy@0 {
0171                 reg = <0>;
0172         };
0173 };
0174 
0175 &eth0 {
0176         status = "okay";
0177         ethernet0-port@0 {
0178                 phy-handle = <&ethphy0>;
0179         };
0180 };