On Fri, Oct 03, 2008 at 10:07:19AM +1000, Benjamin Herrenschmidt wrote: >Index: linux-work/arch/powerpc/boot/dts/iss4xx.dts >=================================================================== >--- /dev/null 1970-01-01 00:00:00.000000000 +0000 >+++ linux-work/arch/powerpc/boot/dts/iss4xx.dts 2008-10-02 >15:46:11.000000000 +1000 >@@ -0,0 +1,107 @@ >+/* >+ * Device Tree Source for IBM Ebony
Lazy. ;) >+ * >+ * Copyright (c) 2006, 2007 IBM Corp. >+ * Josh Boyer <[EMAIL PROTECTED]>, David Gibson <[EMAIL PROTECTED]> >+ * >+ * FIXME: Draft only! >+ * >+ * This file is licensed under the terms of the GNU General Public >+ * License version 2. This program is licensed "as is" without >+ * any warranty of any kind, whether express or implied. >+ */ >+ >+/dts-v1/; >+ >+/ { >+ #address-cells = <2>; >+ #size-cells = <1>; >+ model = "ibm,iss-4xx"; >+ compatible = "ibm,iss-4xx"; >+ dcr-parent = <&{/cpus/[EMAIL PROTECTED]>; >+ >+ aliases { >+ serial0 = &UART0; >+ }; >+ >+ cpus { >+ #address-cells = <1>; >+ #size-cells = <0>; >+ >+ [EMAIL PROTECTED] { >+ device_type = "cpu"; >+ model = "PowerPC,4xx"; // real CPU changed in sim >+ reg = <0x00000000>; >+ clock-frequency = <100000000>; // 100Mhz :-) >+ timebase-frequency = <100000000>; >+ i-cache-line-size = <32>; // may need fixup in sim >+ d-cache-line-size = <32>; // may need fixup in sim >+ i-cache-size = <32768>; /* may need fixup in sim */ >+ d-cache-size = <32768>; /* may need fixup in sim */ Does "fixup in sim" mean that the simulator itself mucks with the device tree? Or is there some wrapper that does this prior to kernel boot? >+ dcr-controller; >+ dcr-access-method = "native"; >+ }; >+ }; >+ >+ memory { >+ device_type = "memory"; >+ reg = <0x00000000 0x00000000 0x00000000>; // Filled in by zImage >+ }; >+ >+ UIC0: interrupt-controller0 { >+ compatible = "ibm,uic-4xx", "ibm,uic"; >+ interrupt-controller; >+ cell-index = <0>; >+ dcr-reg = <0x0c0 0x009>; >+ #address-cells = <0>; >+ #size-cells = <0>; >+ #interrupt-cells = <2>; >+ >+ }; >+ >+ UIC1: interrupt-controller1 { >+ compatible = "ibm,uic-4xx", "ibm,uic"; >+ interrupt-controller; >+ cell-index = <1>; >+ dcr-reg = <0x0d0 0x009>; >+ #address-cells = <0>; >+ #size-cells = <0>; >+ #interrupt-cells = <2>; >+ interrupts = <0x1e 0x4 0x1f 0x4>; /* cascade */ >+ interrupt-parent = <&UIC0>; >+ }; >+ >+ plb { >+ compatible = "ibm,plb-4xx", "ibm,plb4"; /* Could be PLB6, >doesn't matter */ Why doesn't it matter? >+ #address-cells = <2>; >+ #size-cells = <1>; >+ ranges; >+ clock-frequency = <0>; // Filled in by zImage >+ >+ POB0: opb { >+ compatible = "ibm,opb-4xx", "ibm,opb"; >+ #address-cells = <1>; >+ #size-cells = <1>; >+ /* Wish there was a nicer way of specifying a full >32-bit >+ range */ >+ ranges = <0x00000000 0x00000001 0x00000000 0x80000000 >+ 0x80000000 0x00000001 0x80000000 0x80000000>; >+ clock-frequency = <0>; // Filled in by zImage >+ >+ UART0: [EMAIL PROTECTED] { >+ device_type = "serial"; >+ compatible = "ns16550"; >+ reg = <0x40000200 0x00000008>; >+ virtual-reg = <0xe0000200>; >+ clock-frequency = <11059200>; >+ current-speed = <115200>; >+ interrupt-parent = <&UIC0>; >+ interrupts = <0x0 0x4>; >+ }; >+ }; >+ }; >+ >+ chosen { >+ linux,stdout-path = "/plb/opb/[EMAIL PROTECTED]"; >+ }; >+}; >Index: linux-work/arch/powerpc/platforms/44x/Kconfig >=================================================================== >--- linux-work.orig/arch/powerpc/platforms/44x/Kconfig 2008-10-02 >15:45:47.000000000 +1000 >+++ linux-work/arch/powerpc/platforms/44x/Kconfig 2008-10-02 >15:47:48.000000000 +1000 >@@ -113,6 +113,17 @@ config YOSEMITE > help > This option enables support for the AMCC PPC440EP evaluation board. > >+config ISS4xx >+ bool "ISS 4xx Simulator" >+ depends on (44x || 40x) >+ default n >+ select PPC44x_SIMPLE >+ select 405GP if 40x >+ select 440GP if 44x >+ select PPC_FPU >+ help >+ This option enables support for the IBM ISS simulation environment So I'm going to assume you tested the 40x case and that it works. But I find it a bit odd to be in the 44x Kconfig. >Index: linux-work/arch/powerpc/configs/44x/iss4xx_defconfig >=================================================================== >--- /dev/null 1970-01-01 00:00:00.000000000 +0000 >+++ linux-work/arch/powerpc/configs/44x/iss4xx_defconfig 2008-10-02 >15:46:11.000000000 +1000 So.. I'm not really opposed, but do you need a full defconfig for this? I'm wondering if you could just add the iss4xx platform to the multi-board ppc44x_defconfig and call it good. josh _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev