| /* | 
 |  * P4080DS Device Tree Source | 
 |  * | 
 |  * Copyright 2009 Freescale Semiconductor Inc. | 
 |  * | 
 |  * This program is free software; you can redistribute	it and/or modify it | 
 |  * under  the terms of	the GNU General	 Public License as published by the | 
 |  * Free Software Foundation;  either version 2 of the  License, or (at your | 
 |  * option) any later version. | 
 |  */ | 
 |  | 
 | /dts-v1/; | 
 |  | 
 | / { | 
 | 	model = "fsl,P4080DS"; | 
 | 	compatible = "fsl,P4080DS"; | 
 | 	#address-cells = <2>; | 
 | 	#size-cells = <2>; | 
 |  | 
 | 	aliases { | 
 | 		ccsr = &soc; | 
 |  | 
 | 		serial0 = &serial0; | 
 | 		serial1 = &serial1; | 
 | 		serial2 = &serial2; | 
 | 		serial3 = &serial3; | 
 | 		pci0 = &pci0; | 
 | 		pci1 = &pci1; | 
 | 		pci2 = &pci2; | 
 | 		usb0 = &usb0; | 
 | 		usb1 = &usb1; | 
 | 		dma0 = &dma0; | 
 | 		dma1 = &dma1; | 
 | 		sdhc = &sdhc; | 
 |  | 
 | 		rio0 = &rapidio0; | 
 | 	}; | 
 |  | 
 | 	cpus { | 
 | 		#address-cells = <1>; | 
 | 		#size-cells = <0>; | 
 |  | 
 | 		cpu0: PowerPC,4080@0 { | 
 | 			device_type = "cpu"; | 
 | 			reg = <0>; | 
 | 			next-level-cache = <&L2_0>; | 
 | 			L2_0: l2-cache { | 
 | 			}; | 
 | 		}; | 
 | 		cpu1: PowerPC,4080@1 { | 
 | 			device_type = "cpu"; | 
 | 			reg = <1>; | 
 | 			next-level-cache = <&L2_1>; | 
 | 			L2_1: l2-cache { | 
 | 			}; | 
 | 		}; | 
 | 		cpu2: PowerPC,4080@2 { | 
 | 			device_type = "cpu"; | 
 | 			reg = <2>; | 
 | 			next-level-cache = <&L2_2>; | 
 | 			L2_2: l2-cache { | 
 | 			}; | 
 | 		}; | 
 | 		cpu3: PowerPC,4080@3 { | 
 | 			device_type = "cpu"; | 
 | 			reg = <3>; | 
 | 			next-level-cache = <&L2_3>; | 
 | 			L2_3: l2-cache { | 
 | 			}; | 
 | 		}; | 
 | 		cpu4: PowerPC,4080@4 { | 
 | 			device_type = "cpu"; | 
 | 			reg = <4>; | 
 | 			next-level-cache = <&L2_4>; | 
 | 			L2_4: l2-cache { | 
 | 			}; | 
 | 		}; | 
 | 		cpu5: PowerPC,4080@5 { | 
 | 			device_type = "cpu"; | 
 | 			reg = <5>; | 
 | 			next-level-cache = <&L2_5>; | 
 | 			L2_5: l2-cache { | 
 | 			}; | 
 | 		}; | 
 | 		cpu6: PowerPC,4080@6 { | 
 | 			device_type = "cpu"; | 
 | 			reg = <6>; | 
 | 			next-level-cache = <&L2_6>; | 
 | 			L2_6: l2-cache { | 
 | 			}; | 
 | 		}; | 
 | 		cpu7: PowerPC,4080@7 { | 
 | 			device_type = "cpu"; | 
 | 			reg = <7>; | 
 | 			next-level-cache = <&L2_7>; | 
 | 			L2_7: l2-cache { | 
 | 			}; | 
 | 		}; | 
 | 	}; | 
 |  | 
 | 	memory { | 
 | 		device_type = "memory"; | 
 | 	}; | 
 |  | 
 | 	soc: soc@ffe000000 { | 
 | 		#address-cells = <1>; | 
 | 		#size-cells = <1>; | 
 | 		device_type = "soc"; | 
 | 		compatible = "simple-bus"; | 
 | 		ranges = <0x00000000 0xf 0xfe000000 0x1000000>; | 
 | 		reg = <0xf 0xfe000000 0 0x00001000>; | 
 |  | 
 | 		corenet-law@0 { | 
 | 			compatible = "fsl,corenet-law"; | 
 | 			reg = <0x0 0x1000>; | 
 | 			fsl,num-laws = <32>; | 
 | 		}; | 
 |  | 
 | 		memory-controller@8000 { | 
 | 			compatible = "fsl,p4080-memory-controller"; | 
 | 			reg = <0x8000 0x1000>; | 
 | 			interrupt-parent = <&mpic>; | 
 | 			interrupts = <0x12 2>; | 
 | 		}; | 
 |  | 
 | 		memory-controller@9000 { | 
 | 			compatible = "fsl,p4080-memory-controller"; | 
 | 			reg = <0x9000 0x1000>; | 
 | 			interrupt-parent = <&mpic>; | 
 | 			interrupts = <0x12 2>; | 
 | 		}; | 
 |  | 
 | 		corenet-cf@18000 { | 
 | 			compatible = "fsl,corenet-cf"; | 
 | 			reg = <0x18000 0x1000>; | 
 | 			fsl,ccf-num-csdids = <32>; | 
 | 			fsl,ccf-num-snoopids = <32>; | 
 | 		}; | 
 |  | 
 | 		iommu@20000 { | 
 | 			compatible = "fsl,p4080-pamu"; | 
 | 			reg = <0x20000 0x10000>; | 
 | 			interrupts = <24 2>; | 
 | 			interrupt-parent = <&mpic>; | 
 | 		}; | 
 |  | 
 | 		mpic: pic@40000 { | 
 | 			interrupt-controller; | 
 | 			#address-cells = <0>; | 
 | 			#interrupt-cells = <2>; | 
 | 			reg = <0x40000 0x40000>; | 
 | 			compatible = "chrp,open-pic"; | 
 | 			device_type = "open-pic"; | 
 | 		}; | 
 |  | 
 | 		dma0: dma@100300 { | 
 | 			#address-cells = <1>; | 
 | 			#size-cells = <1>; | 
 | 			compatible = "fsl,p4080-dma", "fsl,eloplus-dma"; | 
 | 			reg = <0x100300 0x4>; | 
 | 			ranges = <0x0 0x100100 0x200>; | 
 | 			cell-index = <0>; | 
 | 			dma-channel@0 { | 
 | 				compatible = "fsl,p4080-dma-channel", | 
 | 						"fsl,eloplus-dma-channel"; | 
 | 				reg = <0x0 0x80>; | 
 | 				cell-index = <0>; | 
 | 				interrupt-parent = <&mpic>; | 
 | 				interrupts = <28 2>; | 
 | 			}; | 
 | 			dma-channel@80 { | 
 | 				compatible = "fsl,p4080-dma-channel", | 
 | 						"fsl,eloplus-dma-channel"; | 
 | 				reg = <0x80 0x80>; | 
 | 				cell-index = <1>; | 
 | 				interrupt-parent = <&mpic>; | 
 | 				interrupts = <29 2>; | 
 | 			}; | 
 | 			dma-channel@100 { | 
 | 				compatible = "fsl,p4080-dma-channel", | 
 | 						"fsl,eloplus-dma-channel"; | 
 | 				reg = <0x100 0x80>; | 
 | 				cell-index = <2>; | 
 | 				interrupt-parent = <&mpic>; | 
 | 				interrupts = <30 2>; | 
 | 			}; | 
 | 			dma-channel@180 { | 
 | 				compatible = "fsl,p4080-dma-channel", | 
 | 						"fsl,eloplus-dma-channel"; | 
 | 				reg = <0x180 0x80>; | 
 | 				cell-index = <3>; | 
 | 				interrupt-parent = <&mpic>; | 
 | 				interrupts = <31 2>; | 
 | 			}; | 
 | 		}; | 
 |  | 
 | 		dma1: dma@101300 { | 
 | 			#address-cells = <1>; | 
 | 			#size-cells = <1>; | 
 | 			compatible = "fsl,p4080-dma", "fsl,eloplus-dma"; | 
 | 			reg = <0x101300 0x4>; | 
 | 			ranges = <0x0 0x101100 0x200>; | 
 | 			cell-index = <1>; | 
 | 			dma-channel@0 { | 
 | 				compatible = "fsl,p4080-dma-channel", | 
 | 						"fsl,eloplus-dma-channel"; | 
 | 				reg = <0x0 0x80>; | 
 | 				cell-index = <0>; | 
 | 				interrupt-parent = <&mpic>; | 
 | 				interrupts = <32 2>; | 
 | 			}; | 
 | 			dma-channel@80 { | 
 | 				compatible = "fsl,p4080-dma-channel", | 
 | 						"fsl,eloplus-dma-channel"; | 
 | 				reg = <0x80 0x80>; | 
 | 				cell-index = <1>; | 
 | 				interrupt-parent = <&mpic>; | 
 | 				interrupts = <33 2>; | 
 | 			}; | 
 | 			dma-channel@100 { | 
 | 				compatible = "fsl,p4080-dma-channel", | 
 | 						"fsl,eloplus-dma-channel"; | 
 | 				reg = <0x100 0x80>; | 
 | 				cell-index = <2>; | 
 | 				interrupt-parent = <&mpic>; | 
 | 				interrupts = <34 2>; | 
 | 			}; | 
 | 			dma-channel@180 { | 
 | 				compatible = "fsl,p4080-dma-channel", | 
 | 						"fsl,eloplus-dma-channel"; | 
 | 				reg = <0x180 0x80>; | 
 | 				cell-index = <3>; | 
 | 				interrupt-parent = <&mpic>; | 
 | 				interrupts = <35 2>; | 
 | 			}; | 
 | 		}; | 
 |  | 
 | 		spi@110000 { | 
 | 			cell-index = <0>; | 
 | 			#address-cells = <1>; | 
 | 			#size-cells = <0>; | 
 | 			compatible = "fsl,espi"; | 
 | 			reg = <0x110000 0x1000>; | 
 | 			interrupts = <53 0x2>; | 
 | 			interrupt-parent = <&mpic>; | 
 | 			espi,num-ss-bits = <4>; | 
 | 			mode = "cpu"; | 
 |  | 
 | 			fsl_m25p80@0 { | 
 | 				#address-cells = <1>; | 
 | 				#size-cells = <1>; | 
 | 				compatible = "fsl,espi-flash"; | 
 | 				reg = <0>; | 
 | 				linux,modalias = "fsl_m25p80"; | 
 | 				spi-max-frequency = <40000000>; /* input clock */ | 
 | 				partition@u-boot { | 
 | 					label = "u-boot"; | 
 | 					reg = <0x00000000 0x00100000>; | 
 | 					read-only; | 
 | 				}; | 
 | 				partition@kernel { | 
 | 					label = "kernel"; | 
 | 					reg = <0x00100000 0x00500000>; | 
 | 					read-only; | 
 | 				}; | 
 | 				partition@dtb { | 
 | 					label = "dtb"; | 
 | 					reg = <0x00600000 0x00100000>; | 
 | 					read-only; | 
 | 				}; | 
 | 				partition@fs { | 
 | 					label = "file system"; | 
 | 					reg = <0x00700000 0x00900000>; | 
 | 				}; | 
 | 			}; | 
 | 		}; | 
 |  | 
 | 		sdhc: sdhc@114000 { | 
 | 			compatible = "fsl,p4080-esdhc", "fsl,esdhc"; | 
 | 			reg = <0x114000 0x1000>; | 
 | 			interrupts = <48 2>; | 
 | 			interrupt-parent = <&mpic>; | 
 | 		}; | 
 |  | 
 | 		i2c@118000 { | 
 | 			#address-cells = <1>; | 
 | 			#size-cells = <0>; | 
 | 			cell-index = <0>; | 
 | 			compatible = "fsl-i2c"; | 
 | 			reg = <0x118000 0x100>; | 
 | 			interrupts = <38 2>; | 
 | 			interrupt-parent = <&mpic>; | 
 | 			dfsrr; | 
 | 		}; | 
 |  | 
 | 		i2c@118100 { | 
 | 			#address-cells = <1>; | 
 | 			#size-cells = <0>; | 
 | 			cell-index = <1>; | 
 | 			compatible = "fsl-i2c"; | 
 | 			reg = <0x118100 0x100>; | 
 | 			interrupts = <38 2>; | 
 | 			interrupt-parent = <&mpic>; | 
 | 			dfsrr; | 
 | 			eeprom@51 { | 
 | 				compatible = "at24,24c256"; | 
 | 				reg = <0x51>; | 
 | 			}; | 
 | 			eeprom@52 { | 
 | 				compatible = "at24,24c256"; | 
 | 				reg = <0x52>; | 
 | 			}; | 
 | 			rtc@68 { | 
 | 				compatible = "dallas,ds3232"; | 
 | 				reg = <0x68>; | 
 | 				interrupts = <0 0x1>; | 
 | 				interrupt-parent = <&mpic>; | 
 | 			}; | 
 | 		}; | 
 |  | 
 | 		i2c@119000 { | 
 | 			#address-cells = <1>; | 
 | 			#size-cells = <0>; | 
 | 			cell-index = <2>; | 
 | 			compatible = "fsl-i2c"; | 
 | 			reg = <0x119000 0x100>; | 
 | 			interrupts = <39 2>; | 
 | 			interrupt-parent = <&mpic>; | 
 | 			dfsrr; | 
 | 		}; | 
 |  | 
 | 		i2c@119100 { | 
 | 			#address-cells = <1>; | 
 | 			#size-cells = <0>; | 
 | 			cell-index = <3>; | 
 | 			compatible = "fsl-i2c"; | 
 | 			reg = <0x119100 0x100>; | 
 | 			interrupts = <39 2>; | 
 | 			interrupt-parent = <&mpic>; | 
 | 			dfsrr; | 
 | 		}; | 
 |  | 
 | 		serial0: serial@11c500 { | 
 | 			cell-index = <0>; | 
 | 			device_type = "serial"; | 
 | 			compatible = "ns16550"; | 
 | 			reg = <0x11c500 0x100>; | 
 | 			clock-frequency = <0>; | 
 | 			interrupts = <36 2>; | 
 | 			interrupt-parent = <&mpic>; | 
 | 		}; | 
 |  | 
 | 		serial1: serial@11c600 { | 
 | 			cell-index = <1>; | 
 | 			device_type = "serial"; | 
 | 			compatible = "ns16550"; | 
 | 			reg = <0x11c600 0x100>; | 
 | 			clock-frequency = <0>; | 
 | 			interrupts = <36 2>; | 
 | 			interrupt-parent = <&mpic>; | 
 | 		}; | 
 |  | 
 | 		serial2: serial@11d500 { | 
 | 			cell-index = <2>; | 
 | 			device_type = "serial"; | 
 | 			compatible = "ns16550"; | 
 | 			reg = <0x11d500 0x100>; | 
 | 			clock-frequency = <0>; | 
 | 			interrupts = <37 2>; | 
 | 			interrupt-parent = <&mpic>; | 
 | 		}; | 
 |  | 
 | 		serial3: serial@11d600 { | 
 | 			cell-index = <3>; | 
 | 			device_type = "serial"; | 
 | 			compatible = "ns16550"; | 
 | 			reg = <0x11d600 0x100>; | 
 | 			clock-frequency = <0>; | 
 | 			interrupts = <37 2>; | 
 | 			interrupt-parent = <&mpic>; | 
 | 		}; | 
 |  | 
 | 		gpio0: gpio@130000 { | 
 | 			compatible = "fsl,p4080-gpio"; | 
 | 			reg = <0x130000 0x1000>; | 
 | 			interrupts = <55 2>; | 
 | 			interrupt-parent = <&mpic>; | 
 | 			#gpio-cells = <2>; | 
 | 			gpio-controller; | 
 | 		}; | 
 |  | 
 | 		usb0: usb@210000 { | 
 | 			compatible = "fsl,p4080-usb2-mph", | 
 | 					"fsl,mpc85xx-usb2-mph", "fsl-usb2-mph"; | 
 | 			reg = <0x210000 0x1000>; | 
 | 			#address-cells = <1>; | 
 | 			#size-cells = <0>; | 
 | 			interrupt-parent = <&mpic>; | 
 | 			interrupts = <44 0x2>; | 
 | 			phy_type = "ulpi"; | 
 | 		}; | 
 |  | 
 | 		usb1: usb@211000 { | 
 | 			compatible = "fsl,p4080-usb2-dr", | 
 | 					"fsl,mpc85xx-usb2-dr", "fsl-usb2-dr"; | 
 | 			reg = <0x211000 0x1000>; | 
 | 			#address-cells = <1>; | 
 | 			#size-cells = <0>; | 
 | 			interrupt-parent = <&mpic>; | 
 | 			interrupts = <45 0x2>; | 
 | 			dr_mode = "host"; | 
 | 			phy_type = "ulpi"; | 
 | 		}; | 
 | 	}; | 
 |  | 
 | 	rapidio0: rapidio@ffe0c0000 { | 
 | 		#address-cells = <2>; | 
 | 		#size-cells = <2>; | 
 | 		compatible = "fsl,rapidio-delta"; | 
 | 		reg = <0xf 0xfe0c0000 0 0x20000>; | 
 | 		ranges = <0 0 0xf 0xf5000000 0 0x01000000>; | 
 | 		interrupt-parent = <&mpic>; | 
 | 		/* err_irq bell_outb_irq bell_inb_irq | 
 | 			msg1_tx_irq msg1_rx_irq	msg2_tx_irq msg2_rx_irq */ | 
 | 		interrupts = <16 2 56 2 57 2 60 2 61 2 62 2 63 2>; | 
 | 	}; | 
 |  | 
 | 	localbus@ffe124000 { | 
 | 		compatible = "fsl,p4080-elbc", "fsl,elbc", "simple-bus"; | 
 | 		reg = <0xf 0xfe124000 0 0x1000>; | 
 | 		interrupts = <25 2>; | 
 | 		#address-cells = <2>; | 
 | 		#size-cells = <1>; | 
 |  | 
 | 		ranges = <0 0 0xf 0xe8000000 0x08000000>; | 
 |  | 
 | 		flash@0,0 { | 
 | 			compatible = "cfi-flash"; | 
 | 			reg = <0 0 0x08000000>; | 
 | 			bank-width = <2>; | 
 | 			device-width = <2>; | 
 | 		}; | 
 | 	}; | 
 |  | 
 | 	pci0: pcie@ffe200000 { | 
 | 		compatible = "fsl,p4080-pcie"; | 
 | 		device_type = "pci"; | 
 | 		#interrupt-cells = <1>; | 
 | 		#size-cells = <2>; | 
 | 		#address-cells = <3>; | 
 | 		reg = <0xf 0xfe200000 0 0x1000>; | 
 | 		bus-range = <0x0 0xff>; | 
 | 		ranges = <0x02000000 0 0xe0000000 0xc 0x00000000 0x0 0x20000000 | 
 | 			  0x01000000 0 0x00000000 0xf 0xf8000000 0x0 0x00010000>; | 
 | 		clock-frequency = <0x1fca055>; | 
 | 		interrupt-parent = <&mpic>; | 
 | 		interrupts = <16 2>; | 
 |  | 
 | 		interrupt-map-mask = <0xf800 0 0 7>; | 
 | 		interrupt-map = < | 
 | 			/* IDSEL 0x0 */ | 
 | 			0000 0 0 1 &mpic 40 1 | 
 | 			0000 0 0 2 &mpic 1 1 | 
 | 			0000 0 0 3 &mpic 2 1 | 
 | 			0000 0 0 4 &mpic 3 1 | 
 | 			>; | 
 | 		pcie@0 { | 
 | 			reg = <0 0 0 0 0>; | 
 | 			#size-cells = <2>; | 
 | 			#address-cells = <3>; | 
 | 			device_type = "pci"; | 
 | 			ranges = <0x02000000 0 0xe0000000 | 
 | 				  0x02000000 0 0xe0000000 | 
 | 				  0 0x20000000 | 
 |  | 
 | 				  0x01000000 0 0x00000000 | 
 | 				  0x01000000 0 0x00000000 | 
 | 				  0 0x00010000>; | 
 | 		}; | 
 | 	}; | 
 |  | 
 | 	pci1: pcie@ffe201000 { | 
 | 		compatible = "fsl,p4080-pcie"; | 
 | 		device_type = "pci"; | 
 | 		#interrupt-cells = <1>; | 
 | 		#size-cells = <2>; | 
 | 		#address-cells = <3>; | 
 | 		reg = <0xf 0xfe201000 0 0x1000>; | 
 | 		bus-range = <0 0xff>; | 
 | 		ranges = <0x02000000 0x0 0xe0000000 0xc 0x20000000 0x0 0x20000000 | 
 | 			  0x01000000 0x0 0x00000000 0xf 0xf8010000 0x0 0x00010000>; | 
 | 		clock-frequency = <0x1fca055>; | 
 | 		interrupt-parent = <&mpic>; | 
 | 		interrupts = <16 2>; | 
 | 		interrupt-map-mask = <0xf800 0 0 7>; | 
 | 		interrupt-map = < | 
 | 			/* IDSEL 0x0 */ | 
 | 			0000 0 0 1 &mpic 41 1 | 
 | 			0000 0 0 2 &mpic 5 1 | 
 | 			0000 0 0 3 &mpic 6 1 | 
 | 			0000 0 0 4 &mpic 7 1 | 
 | 			>; | 
 | 		pcie@0 { | 
 | 			reg = <0 0 0 0 0>; | 
 | 			#size-cells = <2>; | 
 | 			#address-cells = <3>; | 
 | 			device_type = "pci"; | 
 | 			ranges = <0x02000000 0 0xe0000000 | 
 | 				  0x02000000 0 0xe0000000 | 
 | 				  0 0x20000000 | 
 |  | 
 | 				  0x01000000 0 0x00000000 | 
 | 				  0x01000000 0 0x00000000 | 
 | 				  0 0x00010000>; | 
 | 		}; | 
 | 	}; | 
 |  | 
 | 	pci2: pcie@ffe202000 { | 
 | 		compatible = "fsl,p4080-pcie"; | 
 | 		device_type = "pci"; | 
 | 		#interrupt-cells = <1>; | 
 | 		#size-cells = <2>; | 
 | 		#address-cells = <3>; | 
 | 		reg = <0xf 0xfe202000 0 0x1000>; | 
 | 		bus-range = <0x0 0xff>; | 
 | 		ranges = <0x02000000 0 0xe0000000 0xc 0x40000000 0 0x20000000 | 
 | 			  0x01000000 0 0x00000000 0xf 0xf8020000 0 0x00010000>; | 
 | 		clock-frequency = <0x1fca055>; | 
 | 		interrupt-parent = <&mpic>; | 
 | 		interrupts = <16 2>; | 
 | 		interrupt-map-mask = <0xf800 0 0 7>; | 
 | 		interrupt-map = < | 
 | 			/* IDSEL 0x0 */ | 
 | 			0000 0 0 1 &mpic 42 1 | 
 | 			0000 0 0 2 &mpic 9 1 | 
 | 			0000 0 0 3 &mpic 10 1 | 
 | 			0000 0 0 4 &mpic 11 1 | 
 | 			>; | 
 | 		pcie@0 { | 
 | 			reg = <0 0 0 0 0>; | 
 | 			#size-cells = <2>; | 
 | 			#address-cells = <3>; | 
 | 			device_type = "pci"; | 
 | 			ranges = <0x02000000 0 0xe0000000 | 
 | 				  0x02000000 0 0xe0000000 | 
 | 				  0 0x20000000 | 
 |  | 
 | 				  0x01000000 0 0x00000000 | 
 | 				  0x01000000 0 0x00000000 | 
 | 				  0 0x00010000>; | 
 | 		}; | 
 | 	}; | 
 |  | 
 | }; |