162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-or-later 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Analogue & Micro ASP8347 Device Tree Source 462306a36Sopenharmony_ci * 562306a36Sopenharmony_ci * Copyright 2008 Codehermit 662306a36Sopenharmony_ci */ 762306a36Sopenharmony_ci 862306a36Sopenharmony_ci/dts-v1/; 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ci/ { 1162306a36Sopenharmony_ci model = "Analogue & Micro ASP8347E"; 1262306a36Sopenharmony_ci compatible = "analogue-and-micro,asp8347e"; 1362306a36Sopenharmony_ci #address-cells = <1>; 1462306a36Sopenharmony_ci #size-cells = <1>; 1562306a36Sopenharmony_ci 1662306a36Sopenharmony_ci aliases { 1762306a36Sopenharmony_ci ethernet0 = &enet0; 1862306a36Sopenharmony_ci ethernet1 = &enet1; 1962306a36Sopenharmony_ci serial0 = &serial0; 2062306a36Sopenharmony_ci serial1 = &serial1; 2162306a36Sopenharmony_ci }; 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ci cpus { 2462306a36Sopenharmony_ci #address-cells = <1>; 2562306a36Sopenharmony_ci #size-cells = <0>; 2662306a36Sopenharmony_ci 2762306a36Sopenharmony_ci PowerPC,8347@0 { 2862306a36Sopenharmony_ci device_type = "cpu"; 2962306a36Sopenharmony_ci reg = <0x0>; 3062306a36Sopenharmony_ci d-cache-line-size = <32>; 3162306a36Sopenharmony_ci i-cache-line-size = <32>; 3262306a36Sopenharmony_ci d-cache-size = <32768>; 3362306a36Sopenharmony_ci i-cache-size = <32768>; 3462306a36Sopenharmony_ci timebase-frequency = <0>; // from bootloader 3562306a36Sopenharmony_ci bus-frequency = <0>; // from bootloader 3662306a36Sopenharmony_ci clock-frequency = <0>; // from bootloader 3762306a36Sopenharmony_ci }; 3862306a36Sopenharmony_ci }; 3962306a36Sopenharmony_ci 4062306a36Sopenharmony_ci memory { 4162306a36Sopenharmony_ci device_type = "memory"; 4262306a36Sopenharmony_ci reg = <0x00000000 0x8000000>; // 128MB at 0 4362306a36Sopenharmony_ci }; 4462306a36Sopenharmony_ci 4562306a36Sopenharmony_ci localbus@ff005000 { 4662306a36Sopenharmony_ci #address-cells = <2>; 4762306a36Sopenharmony_ci #size-cells = <1>; 4862306a36Sopenharmony_ci compatible = "fsl,mpc8347e-localbus", 4962306a36Sopenharmony_ci "fsl,pq2pro-localbus", 5062306a36Sopenharmony_ci "simple-bus"; 5162306a36Sopenharmony_ci reg = <0xff005000 0x1000>; 5262306a36Sopenharmony_ci interrupts = <77 0x8>; 5362306a36Sopenharmony_ci interrupt-parent = <&ipic>; 5462306a36Sopenharmony_ci 5562306a36Sopenharmony_ci ranges = < 5662306a36Sopenharmony_ci 0 0 0xf0000000 0x02000000 5762306a36Sopenharmony_ci >; 5862306a36Sopenharmony_ci 5962306a36Sopenharmony_ci flash@0,0 { 6062306a36Sopenharmony_ci compatible = "cfi-flash"; 6162306a36Sopenharmony_ci reg = <0 0 0x02000000>; 6262306a36Sopenharmony_ci bank-width = <2>; 6362306a36Sopenharmony_ci device-width = <2>; 6462306a36Sopenharmony_ci }; 6562306a36Sopenharmony_ci }; 6662306a36Sopenharmony_ci 6762306a36Sopenharmony_ci soc8349@ff000000 { 6862306a36Sopenharmony_ci #address-cells = <1>; 6962306a36Sopenharmony_ci #size-cells = <1>; 7062306a36Sopenharmony_ci device_type = "soc"; 7162306a36Sopenharmony_ci ranges = <0x0 0xff000000 0x00100000>; 7262306a36Sopenharmony_ci reg = <0xff000000 0x00000200>; 7362306a36Sopenharmony_ci bus-frequency = <0>; 7462306a36Sopenharmony_ci 7562306a36Sopenharmony_ci wdt@200 { 7662306a36Sopenharmony_ci device_type = "watchdog"; 7762306a36Sopenharmony_ci compatible = "mpc83xx_wdt"; 7862306a36Sopenharmony_ci reg = <0x200 0x100>; 7962306a36Sopenharmony_ci }; 8062306a36Sopenharmony_ci 8162306a36Sopenharmony_ci i2c@3000 { 8262306a36Sopenharmony_ci #address-cells = <1>; 8362306a36Sopenharmony_ci #size-cells = <0>; 8462306a36Sopenharmony_ci cell-index = <0>; 8562306a36Sopenharmony_ci compatible = "fsl-i2c"; 8662306a36Sopenharmony_ci reg = <0x3000 0x100>; 8762306a36Sopenharmony_ci interrupts = <14 0x8>; 8862306a36Sopenharmony_ci interrupt-parent = <&ipic>; 8962306a36Sopenharmony_ci dfsrr; 9062306a36Sopenharmony_ci 9162306a36Sopenharmony_ci rtc@68 { 9262306a36Sopenharmony_ci compatible = "dallas,ds1374"; 9362306a36Sopenharmony_ci reg = <0x68>; 9462306a36Sopenharmony_ci }; 9562306a36Sopenharmony_ci }; 9662306a36Sopenharmony_ci 9762306a36Sopenharmony_ci i2c@3100 { 9862306a36Sopenharmony_ci #address-cells = <1>; 9962306a36Sopenharmony_ci #size-cells = <0>; 10062306a36Sopenharmony_ci cell-index = <1>; 10162306a36Sopenharmony_ci compatible = "fsl-i2c"; 10262306a36Sopenharmony_ci reg = <0x3100 0x100>; 10362306a36Sopenharmony_ci interrupts = <15 0x8>; 10462306a36Sopenharmony_ci interrupt-parent = <&ipic>; 10562306a36Sopenharmony_ci dfsrr; 10662306a36Sopenharmony_ci }; 10762306a36Sopenharmony_ci 10862306a36Sopenharmony_ci spi@7000 { 10962306a36Sopenharmony_ci cell-index = <0>; 11062306a36Sopenharmony_ci compatible = "fsl,spi"; 11162306a36Sopenharmony_ci reg = <0x7000 0x1000>; 11262306a36Sopenharmony_ci interrupts = <16 0x8>; 11362306a36Sopenharmony_ci interrupt-parent = <&ipic>; 11462306a36Sopenharmony_ci mode = "cpu"; 11562306a36Sopenharmony_ci }; 11662306a36Sopenharmony_ci 11762306a36Sopenharmony_ci dma@82a8 { 11862306a36Sopenharmony_ci #address-cells = <1>; 11962306a36Sopenharmony_ci #size-cells = <1>; 12062306a36Sopenharmony_ci compatible = "fsl,mpc8347-dma", "fsl,elo-dma"; 12162306a36Sopenharmony_ci reg = <0x82a8 4>; 12262306a36Sopenharmony_ci ranges = <0 0x8100 0x1a8>; 12362306a36Sopenharmony_ci interrupt-parent = <&ipic>; 12462306a36Sopenharmony_ci interrupts = <71 8>; 12562306a36Sopenharmony_ci cell-index = <0>; 12662306a36Sopenharmony_ci dma-channel@0 { 12762306a36Sopenharmony_ci compatible = "fsl,mpc8347-dma-channel", "fsl,elo-dma-channel"; 12862306a36Sopenharmony_ci reg = <0 0x80>; 12962306a36Sopenharmony_ci cell-index = <0>; 13062306a36Sopenharmony_ci interrupt-parent = <&ipic>; 13162306a36Sopenharmony_ci interrupts = <71 8>; 13262306a36Sopenharmony_ci }; 13362306a36Sopenharmony_ci dma-channel@80 { 13462306a36Sopenharmony_ci compatible = "fsl,mpc8347-dma-channel", "fsl,elo-dma-channel"; 13562306a36Sopenharmony_ci reg = <0x80 0x80>; 13662306a36Sopenharmony_ci cell-index = <1>; 13762306a36Sopenharmony_ci interrupt-parent = <&ipic>; 13862306a36Sopenharmony_ci interrupts = <71 8>; 13962306a36Sopenharmony_ci }; 14062306a36Sopenharmony_ci dma-channel@100 { 14162306a36Sopenharmony_ci compatible = "fsl,mpc8347-dma-channel", "fsl,elo-dma-channel"; 14262306a36Sopenharmony_ci reg = <0x100 0x80>; 14362306a36Sopenharmony_ci cell-index = <2>; 14462306a36Sopenharmony_ci interrupt-parent = <&ipic>; 14562306a36Sopenharmony_ci interrupts = <71 8>; 14662306a36Sopenharmony_ci }; 14762306a36Sopenharmony_ci dma-channel@180 { 14862306a36Sopenharmony_ci compatible = "fsl,mpc8347-dma-channel", "fsl,elo-dma-channel"; 14962306a36Sopenharmony_ci reg = <0x180 0x28>; 15062306a36Sopenharmony_ci cell-index = <3>; 15162306a36Sopenharmony_ci interrupt-parent = <&ipic>; 15262306a36Sopenharmony_ci interrupts = <71 8>; 15362306a36Sopenharmony_ci }; 15462306a36Sopenharmony_ci }; 15562306a36Sopenharmony_ci 15662306a36Sopenharmony_ci /* phy type (ULPI or SERIAL) are only types supported for MPH */ 15762306a36Sopenharmony_ci /* port = 0 or 1 */ 15862306a36Sopenharmony_ci usb@22000 { 15962306a36Sopenharmony_ci compatible = "fsl-usb2-mph"; 16062306a36Sopenharmony_ci reg = <0x22000 0x1000>; 16162306a36Sopenharmony_ci #address-cells = <1>; 16262306a36Sopenharmony_ci #size-cells = <0>; 16362306a36Sopenharmony_ci interrupt-parent = <&ipic>; 16462306a36Sopenharmony_ci interrupts = <39 0x8>; 16562306a36Sopenharmony_ci phy_type = "ulpi"; 16662306a36Sopenharmony_ci port0; 16762306a36Sopenharmony_ci }; 16862306a36Sopenharmony_ci /* phy type (ULPI, UTMI, UTMI_WIDE, SERIAL) */ 16962306a36Sopenharmony_ci usb@23000 { 17062306a36Sopenharmony_ci compatible = "fsl-usb2-dr"; 17162306a36Sopenharmony_ci reg = <0x23000 0x1000>; 17262306a36Sopenharmony_ci #address-cells = <1>; 17362306a36Sopenharmony_ci #size-cells = <0>; 17462306a36Sopenharmony_ci interrupt-parent = <&ipic>; 17562306a36Sopenharmony_ci interrupts = <38 0x8>; 17662306a36Sopenharmony_ci dr_mode = "otg"; 17762306a36Sopenharmony_ci phy_type = "ulpi"; 17862306a36Sopenharmony_ci }; 17962306a36Sopenharmony_ci 18062306a36Sopenharmony_ci enet0: ethernet@24000 { 18162306a36Sopenharmony_ci #address-cells = <1>; 18262306a36Sopenharmony_ci #size-cells = <1>; 18362306a36Sopenharmony_ci cell-index = <0>; 18462306a36Sopenharmony_ci device_type = "network"; 18562306a36Sopenharmony_ci model = "TSEC"; 18662306a36Sopenharmony_ci compatible = "gianfar"; 18762306a36Sopenharmony_ci reg = <0x24000 0x1000>; 18862306a36Sopenharmony_ci ranges = <0x0 0x24000 0x1000>; 18962306a36Sopenharmony_ci local-mac-address = [ 00 08 e5 11 32 33 ]; 19062306a36Sopenharmony_ci interrupts = <32 0x8 33 0x8 34 0x8>; 19162306a36Sopenharmony_ci interrupt-parent = <&ipic>; 19262306a36Sopenharmony_ci tbi-handle = <&tbi0>; 19362306a36Sopenharmony_ci phy-handle = <&phy0>; 19462306a36Sopenharmony_ci linux,network-index = <0>; 19562306a36Sopenharmony_ci 19662306a36Sopenharmony_ci mdio@520 { 19762306a36Sopenharmony_ci #address-cells = <1>; 19862306a36Sopenharmony_ci #size-cells = <0>; 19962306a36Sopenharmony_ci compatible = "fsl,gianfar-mdio"; 20062306a36Sopenharmony_ci reg = <0x520 0x20>; 20162306a36Sopenharmony_ci 20262306a36Sopenharmony_ci phy0: ethernet-phy@0 { 20362306a36Sopenharmony_ci interrupt-parent = <&ipic>; 20462306a36Sopenharmony_ci interrupts = <17 0x8>; 20562306a36Sopenharmony_ci reg = <0x1>; 20662306a36Sopenharmony_ci }; 20762306a36Sopenharmony_ci 20862306a36Sopenharmony_ci phy1: ethernet-phy@1 { 20962306a36Sopenharmony_ci interrupt-parent = <&ipic>; 21062306a36Sopenharmony_ci interrupts = <18 0x8>; 21162306a36Sopenharmony_ci reg = <0x2>; 21262306a36Sopenharmony_ci }; 21362306a36Sopenharmony_ci 21462306a36Sopenharmony_ci tbi0: tbi-phy@11 { 21562306a36Sopenharmony_ci reg = <0x11>; 21662306a36Sopenharmony_ci device_type = "tbi-phy"; 21762306a36Sopenharmony_ci }; 21862306a36Sopenharmony_ci }; 21962306a36Sopenharmony_ci }; 22062306a36Sopenharmony_ci 22162306a36Sopenharmony_ci enet1: ethernet@25000 { 22262306a36Sopenharmony_ci #address-cells = <1>; 22362306a36Sopenharmony_ci #size-cells = <1>; 22462306a36Sopenharmony_ci cell-index = <1>; 22562306a36Sopenharmony_ci device_type = "network"; 22662306a36Sopenharmony_ci model = "TSEC"; 22762306a36Sopenharmony_ci compatible = "gianfar"; 22862306a36Sopenharmony_ci reg = <0x25000 0x1000>; 22962306a36Sopenharmony_ci ranges = <0x0 0x25000 0x1000>; 23062306a36Sopenharmony_ci local-mac-address = [ 00 08 e5 11 32 34 ]; 23162306a36Sopenharmony_ci interrupts = <35 0x8 36 0x8 37 0x8>; 23262306a36Sopenharmony_ci interrupt-parent = <&ipic>; 23362306a36Sopenharmony_ci tbi-handle = <&tbi1>; 23462306a36Sopenharmony_ci phy-handle = <&phy1>; 23562306a36Sopenharmony_ci linux,network-index = <1>; 23662306a36Sopenharmony_ci 23762306a36Sopenharmony_ci mdio@520 { 23862306a36Sopenharmony_ci #address-cells = <1>; 23962306a36Sopenharmony_ci #size-cells = <0>; 24062306a36Sopenharmony_ci compatible = "fsl,gianfar-tbi"; 24162306a36Sopenharmony_ci reg = <0x520 0x20>; 24262306a36Sopenharmony_ci 24362306a36Sopenharmony_ci tbi1: tbi-phy@11 { 24462306a36Sopenharmony_ci reg = <0x11>; 24562306a36Sopenharmony_ci device_type = "tbi-phy"; 24662306a36Sopenharmony_ci }; 24762306a36Sopenharmony_ci }; 24862306a36Sopenharmony_ci }; 24962306a36Sopenharmony_ci 25062306a36Sopenharmony_ci serial0: serial@4500 { 25162306a36Sopenharmony_ci cell-index = <0>; 25262306a36Sopenharmony_ci device_type = "serial"; 25362306a36Sopenharmony_ci compatible = "fsl,ns16550", "ns16550"; 25462306a36Sopenharmony_ci reg = <0x4500 0x100>; 25562306a36Sopenharmony_ci clock-frequency = <400000000>; 25662306a36Sopenharmony_ci interrupts = <9 0x8>; 25762306a36Sopenharmony_ci interrupt-parent = <&ipic>; 25862306a36Sopenharmony_ci }; 25962306a36Sopenharmony_ci 26062306a36Sopenharmony_ci serial1: serial@4600 { 26162306a36Sopenharmony_ci cell-index = <1>; 26262306a36Sopenharmony_ci device_type = "serial"; 26362306a36Sopenharmony_ci compatible = "fsl,ns16550", "ns16550"; 26462306a36Sopenharmony_ci reg = <0x4600 0x100>; 26562306a36Sopenharmony_ci clock-frequency = <400000000>; 26662306a36Sopenharmony_ci interrupts = <10 0x8>; 26762306a36Sopenharmony_ci interrupt-parent = <&ipic>; 26862306a36Sopenharmony_ci }; 26962306a36Sopenharmony_ci 27062306a36Sopenharmony_ci /* May need to remove if on a part without crypto engine */ 27162306a36Sopenharmony_ci crypto@30000 { 27262306a36Sopenharmony_ci device_type = "crypto"; 27362306a36Sopenharmony_ci model = "SEC2"; 27462306a36Sopenharmony_ci compatible = "talitos"; 27562306a36Sopenharmony_ci reg = <0x30000 0x10000>; 27662306a36Sopenharmony_ci interrupts = <11 0x8>; 27762306a36Sopenharmony_ci interrupt-parent = <&ipic>; 27862306a36Sopenharmony_ci num-channels = <4>; 27962306a36Sopenharmony_ci channel-fifo-len = <24>; 28062306a36Sopenharmony_ci exec-units-mask = <0x0000007e>; 28162306a36Sopenharmony_ci /* desc mask is for rev2.0, 28262306a36Sopenharmony_ci * we need runtime fixup for >2.0 */ 28362306a36Sopenharmony_ci descriptor-types-mask = <0x01010ebf>; 28462306a36Sopenharmony_ci }; 28562306a36Sopenharmony_ci 28662306a36Sopenharmony_ci /* IPIC 28762306a36Sopenharmony_ci * interrupts cell = <intr #, sense> 28862306a36Sopenharmony_ci * sense values match linux IORESOURCE_IRQ_* defines: 28962306a36Sopenharmony_ci * sense == 8: Level, low assertion 29062306a36Sopenharmony_ci * sense == 2: Edge, high-to-low change 29162306a36Sopenharmony_ci */ 29262306a36Sopenharmony_ci ipic: pic@700 { 29362306a36Sopenharmony_ci interrupt-controller; 29462306a36Sopenharmony_ci #address-cells = <0>; 29562306a36Sopenharmony_ci #interrupt-cells = <2>; 29662306a36Sopenharmony_ci reg = <0x700 0x100>; 29762306a36Sopenharmony_ci device_type = "ipic"; 29862306a36Sopenharmony_ci }; 29962306a36Sopenharmony_ci }; 30062306a36Sopenharmony_ci 30162306a36Sopenharmony_ci chosen { 30262306a36Sopenharmony_ci bootargs = "console=ttyS0,38400 root=/dev/mtdblock3 rootfstype=jffs2"; 30362306a36Sopenharmony_ci stdout-path = &serial0; 30462306a36Sopenharmony_ci }; 30562306a36Sopenharmony_ci 30662306a36Sopenharmony_ci}; 307