123308c54SMichael Barkowski/* 223308c54SMichael Barkowski * MPC832x RDB Device Tree Source 323308c54SMichael Barkowski * 423308c54SMichael Barkowski * Copyright 2007 Freescale Semiconductor Inc. 523308c54SMichael Barkowski * 623308c54SMichael Barkowski * This program is free software; you can redistribute it and/or modify it 723308c54SMichael Barkowski * under the terms of the GNU General Public License as published by the 823308c54SMichael Barkowski * Free Software Foundation; either version 2 of the License, or (at your 923308c54SMichael Barkowski * option) any later version. 1023308c54SMichael Barkowski */ 1123308c54SMichael Barkowski 1223308c54SMichael Barkowski/ { 1323308c54SMichael Barkowski model = "MPC8323ERDB"; 1423308c54SMichael Barkowski compatible = "MPC8323ERDB", "MPC832xRDB", "MPC83xxRDB"; 1523308c54SMichael Barkowski #address-cells = <1>; 1623308c54SMichael Barkowski #size-cells = <1>; 1723308c54SMichael Barkowski 1823308c54SMichael Barkowski cpus { 1923308c54SMichael Barkowski #address-cells = <1>; 2023308c54SMichael Barkowski #size-cells = <0>; 2123308c54SMichael Barkowski 2223308c54SMichael Barkowski PowerPC,8323@0 { 2323308c54SMichael Barkowski device_type = "cpu"; 2423308c54SMichael Barkowski reg = <0>; 2523308c54SMichael Barkowski d-cache-line-size = <20>; // 32 bytes 2623308c54SMichael Barkowski i-cache-line-size = <20>; // 32 bytes 2723308c54SMichael Barkowski d-cache-size = <4000>; // L1, 16K 2823308c54SMichael Barkowski i-cache-size = <4000>; // L1, 16K 2923308c54SMichael Barkowski timebase-frequency = <0>; 3023308c54SMichael Barkowski bus-frequency = <0>; 3123308c54SMichael Barkowski clock-frequency = <0>; 3223308c54SMichael Barkowski 32-bit; 3323308c54SMichael Barkowski }; 3423308c54SMichael Barkowski }; 3523308c54SMichael Barkowski 3623308c54SMichael Barkowski memory { 3723308c54SMichael Barkowski device_type = "memory"; 3823308c54SMichael Barkowski reg = <00000000 04000000>; 3923308c54SMichael Barkowski }; 4023308c54SMichael Barkowski 4123308c54SMichael Barkowski soc8323@e0000000 { 4223308c54SMichael Barkowski #address-cells = <1>; 4323308c54SMichael Barkowski #size-cells = <1>; 4423308c54SMichael Barkowski #interrupt-cells = <2>; 4523308c54SMichael Barkowski device_type = "soc"; 4623308c54SMichael Barkowski ranges = <0 e0000000 00100000>; 4723308c54SMichael Barkowski reg = <e0000000 00000200>; 4823308c54SMichael Barkowski bus-frequency = <0>; 4923308c54SMichael Barkowski 5023308c54SMichael Barkowski wdt@200 { 5123308c54SMichael Barkowski device_type = "watchdog"; 5223308c54SMichael Barkowski compatible = "mpc83xx_wdt"; 5323308c54SMichael Barkowski reg = <200 100>; 5423308c54SMichael Barkowski }; 5523308c54SMichael Barkowski 5623308c54SMichael Barkowski i2c@3000 { 5723308c54SMichael Barkowski device_type = "i2c"; 5823308c54SMichael Barkowski compatible = "fsl-i2c"; 5923308c54SMichael Barkowski reg = <3000 100>; 6023308c54SMichael Barkowski interrupts = <e 8>; 6123308c54SMichael Barkowski interrupt-parent = <&pic>; 6223308c54SMichael Barkowski dfsrr; 6323308c54SMichael Barkowski }; 6423308c54SMichael Barkowski 6523308c54SMichael Barkowski serial@4500 { 6623308c54SMichael Barkowski device_type = "serial"; 6723308c54SMichael Barkowski compatible = "ns16550"; 6823308c54SMichael Barkowski reg = <4500 100>; 6923308c54SMichael Barkowski clock-frequency = <0>; 7023308c54SMichael Barkowski interrupts = <9 8>; 7123308c54SMichael Barkowski interrupt-parent = <&pic>; 7223308c54SMichael Barkowski }; 7323308c54SMichael Barkowski 7423308c54SMichael Barkowski serial@4600 { 7523308c54SMichael Barkowski device_type = "serial"; 7623308c54SMichael Barkowski compatible = "ns16550"; 7723308c54SMichael Barkowski reg = <4600 100>; 7823308c54SMichael Barkowski clock-frequency = <0>; 7923308c54SMichael Barkowski interrupts = <a 8>; 8023308c54SMichael Barkowski interrupt-parent = <&pic>; 8123308c54SMichael Barkowski }; 8223308c54SMichael Barkowski 8323308c54SMichael Barkowski crypto@30000 { 8423308c54SMichael Barkowski device_type = "crypto"; 8523308c54SMichael Barkowski model = "SEC2"; 8623308c54SMichael Barkowski compatible = "talitos"; 8723308c54SMichael Barkowski reg = <30000 7000>; 8823308c54SMichael Barkowski interrupts = <b 8>; 8923308c54SMichael Barkowski interrupt-parent = <&pic>; 9023308c54SMichael Barkowski /* Rev. 2.2 */ 9123308c54SMichael Barkowski num-channels = <1>; 9223308c54SMichael Barkowski channel-fifo-len = <18>; 9323308c54SMichael Barkowski exec-units-mask = <0000004c>; 9423308c54SMichael Barkowski descriptor-types-mask = <0122003f>; 9523308c54SMichael Barkowski }; 9623308c54SMichael Barkowski 9723308c54SMichael Barkowski pci@8500 { 9823308c54SMichael Barkowski interrupt-map-mask = <f800 0 0 7>; 9923308c54SMichael Barkowski interrupt-map = < 10023308c54SMichael Barkowski /* IDSEL 0x10 AD16 (USB) */ 10123308c54SMichael Barkowski 8000 0 0 1 &pic 11 8 10223308c54SMichael Barkowski 10323308c54SMichael Barkowski /* IDSEL 0x11 AD17 (Mini1)*/ 10423308c54SMichael Barkowski 8800 0 0 1 &pic 12 8 10523308c54SMichael Barkowski 8800 0 0 2 &pic 13 8 10623308c54SMichael Barkowski 8800 0 0 3 &pic 14 8 10723308c54SMichael Barkowski 8800 0 0 4 &pic 30 8 10823308c54SMichael Barkowski 10923308c54SMichael Barkowski /* IDSEL 0x12 AD18 (PCI/Mini2) */ 11023308c54SMichael Barkowski 9000 0 0 1 &pic 13 8 11123308c54SMichael Barkowski 9000 0 0 2 &pic 14 8 11223308c54SMichael Barkowski 9000 0 0 3 &pic 30 8 11323308c54SMichael Barkowski 9000 0 0 4 &pic 11 8>; 11423308c54SMichael Barkowski 11523308c54SMichael Barkowski interrupt-parent = <&pic>; 11623308c54SMichael Barkowski interrupts = <42 8>; 11723308c54SMichael Barkowski bus-range = <0 0>; 11823308c54SMichael Barkowski ranges = <42000000 0 80000000 80000000 0 10000000 11923308c54SMichael Barkowski 02000000 0 90000000 90000000 0 10000000 12023308c54SMichael Barkowski 01000000 0 d0000000 d0000000 0 04000000>; 12123308c54SMichael Barkowski clock-frequency = <0>; 12223308c54SMichael Barkowski #interrupt-cells = <1>; 12323308c54SMichael Barkowski #size-cells = <2>; 12423308c54SMichael Barkowski #address-cells = <3>; 12523308c54SMichael Barkowski reg = <8500 100>; 12623308c54SMichael Barkowski compatible = "83xx"; 12723308c54SMichael Barkowski device_type = "pci"; 12823308c54SMichael Barkowski }; 12923308c54SMichael Barkowski 13023308c54SMichael Barkowski pic:pic@700 { 13123308c54SMichael Barkowski interrupt-controller; 13223308c54SMichael Barkowski #address-cells = <0>; 13323308c54SMichael Barkowski #interrupt-cells = <2>; 13423308c54SMichael Barkowski reg = <700 100>; 13523308c54SMichael Barkowski built-in; 13623308c54SMichael Barkowski device_type = "ipic"; 13723308c54SMichael Barkowski }; 13823308c54SMichael Barkowski 13923308c54SMichael Barkowski par_io@1400 { 14023308c54SMichael Barkowski reg = <1400 100>; 14123308c54SMichael Barkowski device_type = "par_io"; 14223308c54SMichael Barkowski num-ports = <7>; 14323308c54SMichael Barkowski 14423308c54SMichael Barkowski ucc2pio:ucc_pin@02 { 14523308c54SMichael Barkowski pio-map = < 14623308c54SMichael Barkowski /* port pin dir open_drain assignment has_irq */ 14723308c54SMichael Barkowski 3 4 3 0 2 0 /* MDIO */ 14823308c54SMichael Barkowski 3 5 1 0 2 0 /* MDC */ 14923308c54SMichael Barkowski 3 15 2 0 1 0 /* RX_CLK (CLK16) */ 15023308c54SMichael Barkowski 3 17 2 0 1 0 /* TX_CLK (CLK3) */ 15123308c54SMichael Barkowski 0 12 1 0 1 0 /* TxD0 */ 15223308c54SMichael Barkowski 0 13 1 0 1 0 /* TxD1 */ 15323308c54SMichael Barkowski 0 14 1 0 1 0 /* TxD2 */ 15423308c54SMichael Barkowski 0 15 1 0 1 0 /* TxD3 */ 15523308c54SMichael Barkowski 0 16 2 0 1 0 /* RxD0 */ 15623308c54SMichael Barkowski 0 17 2 0 1 0 /* RxD1 */ 15723308c54SMichael Barkowski 0 18 2 0 1 0 /* RxD2 */ 15823308c54SMichael Barkowski 0 19 2 0 1 0 /* RxD3 */ 15923308c54SMichael Barkowski 0 1a 2 0 1 0 /* RX_ER */ 16023308c54SMichael Barkowski 0 1b 1 0 1 0 /* TX_ER */ 16123308c54SMichael Barkowski 0 1c 2 0 1 0 /* RX_DV */ 16223308c54SMichael Barkowski 0 1d 2 0 1 0 /* COL */ 16323308c54SMichael Barkowski 0 1e 1 0 1 0 /* TX_EN */ 16423308c54SMichael Barkowski 0 1f 2 0 1 0>; /* CRS */ 16523308c54SMichael Barkowski }; 16623308c54SMichael Barkowski ucc3pio:ucc_pin@03 { 16723308c54SMichael Barkowski pio-map = < 16823308c54SMichael Barkowski /* port pin dir open_drain assignment has_irq */ 16923308c54SMichael Barkowski 0 d 2 0 1 0 /* RX_CLK (CLK9) */ 17023308c54SMichael Barkowski 3 18 2 0 1 0 /* TX_CLK (CLK10) */ 17123308c54SMichael Barkowski 1 0 1 0 1 0 /* TxD0 */ 17223308c54SMichael Barkowski 1 1 1 0 1 0 /* TxD1 */ 17323308c54SMichael Barkowski 1 2 1 0 1 0 /* TxD2 */ 17423308c54SMichael Barkowski 1 3 1 0 1 0 /* TxD3 */ 17523308c54SMichael Barkowski 1 4 2 0 1 0 /* RxD0 */ 17623308c54SMichael Barkowski 1 5 2 0 1 0 /* RxD1 */ 17723308c54SMichael Barkowski 1 6 2 0 1 0 /* RxD2 */ 17823308c54SMichael Barkowski 1 7 2 0 1 0 /* RxD3 */ 17923308c54SMichael Barkowski 1 8 2 0 1 0 /* RX_ER */ 18023308c54SMichael Barkowski 1 9 1 0 1 0 /* TX_ER */ 18123308c54SMichael Barkowski 1 a 2 0 1 0 /* RX_DV */ 18223308c54SMichael Barkowski 1 b 2 0 1 0 /* COL */ 18323308c54SMichael Barkowski 1 c 1 0 1 0 /* TX_EN */ 18423308c54SMichael Barkowski 1 d 2 0 1 0>; /* CRS */ 18523308c54SMichael Barkowski }; 18623308c54SMichael Barkowski }; 18723308c54SMichael Barkowski }; 18823308c54SMichael Barkowski 18923308c54SMichael Barkowski qe@e0100000 { 19023308c54SMichael Barkowski #address-cells = <1>; 19123308c54SMichael Barkowski #size-cells = <1>; 19223308c54SMichael Barkowski device_type = "qe"; 19323308c54SMichael Barkowski model = "QE"; 19423308c54SMichael Barkowski ranges = <0 e0100000 00100000>; 19523308c54SMichael Barkowski reg = <e0100000 480>; 19623308c54SMichael Barkowski brg-frequency = <0>; 19723308c54SMichael Barkowski bus-frequency = <BCD3D80>; 19823308c54SMichael Barkowski 19923308c54SMichael Barkowski muram@10000 { 20023308c54SMichael Barkowski device_type = "muram"; 20123308c54SMichael Barkowski ranges = <0 00010000 00004000>; 20223308c54SMichael Barkowski 20323308c54SMichael Barkowski data-only@0 { 20423308c54SMichael Barkowski reg = <0 4000>; 20523308c54SMichael Barkowski }; 20623308c54SMichael Barkowski }; 20723308c54SMichael Barkowski 20823308c54SMichael Barkowski spi@4c0 { 20923308c54SMichael Barkowski device_type = "spi"; 21023308c54SMichael Barkowski compatible = "fsl_spi"; 21123308c54SMichael Barkowski reg = <4c0 40>; 21223308c54SMichael Barkowski interrupts = <2>; 21323308c54SMichael Barkowski interrupt-parent = <&qeic>; 21423308c54SMichael Barkowski mode = "cpu"; 21523308c54SMichael Barkowski }; 21623308c54SMichael Barkowski 21723308c54SMichael Barkowski spi@500 { 21823308c54SMichael Barkowski device_type = "spi"; 21923308c54SMichael Barkowski compatible = "fsl_spi"; 22023308c54SMichael Barkowski reg = <500 40>; 22123308c54SMichael Barkowski interrupts = <1>; 22223308c54SMichael Barkowski interrupt-parent = <&qeic>; 22323308c54SMichael Barkowski mode = "cpu"; 22423308c54SMichael Barkowski }; 22523308c54SMichael Barkowski 22623308c54SMichael Barkowski ucc@3000 { 22723308c54SMichael Barkowski device_type = "network"; 22823308c54SMichael Barkowski compatible = "ucc_geth"; 22923308c54SMichael Barkowski model = "UCC"; 23023308c54SMichael Barkowski device-id = <2>; 23123308c54SMichael Barkowski reg = <3000 200>; 23223308c54SMichael Barkowski interrupts = <21>; 23323308c54SMichael Barkowski interrupt-parent = <&qeic>; 23423308c54SMichael Barkowski mac-address = [ 00 04 9f ef 03 02 ]; 23523308c54SMichael Barkowski rx-clock = <20>; 23623308c54SMichael Barkowski tx-clock = <13>; 23723308c54SMichael Barkowski phy-handle = <&phy00>; 23823308c54SMichael Barkowski pio-handle = <&ucc2pio>; 23923308c54SMichael Barkowski }; 24023308c54SMichael Barkowski 24123308c54SMichael Barkowski ucc@2200 { 24223308c54SMichael Barkowski device_type = "network"; 24323308c54SMichael Barkowski compatible = "ucc_geth"; 24423308c54SMichael Barkowski model = "UCC"; 24523308c54SMichael Barkowski device-id = <3>; 24623308c54SMichael Barkowski reg = <2200 200>; 24723308c54SMichael Barkowski interrupts = <22>; 24823308c54SMichael Barkowski interrupt-parent = <&qeic>; 24923308c54SMichael Barkowski mac-address = [ 00 04 9f ef 03 01 ]; 25023308c54SMichael Barkowski rx-clock = <19>; 25123308c54SMichael Barkowski tx-clock = <1a>; 25223308c54SMichael Barkowski phy-handle = <&phy04>; 25323308c54SMichael Barkowski pio-handle = <&ucc3pio>; 25423308c54SMichael Barkowski }; 25523308c54SMichael Barkowski 25623308c54SMichael Barkowski mdio@3120 { 25723308c54SMichael Barkowski #address-cells = <1>; 25823308c54SMichael Barkowski #size-cells = <0>; 25923308c54SMichael Barkowski reg = <3120 18>; 26023308c54SMichael Barkowski device_type = "mdio"; 26123308c54SMichael Barkowski compatible = "ucc_geth_phy"; 26223308c54SMichael Barkowski 26323308c54SMichael Barkowski phy00:ethernet-phy@00 { 26423308c54SMichael Barkowski interrupt-parent = <&pic>; 26523308c54SMichael Barkowski interrupts = <0>; 26623308c54SMichael Barkowski reg = <0>; 26723308c54SMichael Barkowski device_type = "ethernet-phy"; 26823308c54SMichael Barkowski interface = <3>; //ENET_100_MII 26923308c54SMichael Barkowski }; 27023308c54SMichael Barkowski phy04:ethernet-phy@04 { 27123308c54SMichael Barkowski interrupt-parent = <&pic>; 27223308c54SMichael Barkowski interrupts = <0>; 27323308c54SMichael Barkowski reg = <4>; 27423308c54SMichael Barkowski device_type = "ethernet-phy"; 27523308c54SMichael Barkowski interface = <3>; 27623308c54SMichael Barkowski }; 27723308c54SMichael Barkowski }; 27823308c54SMichael Barkowski 27923308c54SMichael Barkowski qeic:qeic@80 { 28023308c54SMichael Barkowski interrupt-controller; 28123308c54SMichael Barkowski device_type = "qeic"; 28223308c54SMichael Barkowski #address-cells = <0>; 28323308c54SMichael Barkowski #interrupt-cells = <1>; 28423308c54SMichael Barkowski reg = <80 80>; 28523308c54SMichael Barkowski built-in; 28623308c54SMichael Barkowski big-endian; 28723308c54SMichael Barkowski interrupts = <20 8 21 8>; //high:32 low:33 28823308c54SMichael Barkowski interrupt-parent = <&pic>; 28923308c54SMichael Barkowski }; 29023308c54SMichael Barkowski }; 29123308c54SMichael Barkowski}; 292