// SPDX-License-Identifier: GPL-2.0-or-later 
 | 
/* 
 | 
 * P1021 MDS Device Tree Source 
 | 
 * 
 | 
 * Copyright 2010,2012 Freescale Semiconductor Inc. 
 | 
 */ 
 | 
  
 | 
/include/ "p1021si-pre.dtsi" 
 | 
/ { 
 | 
    model = "fsl,P1021"; 
 | 
    compatible = "fsl,P1021MDS"; 
 | 
  
 | 
    aliases { 
 | 
        ethernet3 = &enet3; 
 | 
        ethernet4 = &enet4; 
 | 
    }; 
 | 
  
 | 
    memory { 
 | 
        device_type = "memory"; 
 | 
    }; 
 | 
  
 | 
    lbc: localbus@ffe05000 { 
 | 
        reg = <0x0 0xffe05000 0x0 0x1000>; 
 | 
  
 | 
        /* NAND Flash, BCSR, PMC0/1*/ 
 | 
        ranges = <0x0 0x0 0x0 0xfc000000 0x02000000 
 | 
              0x1 0x0 0x0 0xf8000000 0x00008000 
 | 
              0x2 0x0 0x0 0xf8010000 0x00020000 
 | 
              0x3 0x0 0x0 0xf8020000 0x00020000>; 
 | 
  
 | 
        nand@0,0 { 
 | 
            #address-cells = <1>; 
 | 
            #size-cells = <1>; 
 | 
            compatible = "fsl,p1021-fcm-nand", 
 | 
                     "fsl,elbc-fcm-nand"; 
 | 
            reg = <0x0 0x0 0x40000>; 
 | 
  
 | 
            partition@0 { 
 | 
                /* This location must not be altered  */ 
 | 
                /* 1MB for u-boot Bootloader Image */ 
 | 
                reg = <0x0 0x00100000>; 
 | 
                label = "NAND (RO) U-Boot Image"; 
 | 
                read-only; 
 | 
            }; 
 | 
  
 | 
            partition@100000 { 
 | 
                /* 1MB for DTB Image */ 
 | 
                reg = <0x00100000 0x00100000>; 
 | 
                label = "NAND (RO) DTB Image"; 
 | 
                read-only; 
 | 
            }; 
 | 
  
 | 
            partition@200000 { 
 | 
                /* 4MB for Linux Kernel Image */ 
 | 
                reg = <0x00200000 0x00400000>; 
 | 
                label = "NAND (RO) Linux Kernel Image"; 
 | 
                read-only; 
 | 
            }; 
 | 
  
 | 
            partition@600000 { 
 | 
                /* 5MB for Compressed Root file System Image */ 
 | 
                reg = <0x00600000 0x00500000>; 
 | 
                label = "NAND (RO) Compressed RFS Image"; 
 | 
                read-only; 
 | 
            }; 
 | 
  
 | 
            partition@b00000 { 
 | 
                /* 6MB for JFFS2 based Root file System */ 
 | 
                reg = <0x00a00000 0x00600000>; 
 | 
                label = "NAND (RW) JFFS2 Root File System"; 
 | 
            }; 
 | 
  
 | 
            partition@1100000 { 
 | 
                /* 14MB for JFFS2 based Root file System */ 
 | 
                reg = <0x01100000 0x00e00000>; 
 | 
                label = "NAND (RW) Writable User area"; 
 | 
            }; 
 | 
  
 | 
            partition@1f00000 { 
 | 
                /* 1MB for microcode */ 
 | 
                reg = <0x01f00000 0x00100000>; 
 | 
                label = "NAND (RO) QE Ucode"; 
 | 
                read-only; 
 | 
            }; 
 | 
        }; 
 | 
  
 | 
        bcsr@1,0 { 
 | 
            #address-cells = <1>; 
 | 
            #size-cells = <1>; 
 | 
            compatible = "fsl,p1021mds-bcsr"; 
 | 
            reg = <1 0 0x8000>; 
 | 
            ranges = <0 1 0 0x8000>; 
 | 
        }; 
 | 
  
 | 
        pib@2,0 { 
 | 
            compatible = "fsl,p1021mds-pib"; 
 | 
            reg = <2 0 0x10000>; 
 | 
        }; 
 | 
  
 | 
        pib@3,0 { 
 | 
            compatible = "fsl,p1021mds-pib"; 
 | 
            reg = <3 0 0x10000>; 
 | 
        }; 
 | 
    }; 
 | 
  
 | 
    soc: soc@ffe00000 { 
 | 
        compatible = "fsl,p1021-immr", "simple-bus"; 
 | 
        ranges = <0x0 0x0 0xffe00000 0x100000>; 
 | 
  
 | 
        i2c@3000 { 
 | 
            rtc@68 { 
 | 
                compatible = "dallas,ds1374"; 
 | 
                reg = <0x68>; 
 | 
            }; 
 | 
        }; 
 | 
  
 | 
        spi@7000 { 
 | 
  
 | 
            flash@0 { 
 | 
                #address-cells = <1>; 
 | 
                #size-cells = <1>; 
 | 
                compatible = "spansion,s25sl12801", "jedec,spi-nor"; 
 | 
                reg = <0>; 
 | 
                spi-max-frequency = <40000000>; /* input clock */ 
 | 
  
 | 
                partition@u-boot { 
 | 
                    label = "u-boot-spi"; 
 | 
                    reg = <0x00000000 0x00100000>; 
 | 
                    read-only; 
 | 
                }; 
 | 
                partition@kernel { 
 | 
                    label = "kernel-spi"; 
 | 
                    reg = <0x00100000 0x00500000>; 
 | 
                    read-only; 
 | 
                }; 
 | 
                partition@dtb { 
 | 
                    label = "dtb-spi"; 
 | 
                    reg = <0x00600000 0x00100000>; 
 | 
                    read-only; 
 | 
                }; 
 | 
                partition@fs { 
 | 
                    label = "file system-spi"; 
 | 
                    reg = <0x00700000 0x00900000>; 
 | 
                }; 
 | 
            }; 
 | 
        }; 
 | 
  
 | 
        usb@22000 { 
 | 
            phy_type = "ulpi"; 
 | 
            dr_mode = "host"; 
 | 
        }; 
 | 
  
 | 
        mdio@24000 { 
 | 
            phy0: ethernet-phy@0 { 
 | 
                interrupts = <1 1 0 0>; 
 | 
                reg = <0x0>; 
 | 
            }; 
 | 
            phy1: ethernet-phy@1 { 
 | 
                interrupts = <2 1 0 0>; 
 | 
                reg = <0x1>; 
 | 
            }; 
 | 
            phy4: ethernet-phy@4 { 
 | 
                reg = <0x4>; 
 | 
            }; 
 | 
            tbi-phy@5 { 
 | 
                device_type = "tbi-phy"; 
 | 
                reg = <0x5>; 
 | 
            }; 
 | 
        }; 
 | 
  
 | 
        mdio@25000 { 
 | 
            tbi0: tbi-phy@11 { 
 | 
                reg = <0x11>; 
 | 
                device_type = "tbi-phy"; 
 | 
            }; 
 | 
        }; 
 | 
  
 | 
        ethernet@b0000 { 
 | 
            phy-handle = <&phy0>; 
 | 
            phy-connection-type = "rgmii-id"; 
 | 
        }; 
 | 
  
 | 
        ethernet@b1000 { 
 | 
            phy-handle = <&phy4>; 
 | 
            tbi-handle = <&tbi0>; 
 | 
            phy-connection-type = "sgmii"; 
 | 
        }; 
 | 
  
 | 
        ethernet@b2000 { 
 | 
            phy-handle = <&phy1>; 
 | 
            phy-connection-type = "rgmii-id"; 
 | 
        }; 
 | 
  
 | 
        par_io@e0100 { 
 | 
            #address-cells = <1>; 
 | 
            #size-cells = <1>; 
 | 
            reg = <0xe0100 0x60>; 
 | 
            ranges = <0x0 0xe0100 0x60>; 
 | 
            device_type = "par_io"; 
 | 
            num-ports = <3>; 
 | 
            pio1: ucc_pin@1 { 
 | 
                pio-map = < 
 | 
            /* port  pin  dir  open_drain  assignment  has_irq */ 
 | 
                    0x1  0x13 0x1  0x0  0x1  0x0    /* QE_MUX_MDC */ 
 | 
                    0x1  0x14 0x3  0x0  0x1  0x0    /* QE_MUX_MDIO */ 
 | 
                    0x0  0x17 0x2  0x0  0x2  0x0    /* CLK12 */ 
 | 
                    0x0  0x18 0x2  0x0  0x1  0x0    /* CLK9 */ 
 | 
                    0x0  0x7  0x1  0x0  0x2  0x0    /* ENET1_TXD0_SER1_TXD0 */ 
 | 
                    0x0  0x9  0x1  0x0  0x2  0x0    /* ENET1_TXD1_SER1_TXD1 */ 
 | 
                    0x0  0xb  0x1  0x0  0x2  0x0    /* ENET1_TXD2_SER1_TXD2 */ 
 | 
                    0x0  0xc  0x1  0x0  0x2  0x0    /* ENET1_TXD3_SER1_TXD3 */ 
 | 
                    0x0  0x6  0x2  0x0  0x2  0x0    /* ENET1_RXD0_SER1_RXD0 */ 
 | 
                    0x0  0xa  0x2  0x0  0x2  0x0    /* ENET1_RXD1_SER1_RXD1 */ 
 | 
                    0x0  0xe  0x2  0x0  0x2  0x0    /* ENET1_RXD2_SER1_RXD2 */ 
 | 
                    0x0  0xf  0x2  0x0  0x2  0x0    /* ENET1_RXD3_SER1_RXD3 */ 
 | 
                    0x0  0x5  0x1  0x0  0x2  0x0    /* ENET1_TX_EN_SER1_RTS_B */ 
 | 
                    0x0  0xd  0x1  0x0  0x2  0x0    /* ENET1_TX_ER */ 
 | 
                    0x0  0x4  0x2  0x0  0x2  0x0    /* ENET1_RX_DV_SER1_CTS_B */ 
 | 
                    0x0  0x8  0x2  0x0  0x2  0x0    /* ENET1_RX_ER_SER1_CD_B */ 
 | 
                    0x0  0x11 0x2  0x0  0x2  0x0    /* ENET1_CRS */ 
 | 
                    0x0  0x10 0x2  0x0  0x2  0x0>;    /* ENET1_COL */ 
 | 
            }; 
 | 
  
 | 
            pio2: ucc_pin@2 { 
 | 
                pio-map = < 
 | 
            /* port  pin  dir  open_drain  assignment  has_irq */ 
 | 
                    0x1  0x13 0x1  0x0  0x1  0x0    /* QE_MUX_MDC */ 
 | 
                    0x1  0x14 0x3  0x0  0x1  0x0    /* QE_MUX_MDIO */ 
 | 
                    0x1  0xb  0x2  0x0  0x1  0x0    /* CLK13 */ 
 | 
                    0x1  0x7  0x1  0x0  0x2  0x0    /* ENET5_TXD0_SER5_TXD0 */ 
 | 
                    0x1  0xa  0x1  0x0  0x2  0x0    /* ENET5_TXD1_SER5_TXD1 */ 
 | 
                    0x1  0x6  0x2  0x0  0x2  0x0    /* ENET5_RXD0_SER5_RXD0 */ 
 | 
                    0x1  0x9  0x2  0x0  0x2  0x0    /* ENET5_RXD1_SER5_RXD1 */ 
 | 
                    0x1  0x5  0x1  0x0  0x2  0x0    /* ENET5_TX_EN_SER5_RTS_B */ 
 | 
                    0x1  0x4  0x2  0x0  0x2  0x0    /* ENET5_RX_DV_SER5_CTS_B */ 
 | 
                    0x1  0x8  0x2  0x0  0x2  0x0>;    /* ENET5_RX_ER_SER5_CD_B */ 
 | 
            }; 
 | 
        }; 
 | 
    }; 
 | 
  
 | 
    pci0: pcie@ffe09000 { 
 | 
        reg = <0 0xffe09000 0 0x1000>; 
 | 
        ranges = <0x2000000 0x0 0xa0000000 0 0xa0000000 0x0 0x20000000 
 | 
              0x1000000 0x0 0x00000000 0 0xffc10000 0x0 0x10000>; 
 | 
        pcie@0 { 
 | 
            ranges = <0x2000000 0x0 0xa0000000 
 | 
                  0x2000000 0x0 0xa0000000 
 | 
                  0x0 0x20000000 
 | 
  
 | 
                  0x1000000 0x0 0x0 
 | 
                  0x1000000 0x0 0x0 
 | 
                  0x0 0x100000>; 
 | 
        }; 
 | 
    }; 
 | 
  
 | 
    pci1: pcie@ffe0a000 { 
 | 
        reg = <0 0xffe0a000 0 0x1000>; 
 | 
        ranges = <0x2000000 0x0 0xc0000000 0 0xc0000000 0x0 0x20000000 
 | 
              0x1000000 0x0 0x00000000 0 0xffc20000 0x0 0x10000>; 
 | 
        pcie@0 { 
 | 
            ranges = <0x2000000 0x0 0xc0000000 
 | 
                  0x2000000 0x0 0xc0000000 
 | 
                  0x0 0x20000000 
 | 
  
 | 
                  0x1000000 0x0 0x0 
 | 
                  0x1000000 0x0 0x0 
 | 
                  0x0 0x100000>; 
 | 
        }; 
 | 
    }; 
 | 
  
 | 
    qe: qe@ffe80000 { 
 | 
        ranges = <0x0 0x0 0xffe80000 0x40000>; 
 | 
        reg = <0 0xffe80000 0 0x480>; 
 | 
        brg-frequency = <0>; 
 | 
        bus-frequency = <0>; 
 | 
        status = "disabled"; /* no firmware loaded */ 
 | 
  
 | 
        enet3: ucc@2000 { 
 | 
            device_type = "network"; 
 | 
            compatible = "ucc_geth"; 
 | 
            local-mac-address = [ 00 00 00 00 00 00 ]; 
 | 
            rx-clock-name = "clk12"; 
 | 
            tx-clock-name = "clk9"; 
 | 
            pio-handle = <&pio1>; 
 | 
            phy-handle = <&qe_phy0>; 
 | 
            phy-connection-type = "mii"; 
 | 
        }; 
 | 
  
 | 
        mdio@2120 { 
 | 
            qe_phy0: ethernet-phy@0 { 
 | 
                interrupt-parent = <&mpic>; 
 | 
                interrupts = <4 1 0 0>; 
 | 
                reg = <0x0>; 
 | 
            }; 
 | 
            qe_phy1: ethernet-phy@3 { 
 | 
                interrupt-parent = <&mpic>; 
 | 
                interrupts = <5 1 0 0>; 
 | 
                reg = <0x3>; 
 | 
            }; 
 | 
            tbi-phy@11 { 
 | 
                reg = <0x11>; 
 | 
                device_type = "tbi-phy"; 
 | 
            }; 
 | 
        }; 
 | 
  
 | 
        enet4: ucc@2400 { 
 | 
            device_type = "network"; 
 | 
            compatible = "ucc_geth"; 
 | 
            local-mac-address = [ 00 00 00 00 00 00 ]; 
 | 
            rx-clock-name = "none"; 
 | 
            tx-clock-name = "clk13"; 
 | 
            pio-handle = <&pio2>; 
 | 
            phy-handle = <&qe_phy1>; 
 | 
            phy-connection-type = "rmii"; 
 | 
        }; 
 | 
    }; 
 | 
}; 
 | 
  
 | 
/include/ "p1021si-post.dtsi" 
 |