/ {
        chosen {
                stdout-path = "/rdb/serial@f040a900:115200";
        };

        nexus {
                #address-cells = <0x0>;
                #size-cells = <0x0>;
                version = <0x0 0x1>;
        };

        reserved-memory {
                #address-cells = <0x2>;
                #size-cells = <0x2>;
                ranges;

                reserved-nodma@00000000 {
                        reg = <0x0 0x0 0x0 0x1000>;
                };

                // RG MEMC0 memory area. FPM/Runner/Viper/etc.
                // NOTE this may need to be revisited if CMA is ever enabled
                reserved-RG-memc0 {
                        reg = <0x0 0x4000000 0x0 0x9c00000>;
                };
        };

        cpus {
                #address-cells = <0x1>;
                #size-cells = <0x0>;

                cpu@0 {
                        device_type = "cpu";
                        enable-method = "brcm,brahma-b15";
                        compatible = "brcm,brahma-b15", "arm,cortex-a15";
                        reg = <0x0>;
                };

                cpu@1 {
                        device_type = "cpu";
                        enable-method = "brcm,brahma-b15";
                        compatible = "brcm,brahma-b15", "arm,cortex-a15";
                        reg = <0x1>;
                };

                cpu@2 {
                        device_type = "cpu";
                        enable-method = "brcm,brahma-b15";
                        compatible = "brcm,brahma-b15", "arm,cortex-a15";
                        reg = <0x2>;
                };

                cpu@3 {
                        device_type = "cpu";
                        enable-method = "brcm,brahma-b15";
                        compatible = "brcm,brahma-b15", "arm,cortex-a15";
                        reg = <0x3>;
                };
        };

        timer {
                compatible = "arm,cortex-a15-timer", "arm,armv7-timer";
                interrupts = <0x1 0xd 0xf08 0x1 0xe 0xf08 0x1 0xb 0xf08 0x1 0xa 0xf08>;
                always-on;
        };

        bolt {
        };

        interrupt-controller@ffd00000 {
                compatible = "arm,cortex-a15-gic";
                interrupt-controller;
                #interrupt-cells = <0x3>;
                reg = <0x0 0xffd01000 0x0 0x1000 0x0 0xffd02000 0x0 0x2000>;
                reg-names = "dist", "cpu";
                linux,phandle = <0x1>;
                phandle = <0x1>;
        };

        reboot {
                compatible = "brcm,brcmstb-reboot";
                syscon = <0x2 0x304 0x308>;
        };

        smpboot {
                compatible = "brcm,brcmstb-smpboot";
                syscon-cpu = <0x3 0x88 0x178>;
                syscon-cont = <0x4>;
        };

        pmu {
                compatible = "arm,cortex-a15-pmu", "arm,cortex-a9-pmu";
                interrupts = <0x0 0x85 0xf04 0x0 0x86 0xf04 0x0 0x87 0xf04 0x0 0x88 0xf04>;
                interrupt-names = "cpu_pmuirq_0", "cpu_pmuirq_1", "cpu_pmuirq_2", "cpu_pmuirq_3";
        };

        nexus-wakeups {
                interrupts = <0x2 0x5 0xc>;
                interrupt-parent = <0x5>;
                interrupt-names = "kpd", "gpio", "xpt_pmu";
        };

        nexus-irq0 {
                interrupts = <0x9 0x6 0x7 0x8 0x3 0x0 0x1 0x2 0x4 0x5>;
                interrupt-parent = <0x6>;
                interrupt-names = "gio", "iica", "iicd", "iice", "ua", "uarta", "uartb", "uartc", "ub", "uc";
        };

        nexus-irq0_aon {
                interrupts = <0x1 0x0 0x2 0x3>;
                interrupt-parent = <0x7>;
                interrupt-names = "gio", "iicb", "ldk", "spi";
        };

        pcie0: pcie@f1080000 {
                ranges = <0x2000000 0x0 0xc0000000 0x0 0xc0000000 0x0 0x8000000>;
                brcm,log2-scb-sizes = <0x1e>;
                reg = <0x0 0xf1080000 0x0 0x9314>;
                interrupts = <0x0 0x0 0x4>;
                compatible = "brcm,pci-plat-dev";
                #address-cells = <0x3>;
                #size-cells = <0x2>;
                tot-num-pcie = <0x3>;
                #interrupt-cells = <0x1>;
                interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
                interrupt-map = <0x0 0x0 0x0 0x1 0x1 0x2b 0x3 0x0 0x0 0x0 0x2 0x1 0x2c 0x3 0x0 0x0 0x0 0x3 0x1 0x2d 0x3 0x0 0x0 0x0 0x4 0x1 0x2e 0x3>;
                interrupt-names = "pcie0_inta", "pcie0_intb", "pcie0_intc", "pcie0_intd";
        };

        aliases {
                pcie0 = "/pcie@f1080000";
                pcie1 = "/pcie@f1090000";
                pcie2 = "/pcie@f10c0000";
                serial0 = "/rdb/serial@f040a900";
                serial1 = "/rdb/serial@f040a940";
                serial2 = "/rdb/serial@f040a980";
                serial_rg = "/rdb/serial@d3881800";
                usbphy0 = "/rdb/usb-phy@f1000200";
                ehci0_0 = "/rdb/ehci_v2@f1000300";
                ohci0_0 = "/rdb/ohci_v2@f1000400";
                xhci0_0 = "/rdb/xhci_v2@f1001000";
                usbphy1 = "/rdb/usb-phy@f1010200";
                ehci1_0 = "/rdb/ehci_v2@f1010300";
                ohci1_0 = "/rdb/ohci_v2@f1010400";
                xhci1_0 = "/rdb/xhci_v2@f1011000";
                bdc1_0 = "/rdb/bdc_v2@f1012000";
                usb0 = "/rdb/usb@f1000200";
                usb1 = "/rdb/usb@f1010200";
                sdhci0 = "/rdb/sdhci@f04a0100";
                sdhci1 = "/rdb/sdhci@f04a0300";
                cpuclkdiv0 = "/rdb/cpu-clk-div@0";
                watchdog0 = "/rdb/watchdog@f040a128";
                watchdog1 = "/rdb/watchdog@f10b0928";
                watchdog2 = "/rdb/watchdog@f040a200";
                bsp = "/rdb/bsp@f032c800";
        };

        pcie1: pcie@f1090000 {
                ranges = <0x2000000 0x0 0xc8000000 0x0 0xc8000000 0x0 0x4000000>;
                brcm,log2-scb-sizes = <0x1e>;
                reg = <0x0 0xf1090000 0x0 0x9314>;
                interrupts = <0x0 0x0 0x4>;
                compatible = "brcm,pci-plat-dev";
                #address-cells = <0x3>;
                #size-cells = <0x2>;
                tot-num-pcie = <0x3>;
                #interrupt-cells = <0x1>;
                interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
                interrupt-map = <0x0 0x0 0x0 0x1 0x1 0x32 0x3 0x0 0x0 0x0 0x2 0x1 0x33 0x3 0x0 0x0 0x0 0x3 0x1 0x34 0x3 0x0 0x0 0x0 0x4 0x1 0x35 0x3>;
                interrupt-names = "pcie1_inta", "pcie1_intb", "pcie1_intc", "pcie1_intd";
        };

        pcie2: pcie@f10c0000 {
                ranges = <0x2000000 0x0 0xcc000000 0x0 0xcc000000 0x0 0x4000000>;
                brcm,log2-scb-sizes = <0x1e>;
                reg = <0x0 0xf10c0000 0x0 0x9314>;
                interrupts = <0x0 0x0 0x4>;
                compatible = "brcm,pci-plat-dev";
                #address-cells = <0x3>;
                #size-cells = <0x2>;
                tot-num-pcie = <0x3>;
                #interrupt-cells = <0x1>;
                interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
                interrupt-map = <0x0 0x0 0x0 0x1 0x1 0x59 0x3 0x0 0x0 0x0 0x2 0x1 0x5a 0x3 0x0 0x0 0x0 0x3 0x1 0x5b 0x3 0x0 0x0 0x0 0x4 0x1 0x5c 0x3>;
                interrupt-names = "pcie2_inta", "pcie2_intb", "pcie2_intc", "pcie2_intd";
        };

        rdb {
                #address-cells = <0x1>;
                #size-cells = <0x1>;
                compatible = "simple-bus";
                ranges = <0x0 0x0 0x0 0xffffffff>;

                serial@f040a900 {
                        clock-frequency = <0x4d3f640>;
                        compatible = "ns16550a";
                        reg-io-width = <0x4>;
                        reg-shift = <0x2>;
                        reg = <0xf040a900 0x24>;
                        interrupts = <0x0 0x4c 0x4>;
                        interrupt-names = "upg_uart0";
                        current-speed = <0x1c200>;
                };

                serial@f040a940 {
                        clock-frequency = <0x4d3f640>;
                        compatible = "ns16550a";
                        reg-io-width = <0x4>;
                        reg-shift = <0x2>;
                        reg = <0xf040a940 0x24>;
                        interrupts = <0x0 0x4d 0x4>;
                        interrupt-names = "upg_uart1";
                };

                serial@f040a980 {
                        clock-frequency = <0x4d3f640>;
                        compatible = "ns16550a";
                        reg-io-width = <0x4>;
                        reg-shift = <0x2>;
                        reg = <0xf040a980 0x24>;
                        interrupts = <0x0 0x4e 0x4>;
                        interrupt-names = "upg_uart2";
                };

                serial@d3881800 {
                        clock-frequency = <0x4d3f640>;
                        compatible = "ns16550a";
                        reg-io-width = <0x4>;
                        reg-shift = <0x2>;
                        reg = <0xd3881800 0x24>;
                        interrupts = <0x0 0x4f 0x4>;
                        interrupt-names = "uart_rg";
                };

                usb-phy@f1000200 {
                        reg = <0xf1000200 0x104>;
                        #address-cells = <0x1>;
                        #size-cells = <0x1>;
                        compatible = "brcm,usb-phy";
                        ioc = <0x1>;
                        ipp = <0x1>;
                        #phy-cells = <0x0>;
                        ranges;
                        has_xhci;
                        linux,phandle = <0x8>;
                        phandle = <0x8>;
                };

                ehci_v2@f1000300 {
                        compatible = "brcm,ehci-brcm-v2";
                        reg = <0xf1000300 0xac>;
                        interrupts = <0x0 0x51 0x0>;
                        interrupt-names = "usb0_ehci_0";
                        phys = <0x8 0x0>;
                        phy-names = "usbphy";
                };

                ohci_v2@f1000400 {
                        compatible = "brcm,ohci-brcm-v2";
                        reg = <0xf1000400 0x5c>;
                        interrupts = <0x0 0x53 0x0>;
                        interrupt-names = "usb0_ohci_0";
                        phys = <0x8 0x0>;
                        phy-names = "usbphy";
                };

                xhci_v2@f1001000 {
                        compatible = "brcm,xhci-brcm-v2";
                        reg = <0xf1001000 0x1004>;
                        interrupts = <0x0 0x55 0x0>;
                        interrupt-names = "usb0_xhci_0";
                        phys = <0x8 0x1>;
                        phy-names = "usbphy";
                };

                usb-phy@f1010200 {
                        reg = <0xf1010200 0x104>;
                        #address-cells = <0x1>;
                        #size-cells = <0x1>;
                        compatible = "brcm,usb-phy";
                        ioc = <0x1>;
                        ipp = <0x1>;
                        #phy-cells = <0x0>;
                        ranges;
                        has_xhci;
                        linux,phandle = <0x9>;
                        phandle = <0x9>;
                };

                ehci_v2@f1010300 {
                        compatible = "brcm,ehci-brcm-v2";
                        reg = <0xf1010300 0xac>;
                        interrupts = <0x0 0x52 0x0>;
                        interrupt-names = "usb1_ehci_0";
                        phys = <0x9 0x0>;
                        phy-names = "usbphy";
                };

                ohci_v2@f1010400 {
                        compatible = "brcm,ohci-brcm-v2";
                        reg = <0xf1010400 0x5c>;
                        interrupts = <0x0 0x54 0x0>;
                        interrupt-names = "usb1_ohci_0";
                        phys = <0x9 0x0>;
                        phy-names = "usbphy";
                };

                xhci_v2@f1011000 {
                        compatible = "brcm,xhci-brcm-v2";
                        reg = <0xf1011000 0x1004>;
                        interrupts = <0x0 0x56 0x0>;
                        interrupt-names = "usb1_xhci_0";
                        phys = <0x9 0x1>;
                        phy-names = "usbphy";
                };

                bdc_v2@f1012000 {
                        status = "disabled";
                        compatible = "brcm,bdc-udc-v2";
                        reg = <0xf1012000 0xfc8>;
                        interrupts = <0x0 0x57 0x0>;
                        interrupt-names = "usb1_usbd";
                        phys = <0x9 0x0>;
                        phy-names = "usbphy";
                };

                usb@f1000200 {
                        reg = <0xf1000200 0x104>;
                        #address-cells = <0x1>;
                        #size-cells = <0x1>;
                        compatible = "brcm,usb-instance";
                        ioc = <0x1>;
                        ipp = <0x1>;
                        ranges;
                        interrupts-extended = <0x5 0xf>;

                        ehci@f1000300 {
                                compatible = "brcm,ehci-brcm";
                                reg = <0xf1000300 0xac>;
                                interrupts = <0x0 0x51 0x0>;
                                interrupt-names = "usb0_ehci_0";
                        };

                        ohci@f1000400 {
                                compatible = "brcm,ohci-brcm";
                                reg = <0xf1000400 0x5c>;
                                interrupts = <0x0 0x53 0x0>;
                                interrupt-names = "usb0_ohci_0";
                        };

                        xhci@f1001000 {
                                compatible = "xhci-platform";
                                reg = <0xf1001000 0x1004>;
                                interrupts = <0x0 0x55 0x0>;
                                interrupt-names = "usb0_xhci_0";
                        };
                };

                usb@f1010200 {
                        reg = <0xf1010200 0x104>;
                        #address-cells = <0x1>;
                        #size-cells = <0x1>;
                        compatible = "brcm,usb-instance";
                        ioc = <0x1>;
                        ipp = <0x1>;
                        ranges;

                        ehci@f1010300 {
                                compatible = "brcm,ehci-brcm";
                                reg = <0xf1010300 0xac>;
                                interrupts = <0x0 0x52 0x0>;
                                interrupt-names = "usb1_ehci_0";
                        };

                        ohci@f1010400 {
                                compatible = "brcm,ohci-brcm";
                                reg = <0xf1010400 0x5c>;
                                interrupts = <0x0 0x54 0x0>;
                                interrupt-names = "usb1_ohci_0";
                        };

                        xhci@f1011000 {
                                compatible = "xhci-platform";
                                reg = <0xf1011000 0x1004>;
                                interrupts = <0x0 0x56 0x0>;
                                interrupt-names = "usb1_xhci_0";
                        };

                        bdc@f1012000 {
                                status = "disabled";
                                compatible = "brcm,bdc-udc-v0.16", "brcm,bdc-udc";
                                reg = <0xf1012000 0xfc8>;
                                interrupts = <0x0 0x57 0x0>;
                                interrupt-names = "usb1_usbd";
                        };
                };

                upg_gpio: gpio@f040a000 {
                        #gpio-cells = <0x2>;
                        #interrupt-cells = <0x2>;
                        compatible = "brcm,bcm3390-gpio", "brcm,brcmstb-gpio";
                        gpio-controller;
                        interrupt-controller;
                        reg = <0xf040a000 0xa4>;
                        interrupts = <0x9>;
                        interrupt-parent = <&upg_intc>;
                        interrupt-names = "upg_gio";
                        brcm,gpio-bank-widths = <0x20 0x20 0x20 0x7 0x6>;
                };

                upg_aon_gpio: gpio@f0417000 {
                        #gpio-cells = <0x2>;
                        #interrupt-cells = <0x2>;
                        compatible = "brcm,bcm3390-gpio", "brcm,brcmstb-gpio";
                        gpio-controller;
                        interrupt-controller;
                        reg = <0xf0417000 0x44>;
                        interrupts = <0x1>;
                        interrupt-parent = <&upg_aon_intc>;
                        interrupt-names = "upg_gio_aon";
                        brcm,gpio-bank-widths = <0x14 0x2>;
                };

                sdhci@f04a0100 {
                        compatible = "brcm,sdhci-brcmstb";
                        reg = <0xf04a0000 0x104 0xf04a0100 0x104>;
                        reg-names = "host", "cfg";
                        interrupts = <0x0 0x23 0x0>;
                        interrupt-names = "sdio0_0";
                        sdhci,auto-cmd12;
                };

                sdhci@f04a0300 {
                        compatible = "brcm,sdhci-brcmstb";
                        reg = <0xf04a0200 0x104 0xf04a0300 0x104>;
                        reg-names = "host", "cfg";
                        interrupts = <0x0 0x24 0x0>;
                        interrupt-names = "sdio1_0";
                        sdhci,auto-cmd12;
                };

                cpupll@0 {
                        #clock-cells = <0x0>;
                        clock-frequency = <0x5995f5c0>;
                        compatible = "fixed-clock";
                        linux,phandle = <0xa>;
                        phandle = <0xa>;
                };

                cpu-clk-div@0 {
                        #clock-cells = <0x0>;
                        clocks = <0xa>;
                        compatible = "brcm,brcmstb-cpu-clk-div";
                        reg = <0xf04a257c 0x4>;
                        div-table = <0x0 0x1>;
                        div-shift-width = <0x0 0x5>;
                };

                interrupt-controller@f0403000 {
                        #interrupt-cells = <0x1>;
                        compatible = "brcm,l2-intc";
                        interrupt-parent = <0x1>;
                        reg = <0xf0403000 0x4c>;
                        interrupt-controller;
                        interrupts = <0x0 0x3f 0x0>;
                        interrupt-names = "sys";
                        linux,phandle = <0xb>;
                        phandle = <0xb>;
                };

                interrupt-controller@f04a1000 {
                        #interrupt-cells = <0x1>;
                        compatible = "brcm,l2-intc";
                        interrupt-parent = <0x1>;
                        reg = <0xf04a1000 0x34>;
                        interrupt-controller;
                        interrupts = <0x0 0x1f 0x0>;
                        interrupt-names = "hif";
                        linux,phandle = <0xd>;
                        phandle = <0xd>;
                };

                interrupt-controller@f0410640 {
                        #interrupt-cells = <0x1>;
                        compatible = "brcm,l2-intc";
                        interrupt-parent = <0x1>;
                        reg = <0xf0410640 0x34>;
                        interrupt-controller;
                        interrupts = <0x0 0x41 0x0>;
                        interrupt-names = "sys_pm";
                        brcm,irq-can-wake;
                        linux,phandle = <0x5>;
                        phandle = <0x5>;
                };

                interrupt-controller@f0431200 {
                        #interrupt-cells = <0x1>;
                        compatible = "brcm,l2-intc";
                        interrupt-parent = <0x1>;
                        reg = <0xf0431200 0x4c>;
                        interrupt-controller;
                        interrupts = <0x0 0x12 0x0>;
                        interrupt-names = "avs";
                        linux,phandle = <0xc>;
                        phandle = <0xc>;
                };

                gisb-arb@f0400000 {
                        compatible = "brcm,gisb-arb";
                        reg = <0xf0400000 0x804>;
                        interrupts = <0x0 0x2>;
                        interrupt-parent = <0xb>;
                        interrupt-names = "gisb_timeout", "gisb_tea";
                        brcm,gisb-arb-master-mask = <0x7980343>;
                        brcm,gisb-arb-master-names = "bsp_0", "scpu_0", "cpu_0", "jtag_0", "ssp_0", "pcie_0", "pcie_1", "bbsi_spi", "rg_cpu_0", "pcie_2", "u2g";
                };

                waketimer@f0417480 {
                        compatible = "brcm,brcmstb-waketimer";
                        reg = <0xf0417480 0x18>;
                        interrupts = <0x3>;
                        interrupt-parent = <0x5>;
                        interrupt-names = "timer";
                };

                thermal@f0431500 {
                        #thermal-sensor-cells = <0x0>;
                        compatible = "brcm,avs-tmon-bcm7445", "brcm,avs-tmon";
                        reg = <0xf0431500 0x2c>;
                        interrupts = <0xe>;
                        interrupt-parent = <0xc>;
                        interrupt-names = "tmon";
                        linux,phandle = <0xe>;
                        phandle = <0xe>;
                };

                sram@ffe00000 {
                        compatible = "brcm,boot-sram", "mmio-sram";
                        reg = <0xffe00000 0x10000>;
                };

                aon-ctrl@f0410000 {
                        compatible = "brcm,brcmstb-aon-ctrl";
                        reg = <0xf0410000 0x200 0xf0410200 0x400>;
                        reg-names = "aon-ctrl", "aon-sram";
                };

                memory_controllers {
                        ranges;
                        compatible = "simple-bus";
                        #address-cells = <0x1>;
                        #size-cells = <0x1>;

                        memc@0 {
                                #address-cells = <0x1>;
                                #size-cells = <0x1>;
                                compatible = "brcm,brcmstb-memc", "simple-bus";
                                ranges;

                                ddr-phy@f1504000 {
                                        compatible = "brcm,brcmstb-ddr-phy-v240.4";
                                        reg = <0xf1504000 0x220>;
                                };
                        };
                };

                spi@f04a3400 {
                        #address-cells = <0x1>;
                        #size-cells = <0x0>;
                        compatible = "brcm,spi-brcmstb";
                        status = "disabled";
                        reg = <0xf04a3400 0x18c 0xf04a3200 0x54 0xf04a3300 0x28>;
                        reg-names = "hif_mspi", "bspi", "bspi_raf";
                        interrupts = <0x0 0x20 0x0>;
                        interrupt-names = "hif_spi";
                };

                nand@f04a2800 {
                        #address-cells = <0x1>;
                        #size-cells = <0x0>;
                        compatible = "brcm,brcmnand-v7.1", "brcm,brcmnand";
                        reg-names = "nand", "flash-dma";
                        status = "disabled";
                        reg = <0xf04a2800 0x604 0xf04a3000 0x30>;
                        interrupts = <0x18 0x4>;
                        interrupt-parent = <0xd>;
                        interrupt-names = "nand_ctlrdy", "flash_dma_done";
                };

                rf4ce@f0e00000 {
                        #address-cells = <0x1>;
                        #size-cells = <0x1>;
                        compatible = "brcm,rf4ce-v0", "brcm,rf4ce";
                        reg = <0xf0e00000 0x80a34>;
                        interrupt-names = "rf4ce", "rf4ce_aon";
                        interrupts-extended = <0x1 0x0 0x83 0x0 0x5 0x6>;
                };

                syscon@f0404000 {
                        compatible = "brcm,brcmstb-sun-top-ctrl", "syscon";
                        reg = <0xf0404000 0x534>;
                        linux,phandle = <0x2>;
                        phandle = <0x2>;
                };

                syscon@f04a2400 {
                        compatible = "brcm,brcmstb-cpu-biu-ctrl", "syscon";
                        reg = <0xf04a2400 0x404>;
                        linux,phandle = <0x3>;
                        phandle = <0x3>;
                };

                syscon@f0450000 {
                        compatible = "brcm,brcmstb-hif-continuation", "syscon";
                        reg = <0xf0450000 0x104>;
                        linux,phandle = <0x4>;
                        phandle = <0x4>;
                };

                syscon@f0404100 {
                        compatible = "brcm,brcmstb-sun-top-ctrl-pin-mux-ctrl", "syscon";
                        reg = <0xf0404100 0x40>;
                        linux,phandle = <0xf>;
                        phandle = <0xf>;
                };

                syscon@f0404140 {
                        compatible = "brcm,brcmstb-sun-top-ctrl-pin-mux-pad-ctrl", "syscon";
                        reg = <0xf0404140 0x28>;
                        linux,phandle = <0x10>;
                        phandle = <0x10>;
                };

                syscon@f0410700 {
                        compatible = "brcm,brcmstb-aon-pin-ctrl-pin-mux-ctrl", "syscon";
                        reg = <0xf0410700 0xc>;
                        linux,phandle = <0x11>;
                        phandle = <0x11>;
                };

                syscon@f041070c {
                        compatible = "brcm,brcmstb-aon-pin-ctrl-pad-mux-ctrl", "syscon";
                        reg = <0xf041070c 0x8>;
                        linux,phandle = <0x12>;
                        phandle = <0x12>;
                };

                syscon@f1501004 {
                        compatible = "brcm,brcmstb-memc-arb-0-client-info", "syscon";
                        reg = <0xf1501004 0x400>;
                        linux,phandle = <0x13>;
                        phandle = <0x13>;
                };

                syscon@f0404080 {
                        compatible = "brcm,brcmstb-sun-top-ctrl-general-ctrl-0", "syscon";
                        reg = <0xf0404080 0x4>;
                        linux,phandle = <0x14>;
                        phandle = <0x14>;
                };

                syscon@f04040a4 {
                        compatible = "brcm,brcmstb-sun-top-ctrl-general-ctrl-no-scan-0", "syscon";
                        reg = <0xf04040a4 0x4>;
                        linux,phandle = <0x15>;
                        phandle = <0x15>;
                };

                syscon@f04a0154 {
                        compatible = "brcm,brcmstb-sdio-0-cfg-sd-pin-sel", "syscon";
                        reg = <0xf04a0154 0x4>;
                        linux,phandle = <0x16>;
                        phandle = <0x16>;
                };

                syscon@f04a0354 {
                        compatible = "brcm,brcmstb-sdio-1-cfg-sd-pin-sel", "syscon";
                        reg = <0xf04a0354 0x4>;
                        linux,phandle = <0x17>;
                        phandle = <0x17>;
                };

                syscon@f04a0400 {
                        compatible = "brcm,brcmstb-sdio-1-boot-main-ctl", "syscon";
                        reg = <0xf04a0400 0x4>;
                        linux,phandle = <0x18>;
                        phandle = <0x18>;
                };

                upg_intc: interrupt-controller@f040a600 {
                        #interrupt-cells = <0x1>;
                        compatible = "brcm,bcm7120-l2-intc";
                        interrupt-parent = <0x1>;
                        reg = <0xf040a600 0xc>;
                        interrupt-controller;
                        interrupts = <0x0 0x46 0x0 0x0 0x44 0x0>;
                        interrupt-names = "upg_main", "upg_bsc";
                        brcm,int-map-mask = <0x3b8 0x40>;
                        brcm,int-fwd-mask = <0x7>;
                        linux,phandle = <0x6>;
                        phandle = <0x6>;
                };

                upg_aon_intc: interrupt-controller@f0417200 {
                        #interrupt-cells = <0x1>;
                        compatible = "brcm,bcm7120-l2-intc";
                        interrupt-parent = <0x1>;
                        reg = <0xf0417200 0xc>;
                        interrupt-controller;
                        interrupts = <0x0 0x47 0x0 0x0 0x45 0x0 0x0 0x4a 0x0>;
                        interrupt-names = "upg_main_aon", "upg_bsc_aon", "upg_spi";
                        brcm,int-map-mask = <0x6 0x1 0x8>;
                        brcm,int-fwd-mask = <0x0>;
                        brcm,irq-can-wake;
                        linux,phandle = <0x7>;
                        phandle = <0x7>;
                };

                watchdog@f040a128 {
                        clock-frequency = <0x19bfcc0>;
                        compatible = "brcm,bcm7038-wdt";
                        reg = <0xf040a128 0x14>;
                };

                watchdog@f10b0928 {
                        clock-frequency = <0x19bfcc0>;
                        compatible = "brcm,bcm7038-wdt";
                        reg = <0xf10b0928 0x14>;
                };

                watchdog@f040a200 {
                        clock-frequency = <0x19bfcc0>;
                        compatible = "brcm,bcm7038-wdt";
                        reg = <0xf040a200 0x10>;
                };

                bsp@f032c800 {
                        #address-cells = <0x1>;
                        #size-cells = <0x1>;
                        compatible = "brcm,bsp";
                        reg = <0xf032c800 0x3804>;
                        ranges;
                };

                spi@f0416000 {
                        #address-cells = <0x1>;
                        #size-cells = <0x0>;
                        clock-frequency = <0x19bfcc0>;
                        compatible = "brcm,spi-brcmstb-mspi";
                        reg = <0xf0416000 0x184>;
                        reg-names = "mspi";
                        interrupts = <0x3>;
                        interrupt-parent = <0x7>;
                        interrupt-names = "mspi_done";
                };

                pwm0: pwm@f0408000 {
                        #pwm-cells = <0x2>;
                        clocks = <&upg_fixed>;
                        compatible = "brcm,bcm7038-pwm", "brcm,brcmstb-pwm";
                        reg = <0xf0408000 0x2c>;
                };

                pwm1: pwm@f0409000 {
                        #pwm-cells = <0x2>;
                        clocks = <&upg_fixed>;
                        compatible = "brcm,bcm7038-pwm", "brcm,brcmstb-pwm";
                        reg = <0xf0409000 0x2c>;
                };

/* Mel, 20160128, Support pininit when kernel boot up */
                per_gpio: gpio@d3c00500 {
                        #gpio-cells = <0x2>;
                        compatible = "brcm,bcm3390-per-gpio", "brcm,brcmcm-gpio";
                        gpio-controller;
                        reg = <0xd3c00500 0x84>;
                        brcm,gpio-bank-widths = <32 32 32 32 32 32 32 32 32 32>;
                };

                pininit: pininit {
                        compatible = "brcm,pininit";
                        /* 3rd value: 0=active_hi, 1=active_lo */
                        output-gpios =  <&per_gpio 34 0>,        /* 42722 control */
                                        <&per_gpio  0 1>,        /* Power LED */
                                        <&per_gpio  5 1>,        /* DS Green LED */
                                        <&per_gpio  6 1>,        /* DS Amber LED */
                                        <&per_gpio  2 1>,        /* US Green LED */
                                        <&per_gpio  7 1>,        /* US Amber LED */
                                        <&per_gpio  3 1>,        /* Internet Green LED */
                                        <&per_gpio  4 1>;        /* Internet Amber LED */
                        /* logical (active/inactive, not hi/lo) value, must be 1-1 with output-gpios */
                        output-initval = < 0                     /* 42722 control */
                                           1                     /* Power LED */
                                           0                     /* DS Green LED */
                                           0                     /* DS Amber LED */
                                           0                     /* US Green LED */
                                           0                     /* US Amber LED */
                                           0                     /* Internet Green LED */
                                           0 >;                  /* Internet Amber LED */
                };
/* Mel, 20160128, End */

        };

        thermal-zones {

                cpu-thermal {
                        polling-delay = <0x0>;
                        polling-delay-passive = <0x0>;
                        thermal-sensors = <0xe>;

                        trips {

                                cpu-alert0 {
                                        temperature = <0x17318>;
                                        hysteresis = <0x2710>;
                                        type = "passive";
                                };

                                cpu-alert1 {
                                        temperature = <0x1adb0>;
                                        hysteresis = <0x2710>;
                                        type = "passive";
                                };

                                cpu-alert2 {
                                        temperature = <0x1e848>;
                                        hysteresis = <0x2710>;
                                        type = "passive";
                                };
                        };
                };
        };

        s3 {
                syscon-refs = <0xf 0x10 0x11 0x12 0x13 0x14 0x15 0x16 0x17 0x18>;
        };
};