From mboxrd@z Thu Jan 1 00:00:00 1970 From: Grant Erickson Date: Thu, 22 May 2008 14:56:51 -0700 Subject: [U-Boot-Users] [PPC4xx][AMCC][kilauea] Support kilauea under Linux ARCH "powerpc"? In-Reply-To: <669315.25202.qm@web45104.mail.sp1.yahoo.com> Message-ID: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On 5/22/08 2:09 PM, H L wrote: > Hope all will forgive the Linux incursion, but was hoping someone here might > have some insight to any effort under way for supporting the kilauea board > under the "powerpc" ARCH in Linux 2.6. The initial support of this board > appears supported under "ppc" in 2.6.23. My read of various forums indicates > that "official" support of ARCH "ppc" is going away and platforms therein are > (or have been) migrated to "powerpc", I did find kilauea board code under > "powerpc" in 2.6.25.xx at kernel.org, however while it builds, it won't boot. > I would very much appreciate hearing from anyone who may know of any work or > plans (even rumors related to same, lol) to get it working. Your best approach, at present, is to build from the DENX 2.6 GIT repository at: git://www.denx.de/git/linux-2.6-denx.git Kernel.org top-of-tree should* also boot; however, I suspect you ran into the same problem I ran into with "it doesn't boot" in arch/powerpc. The 'arch/powerpc' directory requires booting with BOTH a kernel image (uImage) and a flattened device tree (FDT) device tree blob (DTB). The device tree source (DTS) files are in linux/arch/powerpc/boot/dts/. The 'net_nfs' script in the default u-boot-1.3.3 "Kilauea" environment details how this is done: net_nfs=tftp ${kernel_addr_r} ${bootfile}; tftp ${fdt_addr_r} ${fdt_file}; run nfsargs addip addtty; "bootm ${kernel_addr_r} - ${fdt_addr_r} So, basically, you need to put the uImage at some RAM address (e.g. kernel_addr_r) and the DTB at some RAM address (e.g. fdt_addr_r). A more "advanced technique" involves enabling FIT image support in u-boot and booting a FIT multi-image (see u-boot-1.3.3/doc/uImage.FIT/...) consisting of a compressed kernel image (i.e. vmlinux.bin.gz) and a DTB. Such an image is generated with the u-boot 'mkimage' command and the following input file: / { description = "Linux Kernel with Device Tree"; #address-cells = <1>; images { kernel at 1 { description = "Kernel"; data = /incbin/("@KERNEL@"); type = "kernel"; arch = "@ARCH@"; os = "@OS@"; compression = "gzip"; load = <00000000>; entry = <00000000>; hash at 1 { algo = "crc32"; }; }; fdt at 1 { description = "Device Tree"; data = /incbin/("@FDT@"); type = "flat_dt"; arch = "@ARCH@"; compression = "none"; hash at 1 { algo = "crc32"; }; }; }; configurations { default = "config at 1"; config at 1 { description = "Kernel with Device Tree"; kernel = "kernel at 1"; fdt = "fdt at 1"; }; }; }; Replace @FOO@ above with values appropriate for your environment. Regards, Grant Erickson