Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2d87e06e authored by Benjamin Herrenschmidt's avatar Benjamin Herrenschmidt
Browse files

Merge remote-tracking branch 'jwb/next' into next

parents ff651516 b5594a77
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -4034,7 +4034,7 @@ M: Josh Boyer <jwboyer@gmail.com>
M:	Matt Porter <mporter@kernel.crashing.org>
M:	Matt Porter <mporter@kernel.crashing.org>
W:	http://www.penguinppc.org/
W:	http://www.penguinppc.org/
L:	linuxppc-dev@lists.ozlabs.org
L:	linuxppc-dev@lists.ozlabs.org
T:	git git://git.infradead.org/users/jwboyer/powerpc-4xx.git
T:	git git://git.kernel.org/pub/scm/linux/kernel/git/jwboyer/powerpc-4xx.git
S:	Maintained
S:	Maintained
F:	arch/powerpc/platforms/40x/
F:	arch/powerpc/platforms/40x/
F:	arch/powerpc/platforms/44x/
F:	arch/powerpc/platforms/44x/
+125 −2
Original line number Original line Diff line number Diff line
@@ -33,7 +33,7 @@
	aliases {
	aliases {
		ethernet0 = &EMAC0;
		ethernet0 = &EMAC0;
		serial0 = &UART0;
		serial0 = &UART0;
		//serial1 = &UART1; --gcl missing UART1 label
		serial1 = &UART1;
	};
	};


	cpus {
	cpus {
@@ -52,7 +52,7 @@
			d-cache-size = <32768>;
			d-cache-size = <32768>;
			dcr-controller;
			dcr-controller;
			dcr-access-method = "native";
			dcr-access-method = "native";
			//next-level-cache = <&L2C0>; --gcl missing L2C0 label
			next-level-cache = <&L2C0>;
		};
		};
	};
	};


@@ -117,6 +117,16 @@
		dcr-reg = <0x00c 0x002>;
		dcr-reg = <0x00c 0x002>;
	};
	};


	L2C0: l2c {
		compatible = "ibm,l2-cache-apm82181", "ibm,l2-cache";
		dcr-reg = <0x020 0x008
			   0x030 0x008>;
		cache-line-size = <32>;
		cache-size = <262144>;
		interrupt-parent = <&UIC1>;
		interrupts = <11 1>;
	};

	plb {
	plb {
		compatible = "ibm,plb4";
		compatible = "ibm,plb4";
		#address-cells = <2>;
		#address-cells = <2>;
@@ -182,6 +192,53 @@
						reg = <0x001a0000 0x00060000>;
						reg = <0x001a0000 0x00060000>;
					};
					};
				};
				};

				ndfc@1,0 {
					compatible = "ibm,ndfc";
					reg = <0x00000003 0x00000000 0x00002000>;
					ccr = <0x00001000>;
					bank-settings = <0x80002222>;
					#address-cells = <1>;
					#size-cells = <1>;
					/* 2Gb Nand Flash */
					nand {
						#address-cells = <1>;
						#size-cells = <1>;

						partition@0 {
							label = "firmware";
							reg   = <0x00000000 0x00C00000>;
						};
						partition@c00000 {
							label = "environment";
							reg   = <0x00C00000 0x00B00000>;
						};
						partition@1700000 {
							label = "kernel";
							reg   = <0x01700000 0x00E00000>;
						};
						partition@2500000 {
							label = "root";
							reg   = <0x02500000 0x08200000>;
						};
						partition@a700000 {
							label = "device-tree";
							reg   = <0x0A700000 0x00B00000>;
						};
						partition@b200000 {
							label = "config";
							reg   = <0x0B200000 0x00D00000>;
						};
						partition@bf00000 {
							label = "diag";
							reg   = <0x0BF00000 0x00C00000>;
						};
						partition@cb00000 {
							label = "vendor";
							reg   = <0x0CB00000 0x3500000>;
						};
					};
				};
			};
			};


			UART0: serial@ef600300 {
			UART0: serial@ef600300 {
@@ -195,11 +252,36 @@
				interrupts = <0x1 0x4>;
				interrupts = <0x1 0x4>;
			};
			};


			UART1: serial@ef600400 {
				device_type = "serial";
				compatible = "ns16550";
				reg = <0xef600400 0x00000008>;
				virtual-reg = <0xef600400>;
				clock-frequency = <0>; /* Filled in by U-Boot */
				current-speed = <0>; /* Filled in by U-Boot */
				interrupt-parent = <&UIC0>;
				interrupts = <0x1 0x4>;
			};

			IIC0: i2c@ef600700 {
			IIC0: i2c@ef600700 {
				compatible = "ibm,iic";
				compatible = "ibm,iic";
				reg = <0xef600700 0x00000014>;
				reg = <0xef600700 0x00000014>;
				interrupt-parent = <&UIC0>;
				interrupt-parent = <&UIC0>;
				interrupts = <0x2 0x4>;
				interrupts = <0x2 0x4>;
				#address-cells = <1>;
				#size-cells = <0>;
				rtc@68 {
					compatible = "stm,m41t80";
					reg = <0x68>;
					interrupt-parent = <&UIC0>;
					interrupts = <0x9 0x8>;
				};
				sttm@4C {
					compatible = "adm,adm1032";
					reg = <0x4C>;
					interrupt-parent = <&UIC1>;
					interrupts = <0x1E 0x8>; /* CPU_THERNAL_L */
				};
			};
			};


			IIC1: i2c@ef600800 {
			IIC1: i2c@ef600800 {
@@ -250,5 +332,46 @@
			};
			};
		};
		};


		PCIE0: pciex@d00000000 {
			device_type = "pci";
			#interrupt-cells = <1>;
			#size-cells = <2>;
			#address-cells = <3>;
			compatible = "ibm,plb-pciex-apm821xx", "ibm,plb-pciex";
			primary;
			port = <0x0>; /* port number */
			reg = <0x0000000d 0x00000000 0x20000000	/* Config space access */
			       0x0000000c 0x08010000 0x00001000>;	/* Registers */
			dcr-reg = <0x100 0x020>;
			sdr-base = <0x300>;

			/* Outbound ranges, one memory and one IO,
			 * later cannot be changed
			 */
			ranges = <0x02000000 0x00000000 0x80000000 0x0000000e 0x00000000 0x00000000 0x80000000
				  0x02000000 0x00000000 0x00000000 0x0000000f 0x00000000 0x00000000 0x00100000
				  0x01000000 0x00000000 0x00000000 0x0000000f 0x80000000 0x00000000 0x00010000>;

			/* Inbound 2GB range starting at 0 */
			dma-ranges = <0x42000000 0x0 0x0 0x0 0x0 0x0 0x80000000>;

			/* This drives busses 40 to 0x7f */
			bus-range = <0x40 0x7f>;

			/* Legacy interrupts (note the weird polarity, the bridge seems
			 * to invert PCIe legacy interrupts).
			 * We are de-swizzling here because the numbers are actually for
			 * port of the root complex virtual P2P bridge. But I want
			 * to avoid putting a node for it in the tree, so the numbers
			 * below are basically de-swizzled numbers.
			 * The real slot is on idsel 0, so the swizzling is 1:1
			 */
			interrupt-map-mask = <0x0 0x0 0x0 0x7>;
			interrupt-map = <
				0x0 0x0 0x0 0x1 &UIC3 0xc 0x4 /* swizzled int A */
				0x0 0x0 0x0 0x2 &UIC3 0xd 0x4 /* swizzled int B */
				0x0 0x0 0x0 0x3 &UIC3 0xe 0x4 /* swizzled int C */
				0x0 0x0 0x0 0x4 &UIC3 0xf 0x4 /* swizzled int D */>;
		};
	};
	};
};
};
+1 −1
Original line number Original line Diff line number Diff line
@@ -1816,7 +1816,7 @@ static struct cpu_spec __initdata cpu_specs[] = {
		.platform		= "ppc440",
		.platform		= "ppc440",
	},
	},
	{ /* 464 in APM821xx */
	{ /* 464 in APM821xx */
		.pvr_mask		= 0xffffff00,
		.pvr_mask		= 0xfffffff0,
		.pvr_value		= 0x12C41C80,
		.pvr_value		= 0x12C41C80,
		.cpu_name		= "APM821XX",
		.cpu_name		= "APM821XX",
		.cpu_features		= CPU_FTRS_44X,
		.cpu_features		= CPU_FTRS_44X,
+1 −0
Original line number Original line Diff line number Diff line
@@ -23,6 +23,7 @@ config BLUESTONE
	default n
	default n
	select PPC44x_SIMPLE
	select PPC44x_SIMPLE
	select APM821xx
	select APM821xx
	select PPC4xx_PCI_EXPRESS
	select IBM_EMAC_RGMII
	select IBM_EMAC_RGMII
	help
	help
	  This option enables support for the APM APM821xx Evaluation board.
	  This option enables support for the APM APM821xx Evaluation board.
+1 −1
Original line number Original line Diff line number Diff line
@@ -52,7 +52,7 @@ machine_device_initcall(ppc44x_simple, ppc44x_device_probe);
static char *board[] __initdata = {
static char *board[] __initdata = {
	"amcc,arches",
	"amcc,arches",
	"amcc,bamboo",
	"amcc,bamboo",
	"amcc,bluestone",
	"apm,bluestone",
	"amcc,glacier",
	"amcc,glacier",
	"ibm,ebony",
	"ibm,ebony",
	"amcc,eiger",
	"amcc,eiger",
Loading