diff --git a/target/linux/mpc85xx/config-default b/target/linux/mpc85xx/config-default
index dfde393434d4b603e5a20caff3e0120c53b5c610..2b8e84c1cb7e285f911e1648134b029bc5a66268 100644
--- a/target/linux/mpc85xx/config-default
+++ b/target/linux/mpc85xx/config-default
@@ -170,7 +170,10 @@ CONFIG_PAGEFLAGS_EXTENDED=y
 CONFIG_PAGE_OFFSET=0xc0000000
 # CONFIG_PARTITION_ADVANCED is not set
 CONFIG_PCI=y
-# CONFIG_PCIEPORTBUS is not set
+CONFIG_PCIEAER=y
+CONFIG_PCIEASPM=y
+# CONFIG_PCIEASPM_DEBUG is not set
+CONFIG_PCIEPORTBUS=y
 CONFIG_PCI_DOMAINS=y
 CONFIG_PHYLIB=y
 CONFIG_PHYSICAL_ALIGN=0x04000000
diff --git a/target/linux/mpc85xx/patches/110-fix_mpc8548_cds.patch b/target/linux/mpc85xx/patches/110-fix_mpc8548_cds.patch
new file mode 100644
index 0000000000000000000000000000000000000000..3cca8288c6f73d5df1ae4e9c871c75197c9aae44
--- /dev/null
+++ b/target/linux/mpc85xx/patches/110-fix_mpc8548_cds.patch
@@ -0,0 +1,38 @@
+--- a/arch/powerpc/boot/dts/mpc8548cds.dts
++++ b/arch/powerpc/boot/dts/mpc8548cds.dts
+@@ -308,21 +308,21 @@
+ 			};
+ 		};
+ 
+-		serial0: serial@4500 {
+-			cell-index = <0>;
++		serial0: serial@4600 {
++			cell-index = <1>;
+ 			device_type = "serial";
+ 			compatible = "ns16550";
+-			reg = <0x4500 0x100>;	// reg base, size
++			reg = <0x4600 0x100>;	// reg base, size
+ 			clock-frequency = <0>;	// should we fill in in uboot?
+ 			interrupts = <42 2>;
+ 			interrupt-parent = <&mpic>;
+ 		};
+ 
+-		serial1: serial@4600 {
+-			cell-index = <1>;
++		serial1: serial@4500 {
++			cell-index = <0>;
+ 			device_type = "serial";
+ 			compatible = "ns16550";
+-			reg = <0x4600 0x100>;	// reg base, size
++			reg = <0x4500 0x100>;	// reg base, size
+ 			clock-frequency = <0>;	// should we fill in in uboot?
+ 			interrupts = <42 2>;
+ 			interrupt-parent = <&mpic>;
+@@ -564,4 +564,7 @@
+ 				  0x0 0x100000>;
+ 		};
+ 	};
++	chosen {
++		linux,stdout-path = "/soc8548@e0000000/serial@4600";
++	};
+ };