linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* Linux on ppc440gp
       [not found] <75413B9E73E7F04B96503BC6DAF2C5D19054A3F20E@ALTPHYEMBEVSP30.RES.AD.JPL>
@ 2010-10-06 14:35 ` Gorelik, Jacob (335F)
  2010-10-06 23:51   ` Benjamin Herrenschmidt
  0 siblings, 1 reply; 4+ messages in thread
From: Gorelik, Jacob (335F) @ 2010-10-06 14:35 UTC (permalink / raw)
  To: linuxppc-dev@lists.ozlabs.org


[-- Attachment #1.1: Type: text/plain, Size: 260 bytes --]

Hello,

I am trying to run linux on a custom PPC440GP board; however, something goes wrong early in the boot process. I am not sure if the problem is in the device tree or in the memory map.
I've attached the log and the config files.

Thank you,
Jacob

[-- Attachment #1.2: Type: text/html, Size: 468 bytes --]

[-- Attachment #2: log.txt --]
[-- Type: application/octet-stream, Size: 2720 bytes --]

Using Starter440 machine description
Linux version 2.6.36-rc5 (jacob@jacob-laptop) (gcc version 4.2.2) #6 Tue Oct 5 15:42:56 PDT 2010
Found initrd at 0xcee3a000:0xcefff155
bootconsole [udbg0] enabled
setup_arch: bootmem
arch: exit
Zone PFN ranges:
  DMA      0x00000000 -> 0x0000f000
  Normal   empty
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
    0: 0x00000000 -> 0x0000f000
MMU: Allocated 1088 bytes of context maps for 255 contexts
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 60960
Kernel command line: root=/dev/ram rw ip=137.79.31.87:137.79.31.21:137.79.31.1:255.255.255.0:starter440:eth0:off panic=1 console=ttyS0,57600
PID hash table entries: 1024 (order: 0, 4096 bytes)
Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
Memory: 238492k/245760k available (3060k kernel code, 7268k reserved, 100k data, 107k bss, 136k init)
Kernel virtual memory layout:
  * 0xfffdf000..0xfffff000  : fixmap
  * 0x0ee00000..0x0f000000  : consistent mem
  * 0x0edfe000..0x0ee00000  : early ioremap
  * 0xd1000000..0x0edfe000  : vmalloc & ioremap
SLUB: Genslabs=11, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
Hierarchical RCU implementation.
	RCU-based detection of stalled CPUs is disabled.
	Verbose stalled-CPUs detection is disabled.
NR_IRQS:512 nr_irqs:512
UIC0 (32 IRQ sources) at DCR 0xc0
UIC1 (32 IRQ sources) at DCR 0xd0
clocksource: timebase mult[d55555] shift[22] registered
Data machine check in kernel mode.
Oops: Machine check, sig: 7 [#1]
Starter440
last sysfs file: 
Modules linked in:
NIP: c0009320 LR: c000c9d4 CTR: c00088e8
REGS: cee35f10 TRAP: 0202   Not tainted  (2.6.36-rc5)
MSR: 00021000 <ME,CE>  CR: 42f22f22  XER: 00000000
TASK = c0300350[0] 'swapper' THREAD: c0310000
GPR00: 08000000 c0311f00 c0300350 c0311f10 c0301110 00000000 00000077 c0303be8 
GPR08: c0301110 c000c9d4 00021002 c0009320 c0300530 00000000 00000000 00000000 
GPR16: 0ffe2864 0ffe7600 00000000 00000000 00000000 00000000 c0000020 00000001 
GPR24: 00000000 00000000 00000e60 c03174d8 c0310000 c02f7878 c02f7668 c0316320 
NIP [c0009320] timer_interrupt+0x0/0x118
LR [c000c9d4] ret_from_except+0x0/0x18
Call Trace:
[c0311f00] [c0050130] notifier_call_chain+0x60/0xac (unreliable)
--- Exception: 901 at start_kernel+0x194/0x2a4
    LR = start_kernel+0x184/0x2a4
[c0311ff0] [c0000060] _start+0x60/0xbc
Instruction dump:
409efff0 7d6a5b78 7d495378 39400000 7d404378 39600000 3d00c030 39081110 
7d295b78 90080064 91280060 4e800020 <9421fff0> 7c0802a6 bfc10008 90010014 
---[ end trace 31fd0ba7d8756001 ]---
Kernel panic - not syncing: Attempted to kill the idle task!
Call Trace:
Rebooting in 1 seconds..


[-- Attachment #3: auto.conf --]
[-- Type: application/octet-stream, Size: 7502 bytes --]

#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.36-rc5
# Tue Oct  5 14:23:31 2010
#
CONFIG_CRC32=y
CONFIG_SECCOMP=y
CONFIG_FLATMEM_MANUAL=y
CONFIG_INOTIFY_USER=y
CONFIG_NETWORK_FILESYSTEMS=y
CONFIG_NET_ETHERNET=y
CONFIG_EXPERIMENTAL=y
CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
CONFIG_SSB_POSSIBLE=y
CONFIG_CHELSIO_T4_DEPENDS=y
CONFIG_FSNOTIFY=y
CONFIG_ARCH_FLATMEM_ENABLE=y
CONFIG_DEFAULT_SECURITY_DAC=y
CONFIG_NETDEV_1000=y
CONFIG_AUDIT_ARCH=y
CONFIG_DEFAULT_TCP_CONG="cubic"
CONFIG_IBM_NEW_EMAC=y
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
CONFIG_WLAN=y
CONFIG_CONNECTOR=y
CONFIG_LEGACY_PTYS=y
CONFIG_SERIAL_8250=y
CONFIG_OF_DEVICE=y
CONFIG_SCHED_OMIT_FRAME_POINTER=y
CONFIG_BRANCH_PROFILE_NONE=y
CONFIG_VGA_ARB=y
CONFIG_FORCE_MAX_ZONEORDER=11
CONFIG_MTD_PARTITIONS=y
CONFIG_PRINTK=y
CONFIG_TIMERFD=y
CONFIG_MTD_CFI_I2=y
CONFIG_BOUNCE=y
CONFIG_SHMEM=y
CONFIG_MTD=y
CONFIG_DNOTIFY=y
CONFIG_ENABLE_MUST_CHECK=y
CONFIG_NR_IRQS=512
CONFIG_BOOKE=y
CONFIG_BLK_DEV_INITRD=y
CONFIG_CHELSIO_T3_DEPENDS=y
CONFIG_ZLIB_INFLATE=y
CONFIG_IP_PNP=y
CONFIG_STACKTRACE_SUPPORT=y
CONFIG_ARCH_HAS_WALK_MEMORY=y
CONFIG_LOCKD=y
CONFIG_JFFS2_FS=y
CONFIG_PPC_OF=y
CONFIG_MTD_CFI_UTIL=y
CONFIG_PPC_ADV_DEBUG_DVCS=2
CONFIG_STANDALONE=y
CONFIG_BLOCK=y
CONFIG_HAVE_IDE=y
CONFIG_INIT_ENV_ARG_LIMIT=32
CONFIG_ROOT_NFS=y
CONFIG_BUG=y
CONFIG_OF_IRQ=y
CONFIG_DEVKMEM=y
CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
CONFIG_PPC_ADV_DEBUG_DAC_RANGE=y
CONFIG_DTC=y
CONFIG_SPLIT_PTLOCK_CPUS=4
CONFIG_WORD_SIZE=32
CONFIG_MFD_SUPPORT=y
CONFIG_ZONE_DMA=y
CONFIG_IBM_NEW_EMAC_RX_COPY_THRESHOLD=256
CONFIG_ENABLE_WARN_DEPRECATED=y
CONFIG_VGA_ARB_MAX_GPUS=16
CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
CONFIG_PPC_MMU_NOHASH=y
CONFIG_EXTRA_TARGETS=""
CONFIG_NETDEVICES=y
CONFIG_IOSCHED_DEADLINE=y
CONFIG_EVENTFD=y
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_PROC_PAGE_MONITOR=y
CONFIG_SERIAL_8250_EXTENDED=y
CONFIG_MTD_OF_PARTS=y
CONFIG_SELECT_MEMORY_MODEL=y
CONFIG_MTD_CFI=y
CONFIG_JFFS2_FS_DEBUG=0
CONFIG_HAVE_DYNAMIC_FTRACE=y
CONFIG_MAGIC_SYSRQ=y
CONFIG_SPARSE_IRQ=y
CONFIG_DEFAULT_CFQ=y
CONFIG_MAX_ACTIVE_REGIONS=32
CONFIG_DEBUG_BUGVERBOSE=y
CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_IOSCHED_CFQ=y
CONFIG_GENERIC_FIND_LAST_BIT=y
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_PPC_UDBG_16550=y
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
CONFIG_DETECT_HUNG_TASK=y
CONFIG_RD_GZIP=y
CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
CONFIG_TREE_RCU=y
CONFIG_LBDAF=y
CONFIG_KERNEL_START=0xc0000000
CONFIG_PPC=y
CONFIG_BINFMT_ELF=y
CONFIG_HOTPLUG=y
CONFIG_SLABINFO=y
CONFIG_IBM_NEW_EMAC_RX_SKB_HEADROOM=0
CONFIG_JFFS2_FS_WRITEBUFFER=y
CONFIG_440GP=y
CONFIG_SERIAL_OF_PLATFORM=y
CONFIG_BROKEN_ON_SMP=y
CONFIG_TMPFS=y
CONFIG_ANON_INODES=y
CONFIG_FUTEX=y
CONFIG_IP_PNP_DHCP=y
CONFIG_PPC_ADV_DEBUG_IACS=4
CONFIG_SERIAL_CORE_CONSOLE=y
CONFIG_SLUB_DEBUG=y
CONFIG_SYSVIPC=y
CONFIG_MODULES=y
CONFIG_ARCH_HIBERNATION_POSSIBLE=y
CONFIG_UNIX=y
CONFIG_NETDEV_10000=y
CONFIG_NFS_FS=y
CONFIG_IBM_NEW_EMAC_POLL_WEIGHT=32
CONFIG_MISC_DEVICES=y
CONFIG_ARCH_SUPPORTS_MSI=y
CONFIG_MTD_CFI_I1=y
CONFIG_NFS_COMMON=y
CONFIG_PPC_WERROR=y
CONFIG_LOG_BUF_SHIFT=14
CONFIG_EXTRA_FIRMWARE=""
CONFIG_PROC_EVENTS=y
CONFIG_VIRT_TO_BUS=y
CONFIG_SERIAL_8250_RUNTIME_UARTS=4
CONFIG_HAVE_LATENCYTOP_SUPPORT=y
CONFIG_HAVE_FUNCTION_TRACER=y
CONFIG_IBM_NEW_EMAC_TXB=64
CONFIG_SLUB=y
CONFIG_JFFS2_ZLIB=y
CONFIG_VM_EVENT_COUNTERS=y
CONFIG_DEBUG_FS=y
CONFIG_BASE_FULL=y
CONFIG_ZLIB_DEFLATE=y
CONFIG_SUNRPC=y
CONFIG_FW_LOADER=y
CONFIG_KALLSYMS=y
CONFIG_PCI=y
CONFIG_GENERIC_ATOMIC64=y
CONFIG_PPC_INDIRECT_PCI=y
CONFIG_MATH_EMULATION=y
CONFIG_PCI_QUIRKS=y
CONFIG_SIGNALFD=y
CONFIG_LOCKD_V4=y
CONFIG_HAS_IOMEM=y
CONFIG_PROC_DEVICETREE=y
CONFIG_PPC_PCI_CHOICE=y
CONFIG_PROC_KCORE=y
CONFIG_MTD_MAP_BANK_WIDTH_1=y
CONFIG_CONSTRUCTORS=y
CONFIG_EPOLL=y
CONFIG_PPC_ADV_DEBUG_DACS=2
CONFIG_NET=y
CONFIG_EXT2_FS=y
CONFIG_MTD_GEN_PROBE=y
CONFIG_PACKET=y
CONFIG_NFS_V3=y
CONFIG_INET=y
CONFIG_IP_PNP_BOOTP=y
CONFIG_PREVENT_FIRMWARE_BUILD=y
CONFIG_PCI_DOMAINS=y
CONFIG_IRQ_PER_CPU=y
CONFIG_HAVE_KPROBES=y
CONFIG_PPC32=y
CONFIG_IBM_NEW_EMAC_RXB=128
CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_LOCKDEP_SUPPORT=y
CONFIG_POSIX_MQUEUE=y
CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
CONFIG_USB_ARCH_HAS_EHCI=y
CONFIG_MTD_BLKDEVS=y
CONFIG_SYSCTL_SYSCALL=y
CONFIG_NEED_DMA_MAP_STATE=y
CONFIG_GENERIC_FIND_NEXT_BIT=y
CONFIG_PAGE_OFFSET=0xc0000000
CONFIG_PREEMPT_NONE=y
CONFIG_KALLSYMS_ALL=y
CONFIG_GENERIC_BUG=y
CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
CONFIG_INET_TCP_DIAG=y
CONFIG_IOSCHED_NOOP=y
CONFIG_PTE_64BIT=y
CONFIG_HAVE_IOREMAP_PROT=y
CONFIG_DEBUG_KERNEL=y
CONFIG_COMPAT_BRK=y
CONFIG_LOCALVERSION=""
CONFIG_SCHED_DEBUG=y
CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
CONFIG_HAVE_DMA_API_DEBUG=y
CONFIG_USB_ARCH_HAS_HCD=y
CONFIG_SCSI_MOD=y
CONFIG_SERIAL_CORE=y
CONFIG_EMBEDDED=y
CONFIG_ARCH_PHYS_ADDR_T_64BIT=y
CONFIG_HAVE_KRETPROBES=y
CONFIG_CHELSIO_T4VF_DEPENDS=y
CONFIG_INLINE_READ_UNLOCK=y
CONFIG_HAS_DMA=y
CONFIG_LOWMEM_SIZE=0x0f000000
CONFIG_LOCALVERSION_AUTO=y
CONFIG_JFFS2_RTIME=y
CONFIG_MISC_FILESYSTEMS=y
CONFIG_FTRACE=y
CONFIG_OF_DYNAMIC=y
CONFIG_INLINE_READ_UNLOCK_IRQ=y
CONFIG_NEED_SG_DMA_LENGTH=y
CONFIG_PPC_DCR_NATIVE=y
CONFIG_PHYS_64BIT=y
CONFIG_TASK_SIZE=0x00200000
CONFIG_RT_MUTEXES=y
CONFIG_PCI_SYSCALL=y
CONFIG_WIRELESS=y
CONFIG_HZ_250=y
CONFIG_ARCH_POPULATES_NODE_MAP=y
CONFIG_FRAME_WARN=1024
CONFIG_GENERIC_HWEIGHT=y
CONFIG_INITRAMFS_SOURCE=""
CONFIG_INLINE_SPIN_UNLOCK=y
CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
CONFIG_HAS_IOPORT=y
CONFIG_HZ=250
CONFIG_SERIAL_8250_SHARE_IRQ=y
CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
CONFIG_SERIAL_8250_NR_UARTS=4
CONFIG_DEFAULT_IOSCHED="cfq"
CONFIG_NLATTR=y
CONFIG_TCP_CONG_CUBIC=y
CONFIG_FIRMWARE_IN_KERNEL=y
CONFIG_IBM_NEW_EMAC_ZMII=y
CONFIG_SYSFS=y
CONFIG_MTD_PHYSMAP_OF=y
CONFIG_MSDOS_PARTITION=y
CONFIG_HAVE_OPROFILE=y
CONFIG_THERMAL=y
CONFIG_4xx=y
CONFIG_PPC_MMU_NOHASH_32=y
CONFIG_HAVE_ARCH_KGDB=y
CONFIG_IP_FIB_HASH=y
CONFIG_USB_ARCH_HAS_OHCI=y
CONFIG_ZONE_DMA_FLAG=1
CONFIG_CONSISTENT_SIZE=0x00200000
CONFIG_STARTER440=y
CONFIG_LEGACY_PTY_COUNT=256
CONFIG_MTD_MAP_BANK_WIDTH_2=y
CONFIG_GENERIC_CMOS_UPDATE=y
CONFIG_DEFAULT_SECURITY=""
CONFIG_HAVE_DMA_ATTRS=y
CONFIG_EARLY_PRINTK=y
CONFIG_PPC_ADV_DEBUG_REGS=y
CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
CONFIG_BASE_SMALL=0
CONFIG_PPC_4K_PAGES=y
CONFIG_PROC_FS=y
CONFIG_MTD_BLOCK=y
CONFIG_FLATMEM=y
CONFIG_PAGEFLAGS_EXTENDED=y
CONFIG_SYSCTL=y
CONFIG_PHYS_ADDR_T_64BIT=y
CONFIG_HAVE_ARCH_TRACEHOOK=y
CONFIG_HAVE_PERF_EVENTS=y
CONFIG_CRAMFS=y
CONFIG_PPC_DCR=y
CONFIG_NOT_COHERENT_CACHE=y
CONFIG_BLK_DEV=y
CONFIG_OF_FLATTREE=y
CONFIG_TRACING_SUPPORT=y
CONFIG_UNIX98_PTYS=y
CONFIG_4xx_SOC=y
CONFIG_ARCH_MAY_HAVE_PC_FDC=y
CONFIG_INET_DIAG=y
CONFIG_ELF_CORE=y
CONFIG_MTD_JEDECPROBE=y
CONFIG_USB_SUPPORT=y
CONFIG_MTD_CHAR=y
CONFIG_FLAT_NODE_MEM_MAP=y
CONFIG_BLK_DEV_RAM=y
CONFIG_POSIX_MQUEUE_SYSCTL=y
CONFIG_ARCH_HAS_ILOG2_U32=y
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
CONFIG_MTD_CFI_AMDSTD=y
CONFIG_SYSVIPC_SYSCTL=y
CONFIG_OF_ADDRESS=y
CONFIG_DECOMPRESS_GZIP=y
CONFIG_CROSS_COMPILE=""
CONFIG_44x=y
CONFIG_PRINT_STACK_DEPTH=64
CONFIG_SWAP=y
CONFIG_MODULE_UNLOAD=y
CONFIG_RCU_FANOUT=32
CONFIG_BITREVERSE=y
CONFIG_DEVPORT=y
CONFIG_STDBINUTILS=y
CONFIG_BLK_DEV_RAM_SIZE=35000
CONFIG_FILE_LOCKING=y
CONFIG_AIO=y
CONFIG_OF=y
CONFIG_GENERIC_TIME_VSYSCALL=y
CONFIG_GENERIC_HARDIRQS=y
CONFIG_SYSCTL_SYSCALL_CHECK=y
CONFIG_MTD_MAP_BANK_WIDTH_4=y
CONFIG_PHYSICAL_START=0x00000000
CONFIG_HAVE_MEMBLOCK=y
CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
CONFIG_KALLSYMS_EXTRA_PASS=y
CONFIG_PROC_SYSCTL=y
CONFIG_MMU=y
CONFIG_INLINE_WRITE_UNLOCK=y

[-- Attachment #4: starter440.dts --]
[-- Type: application/octet-stream, Size: 7845 bytes --]

/*
 * Device Tree Source for BRE Starter440
 *
 * Copyright (c) 2006, 2007 IBM Corp.
 * Josh Boyer <jwboyer@linux.vnet.ibm.com>, David Gibson <dwg@au1.ibm.com>
 *
 * 2010 JPL
 *
 * 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,starter440";
	compatible = "ibm,starter440";
	dcr-parent = <&{/cpus/cpu@0}>;

	aliases {
		ethernet0 = &EMAC0;
		ethernet1 = &EMAC1;
		serial0 = &UART0;
		serial1 = &UART1;
	};

	cpus {
		#address-cells = <1>;
		#size-cells = <0>;

		cpu@0 {
			device_type = "cpu";
			model = "PowerPC,440GP";
			reg = <0x00000000>;
			clock-frequency = <0>; // Filled in by zImage
			timebase-frequency = <0>; // Filled in by zImage
			i-cache-line-size = <32>;
			d-cache-line-size = <32>;
			i-cache-size = <32768>; /* 32 kB */
			d-cache-size = <32768>; /* 32 kB */
			dcr-controller;
			dcr-access-method = "native";
		};
	};

	memory {
		device_type = "memory";
		reg = <0x00000000 0x00000000 0x00000000>; // Filled in by zImage
	};

	UIC0: interrupt-controller0 {
		compatible = "ibm,uic-440gp", "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-440gp", "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>;
	};

	CPC0: cpc {
		compatible = "ibm,cpc-440gp";
		dcr-reg = <0x0b0 0x003 0x0e0 0x010>;
		// FIXME: anything else?
	};

	plb {
		compatible = "ibm,plb-440gp", "ibm,plb4";
		#address-cells = <2>;
		#size-cells = <1>;
		ranges;
		clock-frequency = <0>; // Filled in by zImage

		SDRAM0: memory-controller {
			compatible = "ibm,sdram-440gp";
			dcr-reg = <0x010 0x002>;
			// FIXME: anything else?
		};

		SRAM0: sram {
			compatible = "ibm,sram-440gp";
			dcr-reg = <0x020 0x008 0x00a 0x001>;
		};

		DMA0: dma {
			// FIXME: ???
			compatible = "ibm,dma-440gp";
			dcr-reg = <0x100 0x027>;
		};

		MAL0: mcmal {
			compatible = "ibm,mcmal-440gp", "ibm,mcmal";
			dcr-reg = <0x180 0x062>;
			num-tx-chans = <4>;
			num-rx-chans = <4>;
			interrupt-parent = <&MAL0>;
			interrupts = <0x0 0x1 0x2 0x3 0x4>;
			#interrupt-cells = <1>;
			#address-cells = <0>;
			#size-cells = <0>;
			interrupt-map = </*TXEOB*/ 0x0 &UIC0 0xa 0x4
					 /*RXEOB*/ 0x1 &UIC0 0xb 0x4
					 /*SERR*/  0x2 &UIC1 0x0 0x4
					 /*TXDE*/  0x3 &UIC1 0x1 0x4
					 /*RXDE*/  0x4 &UIC1 0x2 0x4>;
			interrupt-map-mask = <0xffffffff>;
		};

		OPB0: opb {
			compatible = "ibm,opb-440gp", "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>;
			dcr-reg = <0x090 0x00b>;
			interrupt-parent = <&UIC1>;
			interrupts = <0x7 0x4>;
			clock-frequency = <0>; // Filled in by zImage

			EBC0: ebc {
				compatible = "ibm,ebc-440gp", "ibm,ebc";
				dcr-reg = <0x012 0x002>;
				#address-cells = <2>;
				#size-cells = <1>;
				clock-frequency = <0>; // Filled in by zImage
				// ranges property is supplied by zImage
				// based on firmware's configuration of the
				// EBC bridge
				interrupts = <0x5 0x4>;
				interrupt-parent = <&UIC1>;

				flash@0,0 {
					compatible = "jedec-flash";
					bank-width = <1>;
					reg = <0x00000000 0x00000000 0x00400000>;
					#address-cells = <1>;
					#size-cells = <1>;
					partition@0 {
						label = "bank1";
						reg = <0x00000000 0x00200000>;
					};
					partition@200000 {
						label = "bank2";
						reg = <0x00200000 0x00200000>;
					};
				};

				ir@1,0 {
					reg = <0x00000001 0x00000000 0x00000010>;
				};

			};

			UART0: serial@40000200 {
				device_type = "serial";
				compatible = "ns16550";
				reg = <0x40000200 0x00000008>;
				virtual-reg = <0xe0000200>;
				clock-frequency = <0x388394>;
				current-speed = <0xe100>;
				interrupt-parent = <&UIC0>;
				interrupts = <0x0 0x4>;
			};

			UART1: serial@40000300 {
				device_type = "serial";
				compatible = "ns16550";
				reg = <0x40000300 0x00000008>;
				virtual-reg = <0xe0000300>;
				clock-frequency = <0x388394>;
				current-speed = <0xe100>;
				interrupt-parent = <&UIC0>;
				interrupts = <0x1 0x4>;
			};

			IIC0: i2c@40000400 {
				/* FIXME */
				compatible = "ibm,iic-440gp", "ibm,iic";
				reg = <0x40000400 0x00000014>;
				interrupt-parent = <&UIC0>;
				interrupts = <0x2 0x4>;
			};
			IIC1: i2c@40000500 {
				/* FIXME */
				compatible = "ibm,iic-440gp", "ibm,iic";
				reg = <0x40000500 0x00000014>;
				interrupt-parent = <&UIC0>;
				interrupts = <0x3 0x4>;
			};

			GPIO0: gpio@40000700 {
				/* FIXME */
				compatible = "ibm,gpio-440gp";
				reg = <0x40000700 0x00000020>;
			};

			ZMII0: emac-zmii@40000780 {
				compatible = "ibm,zmii-440gp", "ibm,zmii";
				reg = <0x40000780 0x0000000c>;
			};

			EMAC0: ethernet@40000800 {
				device_type = "network";
				compatible = "ibm,emac-440gp", "ibm,emac";
				interrupt-parent = <&UIC1>;
				interrupts = <0x1c 0x4 0x1d 0x4>;
				reg = <0x40000800 0x00000070>;
				local-mac-address = [000000000000]; // Filled in by zImage
				mal-device = <&MAL0>;
				mal-tx-channel = <0 1>;
				mal-rx-channel = <0>;
				cell-index = <0>;
				max-frame-size = <1500>;
				rx-fifo-size = <4096>;
				tx-fifo-size = <2048>;
				phy-mode = "rmii";
				phy-map = <0x00000001>;
				zmii-device = <&ZMII0>;
				zmii-channel = <0>;
			};
			EMAC1: ethernet@40000900 {
				device_type = "network";
				compatible = "ibm,emac-440gp", "ibm,emac";
				interrupt-parent = <&UIC1>;
				interrupts = <0x1e 0x4 0x1f 0x4>;
				reg = <0x40000900 0x00000070>;
				local-mac-address = [000000000000]; // Filled in by zImage
				mal-device = <&MAL0>;
				mal-tx-channel = <2 3>;
				mal-rx-channel = <1>;
				cell-index = <1>;
				max-frame-size = <1500>;
				rx-fifo-size = <4096>;
				tx-fifo-size = <2048>;
				phy-mode = "rmii";
				phy-map = <0x00000001>;
				zmii-device = <&ZMII0>;
				zmii-channel = <1>;
			};


			GPT0: gpt@40000a00 {
				/* FIXME */
				reg = <0x40000a00 0x000000d4>;
				interrupt-parent = <&UIC0>;
				interrupts = <0x12 0x4 0x13 0x4 0x14 0x4 0x15 0x4 0x16 0x4>;
			};

		};

		PCIX0: pci@20ec00000 {
			device_type = "pci";
			#interrupt-cells = <1>;
			#size-cells = <2>;
			#address-cells = <3>;
			compatible = "ibm,plb440gp-pcix", "ibm,plb-pcix";
			primary;
			reg = <0x00000002 0x0ec00000 0x00000008	/* Config space access */
			       0x00000000 0x00000000 0x00000000		/* no IACK cycles */
			       0x00000002 0x0ed00000 0x00000004     /* Special cycles */
			       0x00000002 0x0ec80000 0x000000f0	/* Internal registers */
			       0x00000002 0x0ec80100 0x000000fc>;	/* Internal messaging registers */

			/* Outbound ranges, one memory and one IO,
			 * later cannot be changed
			 */
			ranges = <0x02000000 0x00000000 0x80000000 0x00000003 0x80000000 0x00000000 0x80000000
				  0x01000000 0x00000000 0x00000000 0x00000002 0x08000000 0x00000000 0x00010000>;

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

			/* Ebony has all 4 IRQ pins tied together per slot */
			interrupt-map-mask = <0xf800 0x0 0x0 0x0>;
			interrupt-map = <
				/* IDSEL 1 */
				0x800 0x0 0x0 0x0 &UIC0 0x17 0x8

				/* IDSEL 2 */
				0x1000 0x0 0x0 0x0 &UIC0 0x18 0x8

				/* IDSEL 3 */
				0x1800 0x0 0x0 0x0 &UIC0 0x19 0x8

				/* IDSEL 4 */
				0x2000 0x0 0x0 0x0 &UIC0 0x1a 0x8
			>;
		};
	};

	chosen {
		linux,stdout-path = "/plb/opb/serial@40000200";
	};
};

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Linux on ppc440gp
  2010-10-06 14:35 ` Linux on ppc440gp Gorelik, Jacob (335F)
@ 2010-10-06 23:51   ` Benjamin Herrenschmidt
  2010-10-07  7:32     ` Stefan Roese
  0 siblings, 1 reply; 4+ messages in thread
From: Benjamin Herrenschmidt @ 2010-10-06 23:51 UTC (permalink / raw)
  To: Gorelik, Jacob (335F); +Cc: linuxppc-dev@lists.ozlabs.org

On Wed, 2010-10-06 at 07:35 -0700, Gorelik, Jacob (335F) wrote:
> UIC0 (32 IRQ sources) at DCR 0xc0
> UIC1 (32 IRQ sources) at DCR 0xd0 

That looks bad. Your device-tree probably. Check the DCR bindings.

I'm on vacation right now, I don't have time to review it in details,
but ask me again next week if you don't find some help in the meantime.

Cheers,
Ben.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Linux on ppc440gp
  2010-10-06 23:51   ` Benjamin Herrenschmidt
@ 2010-10-07  7:32     ` Stefan Roese
  2010-10-07  8:03       ` Benjamin Herrenschmidt
  0 siblings, 1 reply; 4+ messages in thread
From: Stefan Roese @ 2010-10-07  7:32 UTC (permalink / raw)
  To: linuxppc-dev; +Cc: Gorelik, Jacob (335F)

On Thursday 07 October 2010 01:51:44 Benjamin Herrenschmidt wrote:
> On Wed, 2010-10-06 at 07:35 -0700, Gorelik, Jacob (335F) wrote:
> > UIC0 (32 IRQ sources) at DCR 0xc0
> > UIC1 (32 IRQ sources) at DCR 0xd0
> 
> That looks bad. Your device-tree probably. Check the DCR bindings.

Why does this look bad? On 440EPx this looks like this:

UIC0 (32 IRQ sources) at DCR 0xc0
UIC1 (32 IRQ sources) at DCR 0xd0
UIC2 (32 IRQ sources) at DCR 0xe0

So I don't see a problem with the output above.

Cheers,
Stefan

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Linux on ppc440gp
  2010-10-07  7:32     ` Stefan Roese
@ 2010-10-07  8:03       ` Benjamin Herrenschmidt
  0 siblings, 0 replies; 4+ messages in thread
From: Benjamin Herrenschmidt @ 2010-10-07  8:03 UTC (permalink / raw)
  To: Stefan Roese; +Cc: linuxppc-dev, Gorelik, Jacob (335F)

On Thu, 2010-10-07 at 09:32 +0200, Stefan Roese wrote:
> On Thursday 07 October 2010 01:51:44 Benjamin Herrenschmidt wrote:
> > On Wed, 2010-10-06 at 07:35 -0700, Gorelik, Jacob (335F) wrote:
> > > UIC0 (32 IRQ sources) at DCR 0xc0
> > > UIC1 (32 IRQ sources) at DCR 0xd0
> > 
> > That looks bad. Your device-tree probably. Check the DCR bindings.
> 
> Why does this look bad? On 440EPx this looks like this:

Because of the shit in my eyes :-) I misread 0x00 for some reason...

> UIC0 (32 IRQ sources) at DCR 0xc0
> UIC1 (32 IRQ sources) at DCR 0xd0
> UIC2 (32 IRQ sources) at DCR 0xe0
> 
> So I don't see a problem with the output above.

Right, me neither now that I had a shower !

Cheers,
Ben.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2010-10-07  8:03 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <75413B9E73E7F04B96503BC6DAF2C5D19054A3F20E@ALTPHYEMBEVSP30.RES.AD.JPL>
2010-10-06 14:35 ` Linux on ppc440gp Gorelik, Jacob (335F)
2010-10-06 23:51   ` Benjamin Herrenschmidt
2010-10-07  7:32     ` Stefan Roese
2010-10-07  8:03       ` Benjamin Herrenschmidt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).