From: Clint Adams Date: Fri, 1 Jun 2012 01:04:49 +0000 (+0000) Subject: u-boot (2012.04.01-2) unstable; urgency=low X-Git-Tag: archive/raspbian/2016.11+dfsg1-3+rpi1~1^2^2^2~7 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=53a5a1555a9e85871f40390f29c2a24dd878b27b;p=u-boot.git u-boot (2012.04.01-2) unstable; urgency=low * Remove code duplication in kerma-sheevaplug-mvsdio.diff. closes: #674230. [dgit import unpatched u-boot 2012.04.01-2] --- 53a5a1555a9e85871f40390f29c2a24dd878b27b diff --cc debian/README.Debian index 000000000,000000000..93f81f799 new file mode 100644 --- /dev/null +++ b/debian/README.Debian @@@ -1,0 -1,0 +1,24 @@@ ++== Installation == ++ ++At this point, you must install U-Boot to flash yourself. ++ ++Some examples using mtd-utils: ++ ++SheevaPlug: ++ ++ sudo flash_eraseall /dev/mtd0 ++ sudo nandwrite -p /dev/mtd0 /usr/lib/u-boot/sheevaplug/u-boot.kwb ++ ++GuruPlug: ++ ++ sudo flash_eraseall /dev/mtd0 ++ sudo nandwrite -p /dev/mtd0 /usr/lib/u-boot/guruplug/u-boot.kwb ++ ++MX53LOCO: ++ ++ sudo dd bs=1024 if=u-boot.imx of=/dev/sdX seek=1 ++ ++== U-Boot environment tools == ++ ++fw_printenv / fw_setenv read /etc/fw_env.config for configuration. ++ diff --cc debian/changelog index 000000000,000000000..7ccb575a8 new file mode 100644 --- /dev/null +++ b/debian/changelog @@@ -1,0 -1,0 +1,411 @@@ ++u-boot (2012.04.01-2) unstable; urgency=low ++ ++ * Remove code duplication in kerma-sheevaplug-mvsdio.diff. ++ closes: #674230. ++ ++ -- Clint Adams Thu, 31 May 2012 21:04:49 -0400 ++ ++u-boot (2012.04.01-1) unstable; urgency=low ++ ++ * New upstream version. ++ - Update mipsel-native-endianness.diff. ++ - Update no-error-on-set-but-unused-variables.diff (partially merged). ++ - Drop kirkwood_spi-irq_mask.diff (merged). ++ - Drop kirkwood-disable-l2c.diff (merged). ++ ++ -- Clint Adams Tue, 01 May 2012 18:07:19 -0400 ++ ++u-boot (2011.12-3) unstable; urgency=low ++ ++ [ Jonathan Nieder ] ++ * kirkwood: disable L2 cache before Linux boot; thanks to Ian Campbell. ++ closes: #658904 ++ ++ [ Loïc Minier ] ++ * Add patch to strip env tools; sent to upstream mailing-list. ++ ++ -- Loïc Minier Sun, 11 Mar 2012 16:12:50 +0100 ++ ++u-boot (2011.12-2) unstable; urgency=low ++ ++ [ Loïc Minier ] ++ * Build u-boot.imx for efikasb on armhf ++ ++ [ Clint Adams ] ++ * Patch from Ian Campbell to fix Dreamplug breakage. closes: #655102. ++ ++ -- Clint Adams Sun, 08 Jan 2012 15:11:03 -0500 ++ ++u-boot (2011.12-1) unstable; urgency=low ++ ++ * New upstream version. ++ - Drop build-timestamp_autogenerated.h-without-config.patch (merged). ++ - Drop ublimage-NAND-block-size-isn-t-set-at-build-time.patch (merged). ++ - Update kerma-sheevaplug-mvsdio.diff ++ - Update mipsel-native-endianness.diff ++ - Drop dreamplug-v8.patch (merged). ++ ++ -- Clint Adams Mon, 02 Jan 2012 17:49:39 -0500 ++ ++u-boot (2011.09-2) unstable; urgency=low ++ ++ * Patch from Pino Toscano to build on the Hurd. ++ closes: #648295. ++ * Drop gr_xc3s_1500 target. ++ * Add build-arch and build-indep targets to debian/rules. ++ ++ -- Clint Adams Tue, 15 Nov 2011 23:53:01 -0500 ++ ++u-boot (2011.09-1) unstable; urgency=low ++ ++ [ Hector Oron ] ++ * Enable MX53LOCO platform. ++ * Update lintian overrides. ++ ++ [ Loïc Minier ] ++ * Fix FTBFS on amd64 and allow `make tools` to succeed without ++ config. ++ ++ [ Clint Adams ] ++ * New upstream version. ++ - Update kerma-sheevaplug-mvsdio.diff. ++ - Drop panda-default-console.diff (refactored). ++ - Replace dreamplug patches with Jason's v8. ++ * Add Buffalo Linkstation Mini env config from Benjamin Cama. ++ ++ -- Clint Adams Fri, 30 Sep 2011 21:22:23 -0400 ++ ++u-boot (2011.06-4) unstable; urgency=low ++ ++ * Increase the USB non-bulk timeout by an order of magnitude. ++ May fix #635774. ++ ++ -- Clint Adams Sat, 06 Aug 2011 13:42:52 -0400 ++ ++u-boot (2011.06-3) unstable; urgency=low ++ ++ * Add DreamPlug support. ++ ++ -- Clint Adams Sun, 24 Jul 2011 09:35:32 -0400 ++ ++u-boot (2011.06-2) unstable; urgency=low ++ ++ * Use -Wno-error=unused-but-set-variable on i386. ++ ++ -- Clint Adams Sat, 02 Jul 2011 22:14:44 -0400 ++ ++u-boot (2011.06-1) unstable; urgency=low ++ ++ * New upstream version. ++ * Fix i386 and mipsel builds. ++ ++ -- Clint Adams Sat, 02 Jul 2011 19:25:28 -0400 ++ ++u-boot (2011.06~rc3-1) unstable; urgency=low ++ ++ * New upstream version. ++ ++ -- Clint Adams Sat, 02 Jul 2011 15:50:46 -0400 ++ ++u-boot (2011.06~rc2-2) unstable; urgency=low ++ ++ * Fix mipsel endianness problem again. ++ * Try building gr_xc3s_1500 on sparc. ++ ++ -- Clint Adams Sat, 18 Jun 2011 10:13:53 -0400 ++ ++u-boot (2011.06~rc2-1) unstable; urgency=low ++ ++ * New upstream version. ++ * Fix tools config selection. ++ ++ -- Clint Adams Tue, 14 Jun 2011 20:53:07 -0400 ++ ++u-boot (2011.06~rc1-1) unstable; urgency=low ++ ++ * New upstream version. ++ - Update mipsel-native-endianness.diff ++ - Drop Drop-config.h-include-in-tools-imximage.h.diff (merged). ++ - Drop openrd-client-and-ultimate.diff (merged). ++ - Update openrd-mmc.diff (formerly openrd-mmc-mtd-fat.diff). ++ - Drop eNET-monitor_flash_len.diff (merged). ++ - Update snapshot.commit to 2011.06-rc1. ++ - Use the first target for each arch to build the tools, or ++ fake it on the other architectures. ++ * Only build efikamx image on armhf. ++ ++ -- Clint Adams Sat, 21 May 2011 11:04:30 -0400 ++ ++u-boot (2011.03-6) unstable; urgency=low ++ ++ * Bump to Standards-Version 3.9.2. ++ * Tweak the u-boot-tools description. ++ * Drop igep0020, omap3_beagle, and omap4_panda targets from ++ armel; they are available on armhf. ++ ++ -- Clint Adams Tue, 26 Apr 2011 16:11:24 -0400 ++ ++u-boot (2011.03-5) unstable; urgency=low ++ ++ [ Sebastian Reichel ] ++ * Add Pandaboard target. closes: #624123 ++ * New patch to change default console on Pandaboard. ++ ++ -- Clint Adams Mon, 25 Apr 2011 15:36:16 -0400 ++ ++u-boot (2011.03-4) unstable; urgency=low ++ ++ * Enable FAT, SD/MMC, MTD, JFFS, UBIFS support on OpenRD boards. ++ ++ -- Clint Adams Wed, 13 Apr 2011 18:05:36 -0400 ++ ++u-boot (2011.03-3) unstable; urgency=low ++ ++ * Actually pass the right arch_number for OpenRD-Ultimate. ++ ++ -- Clint Adams Tue, 12 Apr 2011 14:28:20 -0400 ++ ++u-boot (2011.03-2) unstable; urgency=low ++ ++ * Fix i386 FTBFS with eNET-monitor_flash_len.diff ++ * Add patch for OpenRD-Client and OpenRD-Ultimate. ++ * Drop openrd_base target and add openrd_ultimate target. ++ ++ -- Clint Adams Tue, 05 Apr 2011 15:56:43 -0400 ++ ++u-boot (2011.03-1) unstable; urgency=low ++ ++ [ Loïc Minier ] ++ * Only try to build env tools when Linux MTD headers are present. ++ closes: #619673. ++ ++ [ Clint Adams ] ++ * New upstream version. ++ - Drop fix-definition-of-global_data-struct.diff (now upstream). ++ - Drop EfikaMX-switch-to-MACH_TYPE_MX51_EFIKAMX.diff (upstream now). ++ - Drop sh-sh7785lcr-Fix-out-of-tree-building.diff (upstream now). ++ - Drop MIPS-dbau1x00-Remove-unused-flash-driver-stub.diff (upstream now). ++ - Drop x86-Align-config.mk-and-linker-scripts-with-other-ar.diff ++ (upstream now). ++ - Update snapshot.commit to 2011.03 ++ ++ -- Clint Adams Fri, 01 Apr 2011 10:30:46 -0400 ++ ++u-boot (2011.03~rc1-4) experimental; urgency=low ++ ++ * Add patch x86-Align-config.mk-and-linker-scripts-with-other-ar. ++ From upstream mailing-list; fixes x86 build (eNET). ++ ++ -- Loïc Minier Wed, 09 Feb 2011 14:51:01 +0100 ++ ++u-boot (2011.03~rc1-3) experimental; urgency=low ++ ++ * Add debian/source/local-options ++ - unapply-patches: avoids committing patched tree after a build ++ - abort-on-upstream-changes: avoids creating a debian-changes-* patch ++ when building from a dirty tree ++ * Add patch MIPS-dbau1x00-Remove-unused-flash-driver-stub, ++ from u-boot-mipsel.git 17a990b55008fd79636e4880d9d10b7172ca87ce and also ++ sent to the upstream mailing-list; fixes build of dbau1x00 board by ++ removing board/dbau1x00/flash.c entirely, and hence fixes the build of ++ u-boot on mipsel. ++ ++ -- Loïc Minier Tue, 08 Feb 2011 16:49:05 +0100 ++ ++u-boot (2011.03~rc1-2) experimental; urgency=low ++ ++ * New patch sh-sh7785lcr-Fix-out-of-tree-building; from upstream ++ e72f46787f44c1104a8df18511ab230b6072a1f0; fixes Debian sh4 build; thanks ++ Nobuhiro Iwamatsu; closes: #611873. ++ ++ -- Loïc Minier Mon, 07 Feb 2011 17:20:16 +0100 ++ ++u-boot (2011.03~rc1-1) experimental; urgency=low ++ ++ * dpkg-shlibdeps usr/bin/* rather than just mkimage. ++ * uboot-mkimage's Section is utils. ++ * Allow overriding CROSS_COMPILE. ++ * New upstream release candidate. ++ - Merge commit v2011.03-rc1 ++ - Update snapshot.commit to 2011.03-rc1 ++ * Add EfikaMX support. ++ - Add patch EfikaMX-switch-to-MACH_TYPE_MX51_EFIKAMX from the upstream ++ mailing-list; fixes build on EfikaMX (EfikaMX: switch to ++ MACH_TYPE_MX51_EFIKAMX) ++ - Add patch Drop-config.h-include-in-tools-imximage.h from the upstream ++ mailing-list; fixes tools-all build of imximage.c. ++ - Build u-boot.imx for efikamx on armel. ++ * Refresh patch kerma-sheevaplug-mvsdio to fix fuzz. ++ ++ -- Loïc Minier Thu, 03 Feb 2011 13:13:14 +0100 ++ ++u-boot (2010.12-2) unstable; urgency=low ++ ++ * Avoid calling dpkg-architecture if DEB_HOST_ARCH is set. ++ * Misc refactoring of debian/rules. ++ - Split per architecture list of platform and targets into ++ debian/targets. ++ - Actually use INSTALL_FILE/INSTALL_DIR/INSTALL_PROGRAM. ++ - Add support for cross-builds; these will currently lack tools. ++ - Build board-specific u-boot files in a separate build dir from the ++ generic tools ++ * Fix handling of -Wl,foo LDFLAGS; the upstream build passes LDFLAGS ++ directly to ld instead of calling gcc for linking; so instead of passing ++ -Wl,foo in LDFLAGS as in automake builds, one should set LDFLAGS to foo ++ directly; add a snippet to strip -Wl, from LDFLAGS; alternatively, we ++ could do as in other special packages like the kernel and simply unset ++ LDFLAGS entirely; closes: #607613. ++ * Install and compress upstream mkimage manpage; based on a patch by ++ Marcin Juszkiewicz. ++ * Add a dummy uboot-mkimage package for upgrades from squeeze; based on a ++ patch by Marcin Juszkiewicz; closes: #607618. ++ * Add new patch, fix-definition-of-global_data-struct, from the upstream ++ x86 maintainer; fixes build of eNET board which breaks u-boot's build on ++ i386; closes: #608801. ++ * Workaround an upstream bug in distclean by removing include/asm/proc and ++ /arch explicitly for now; patch was sent upstream. ++ * Don't repeat Section: in binary package. ++ * Add myself to Uploaders. ++ * Split tools in u-boot-tools package. ++ * Drop board-specific tools; these are too dangerous; only ship mkimage for ++ now. ++ * Add igep0020 and omap3_beagle builds on armel ++ * Update snapshot.commit to the 2010.12 release contents; this avoids a ++ pointless diff with the tarball. ++ ++ -- Loïc Minier Mon, 17 Jan 2011 22:43:41 +0100 ++ ++u-boot (2010.12-1) unstable; urgency=low ++ ++ * New upstream version. ++ * Install more tools in preparation for splitting off a ++ u-boot-tools binary package. ++ ++ -- Clint Adams Tue, 28 Dec 2010 17:03:44 -0500 ++ ++u-boot (2010.12~rc3-1) unstable; urgency=low ++ ++ * New upstream release candidate. ++ * Add dockstar target. ++ ++ -- Clint Adams Sun, 19 Dec 2010 09:45:42 -0500 ++ ++u-boot (2010.12~rc2-1) unstable; urgency=low ++ ++ * New upstream release candidate. ++ * Add openrd_base target. ++ ++ -- Clint Adams Sat, 04 Dec 2010 15:32:38 -0500 ++ ++u-boot (2010.09-2) unstable; urgency=low ++ ++ * Enable ext2 commands on GuruPlug. ++ * Ship ELF files (for loading into RAM with OpenOCD). ++ ++ -- Clint Adams Sat, 20 Nov 2010 18:20:40 -0500 ++ ++u-boot (2010.09-1) unstable; urgency=low ++ ++ * New upstream release. ++ ++ -- Clint Adams Wed, 29 Sep 2010 00:06:25 -0400 ++ ++u-boot (2010.09~rc2-1) unstable; urgency=low ++ ++ * New upstrem release candidate. ++ ++ -- Clint Adams Sun, 19 Sep 2010 14:20:52 -0400 ++ ++u-boot (2010.09~rc1-2) unstable; urgency=low ++ ++ * Add patch from Gérald Kerma to add Sheevaplug mvsata support. ++ * Add patch from Gérald Kerma to add Sheevaplug mvsdio support. ++ ++ -- Clint Adams Sun, 12 Sep 2010 11:48:22 -0400 ++ ++u-boot (2010.09~rc1-1) unstable; urgency=low ++ ++ * New upstream release candidate. ++ - Drop guruplug-miiphy_reset.diff. ++ - Update mipsel-native-endianness.diff. ++ - Drop sh4-native-compile.diff. ++ * Bump to Standards-Version 3.9.1. ++ ++ -- Clint Adams Sat, 11 Sep 2010 00:43:04 -0400 ++ ++u-boot (2010.06-1) unstable; urgency=low ++ ++ * New upstream version. ++ ++ -- Clint Adams Sat, 03 Jul 2010 13:49:46 -0400 ++ ++u-boot (2010.06~rc3-1) unstable; urgency=low ++ ++ * New upstream version. ++ * Fix sh4-native-compile.diff to not break sh64, thanks to Paul ++ Mundt. ++ * Ship mkimage, conflict/replace uboot-mkimage, build on all ++ architectures. ++ ++ -- Clint Adams Fri, 25 Jun 2010 14:49:06 -0400 ++ ++u-boot (2010.06~rc2-1) unstable; urgency=medium ++ ++ * Add sh4-native-compile.diff from Aurelien Jarno. closes: #586026. ++ * New upstream version. ++ - Drop marvell-machtypes.diff. ++ ++ -- Clint Adams Tue, 15 Jun 2010 21:37:26 -0400 ++ ++u-boot (2010.06~rc1-6) unstable; urgency=medium ++ ++ * Add guruplug-miiphy_reset.diff. ++ * Clean between targets. closes: #585570. ++ ++ -- Clint Adams Fri, 11 Jun 2010 21:57:31 -0400 ++ ++u-boot (2010.06~rc1-5) unstable; urgency=low ++ ++ * Replace mipsel-native-endianness.diff with patch adapted ++ from a 2008 mailing list posting by Shinya Kuribayashi. ++ ++ -- Clint Adams Fri, 04 Jun 2010 20:08:27 -0400 ++ ++u-boot (2010.06~rc1-4) unstable; urgency=low ++ ++ * Add r2dplus target for sh4. ++ * mipsel-native-endianness.diff: don't force endianness on mips/mipsel ++ ++ -- Clint Adams Thu, 03 Jun 2010 19:32:50 -0400 ++ ++u-boot (2010.06~rc1-3) unstable; urgency=low ++ ++ * Fix mipsel typo. ++ * Apply patch from Nobuhiro Iwamatsu to change sh4 target board ++ from espt to sh7785lcr_32bit. closes: #584192. ++ ++ -- Clint Adams Wed, 02 Jun 2010 08:25:04 -0400 ++ ++u-boot (2010.06~rc1-2) unstable; urgency=low ++ ++ * Produce u-boot.bin on i386. ++ * Switch mipsel target to AMD DBAu1100. ++ * Add marvell-machtypes.diff. ++ ++ -- Clint Adams Mon, 31 May 2010 22:09:29 -0400 ++ ++u-boot (2010.06~rc1-1) unstable; urgency=low ++ ++ * Add Vcs-Git and Vcs-Browser headers. ++ * Add GuruPlug target (armel). ++ * Switch mipsel target to TB0229. ++ * Add watch file. ++ * Update README.Debian for SheevaPlug and GuruPlug. ++ ++ -- Clint Adams Mon, 31 May 2010 19:29:40 -0400 ++ ++u-boot (2010.03-1) unstable; urgency=low ++ ++ * Initial packaging. closes: #583605. ++ ++ -- Clint Adams Fri, 28 May 2010 16:20:39 -0400 diff --cc debian/control index 000000000,000000000..30780bf51 new file mode 100644 --- /dev/null +++ b/debian/control @@@ -1,0 -1,0 +1,50 @@@ ++Source: u-boot ++Section: admin ++Priority: optional ++Maintainer: Clint Adams ++Uploaders: Loïc Minier ++Standards-Version: 3.9.2 ++Homepage: http://www.denx.de/wiki/U-Boot/ ++Vcs-Git: git://git.debian.org/collab-maint/u-boot.git ++Vcs-Browser: http://git.debian.org/?p=collab-maint/u-boot.git;a=summary ++ ++Package: u-boot ++Architecture: any ++Description: A boot loader for embedded systems ++ Das U-Boot is a cross-platform bootloader for embedded systems, ++ used as the default boot loader by several board vendors. It is ++ intended to be easy to port and to debug, and runs on many ++ supported architectures, including PPC, ARM, MIPS, x86, m68k, ++ NIOS, and Microblaze. ++ ++Package: u-boot-tools ++Architecture: any ++Depends: ${shlibs:Depends} ++Breaks: uboot-envtools (<< 20081215-3~), ++ uboot-mkimage (<= 0.4build1), ++ u-boot (<< 2010.12-2) ++Replaces: uboot-envtools (<< 20081215-3~), ++ uboot-mkimage (<= 0.4build1), ++ u-boot (<< 2010.12-2) ++Description: companion tools for Das U-Boot bootloader ++ This package includes the mkimage program, which allows generation of U-Boot ++ images in various formats, and the fw_printenv and fw_setenv programs to read ++ and modify U-Boot's environment. ++ ++Package: uboot-envtools ++Section: utils ++Architecture: all ++Depends: u-boot-tools ++Description: read/modify the environment for the U-Boot boot loader (transitional package) ++ Package to ease upgrading from uboot-envtools to u-boot-tools. ++ . ++ This package may safely be removed. ++ ++Package: uboot-mkimage ++Section: utils ++Architecture: all ++Depends: u-boot-tools ++Description: generate kernel image for U-Boot (transitional package) ++ Package to ease upgrading from uboot-mkimage to u-boot-tools. ++ . ++ This package may safely be removed. diff --cc debian/copyright index 000000000,000000000..1195aeaee new file mode 100644 --- /dev/null +++ b/debian/copyright @@@ -1,0 -1,0 +1,732 @@@ ++This is the Debian prepackaged version of Das U-Boot ++with lots of features. ++ ++This package was put together by Clint Adams ++with sources obtained from: ++ ftp://ftp.denx.de/pub/u-boot/ ++ ++u-boot took over some packaging bits from uboot-mkimage which was copyright ++Joey Hess and Marc Singer and from ++uboot-envtools which was copyright Per Andersson . ++ ++The following copyright and license apply to this software: ++ ++Copyright © 2000-2009 Wolfgang Denk, DENX Software Engineering, wd@denx.de. ++ ++This program is free software; you can redistribute it and/or ++modify it under the terms of the GNU General Public License as ++published by the Free Software Foundation; either version 2 of ++the License, or (at your option) any later version. ++ ++The full text of the GNU GPL may be found on your Debian system ++in /usr/share/common-licenses. ++ ++ ++Some of the files distributed in the source package are ++(C) Copyright 2009 Industrie Dial Face S.p.A. ++Copyright (C) Motorola, 2003. ++Copyright (C) 1999 David A. Hinds. ++Copyright (c) Marc A. Viredaz, 1998 ++Copyright (c) 2003 Josef Baumgartner ++Copyright (c) 2000 Broadcom ++Copyright (c) 2001 Broadcom ++Copyright (C) 1998,1999 Cygnus Solutions ++Copyright 1996, 97, 99, 2002, 03 Ralf Baechle ++(C)Copyright 1997-1998 DAVICOM Semiconductor,Inc. ++Copyright 1997-2002 ELTEC Elektronik AG ++(C) Copyright 1999, by Curt McDowell, 08-06-99, Broadcom Corp. ++(C) Copyright 1999 Gregory P. Smith ++(C) Copyright 1999, Greg Ungerer (gerg@snapgear.com) ++(C) Copyright 1999 Johannes Erdfelt ++(C) Copyright 1999 Linus Torvalds ++(C) Copyright 1999 Randy Dunlap ++(C) Copyright 1999 Roman Weissgaerber ++(C) Copyright 1999 Silicon Graphics, Inc. ++(C) Copyright 2000-2001 David Brownell ++(C) Copyright 2000-2002 David Brownell ++(C) Copyright 2000, Lineo Inc. (www.lineo.com) ++(C) Copyright 2000 Sysgo Real-Time Solutions, GmbH ++(C) Copyright 2001 Denis Peter, MPL AG Switzerland ++(C) Copyright 2001 ELTEC Elektronik AG ++(C) Copyright 2001, James Dougherty, 07/18/01, Broadcom Corp. ++(C) Copyright 2001, Stuart Hughes, Lineo Inc, stuarth@lineo.com ++(C) Copyright 2001 Sysgo Real-Time Solutions, GmbH ++(C) Copyright 2002, 2003 Motorola Inc. ++(c) Copyright 2002-2004 Xilinx Inc. ++(C) Copyright 2002 Denis Peter, MPL AG Switzerland ++(C) Copyright 2002 ELTEC Elektronik AG ++(C) Copyright 2002 Gary Jennejohn, DENX Software Engineering, ++(C) Copyright 2002 Jun Gu ++(C) Copyright 2002,Motorola Inc. ++(C) Copyright 2002 Scott McNutt ++(C) Copyright 2002 SIXNET, dge@sixnetio.com. ++(C) Copyright 2002 Wolfgang Grandegger ++(c) Copyright 2002 Xilinx Inc. ++(C) Copyright 2003-2004 Arabella Software Ltd. ++(C) Copyright 2003-2005 Arabella Software Ltd. ++(C) Copyright 2003, ARM Ltd. ++(C) Copyright 2003, Dan Malek, Embedded Edge, LLC. ++(C) Copyright 2003 Embedded Edge, LLC ++(C) Copyright 2003 Intracom S.A. ++(C) Copyright 2003 Intrinsyc Software ++(C) Copyright 2003 Josef Baumgartner ++(C) Copyright 2003, Li-Pro.Net ++(C) Copyright 2003 Martin Winistoerfer, martinwinistoerfer@gmx.ch. ++(C) Copyright 2003 Motorola Inc. ++(C) Copyright 2003 Pengutronix e.K. ++(C) Copyright 2003 Picture Elements, Inc. ++(C) Copyright 2003, Psyent Corporation ++(C) Copyright 2003 Sandburst Corporation ++(C) Copyright 2003 Stefan Roese, stefan.roese@esd-electronics.com ++(C) Copyright 2003 Sysgo Real-Time Solutions, AG ++(C) Copyright 2003; Tundra Semiconductor Corp. ++(C) Copyright 2003 Wolfgang Grandegger ++(C) Copyright 2004-2005, Greg Ungerer ++(C) Copyright 2004-2006 Atmel Corporation ++(C) Copyright 2004-2008 Freescale Semiconductor, Inc. ++(C) Copyright 2004-2008 Texas Instruments, ++(C) Copyright 2004 Ales Jindra ++(C) Copyright 2004, ARM Ltd. ++(C) Copyright 2004 Atmark Techno, Inc. ++(C) Copyright 2004 by FS Forth-Systeme GmbH. ++(C) Copyright 2004 eslab.whut.edu.cn ++(C) Copyright 2004, Freescale, Inc ++(C) Copyright 2004 Freescale Semiconductor. ++(C) Copyright 2004 Intracom S.A. ++(C) Copyright 2004, Li-Pro.Net ++(C) Copyright 2004 Paul Reynolds ++(C) Copyright 2004, Psyent Corporation ++(C) Copyright 2004 Sandburst Corporation ++(C) Copyright 2004, Shlomo Kut ++(C) Copyright 2004 Tundra Semiconductor Corp. ++(C) Copyright 2004 Wind River Systems Inc . ++(C) Copyright 2005-2007 Netstal Maschinen AG ++(C) Copyright 2005-2008 Netstal Maschinen AG ++(C) Copyright 2005-2008 Samsung Electronics ++(C) Copyright 2005-2009 BuS Elektronik GmbH & Co.KG ++(C) Copyright 2005-2009 Netstal Maschinen AG ++(C) Copyright 2005-2009 Samsung Electronics ++(C) Copyright 2005 2N TELEKOMUNIKACE, Ladislav Michl ++(C) Copyright 2005 BuS Elektronik GmbH & Co.KG ++(C) Copyright 2005 Embedded Alley Solutions, Inc. ++(C) Copyright 2005 Freescale Semiconductor, Inc. ++(C) Copyright 2005 Ladislav Michl ++(C) Copyright 2005 Netstal Maschinen AG ++(C) Copyright 2005, Psyent Corporation ++(C) Copyright 2005 REA Elektronik GmbH ++(C) Copyright 2005 Rowel Atienza ++(C) Copyright 2006, 2007 Detlev Zundel, dzu@denx.de ++(C) Copyright 2006-2007 Freescale Semiconductor, Inc. ++(C) Copyright 2006 ATMEL Rousset, Lacressonniere Nicolas ++(C) Copyright 2006 Detlev Zundel, dzu@denx.de ++(C) Copyright 2006 Embedded Artists AB ++(C) Copyright 2006 Eukrea Electromatique ++(C) Copyright 2006; Freescale Semiconductor Corp. ++(C) Copyright 2006, Imagos S.a.s ++(C) Copyright 2006 Lab X Technologies ++(C) Copyright 2006 OpenMoko, Inc. ++(C) Copyright 2007-2008 Netstal Maschinen AG ++(C) Copyright 2007,2008 Nobuhiro Iwamatsu ++(C) Copyright 2007-2008 Semihalf ++(C) Copyright 2007-2008 Semihalf, Rafal Jaworowski ++(C) Copyright 2007-2009 Michal Simek ++(C) Copyright 2007 by OpenMoko, Inc. ++(C) Copyright 2007 Freescale Semiconductor, Inc. ++(C) Copyright 2007 Gary Jennejohn ++(C) Copyright 2007 Markus Kappeler ++(C) Copyright 2007 Nobuhiro Iwamatsu ++(C) Copyright 2007 OpenMoko, Inc. ++(C) Copyright 2007 Pengutronix, Juergen Beisert ++(C) Copyright 2007 Pengutronix, Sascha Hauer ++(C) Copyright 2007 Schindler Lift Inc. ++(C) Copyright 2007 STMicroelectronics, ++(C) Copyright 2007 Wind River Systems Inc . ++(C) Copyright 2007 Yoshihiro Shimoda ++(C) Copyright 2008, 2009 Andreas Pfefferle, ++(C) Copyright 2008,2009 Eric Jarrige ++(C) Copyright 2008-2009 Freescale Semiconductor, Inc. ++(C) Copyright 2008-2009 Stefan Roese , DENX Software Engineering ++(C) Copyright 2008 Applied Micro Circuits Corporation ++(C) Copyright 2008 Armadeus Systems nc ++(C) Copyright 2008 Atmel Corporation ++(C) Copyright 2008 by Harald Welte ++(C) Copyright 2008, Daniel Hellström, daniel@gaisler.com ++(C) Copyright 2008 Dmitry Rakhchev, EmCraft Systems, rda@emcraft.com ++(C) Copyright 2008 Eric Jarrige ++(C) Copyright 2008, Excito Elektronik i Skåne AB ++(C) Copyright 2008 Freescale Semiconductor ++(C) Copyright 2008 Ilya Yanok, EmCraft Systems, yanok@emcraft.com ++(C) Copyright 2008 Magnus Lilja ++(C) Copyright 2008, Michael Trimarchi ++(C) Copyright 2008 Michal Simek ++(c) Copyright 2008 Nobuhiro Iwamatsu ++(c) Copyright 2008 Renesas Solutions Corp. ++(C) Copyright 2008 Semihalf ++(C) Copyright 2008 Sergey Lapin ++(C) Copyright 2008 Stefan Roese , DENX Software Engineering ++(C) Copyright 2008, Texas Instruments, Inc. http://www.ti.com/ ++(C) Copyright 2008 Wolfgang Grandegger ++(C) Copyright 2009 Alessandro Rubini ++(C) Copyright 2009 Atin Malaviya (atin.malaviya@gmail.com) ++(C) Copyright 2009 CJSC "NII STT", Russia, Smolensk ++(C) Copyright 2009, DAVE Srl ++(C) Copyright 2009 Detlev Zundel, ++(C) Copyright 2009 Faraday Technology ++(C) Copyright 2009 Freescale Semiconductor, Inc. ++(C) Copyright 2009 Ilya Yanok, Emcraft Systems Ltd ++(C) Copyright 2009 Industrie Dial Face S.p.A. ++(C) Copyright 2009 Magnus Lilja ++(C) Copyright 2009 Marco Stornelli ++(C) Copyright 2009 mGine co. ++(C) Copyright 2009 Reinhard Arlt, reinhard.arlt@esd-electronics.com ++(C) Copyright 2009 Samsung Electronics ++(C) Copyright 2009 Semihalf, Grzegorz Bernacki ++(C) Copyright 2009 Stefan Roese ++(C) Copyright 2010, Chris Zhang ++(C) Copyright Andreas Gal 1999 ++(C) Copyright David Brownell 2000 (kernel hotplug, usb_device_id) ++(C) Copyright Deti Fliegl 1999 (new USB architecture) ++(C) Copyright Gregory P. Smith 1999 ++(C) Copyright Johannes Erdfelt 1999-2001 ++(C) Copyright Linus Torvalds 1999 ++(C) Copyright Motorola, Inc., 2000 ++(C) Copyright Randy Dunlap 2000 ++(C) Copyright Sheldon Instruments, Inc. 2008 ++(C) Copyright Yggdrasil Computing, Inc. 2000 ++Copyright 1992, Linus Torvalds. ++Copyright 1994, 1995, 2000 Neil Russell. ++Copyright 1994 - 2000 Neil Russell. ++Copyright 1995, Russell King. ++Copyright 1996 Roman Zippel ++Copyright 1998-2001 by Donald Becker. ++Copyright 1999-2000 D. Jeff Dionne, ++Copyright 1999 Advanced Micro Devices, Inc. ++Copyright 1999 D. Jeff Dionne ++Copyright 2000-2001 Lineo, Inc. D. Jeff Dionne ++Copyright 2000,2001 MontaVista Software Inc. ++Copyright 2000-2002 by Hans Reiser, licensing governed by reiserfs/README ++Copyright 2000 Paolo Scaffardi ++Copyright 2000 Roland Borde ++Copyright 2001-2005, Intel Corporation. ++Copyright © 2001-2007 Red Hat, Inc. and others ++Copyright 2001 Embedded Planet. All rights reserved. ++Copyright 2001 MontaVista Software Inc. ++Copyright 2002 Arcturus Networks Inc. MaTed ++Copyright 2002 Etinsys Inc. ++Copyright 2002, GALILEO TECHNOLOGY, LTD. * ++Copyright 2002 Mind NV ++Copyright 2002 MontaVista Software Inc. ++Copyright 2002 SYSGO Real-Time Solutions GmbH ++Copyright 2003-2004 Jeff Garzik ++Copyright 2003-2004 Red Hat, Inc. All rights reserved. ++Copyright 2003-2008 Analog Devices Inc. ++Copyright 2003 AMIRIX Systems Inc. ++Copyright 2003 Bas Vermeulen , ++Copyright 2003 by FS Forth-Systeme GmbH. ++Copyright 2003 Metrowerks - for Blackfin ++Copyright 2003 Metrowerks/Motorola ++Copyright 2003 Motorola,Inc. ++Copyright 2004-2009 Analog Devices Inc. ++Copyright 2004-2009 Freescale Semiconductor. ++Copyright © 2004 Ferenc Havasi , ++Copyright 2004 Karen Spearel ++Copyright 2004 Picture Elements, Inc. ++Copyright 2005 Alessandro Zummo ++Copyright 2005 ETIN SYSTEMS Co.,Ltd. ++Copyright 2005, Seagate Technology LLC ++Copyright 2006,2009-2010 Freescale Semiconductor, Inc. ++Copyright 2006 Applied Micro Circuits Corporation ++Copyright 2006 IBM ++Copyright 2007-2008 Freescale Semiconductor, Inc. ++Copyright 2007,2008 Nobuhiro Iwamatsu ++Copyright 2007,2009 Wind River Systems, Inc. ++Copyright 2007, Embedded Specialties, Inc. ++Copyright 2008-2009 Stefan Roese , DENX Software Engineering ++Copyright 2008-2010 Freescale Semiconductor, Inc. ++Copyright 2008 (C) Bryan O'Donoghue ++Copyright 2008 Extreme Engineering Solutions, Inc. ++Copyright 2008 Matrix Vision GmbH ++Copyright 2008 Mentor Graphics Corporation ++Copyright 2008, Network Appliance Inc. ++Copyright 2008 Qstreams Networks, Inc. ++Copyright 2008 Sascha Hauer, kernel@pengutronix.de ++Copyright 2008 Silicon Turnkey Express, Inc. ++Copyright 2009 Analog Devices Inc. ++Copyright 2009 CJSC "NII STT", http://www.niistt.ru/ ++Copyright 2009(C) Marvell International Ltd. and its affiliates ++Copyright 2009 Dirk Behme, dirk.behme@googlemail.com ++Copyright 2009 Extreme Engineering Solutions, Inc. ++Copyright 2009 Freescale Semiconductor, Inc ++Copyright 2009 Ilya Yanok, ++Copyright 2009: Marvell Technology Group Ltd. ++Copyright 2009, Matthias Fuchs ++Copyright 2009, Robin Getz ++Copyright 2009 Semihalf. ++Copyright 2010, Renato Andreola ++Copyright (C) 1985 MIPS Computer Systems, Inc. ++Copyright (C) 1989, 1991 Free Software Foundation, Inc. ++Copyright (C) 1990 - 1992, 1999 Silicon Graphics, Inc. ++Copyright (C) 1990, 1999 by Silicon Graphics, Inc. ++Copyright (C) 1991, 1992 Linus Torvalds ++Copyright (C) 1991,1996-1999,2001,2004,2007 Free Software Foundation, Inc. ++Copyright (C) 1991-2004 SciTech Software, Inc. ++Copyright (C) 1991-2004 SciTech Software, Inc. All rights reserved. ++Copyright (C) 1992, 1997 Free Software Foundation, Inc. ++Copyright (C) 1993, 1996, 2001, 2002 Free Software Foundation, Inc. ++Copyright (C) 1993 Hamish Macdonald ++Copyright (c) 1993 Herb Peyerl (hpeyerl@novatel.ca) ++Copyright (C) 1994, 1995, 1996, 1997, 2000, 2001 by Ralf Baechle ++Copyright (C) 1994, 1995, 1996, 1999 by Ralf Baechle ++Copyright (C) 1994, 1995, 1996 by Ralf Baechle ++Copyright (C) 1994, 1995 Waldorf GmbH ++Copyright (C) 1994 - 2000 Ralf Baechle ++Copyright (C) 1994 David S. Miller (davem@caip.rutgers.edu) ++Copyright (C) 1994 Hamish Macdonald ++Copyright (C) 1994 Waldorf GMBH ++Copyright (C) 1995, 1996, 1997, 1998, 1999, 2001, 2002, 2003 Ralf Baechle ++Copyright (C) 1995, 1996, 1997, 1999, 2000 Free Software Foundation, Inc. ++Copyright (C) 1995-1996 Gary Thomas (gdt@linuxppc.org) ++Copyright (C) 1995-1998 Mark Adler ++Copyright (C) 1995, 1999 Silicon Graphics ++Copyright (C) 1995-2002 Russell King ++Copyright (C) 1995-2005 Jean-loup Gailly. ++Copyright (C) 1995-2005 Jean-loup Gailly and Mark Adler ++Copyright (C) 1995-2005 Mark Adler ++Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu) ++Copyright (C) 1995 Hamish Macdonald ++Copyright (C) 1996,1998 Jakub Jelinek (jj@sunsite.mff.cuni.cz) ++Copyright (C) 1996, 1999, 2001 David S. Miller (davem@redhat.com) ++Copyright (C) 1996-1999 SciTech Software, Inc. ++Copyright (C) 1996-2002 Julian R Seward. All rights reserved. ++Copyright (C) 1996-2002 Markus Franz Xaver Johannes Oberhumer ++Copyright (C) 1996-2005 Markus F.X.J. Oberhumer ++Copyright (C) 1996 by Erik Stahlman (ES) ++Copyright (C) 1996 by Paul M. Antoine ++Copyright (C) 1996 Larry Ewing (lewing@isc.tamu.edu) ++Copyright (C) 1996 Paul Mackerras. ++Copyright (C) 1996 Paul M. Antoine ++Copyright (C) 1997, 1999, 2001, 06 by Ralf Baechle ++Copyright (C) 1997-1999 Russel King ++Copyright (c) 1997 Dan Malek (dmalek@jlc.net) ++Copyright (C) 1997 Sten Wang ++Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. ++Copyright (C) 1998, 1999 D. Jeff Dionne ++Copyright (C) 1998,2001 M-Systems Flash Disk Pioneers Ltd. ++Copyright (C) 1998 Dan Malek ++Copyright (C) 1998 D. Jeff Dionne , ++Copyright (C) 1998 Gabriel Paubert. ++Copyright (c) 1998 Harald Koerfgen ++Copyright (C) 1998 Kenneth Albanowski ++Copyright (C) 1999 2000 2001 Erik Mouw (J.A.K.Mouw@its.tudelft.nl) ++Copyright (C) 1999 2000 2001 Jan-Derk bakker (J.D.Bakker@its.tudelft.nl) ++Copyright (C) 1999, 2000 Niibe Yutaka ++Copyright (C) 1999, 2000 Niibe Yutaka & Kaz Kojima ++Copyright (C) 1999, 2000 Silicon Graphics, Inc. ++Copyright(c) 1999 - 2002 Intel Corporation. All rights reserved. ++Copyright (C) 1999-2003 David Woodhouse et al. ++Copyright (C) 1999-2005 Igor Pavlov ++Copyright (C) 1999 ARM Limited. ++Copyright (C) 1999 Ben Williamson ++Copyright (C) 1999 by Silicon Graphics, Inc. ++Copyright (C) 1999 David Mosberger-Tang ++Copyright (C) 1999 Egbert Eich ++Copyright (C) 1999 Hewlett-Packard Co ++Copyright (C) 1999 Linus Torvalds ++Copyright (C) 1999 Machine Vision Holdings, Inc. ++Copyright (C) 1999 Magnus Damm ++Copyright (c) 1999 Nicolas Pitre ++Copyright (C) 1999 Niibe Yutaka ++Copyright (C) 1999 Russell King. ++Copyright (C) 1999 Silicon Graphics, Inc. ++Copyright (C) 1999 Vladimir Gurevich ++Copyright (C) 2000, 07 MIPS Technologies, Inc. ++Copyright (c) 2000, 2001, 2002 Lineo ++Copyright(c) 2000-2001 Broadcom Corporation. ++Copyright (c) 2000,2001 Epson Research and Development, Inc. ++Copyright (C) 2000,2001 Larry Doolittle ++Copyright (C) 2000, 2001 NETsilicon, Inc. ++Copyright (C) 2000, 2001 Red Hat, Inc. ++Copyright (C) 2000, 2001 WireSpeed Communications Corporation ++Copyright (c) 2000-2002 Dave Ellis, SIXNET, dge@sixnetio.com ++Copyright (C) 2000, 2002 Maciej W. Rozycki ++Copyright (C) 2000-2002 Russell King ++Copyright (C) 2000-2002 Transmeta Corporation ++Copyright (C) 2000-2004 Steven J. Hill (sjhill@realitydiluted.com) ++Copyright (C) 2000-2005 Corelatus AB ++Copyright (c) 2000 by Silicon Graphics, Inc. ++Copyright (c) 2000 David Woodhouse ++Copyright (C) 2000 Deep Blue Solutions Ltd. ++Copyright (C) 2000 FSMLabs, Inc. ++Copyright (C) 2000 MIPS Technologies, Inc. ++Copyright (c) 2000 MontaVista Software, Inc. Dan Malek (dmalek@jlc.net) ++Copyright (c) 2000 MontaVista Software, Inc (source@mvista.com) ++Copyright (C) 2000 Murray Jensen ++Copyright (C) 2000 Netgem S.A. ++Copyright (C) 2000 NETsilicon, Inc. ++Copyright (c) 2000 Philip Edelbrock ++Copyright (C) 2000 Red Hat, Inc. ++Copyright (C) 2000 Silicon Graphics, Inc. ++Copyright (C) 2000 Steven J. Hill (sjhill@realitydiluted.com) ++Copyright (c) 2000 William L. Pitts and W. Gerald Hicks ++Copyright (C) 2000 WireSpeed Communications Corporation ++Copyright (C) 2001,02 Miles Bader ++Copyright (C) 2001,02 NEC Corporation ++Copyright(c) 2001-2002 Arcturus Networks Inc. ++Copyright (C) 2001, 2002 ETC s.r.o. ++Copyright (C) 2001,2002 Miles Bader ++Copyright (C) 2001,2002 NEC Corporation ++Copyright (C) 2001-2003 Christophe Devine ++Copyright (C) 2001-2003 David Woodhouse ++Copyright (C) 2001-2004 BUFFALO INC. ++Copyright (c) 2001, Advent Networks, Inc. ++Copyright (c) 2001 Alex Züpke ++Copyright (C) 2001 ARM Limited ++Copyright (C) 2001 Entity Cyber, Inc. ++Copyright (C) 2001 Entity Cyber, Inc. ++Copyright (C) 2001 Erik Mouw (J.A.K.Mouw@its.tudelft.nl) ++Copyright (C) 2001 Erik Mouw (J.A.K.Mouw@its.tudelft.nl) ++Copyright (c) 2001 Gerd Mennchen ++Copyright (c) 2001 Hewlett Packard ++Copyright (C) 2001, James Dougherty, jfd@cs.stanford.edu ++Copyright (C) 2001 Josh Huber ++Copyright (c) 2001 Marius Gröger ++Copyright (C) 2001 Miles Bader ++Copyright (C) 2001 MIPS Technologies, Inc. ++Copyright (c) 2001 Navin Boppuri / Prashant Patel ++Copyright (C) 2001 NEC Corporation ++Copyright (C) 2001 Peter Bergner. ++Copyright (C) 2001 Red Hat, Inc. ++Copyright (C) 2001 RidgeRun, Inc. (http://www.ridgerun.com) ++Copyright (C) 2001 Samsung Electronics by chc, 010406 ++Copyright (C) 2001, Software Center, Motorola China. ++Copyright (C) 2001 Standard Microsystems Corporation (SMSC) ++Copyright (C) 2001 Sysgo Real-Time Solutions, GmbH ++Copyright(c) 2001 Tony Z. Kou ++Copyright (c) 2001 William L. Pitts ++Copyright (C) 2002-2003 Greg Ungerer ++Copyright(c) 2002,2003 Motorola Inc. ++Copyright (c) 2002, 2003 Omicron Ceti AB, Daniel Engström ++Copyright (C) 2002-2003 SnapGear Inc ++Copyright (C) 2002-2007 Aleph One Ltd. ++Copyright (c) 2002-2007 Analog Devices Inc. ++Copyright (c) 2002 Alex Züpke ++Copyright (C) 2002 Andrew Lunn ++Copyright (C) 2002 Daniel Engström, Omicron Ceti AB, daniel@omicron.se. ++Copyright (C) 2002 ETC s.r.o. ++Copyright (c) 2002 Gary Jennejohn ++Copyright (C) 2002 Gary Thomas ++Copyright (c) 2002, Infineon Technologies. ++Copyright (C) 2002 Intel Corporation. ++Copyright (C) 2002 James F. Dougherty (jfd@broadcom.com) ++Copyright (C) 2002 Kyle Harris ++Copyright (C) 2002 Maciej W. Rozycki ++Copyright (c) 2002 Omicron Ceti AB, Daniel Engström ++Copyright (C) 2002 Paul Mundt ++Copyright (C) 2002 rabeeh@galileo.co.il ++Copyright (C) 2002 RidgeRun, Inc. ++Copyright (C) 2002 Samsung Electronics SW.LEE ++Copyright (C) 2002 Scott McNutt ++Copyright (c) 2002 Stephan Linz , ++Copyright (C) 2002 Thomas Gleixner (tglx@linutronix.de) ++Copyright (c) 2003/06, Courage Co., Ltd. ++Copyright (C) 2003-2004 Arabella Software Ltd. ++Copyright (C) 2003, 2004 Free Software Foundation, Inc. ++Copyright (C) 2003-2004, Greg Ungerer (gerg@snapgear.com) ++Copyright (C) 2003, 2004 Maciej W. Rozycki ++Copyright (C) 2003-2005 Arabella Software Ltd. ++Copyright (C) 2003-2005 Nokia Corporation ++Copyright (C) 2003-2006 Christophe Devine ++Copyright (C) 2003 Aleph One Ltd. ++Copyright (C) 2003 Arabella Software Ltd. ++Copyright (C) 2003 ATMEL ++Copyright (c) 2003 Bas Vermeulen , ++Copyright (C) 2003 Bernardo Innocenti ++Copyright (C) 2003 Cirrus Logic, Inc ++Copyright (c) 2003 Denis Peter, MPL AG Switzerland, d.petr@mpl.ch. ++Copyright (C) 2003 ETC s.r.o. ++Copyright (C) 2003 IMMS gGmbH ++Copyright (C) 2003 John Williams ++Copyright (C) 2003 John Williams ++Copyright (C) 2003 John Williams ++Copyright (C) 2003 John Williams (jwilliams@itee.uq.edu.au) ++Copyright (c) 2003 Josef Baumgartner ++Copyright (C) 2003 Josef Baumgartner ++Copyright (C) 2003 Kai-Uwe Bloem, ++Copyright (C) 2003 Kai-Uwe Bloem ++Copyright (C) 2003 Konrad Eisele ++Copyright (c) 2003 Kshitij ++Copyright (C) 2003 Kyle Harris ++Copyright (C) 2003 Manuel Novoa III ++Copyright (C) 2003 Martin Krause, TQ-Systems GmbH, martin.krause@tqs.de ++Copyright (C) 2003 Martin Winistoerfer, martinwinistoerfer@gmx.ch. ++Copyright (c) 2003 Masami Komiya ++Copyright (c) 2003 Metrowerks/Motorola ++Copyright(c) 2003 Metrowerks ++Copyright (C) 2003 Montavista Software, Inc ++Copyright (C) 2003 Motorola Inc. ++Copyright (c) 2003 Richard Woodruff ++Copyright (C) 2003 Robert Schwebel ++Copyright (C) 2003 SAN People ++Copyright (c) 2003 Texas Instruments ++Copyright (c) 2003 Thomas.Lange@corelatus.se ++Copyright (C) 2003 Travis B. Sawyer ++Copyright (C) 2004-2005 Arabella Software Ltd. ++Copyright (c) 2004-2005, Greg Ungerer ++Copyright (c) 2004-2005 Sergey Lyubka ++Copyright (C) 2004-2006 Atmel Corporation ++Copyright (C) 2004-2007 ARM Limited. ++Copyright (C) 2004-2008 Arthur Shipkowski (art@videon-central.com) ++Copyright (c) 2004-2008 Texas Instruments ++Copyright (C) 2004-2009 Analog Devices Inc. ++Copyright (C) 2004-2009 Freescale Semiconductor, Inc. ++Copyright (C) 2004 Arabella Software Ltd. ++Copyright (C) 2004 by FS Forth-Systeme GmbH. ++Copyright (c) 2004 Cucy Systems (http://www.cucy.com) ++Copyright (C) 2004 David Brownell ++Copyright (C) 2004 Gaisler Research AB ++Copyright (C) 2004 Gary Jennejohn garyj@denx.de ++Copyright (C) 2004 IMMS gGmbH ++Copyright (C) 2004 Lothar Wassmann ++Copyright (C) 2004 MPC-Data Limited. (http://www.mpc-data.co.uk) ++Copyright (C) 2004 Nokia Corporation ++Copyright (C) 2004 Patrik Kluba, ++Copyright (C) 2004 PaulReynolds@lhsolutions.com ++Copyright (c) 2004 Picture Elements, Inc. ++Copyright (C) 2004 Psion Teklogix ++Copyright (C) 2004 Ray Lehtiniemi ++Copyright (C) 2004 Sascha Hauer, Synertronixx GmbH ++Copyright (C) 2004 Stefan Holst ++Copyright (C) 2004 Sylvain Munaut ++Copyright (c) 2004 Texas Instruments ++Copyright (C) 2004 Thomas Gleixner (tglx@linutronix.de) ++Copyright (c) 2004 TsiChung Liew (Tsi-Chung.Liew@freescale.com) ++Copyright (C) 2005-2006 Atmel Corporation ++Copyright (c) 2005-2006 Gianluigi Tiesi ++Copyright (c) 2005-2007 Samsung Electronics ++Copyright (C) 2005-2008 Arthur Shipkowski (art@videon-central.com) ++Copyright (C) 2005-2008 Atmel Corporation ++Copyright(c) 2005-2008 Samsung Electronics ++Copyright (c) 2005-2009 Analog Devices Inc. ++Copyright (c) 2005, 2009 Freescale Semiconductor, Inc ++Copyright (C) 2005-2009 Samsung Electronics ++Copyright (C) 2005 Arabella Software Ltd. ++Copyright (C) 2005 Bas Vermeulen, BuyWays BV ++Copyright (c) 2005 Ben Gardner ++Copyright (C) 2005 by Videon Central, Inc. ++Copyright (c) 2005 Cisco Systems. All rights reserved. ++Copyright (C) 2005 David Brownell ++Copyright (c) 2005 Freescale Semiconductor, Inc. ++Copyright (C) 2005 HP Labs ++Copyright (C) 2005 Ivan Kokshaysky ++Copyright (c) 2005 MontaVista Software, Inc. ++Copyright (C) 2005 Olav Kongas ++Copyright (C) 2005 Sandburst Corporation ++Copyright (C) 2005 Texas Instruments. ++Copyright (C) 2005 Videon Central, Inc. ++Copyright (C) 2005 Wind River Systems ++Copyright (C) 2006-2007 Eurotech S.p.A. ++Copyright (C) 2006-2007 Rodolfo Giometti ++Copyright (C) 2006, 2007 University of Szeged, Hungary ++Copyright (c) 2006-2007 Wind River Systems, Inc. ++Copyright (c) 2006-2008 Analog Devices Inc. ++Copyright (C) 2006, 2008 Atmel Corporation ++Copyright (c) 2006-2008 Freescale Semiconductor ++opyright (c) 2006, 2008 Junio C Hamano ++Copyright (C) 2006-2008 Nokia Corporation ++Copyright (c) 2006-2008 Syed Mohammed Khasim ++Copyright (c) 2006-2009 Analog Devices Inc. ++Copyright (c) 2006-2009 Freescale Semiconductor, Inc. ++Copyright (C) 2006 Aaron Gage, Ocean Optics Inc. ++Copyright (c) 2006 Ben Warren, Qstreams Networks Inc. ++Copyright (C) 2006 Bryan O'Donoghue, CodeHermit ++Copyright (C) 2006 by Weiss-Electronic GmbH. ++Copyright (C) 2006 CodeHermit. ++Copyright (C) 2006 David Gibson, IBM Corporation. ++Copyright (C) 2006 Dominic Rath ++Copyright (C) 2006 Embedded Artists AB (www.embeddedartists.com) ++Copyright (C) 2006 Embedded Planet, LLC. ++Copyright (C) 2006 Freescale Semiconductor, Inc. ++Copyright (C) 2006 Free Software Foundation, Inc. ++Copyright (C) 2006 Micronas GmbH ++Copyright (C) 2006 Mihai Georgian ++Copyright (C) 2006 Pavel Pisa, PiKRON ++Copyright (C) 2006 Texas Instruments ++Copyright (c) 2006 Thomas Gleixner ++Copyright (c) 2006 Wind River Systems, Inc. ++Copyright (c) 2007-2008 Analog Devices Inc. ++Copyright (C) 2007-2008 Freescale Semiconductor, Inc. ++Copyright (C) 2007-2008 Industrie Dial Face S.p.A. ++Copyright (c) 2007-2008, Juniper Networks, Inc. ++Copyright (C) 2007, 2008 Nobobuhiro Iwamatsu ++Copyright (c) 2007-2009 Analog Devices Inc. ++Copyright (C) 2007-2009 Freescale Semiconductor, Inc. ++Copyright (C) 2007-2009 Industrie Dial Face S.p.A. ++Copyright (C) 2007-2009 Texas Instruments, Inc. ++Copyright (C) 2007 Andrew Victor ++Copyright (C) 2007 Atmel Corporation ++Copyright (c) 2007 Carlos Munoz ++Copyright (C) 2007 Daniel Hellstrom ++Copyright (C) 2007 Eurotech S.p.A. ++Copyright (C) 2007 Freescale Semiconductor, Inc. ++Copyright (C) 2007 Gerald Van Baren, Custom IDEAS, vanbaren@cideas.com ++Copyright (C) 2007, Guennadi Liakhovetski ++Copyright (C) 2007 Kenati Technologies, Inc. ++Copyright (C) 2007 Lead Tech Design ++Copyright (C) 2007 Logic Product Development, Inc. ++Copyright (C) 2007 MontaVista Software, Inc. ++Copyright (C) 2007 Nobuhiro Iwamatsu ++Copyright (C) 2007 Pengutronix, ++Copyright (C) 2007 Ralf Baechle (ralf@linux-mips.org) ++Copyright (C) 2007 Rodolfo Giometti ++Copyright (c) 2007 Samsung Electronics ++Copyright (C) 2007 Sascha Hauer, Pengutronix ++Copyright (C) 2007 Semihalf ++Copyright (C) 2007 Sergey Kubushyn ++Copyright (C) 2007 Stelian Pop ++Copyright (C) 2007 Yoshihiro Shimoda ++Copyright (c) 2008-2009 Analog Devices Inc. ++Copyright (C) 2008,2009 Eric Jarrige ++Copyright (c) 2008, 2009 esd gmbh Hannover Germany ++Copyright (c) 2008-2009 I-SYST. ++Copyright (C) 2008-2009 MontaVista Software, Inc. ++Copyright (C) 2008-2009 Samsung Electronics ++Copyright (c) 2008 Analog Devices Inc. ++Copyright (C) 2008 Arthur Shipkowski (art@videon-central.com) ++Copyright (C) 2008 Atmel Corporation ++Copyright (C) 2008 by Texas Instruments ++Copyright (C) 2008 Daniel Hellstrom (daniel@gaisler.com) ++Copyright (C) 2008 Dave S.r.l. ++Copyright (c) 2008 Eric Jarrige ++Copyright (c) 2008 Excito Elektronik i Skåne AB ++Copyright (c) 2008 Freescale Semiconductor, Inc. ++Copyright (C) 2008, Guennadi Liakhovetski ++Copyright (C) 2008 Jean-Christophe PLAGNIOL-VILLARD ++Copyright (C) 2008 Kim B. Heino ++Copyright (C) 2008 Lyrtech ++Copyright (c) 2008, Michael Trimarchi ++Copyright (C) 2008 Miromico AG ++Copyright (C) 2008 MontaVista Software, Inc. ++Copyright (C) 2008 Nobuhiro Iwamatsu ++Copyright (C) 2008 Nokia Corporation ++Copyright (c) 2008 Nuovation System Designs, LLC ++Copyright (C) 2008 Philip Balister, OpenSDR ++Copyright (c) 2008 Pieter Voorthuijsen ++Copyright (C) 2008 Renaud CERRATO r.cerrato@til-technologies.fr ++Copyright (C) 2008 Renesas Solutions Corp. ++Copyright (C) 2008 Ronetix Ilko Iliev (www.ronetix.at) ++Copyright (C) 2008 RuggedCom, Inc. ++Copyright (C) 2008 Samsung Electronics ++Copyright (C) 2008 Sascha Hauer, Pengutronix ++Copyright (C) 2008 Texas Instruments, Inc ++Copyright (C) 2008 Vivek Kutal ++Copyright (c) 2008 Yoshihiro Shimoda ++Copyright (C) 2008 Yusuke Goda ++Copyright (C) 2009, 2010 Matthias Kaehlcke ++Copyright (C) 2009 Alessandro Rubini ++Copyright (c) 2009 Analog Devices Inc. ++Copyright (C) 2009 BuS Elektronik GmbH & Co. KG ++Copyright (C) 2009 David Brownell ++Copyright (C) 2009, Emcraft Systems, Ilya Yanok ++Copyright (c) 2009 esd gmbh hannover germany. ++Copyright (C) 2009 Freescale Semiconductor, Inc. ++Copyright (C) 2009, Ilya Yanok, Emcraft Systems, ++Copyright (C) 2009 Jean-Christophe PLAGNIOL-VILLARD ++Copyright (C) 2009 Jens Scharsig (js_at_ng@scharsoft.de) ++Copyright (C) 2009 Matthias Kaehlcke ++Copyright (c) 2009 MontaVista Software, Inc. ++Copyright (C) 2009 Nick Thompson, GE Fanuc Ltd, ++Copyright (C) 2009 Nobuhiro Iwamatsu ++Copyright (C) 2009 Renesas Solutions Corp. ++Copyright (c) 2009 Robin Getz ++Copyright (c) 2009 Samsung Electronics ++Copyright (C) 2009 Texas Instruments Incorporated - http://www.ti.com/ ++Copyright (c) 2009 Wind River Systems, Inc. ++Copyright (C) 2010, 2009 Matthias Kaehlcke ++Copyright (C) Archway Digital Solutions. ++Copyright (C) ARM Limited 1998. ++Copyright (C) Excito Elektronik i Skåne AB ++Copyright (C) Freescale Semiconductor, Inc. 2006-2009. ++Copyright (c) International Business Machines Corp., 2006 ++Copyright (C) Linux Networx. 2002 ++Copyright (C) Matrix Vision GmbH 2008 ++Copyright (c) Nokia Corporation, 2006, 2007 ++Copyright (C) 2001, Russ Dill ++Copyright (c) Orbacom Systems, Inc ++Copyright (C) Procsys. ++Copyright (C) Samsung Electronics, 2009 ++Copyright (C) SAN People ++Copyright (C) Sheldon Instruments, Inc. 2008 ++Copyright Freescale Semiconductor, Inc. 2004, 2006, 2008. ++Copyright - Galileo technology. ++Copyright MontaVista Software Incorporated, 2000 ++Copyright Motorola, Inc. 1993, 1994 ++Copyright Motrola 1999 ++Copyright Rob Taylor, Flying Pig Systems Ltd. 2000. ++Copyright Torsten Duwe 1993 ++Copyright Wind River Systems, Inc., 1984-2003 ++(C) Copyright 2006 Eric Benard ++Copyright Motorola 1984 (!). ++Copyright (C) Motorola, 2003. ++Copyright (c) 1998 by Michael Barr ++Josh Huber, (C) Copyright 2001 Mission Critical Linux, Inc. ++(C) Copyright 2004 Gary Jennejohn ++(C) Copyright 2005 Eric Benard ++Copyright (c) 1999 Dan Malek (dmalek@jlc.net). ++Copyright (C) Motorola, 2001, present. ++Copyright (C) 2009 Red Hat ++Roel Loeffen, (C) Copyright 2006 Prodrive B.V. ++Copyright (C) Motorola, 2003. ++Copyright (C) 2004-2005 Barco Control Rooms ++Copyright (C) 2000 by Lineo, Inc., and ++Copyright (C) Motorola, 2003. ++Copyright (c) 1992, 1993 The Regents of the University of California. ++ ++The aggregate work is under the terms of the GNU GPL though many ++of these files are under a 3-clause BSD license: ++ ++Redistribution and use in source and binary forms, with or without ++modification, are permitted provided that the following conditions ++are met: ++1. Redistributions of source code must retain the above copyright ++ notice, this list of conditions and the following disclaimer. ++2. Redistributions in binary form must reproduce the above copyright ++ notice, this list of conditions and the following disclaimer in the ++ documentation and/or other materials provided with the distribution. ++3. Neither the name of the University nor the names of its contributors ++ may be used to endorse or promote products derived from this software ++ without specific prior written permission. ++ ++THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ++ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE ++IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ++ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE ++FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL ++DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS ++OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ++HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT ++LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY ++OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF ++SUCH DAMAGE. ++ ++Some are under the zlib license: ++ ++ This software is provided 'as-is', without any express or implied ++ warranty. In no event will the authors be held liable for any damages ++ arising from the use of this software. ++ ++ Permission is granted to anyone to use this software for any purpose, ++ including commercial applications, and to alter it and redistribute it ++ freely, subject to the following restrictions: ++ ++ 1. The origin of this software must not be misrepresented; you must not ++ claim that you wrote the original software. If you use this software ++ in a product, an acknowledgment in the product documentation would be ++ appreciated but is not required. ++ 2. Altered source versions must be plainly marked as such, and must not be ++ misrepresented as being the original software. ++ 3. This notice may not be removed or altered from any source distribution. ++ ++ ++Some files (mostly yaffs2) are distributed under the GNU LGPL v2 or later ++or the GNU LGPL v2.1 or later, both of which can be found in ++/usr/share/common-licenses on your Debian system. diff --cc debian/env-configs/efikamx.config index 000000000,000000000..1aedc9615 new file mode 100644 --- /dev/null +++ b/debian/env-configs/efikamx.config @@@ -1,0 -1,0 +1,9 @@@ ++# Configuration file for fw_(printenv/saveenv) utility. ++# Up to two entries are valid, in this case the redundant ++# environment sector is assumed present. ++# ++# XXX this configuration might miss a fifth parameter for the "Number of ++# sectors" ++ ++# MTD device name Device offset Env. size Flash sector size ++/dev/mtd1 0x00000 0x10000 0x01000 diff --cc debian/env-configs/guruplug.config index 000000000,000000000..8b30cbe33 new file mode 100644 --- /dev/null +++ b/debian/env-configs/guruplug.config @@@ -1,0 -1,0 +1,10 @@@ ++# Configuration file for fw_(printenv/saveenv) utility. ++# ++# Hardware : Marvell Plug2L Reference Board ++# No redundant environment ++# ++# XXX this configuration might miss a fifth parameter for the "Number of ++# sectors" ++ ++# MTD device name Device offset Env. size Flash sector size ++/dev/mtd0 0x40000 0x20000 0x20000 diff --cc debian/env-configs/kurobox_pro.config index 000000000,000000000..83b6c6ac5 new file mode 100644 --- /dev/null +++ b/debian/env-configs/kurobox_pro.config @@@ -1,0 -1,0 +1,9 @@@ ++# Configuration file for fw_(printenv/saveenv) utility. ++# Up to two entries are valid, in this case the redundant ++# environment sector is assumed present. ++# ++# XXX this configuration might miss a fifth parameter for the "Number of ++# sectors" ++ ++# MTD device name Device offset Env. size Flash sector size ++/dev/mtd0 0x3F000 0x1000 0x1000 diff --cc debian/env-configs/linkstation-mini.config index 000000000,000000000..92ce9de2d new file mode 100644 --- /dev/null +++ b/debian/env-configs/linkstation-mini.config @@@ -1,0 -1,0 +1,7 @@@ ++# Configuration file for fw_(printenv/saveenv) utility. ++# Up to two entries are valid, in this case the redundand ++# environment sector is assumed present. ++ ++# for Buffalo Linkstation Mini ++# MTD device name Device offset Env. size Flash sector size ++/dev/mtd0 0x3f000 0x01000 0x01000 diff --cc debian/env-configs/linkstation_pro_live.config index 000000000,000000000..83b6c6ac5 new file mode 100644 --- /dev/null +++ b/debian/env-configs/linkstation_pro_live.config @@@ -1,0 -1,0 +1,9 @@@ ++# Configuration file for fw_(printenv/saveenv) utility. ++# Up to two entries are valid, in this case the redundant ++# environment sector is assumed present. ++# ++# XXX this configuration might miss a fifth parameter for the "Number of ++# sectors" ++ ++# MTD device name Device offset Env. size Flash sector size ++/dev/mtd0 0x3F000 0x1000 0x1000 diff --cc debian/env-configs/lsmipsel.config index 000000000,000000000..abd8bcb50 new file mode 100644 --- /dev/null +++ b/debian/env-configs/lsmipsel.config @@@ -1,0 -1,0 +1,9 @@@ ++# Configuration file for fw_(printenv/saveenv) utility. ++# Up to two entries are valid, in this case the redundant ++# environment sector is assumed present. ++# ++# XXX this configuration might miss a fifth parameter for the "Number of ++# sectors" ++ ++# MTD device name Device offset Env. size Flash sector size ++/dev/mtd0 0x30000 0x10000 0x10000 diff --cc debian/env-configs/lsppchg.config index 000000000,000000000..4ccc5769c new file mode 100644 --- /dev/null +++ b/debian/env-configs/lsppchg.config @@@ -1,0 -1,0 +1,9 @@@ ++# Configuration file for fw_(printenv/saveenv) utility. ++# Up to two entries are valid, in this case the redundant ++# environment sector is assumed present. ++# ++# XXX this configuration might miss a fifth parameter for the "Number of ++# sectors" ++ ++# MTD device name Device offset Env. size Flash sector size ++/dev/mtd4 0x360000 0x10000 0x10000 diff --cc debian/env-configs/openmoko_gta01.config index 000000000,000000000..7fd45e398 new file mode 100644 --- /dev/null +++ b/debian/env-configs/openmoko_gta01.config @@@ -1,0 -1,0 +1,7 @@@ ++# Configuration file for fw_(printenv/saveenv) utility. ++# Up to two entries are valid, in this case the redundant ++# environment sector is assumed present. ++# Notice, that the "Number of sectors" is ignored on NOR. ++ ++# MTD device name Device offset Env. size Flash sector size Number of sectors ++/dev/mtd1 0x0000 0x4000 0x4000 2 diff --cc debian/env-configs/openmoko_gta02.config index 000000000,000000000..1faa2f1f8 new file mode 100644 --- /dev/null +++ b/debian/env-configs/openmoko_gta02.config @@@ -1,0 -1,0 +1,7 @@@ ++# Configuration file for fw_(printenv/saveenv) utility. ++# Up to two entries are valid, in this case the redundant ++# environment sector is assumed present. ++# Notice, that the "Number of sectors" is ignored on NOR. ++ ++# MTD device name Device offset Env. size Flash sector size Number of sectors ++/dev/mtd2 0x0000 0x40000 0x20000 2 diff --cc debian/env-configs/qnap_ts101.config index 000000000,000000000..181c54b8c new file mode 100644 --- /dev/null +++ b/debian/env-configs/qnap_ts101.config @@@ -1,0 -1,0 +1,9 @@@ ++# Configuration file for fw_(printenv/saveenv) utility. ++# Up to two entries are valid, in this case the redundant ++# environment sector is assumed present. ++# ++# XXX this configuration might miss a fifth parameter for the "Number of ++# sectors" ++ ++# MTD device name Device offset Env. size Flash sector size ++/dev/mtd5 0x00000 0x20000 0x20000 diff --cc debian/env-configs/qnap_ts109-209.config index 000000000,000000000..4024e080c new file mode 100644 --- /dev/null +++ b/debian/env-configs/qnap_ts109-209.config @@@ -1,0 -1,0 +1,9 @@@ ++# Configuration file for fw_(printenv/saveenv) utility. ++# Up to two entries are valid, in this case the redundant ++# environment sector is assumed present. ++# ++# XXX this configuration might miss a fifth parameter for the "Number of ++# sectors" ++ ++# MTD device name Device offset Env. size Flash sector size ++/dev/mtd4 0x0000 0x20000 0x20000 diff --cc debian/env-configs/qnap_ts119-219.config index 000000000,000000000..98505a933 new file mode 100644 --- /dev/null +++ b/debian/env-configs/qnap_ts119-219.config @@@ -1,0 -1,0 +1,11 @@@ ++# Configuration file for fw_(printenv/saveenv) utility. ++# Up to two entries are valid, in this case the redundant ++# environment sector is assumed present. ++# ++# This config is for QNAP TS-119, TS-219 and TS-219P boards. ++# ++# XXX this configuration might miss a fifth parameter for the "Number of ++# sectors" ++ ++# MTD device name Device offset Env. size Flash sector size ++/dev/mtd4 0x0000 0x1000 0x40000 diff --cc debian/env-configs/sheevaplug.config index 000000000,000000000..5bbd38d7f new file mode 100644 --- /dev/null +++ b/debian/env-configs/sheevaplug.config @@@ -1,0 -1,0 +1,9 @@@ ++# Configuration file for fw_(printenv/saveenv) utility. ++# Up to two entries are valid, in this case the redundant ++# environment sector is assumed present. ++# ++# XXX this configuration might miss a fifth parameter for the "Number of ++# sectors" ++ ++# MTD device name Device offset Env. size Flash sector size ++/dev/mtd0 0x60000 0x20000 0x20000 diff --cc debian/lintian.overrides index 000000000,000000000..b176df5ac new file mode 100644 --- /dev/null +++ b/debian/lintian.overrides @@@ -1,0 -1,0 +1,16 @@@ ++u-boot: shared-lib-without-dependency-information ./usr/lib/u-boot/guruplug/uboot.elf ++u-boot: shared-lib-without-dependency-information ./usr/lib/u-boot/sheevaplug/uboot.elf ++u-boot: shared-lib-without-dependency-information ./usr/lib/u-boot/dreamplug/uboot.elf ++u-boot: shared-lib-without-dependency-information ./usr/lib/u-boot/ZUMA/uboot.elf ++u-boot: shared-lib-without-dependency-information ./usr/lib/u-boot/eNET/uboot.elf ++u-boot: shared-lib-without-dependency-information ./usr/lib/u-boot/qemu_mips/uboot.elf ++u-boot: shared-lib-without-dependency-information ./usr/lib/u-boot/dbau1100/uboot.elf ++u-boot: shared-lib-without-dependency-information ./usr/lib/u-boot/hammerhead/uboot.elf ++u-boot: shared-lib-without-dependency-information ./usr/lib/u-boot/sh7785lcr_32bit/uboot.elf ++u-boot: shared-lib-without-dependency-information ./usr/lib/u-boot/r2dplus/uboot.elf ++u-boot: shared-lib-without-dependency-information ./usr/lib/u-boot/efikamx/uboot.elf ++u-boot: shared-lib-without-dependency-information ./usr/lib/u-boot/igep0020/uboot.elf ++u-boot: shared-lib-without-dependency-information ./usr/lib/u-boot/mx53loco/uboot.elf ++u-boot: shared-lib-without-dependency-information ./usr/lib/u-boot/omap3_beagle/uboot.elf ++u-boot: shared-lib-without-dependency-information ./usr/lib/u-boot/omap4_panda/uboot.elf ++u-boot: description-synopsis-starts-with-article diff --cc debian/manpages/fw_printenv.8 index 000000000,000000000..a288852bc new file mode 100644 --- /dev/null +++ b/debian/manpages/fw_printenv.8 @@@ -1,0 -1,0 +1,31 @@@ ++.\" Copyright © 2008 Per Andersson ++.\" This man page is covered by the GNU General Public License (GPLv2 or higher). ++.TH fw_printenv 8 "August 2008" "Debian Project" "" ++ ++.SH NAME ++fw_printenv \- Tool for printing environment for the bootloader U-Boot ++ ++.SH SYNOPSIS ++fw_printenv [ \fB\-n\fP \fIname\fP ] [ \fIname\fP \fI...\fP ] ++ ++.SH DESCRIPTION ++\fIfw_printenv\fP is a simple tool for printing the environment for the ++bootloader U-Boot. All environment variables matching the names given as ++arguments are shown. If \fIfw_printenv\fP is called without any arguments the ++entire environment is printed. ++ ++.SH OPTIONS ++.IP \fB\-n\fP ++If the \fBn\fP flag is set \fIfw_printenv\fP only prints the value of the supplied variable \fIname\fP. ++ ++.SH FILES ++.IP \fB/etc/fw_env.config\fP ++Configuration file for fw_printenv. ++ ++.SH SEE ALSO ++fw_setenv(8) ++ ++.SH AUTHOR ++Wolfgang Denk ++.PP ++This manual page was written by Per Andersson diff --cc debian/manpages/fw_setenv.8 index 000000000,000000000..5a5114ab1 new file mode 100644 --- /dev/null +++ b/debian/manpages/fw_setenv.8 @@@ -1,0 -1,0 +1,27 @@@ ++.\" Copyright © 2008 Per Andersson ++.\" This man page is covered by the GNU General Public License (GPLv2 or higher). ++.TH fw_setenv 8 "August 2008" "Debian Project" "" ++ ++.SH NAME ++fw_setenv \- Tool for modifying the environment for the bootloader U\-Boot ++ ++.SH SYNOPSIS ++fw_setenv \fIname\fP [ \fIvalue\fP ] ++ ++.SH DESCRIPTION ++\fIfw_setenv\fP is a simple tool for modifying either the environment for the ++bootloader U-Boot. If the variable already is set in the environment it is ++updated, otherwise it is created and set. If only one argument is given, ++variable name, the corresponding variable is deleted. ++ ++.SH FILES ++.IP \fB/etc/fw_env.config\fP ++Configuration file for fw_setenv. ++ ++.SH SEE ALSO ++fw_printenv(8) ++ ++.SH AUTHOR ++Wolfgang Denk ++.PP ++This manual page was written by Per Andersson diff --cc debian/patches/ARM-OMAP3-Revamp-IGEP-default-configuration.diff index 000000000,000000000..6cd7624db new file mode 100644 --- /dev/null +++ b/debian/patches/ARM-OMAP3-Revamp-IGEP-default-configuration.diff @@@ -1,0 -1,0 +1,89 @@@ ++From ebdb222b0d65bcc050e3f0fd6e97faf17fb3eae4 Mon Sep 17 00:00:00 2001 ++Sender: Loïc Minier ++From: Enric Balletbo i Serra ++Date: Wed, 23 Feb 2011 14:35:41 +0100 ++Subject: [PATCH] ARM: OMAP3: Revamp IGEP default configuration ++MIME-Version: 1.0 ++Content-Type: text/plain; charset=UTF-8 ++Content-Transfer-Encoding: 8bit ++ ++The default IGEP configuration doesn't do anything useful; using some ++boot.scr search logic like BeagleBoard is much more useful. ++ ++Signed-off-by: Loïc Minier ++--- ++ include/configs/igep0020.h | 55 ++++++++++++++++++++++++++++++++++++++++--- ++ 1 files changed, 51 insertions(+), 4 deletions(-) ++ ++diff --git a/include/configs/igep0020.h b/include/configs/igep0020.h ++index c19ecc0..2466562 100644 ++--- a/include/configs/igep0020.h +++++ b/include/configs/igep0020.h ++@@ -130,13 +130,60 @@ ++ #define CONFIG_TWL4030_POWER 1 ++ ++ /* Environment information */ ++-#define CONFIG_BOOTCOMMAND \ ++- "mmc init 0 ; fatload mmc 0 0x80000000 setup.ini ; source \0" ++- ++ #define CONFIG_BOOTDELAY 3 ++ ++ #define CONFIG_EXTRA_ENV_SETTINGS \ ++- "usbtty=cdc_acm\0" +++ "loadaddr=0x82000000\0" \ +++ "usbtty=cdc_acm\0" \ +++ "console=ttyS2,115200n8\0" \ +++ "mpurate=500\0" \ +++ "vram=12M\0" \ +++ "dvimode=1024x768MR-16@60\0" \ +++ "defaultdisplay=dvi\0" \ +++ "mmcdev=0\0" \ +++ "mmcroot=/dev/mmcblk0p2 rw\0" \ +++ "mmcrootfstype=ext3 rootwait\0" \ +++ "nandroot=/dev/mtdblock4 rw\0" \ +++ "nandrootfstype=jffs2\0" \ +++ "mmcargs=setenv bootargs console=${console} " \ +++ "mpurate=${mpurate} " \ +++ "vram=${vram} " \ +++ "omapfb.mode=dvi:${dvimode} " \ +++ "omapfb.debug=y " \ +++ "omapdss.def_disp=${defaultdisplay} " \ +++ "root=${mmcroot} " \ +++ "rootfstype=${mmcrootfstype}\0" \ +++ "nandargs=setenv bootargs console=${console} " \ +++ "mpurate=${mpurate} " \ +++ "vram=${vram} " \ +++ "omapfb.mode=dvi:${dvimode} " \ +++ "omapfb.debug=y " \ +++ "omapdss.def_disp=${defaultdisplay} " \ +++ "root=${nandroot} " \ +++ "rootfstype=${nandrootfstype}\0" \ +++ "loadbootscript=fatload mmc ${mmcdev} ${loadaddr} boot.scr\0" \ +++ "bootscript=echo Running bootscript from mmc ...; " \ +++ "source ${loadaddr}\0" \ +++ "loaduimage=fatload mmc ${mmcdev} ${loadaddr} uImage\0" \ +++ "mmcboot=echo Booting from mmc ...; " \ +++ "run mmcargs; " \ +++ "bootm ${loadaddr}\0" \ +++ "nandboot=echo Booting from nand ...; " \ +++ "run nandargs; " \ +++ "nand read ${loadaddr} 280000 400000; " \ +++ "bootm ${loadaddr}\0" \ +++ +++#define CONFIG_BOOTCOMMAND \ +++ "if mmc rescan ${mmcdev}; then " \ +++ "if run loadbootscript; then " \ +++ "run bootscript; " \ +++ "else " \ +++ "if run loaduimage; then " \ +++ "run mmcboot; " \ +++ "else run nandboot; " \ +++ "fi; " \ +++ "fi; " \ +++ "else run nandboot; fi" ++ ++ #define CONFIG_AUTO_COMPLETE 1 ++ ++-- ++1.7.2.3 ++ diff --cc debian/patches/hurd.diff index 000000000,000000000..546e5fbb2 new file mode 100644 --- /dev/null +++ b/debian/patches/hurd.diff @@@ -1,0 -1,0 +1,20 @@@ ++--- a/include/compiler.h +++++ b/include/compiler.h ++@@ -15,7 +15,7 @@ ++ defined(__sun__) || \ ++ defined(__APPLE__) ++ # include ++-#elif defined(__linux__) || defined(__WIN32__) || defined(__MINGW32__) +++#elif defined(__linux__) || defined(__WIN32__) || defined(__MINGW32__) || defined(__GLIBC__) ++ # include ++ #endif ++ ++@@ -41,7 +41,7 @@ ++ #define O_BINARY 0 ++ #endif ++ ++-#ifdef __linux__ +++#if defined(__linux__) || defined(__GLIBC__) ++ # include ++ # include ++ #elif defined(__MACH__) || defined(__FreeBSD__) diff --cc debian/patches/kerma-sheevaplug-mvsata.diff index 000000000,000000000..34d9854cb new file mode 100644 --- /dev/null +++ b/debian/patches/kerma-sheevaplug-mvsata.diff @@@ -1,0 -1,0 +1,56 @@@ ++ Add mvsata support to SHEEVAPLUG ++ ++Signed-off-by: Gérald Kerma ++--- ++Changes in v2: ++ * typo fixed ++ * list reordered ++ ++ include/configs/sheevaplug.h | 29 +++++++++++++++++++++++++++++ ++ 1 files changed, 29 insertions(+), 0 deletions(-) ++ ++--- a/include/configs/sheevaplug.h +++++ b/include/configs/sheevaplug.h ++@@ -46,6 +46,7 @@ ++ #include ++ #define CONFIG_CMD_DHCP ++ #define CONFIG_CMD_ENV +++#define CONFIG_CMD_IDE ++ #define CONFIG_CMD_MII ++ #define CONFIG_CMD_NAND ++ #define CONFIG_CMD_PING ++@@ -98,6 +99,34 @@ ++ #endif /* CONFIG_CMD_NET */ ++ ++ /* +++ * IDE Support on SATA port0 +++ */ +++#ifdef CONFIG_CMD_IDE +++#define __io +++#define CONFIG_CMD_EXT2 +++#define CONFIG_MVSATA_IDE +++#define CONFIG_IDE_PREINIT +++#define CONFIG_MVSATA_IDE_USE_PORT0 +++/* Needs byte-swapping for ATA data register */ +++#define CONFIG_IDE_SWAP_IO +++/* Data, registers and alternate blocks are at the same offset */ +++#define CONFIG_SYS_ATA_DATA_OFFSET (0x0100) +++#define CONFIG_SYS_ATA_REG_OFFSET (0x0100) +++#define CONFIG_SYS_ATA_ALT_OFFSET (0x0100) +++/* Each 8-bit ATA register is aligned to a 4-bytes address */ +++#define CONFIG_SYS_ATA_STRIDE 4 +++/* Controller supports 48-bits LBA addressing */ +++#define CONFIG_LBA48 +++/* CONFIG_CMD_IDE requires some #defines for ATA registers */ +++#define CONFIG_SYS_IDE_MAXBUS 1 +++#define CONFIG_SYS_IDE_MAXDEVICE 1 +++/* ATA registers base is at SATA controller base */ +++#define CONFIG_SYS_ATA_BASE_ADDR KW_SATA_BASE +++/* ATA bus 0 is Kirkwood port 1 on sheevaplug */ +++#define CONFIG_SYS_ATA_IDE0_OFFSET KW_SATA_PORT1_OFFSET +++#endif /* CONFIG_CMD_IDE */ +++ +++/* ++ * File system ++ */ ++ #define CONFIG_CMD_EXT2 diff --cc debian/patches/kerma-sheevaplug-mvsdio.diff index 000000000,000000000..1c373a7c8 new file mode 100644 --- /dev/null +++ b/debian/patches/kerma-sheevaplug-mvsdio.diff @@@ -1,0 -1,0 +1,1156 @@@ ++This patch has been tweaked a lot to apply ++========================================== ++ ++ Add mvsdio driver to Kirkwood SoC ++ Add SDIO support to SHEEVAPLUG ++ Fix environments for SHEEVAPLUG ++ ++Signed-off-by: Gérald Kerma ++--- ++Changes in v1: ++ * Fix errors from SD/SDHC detect ++ * Minor fixes in boot env ++ ++ arch/arm/cpu/arm926ejs/kirkwood/timer.c | 23 + ++ arch/arm/include/asm/arch-kirkwood/kirkwood.h | 1 + ++ drivers/mmc/Makefile | 1 + ++ drivers/mmc/mv_sdio.c | 747 +++++++++++++++++++++++++ ++ drivers/mmc/mv_sdio.h | 296 ++++++++++ ++ include/configs/sheevaplug.h | 65 ++- ++ 6 files changed, 1124 insertions(+), 9 deletions(-) ++ ++--- a/arch/arm/include/asm/arch-kirkwood/kirkwood.h +++++ b/arch/arm/include/asm/arch-kirkwood/kirkwood.h ++@@ -55,6 +55,7 @@ ++ #define KW_EGIGA0_BASE (KW_REGISTER(0x72000)) ++ #define KW_EGIGA1_BASE (KW_REGISTER(0x76000)) ++ #define KW_SATA_BASE (KW_REGISTER(0x80000)) +++#define KW_SDIO_BASE (KW_REGISTER(0x90000)) ++ ++ /* Kirkwood Sata controller has two ports */ ++ #define KW_SATA_PORT0_OFFSET 0x2000 ++--- a/drivers/mmc/Makefile +++++ b/drivers/mmc/Makefile ++@@ -34,6 +34,7 @@ ++ COBJS-$(CONFIG_MMC_SPI) += mmc_spi.o ++ COBJS-$(CONFIG_ARM_PL180_MMCI) += arm_pl180_mmci.o ++ COBJS-$(CONFIG_MV_SDHCI) += mv_sdhci.o +++COBJS-$(CONFIG_MV_SDIO) += mv_sdio.o ++ COBJS-$(CONFIG_MXC_MMC) += mxcmmc.o ++ COBJS-$(CONFIG_MXS_MMC) += mxsmmc.o ++ COBJS-$(CONFIG_OMAP_HSMMC) += omap_hsmmc.o ++--- /dev/null +++++ b/drivers/mmc/mv_sdio.c ++@@ -0,0 +1,747 @@ +++/* +++ * (C) Copyright 2003 +++ * Kyle Harris, Nexus Technologies, Inc. kharris at nexus-tech.net +++ * Copyright (C) 2010 G?rald Kerma +++ * +++ * See file CREDITS for list of people who contributed to this +++ * project. +++ * +++ * This program is free software; you can redistribute it and/or +++ * modify it under the terms of the GNU General Public License as +++ * published by the Free Software Foundation; either version 2 of +++ * the License, or (at your option) any later version. +++ * +++ * This program is distributed in the hope that it will be useful, +++ * but WITHOUT ANY WARRANTY; without even the implied warranty of +++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +++ * GNU General Public License for more details. +++ * +++ * You should have received a copy of the GNU General Public License +++ * along with this program; if not, write to the Free Software +++ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, +++ * MA 02111-1307 USA +++ */ +++ +++#include +++#include +++#include +++#include +++#include "mv_sdio.h" +++#include +++#include +++#include +++#include +++ +++#ifdef CONFIG_MMC +++ +++#define DRIVER_NAME "mv-sdio" +++ +++//#define DEBUG +++ +++//static int maxfreq = MVSD_CLOCKRATE_MAX; +++//static int nodma; +++ +++static int is_sdhc; +++ +++extern int fat_register_device(block_dev_desc_t *dev_desc, int part_no); +++ +++static block_dev_desc_t mmc_dev; +++ +++block_dev_desc_t * mmc_get_dev(int dev) +++{ +++ return ((block_dev_desc_t *)&mmc_dev); +++} +++ +++/* +++ * FIXME needs to read cid and csd info to determine block size +++ * and other parameters +++ */ +++static uchar mmc_buf[MMC_BLOCK_SIZE]; +++static mv_mmc_csd_t mv_mmc_csd; +++static int mmc_ready = 0; +++ +++/* MMC_DEFAULT_RCA should probably be just 1, but this may break other code +++ that expects it to be shifted. */ +++static u_int16_t rca = 0; +++ +++static u_int32_t mv_mmc_size(const struct mv_mmc_csd *csd) +++{ +++ u_int32_t block_len, mult, blocknr; +++ +++ block_len = csd->read_bl_len << 12; +++ mult = csd->c_size_mult1 << 8; +++ blocknr = (csd->c_size+1) * mult; +++ +++ return blocknr * block_len; +++} +++ +++static int isprint (unsigned char ch) +++{ +++ if (ch >= 32 && ch < 127) +++ return (1); +++ +++ return (0); +++} +++ +++static int toprint(char *dst, char c) +++{ +++ if (isprint(c)) { +++ *dst = c; +++ return 1; +++ } +++ +++ return sprintf(dst,"\\x%02x", c); +++ +++} +++ +++static void print_mmc_cid(mv_mmc_cid_t *cid) +++{ +++ printf("MMC found. Card desciption is:\n"); +++ printf("Manufacturer ID = %02x%02x%02x\n", +++ cid->id[0], cid->id[1], cid->id[2]); +++ printf("HW/FW Revision = %x %x\n",cid->hwrev, cid->fwrev); +++ cid->hwrev = cid->fwrev = 0; /* null terminate string */ +++ printf("Product Name = %s\n",cid->name); +++ printf("Serial Number = %02x%02x%02x\n", +++ cid->sn[0], cid->sn[1], cid->sn[2]); +++ printf("Month = %d\n",cid->month); +++ printf("Year = %d\n",1997 + cid->year); +++} +++ +++static void print_sd_cid(mv_sd_cid_t *cid) +++{ +++ int len; +++ char tbuf[64]; +++ +++ printf("SD%s found. Card desciption is:\n", is_sdhc?"HC":""); +++ +++ len = 0; +++ len += toprint(&tbuf[len], cid->oid_0); +++ len += toprint(&tbuf[len], cid->oid_1); +++ tbuf[len] = 0; +++ +++ printf("Manufacturer: 0x%02x, OEM \"%s\"\n", +++ cid->mid, tbuf); +++ +++ len = 0; +++ len += toprint(&tbuf[len], cid->pnm_0); +++ len += toprint(&tbuf[len], cid->pnm_1); +++ len += toprint(&tbuf[len], cid->pnm_2); +++ len += toprint(&tbuf[len], cid->pnm_3); +++ len += toprint(&tbuf[len], cid->pnm_4); +++ tbuf[len] = 0; +++ +++ printf("Product name: \"%s\", revision %d.%d\n", +++ tbuf, +++ cid->prv >> 4, cid->prv & 15); +++ +++ printf("Serial number: %u\n", +++ cid->psn_0 << 24 | cid->psn_1 << 16 | cid->psn_2 << 8 | +++ cid->psn_3); +++ printf("Manufacturing date: %d/%d\n", +++ cid->mdt_1 & 15, +++ 2000+((cid->mdt_0 & 15) << 4)+((cid->mdt_1 & 0xf0) >> 4)); +++ +++ printf("CRC: 0x%02x, b0 = %d\n", +++ cid->crc >> 1, cid->crc & 1); +++} +++ +++static void mvsdio_set_clock(unsigned int clock) +++{ +++ unsigned int m; +++ +++ m = MVSDMMC_BASE_FAST_CLOCK/(2*clock) - 1; +++ +++ debug("mvsdio_set_clock: dividor = 0x%x clock=%d\n", +++ m, clock); +++ +++ +++ SDIO_REG_WRITE32(SDIO_CLK_DIV, m & 0x7ff); +++ +++ if (isprint(1)) +++ udelay(10*1000); +++} +++ +++/****************************************************/ +++static ulong * mv_mmc_cmd(ulong cmd, ulong arg, ushort xfermode, ushort resptype, ushort waittype) +++/****************************************************/ +++{ +++ static ulong resp[4]; +++ ushort done ; +++ int err = 0 ; +++ ulong curr, start, diff, hz; +++ ushort response[8], resp_indx = 0; +++ +++ debug("mv_mmc_cmd %x, arg: %x,xfer: %x,resp: %x, wait : %x\n" +++ , (unsigned int)cmd, (unsigned int)arg, xfermode, resptype, waittype); +++ +++ +++ //clear status +++ SDIO_REG_WRITE16(SDIO_NOR_INTR_STATUS, 0xffff); +++ SDIO_REG_WRITE16(SDIO_ERR_INTR_STATUS, 0xffff); +++ +++ start = get_ticks(); +++ hz = get_tbclk(); +++ +++ while((SDIO_REG_READ16(SDIO_PRESENT_STATE0) & CARD_BUSY)) { +++ curr = get_ticks(); +++ diff = (long) curr - (long) start; +++ if (diff > (3*hz)) +++ { +++ // 3 seconds timeout, card busy, can't sent cmd +++ printf("card too busy \n"); +++ return 0; +++ } +++ } +++ +++ SDIO_REG_WRITE16(SDIO_ARG_LOW, (ushort)(arg&0xffff) ); +++ SDIO_REG_WRITE16(SDIO_ARG_HI, (ushort)(arg>>16) ); +++ SDIO_REG_WRITE16(SDIO_XFER_MODE, xfermode); +++ if( (cmd == MMC_CMD_READ_BLOCK) || (cmd == 25) ) +++ { +++ SDIO_REG_WRITE16(SDIO_CMD, ((cmd << 8) | resptype | 0x3c ) ); +++ debug("cmd reg : %x\n", SDIO_REG_READ16( SDIO_CMD )) ; +++ +++ } +++ else +++ { +++ SDIO_REG_WRITE16(SDIO_CMD, ((cmd << 8) | resptype ) ); +++ } +++ +++ done = SDIO_REG_READ16(SDIO_NOR_INTR_STATUS) & waittype; +++ start = get_ticks(); +++ +++ while( done!=waittype) +++ { +++ done = SDIO_REG_READ16(SDIO_NOR_INTR_STATUS) & waittype; +++ +++ if( SDIO_REG_READ16(SDIO_NOR_INTR_STATUS) & 0x8000 ) +++ { +++ debug("Error! cmd : %d, err : %04x\n", (unsigned int)cmd, SDIO_REG_READ16(SDIO_ERR_INTR_STATUS) ) ; +++ +++ return 0 ; // error happen +++ } +++ +++ curr = get_ticks(); +++ diff = (long) curr - (long) start; +++ if (diff > (3*hz)) +++ { +++ debug("cmd timeout, status : %04x\n", SDIO_REG_READ16(SDIO_NOR_INTR_STATUS)); +++ debug("xfer mode : %04x\n", SDIO_REG_READ16(SDIO_XFER_MODE)); +++ +++ err = 1 ; +++ break; +++ } +++ } +++ +++ for (resp_indx = 0 ; resp_indx < 8; resp_indx++) +++ response[resp_indx] = SDIO_REG_READ16(SDIO_RSP(resp_indx)); +++ +++ memset(resp, 0, sizeof(resp)); +++ +++ switch (resptype & 0x3) { +++ case SDIO_CMD_RSP_48: +++ case SDIO_CMD_RSP_48BUSY: +++ resp[0] = ((response[2] & 0x3f) << (8 - 8)) | +++ ((response[1] & 0xffff) << (14 - 8)) | +++ ((response[0] & 0x3ff) << (30 - 8)); +++ resp[1] = ((response[0] & 0xfc00) >> 10); +++ break; +++ +++ case SDIO_CMD_RSP_136: +++ resp[3] = ((response[7] & 0x3fff) << 8) | +++ ((response[6] & 0x3ff) << 22); +++ resp[2] = ((response[6] & 0xfc00) >> 10) | +++ ((response[5] & 0xffff) << 6) | +++ ((response[4] & 0x3ff) << 22); +++ resp[1] = ((response[4] & 0xfc00) >> 10) | +++ ((response[3] & 0xffff) << 6) | +++ ((response[2] & 0x3ff) << 22); +++ resp[0] = ((response[2] & 0xfc00) >> 10) | +++ ((response[1] & 0xffff) << 6) | +++ ((response[0] & 0x3ff) << 22); +++ break; +++ default: +++ return 0; +++ } +++ int i; +++ debug("MMC resp :"); +++ for (i=0; i<4; ++i ) { +++ debug(" %08x", (unsigned int)resp[i]); +++ } +++ debug("\n"); +++ if( err ) +++ return NULL ; +++ else +++ return resp; +++} +++ +++/****************************************************/ +++static int mv_mmc_block_read(uchar *dst, ulong src, ulong len) +++/****************************************************/ +++{ +++ ulong *resp; +++ //ushort argh, argl; +++ //ulong status; +++ +++ if (len == 0) { +++ return 0; +++ } +++ +++ if (is_sdhc) { +++ /* SDHC: use block address */ +++ src >>= 9; +++ } +++ +++ debug("mmc_block_rd dst %lx src %lx len %d\n", (ulong)dst, src, (int)len); +++ +++ // prepare for dma transfer +++ SDIO_REG_WRITE16(SDIO_SYS_ADDR_LOW,((ulong)(dst))&0xffff); +++ SDIO_REG_WRITE16(SDIO_SYS_ADDR_HI,(((ulong)dst)>>16)&0xffff); +++ SDIO_REG_WRITE16(SDIO_BLK_SIZE,len); +++ SDIO_REG_WRITE16(SDIO_BLK_COUNT,1); +++ +++ /* send read command */ +++ resp = mv_mmc_cmd(MMC_CMD_READ_BLOCK, src, 0x10 , // 0x12, +++ SDIO_CMD_RSP_48, SDIO_NOR_XFER_DONE); +++ if (!resp) { +++ debug("mv_mmc_block_read: mmc read block cmd fails\n"); +++ return -EIO; +++ } +++ +++ return 0; +++} +++ +++/****************************************************/ +++static int mv_mmc_block_write(ulong dst, uchar *src, int len) +++/****************************************************/ +++{ +++ return -1 ; +++} +++ +++/****************************************************/ +++int mv_mmc_read(ulong src, uchar *dst, int size) +++/****************************************************/ +++{ +++ ulong end, part_start, part_end, part_len, aligned_start, aligned_end; +++ ulong mmc_block_size, mmc_block_address; +++ +++ if (size == 0) { +++ return 0; +++ } +++ +++ if (!mmc_ready) { +++ printf("Please initial the MMC first\n"); +++ return -1; +++ } +++ +++ mmc_block_size = MMC_BLOCK_SIZE; +++ mmc_block_address = ~(mmc_block_size - 1); +++ +++ end = src + size; +++ part_start = ~mmc_block_address & src; +++ part_end = ~mmc_block_address & end; +++ aligned_start = mmc_block_address & src; +++ aligned_end = mmc_block_address & end; +++ +++ /* all block aligned accesses */ +++ debug("src %lx dst %lx end %lx pstart %lx pend %lx astart %lx aend %lx\n", +++ (long unsigned int)src,(ulong)dst, end, part_start, part_end, aligned_start, aligned_end); +++ +++ if (part_start) { +++ part_len = mmc_block_size - part_start; +++ debug("ps src %lx dst %lx end %lx pstart %lx pend %lx astart %lx aend %lx\n", +++ (long unsigned int)src,(ulong)dst, end, part_start, part_end, aligned_start, aligned_end); +++ +++ if ((mv_mmc_block_read(mmc_buf, aligned_start, mmc_block_size)) < 0) { +++ return -1; +++ } +++ memcpy(dst, mmc_buf+part_start, part_len); +++ dst += part_len; +++ src += part_len; +++ } +++ debug("src %lx dst %lx end %lx pstart %lx pend %lx astart %lx aend %lx\n", +++ (long unsigned int)src,(ulong)dst, end, part_start, part_end, aligned_start, aligned_end); +++ +++ for (; src < aligned_end; aligned_start +=mmc_block_size, src += mmc_block_size, dst += mmc_block_size) { +++ debug("al src %lx dst %lx end %lx pstart %lx pend %lx astart %lx aend %lx\n", +++ (long unsigned int)src,(ulong)dst, end, part_start, part_end, aligned_start, aligned_end); +++ +++ if ((mv_mmc_block_read(mmc_buf, aligned_start, mmc_block_size)) < 0) { +++ printf("mmc block read error\n"); +++ return -1; +++ } +++ //printf("mem copy from %x to %x, size %d\n", (ulong)mmc_buf, (ulong)dst, mmc_block_size ); +++ memcpy(dst, mmc_buf, mmc_block_size); +++ } +++ debug("src %lx dst %lx end %lx pstart %lx pend %lx astart %lx aend %lx\n", +++ (long unsigned int)src,(ulong)dst, end, part_start, part_end, aligned_start, aligned_end); +++ +++ if (part_end && src < end) { +++ debug("pe src %lx dst %lx end %lx pstart %lx pend %lx astart %lx aend %lx\n", +++ (long unsigned int)src,(ulong)dst, end, part_start, part_end, aligned_start, aligned_end); +++ +++ if ((mv_mmc_block_read(mmc_buf, aligned_end, mmc_block_size)) < 0) { +++ return -1; +++ } +++ memcpy(dst, mmc_buf, part_end); +++ } +++ return 0; +++} +++ +++/****************************************************/ +++static int mv_mmc_write(uchar *src, ulong dst, int size) +++/****************************************************/ +++{ +++ ulong end, part_start, part_end, part_len, aligned_start, aligned_end; +++ ulong mmc_block_size, mmc_block_address; +++ +++ if (size == 0) { +++ return 0; +++ } +++ +++ if (!mmc_ready) { +++ printf("Please initial the MMC first\n"); +++ return -1; +++ } +++ +++ mmc_block_size = MMC_BLOCK_SIZE; +++ mmc_block_address = ~(mmc_block_size - 1); +++ +++ end = dst + size; +++ part_start = ~mmc_block_address & dst; +++ part_end = ~mmc_block_address & end; +++ aligned_start = mmc_block_address & dst; +++ aligned_end = mmc_block_address & end; +++ +++ /* all block aligned accesses */ +++ debug("src %lx dst %lx end %lx pstart %lx pend %lx astart %lx aend %lx\n", +++ (long unsigned int)src,(ulong)dst, end, part_start, part_end, aligned_start, aligned_end); +++ +++ if (part_start) { +++ part_len = mmc_block_size - part_start; +++ debug("ps src %lx dst %lx end %lx pstart %lx pend %lx astart %lx aend %lx\n", +++ (ulong)src, dst, end, part_start, part_end, aligned_start, aligned_end); +++ +++ if ((mv_mmc_block_read(mmc_buf, aligned_start, mmc_block_size)) < 0) { +++ return -1; +++ } +++ memcpy(mmc_buf+part_start, src, part_len); +++ if ((mv_mmc_block_write(aligned_start, mmc_buf, mmc_block_size)) < 0) { +++ return -1; +++ } +++ dst += part_len; +++ src += part_len; +++ } +++ debug("src %lx dst %lx end %lx pstart %lx pend %lx astart %lx aend %lx\n", +++ (long unsigned int)src,(ulong)dst, end, part_start, part_end, aligned_start, aligned_end); +++ +++ for (; dst < aligned_end; src += mmc_block_size, dst += mmc_block_size) { +++ debug("al src %lx dst %lx end %lx pstart %lx pend %lx astart %lx aend %lx\n", +++ (long unsigned int)src,(ulong)dst, end, part_start, part_end, aligned_start, aligned_end); +++ +++ if ((mv_mmc_block_write(dst, (uchar *)src, mmc_block_size)) < 0) { +++ return -1; +++ } +++ } +++ debug("src %lx dst %lx end %lx pstart %lx pend %lx astart %lx aend %lx\n", +++ (long unsigned int)src,(ulong)dst, end, part_start, part_end, aligned_start, aligned_end); +++ +++ if (part_end && dst < end) { +++ debug("pe src %lx dst %lx end %lx pstart %lx pend %lx astart %lx aend %lx\n", +++ (long unsigned int)src,(ulong)dst, end, part_start, part_end, aligned_start, aligned_end); +++ +++ if ((mv_mmc_block_read(mmc_buf, aligned_end, mmc_block_size)) < 0) { +++ return -1; +++ } +++ memcpy(mmc_buf, src, part_end); +++ if ((mv_mmc_block_write(aligned_end, mmc_buf, mmc_block_size)) < 0) { +++ return -1; +++ } +++ } +++ return 0; +++} +++ +++/****************************************************/ +++static ulong mv_mmc_bread(int dev_num, ulong blknr, ulong blkcnt, ulong *dst) +++/****************************************************/ +++{ +++ int mmc_block_size = MMC_BLOCK_SIZE; +++ ulong src = blknr * mmc_block_size; +++ +++ mv_mmc_read(src, (uchar *)dst, blkcnt*mmc_block_size); +++ return blkcnt; +++} +++ +++/****************************************************/ +++int mmc_legacy_init(int verbose) +++/****************************************************/ +++{ +++ int retries, rc = -ENODEV; +++ ulong *resp; +++ int sd_ver20; +++ int is_sd; +++ ushort reg; +++ uchar cidbuf[64]; +++ +++ sd_ver20 = 0; +++ is_sdhc = 0; +++ is_sd = 0; +++ +++ // Initial Host Ctrl : Timeout : max , Normal Speed mode, 4-bit data mode +++ // Big Endian, SD memory Card, Push_pull CMD Line +++ SDIO_REG_WRITE16(SDIO_HOST_CTRL, +++ SDIO_HOST_CTRL_TMOUT(0xf) | +++ SDIO_HOST_CTRL_DATA_WIDTH_4_BITS | +++ SDIO_HOST_CTRL_BIG_ENDIAN | +++ SDIO_HOST_CTRL_PUSH_PULL_EN | +++ SDIO_HOST_CTRL_CARD_TYPE_MEM_ONLY ); +++ +++ SDIO_REG_WRITE16(SDIO_CLK_CTRL, 0); +++ +++ //enable status +++ SDIO_REG_WRITE16(SDIO_NOR_STATUS_EN, 0xffff); +++ SDIO_REG_WRITE16(SDIO_ERR_STATUS_EN, 0xffff); +++ +++ //disable interrupts +++ SDIO_REG_WRITE16(SDIO_NOR_INTR_EN, 0); +++ SDIO_REG_WRITE16(SDIO_ERR_INTR_EN, 0); +++ +++ SDIO_REG_WRITE16(SDIO_SW_RESET,0x100); +++ udelay(10000); +++ +++ mv_mmc_csd.c_size = 0; +++ +++ /* reset */ +++ retries = 10; +++ //mv_mmc_cmd(ulong cmd, ulong arg, ushort xfermode, ushort resptype, ushort waittype); +++ resp = mv_mmc_cmd(0, 0, 0, SDIO_CMD_RSP_NONE, SDIO_NOR_CMD_DONE ); +++ debug("cmd 0 resp : %08x %08x %08x %08x\n", +++ (unsigned int)resp[0], (unsigned int)resp[1], (unsigned int)resp[2], (unsigned int)resp[3] ); +++ +++ +++ debug ("trying to detect SD card version\n"); +++ +++ resp = mv_mmc_cmd(8, 0x000001aa, 0, SDIO_CMD_RSP_48, SDIO_NOR_CMD_DONE ); +++ debug("cmd 8 resp : %08x %08x %08x %08x\n", +++ (unsigned int)resp[0], (unsigned int)resp[1], (unsigned int)resp[2], (unsigned int)resp[3] ); +++ +++ if (resp && (resp[0] & 0x1ff)==0x1aa) { +++ debug ("SD version 2.0 card detected\n"); +++ +++ sd_ver20 = 1; +++ } +++ +++ if (sd_ver20) +++ retries = 50; +++ else +++ retries = 10; +++ +++ while (retries--) { +++ resp = mv_mmc_cmd(55, 0, 0, SDIO_CMD_RSP_48, SDIO_NOR_CMD_DONE ); +++ debug("cmd 55 resp : %08x %08x %08x %08x\n", +++ (unsigned int)resp[0], (unsigned int)resp[1], (unsigned int)resp[2], (unsigned int)resp[3] ); +++ +++ +++ if (sd_ver20) +++ resp = mv_mmc_cmd(41, 0x40300000, 0, SDIO_CMD_RSP_48, SDIO_NOR_CMD_DONE ); +++ else +++ resp = mv_mmc_cmd(41, 0x00300000, 0, SDIO_CMD_RSP_48, SDIO_NOR_CMD_DONE ); +++ +++ debug("cmd 41 resp : %08x %08x %08x %08x\n", +++ (unsigned int)resp[0], (unsigned int)resp[1], (unsigned int)resp[2], (unsigned int)resp[3] ); +++ +++ +++ if (resp && (resp[0] & 0x80000000)) { +++ debug ("detected SD card\n"); +++ +++ is_sd = 1; +++ break; +++ } +++ +++ udelay(100*1000); +++ } +++ +++ if (retries <= 0 && !is_sd) { +++ debug ("failed to detect SD card, trying MMC\n"); +++ +++ retries = 10; +++ while (retries--) { +++ resp = mv_mmc_cmd(1, 0, 0, SDIO_CMD_RSP_48, SDIO_NOR_CMD_DONE ); +++ debug("cmd 01 resp : %08x %08x %08x %08x\n", +++ (unsigned int)resp[0], (unsigned int)resp[1], (unsigned int)resp[2], (unsigned int)resp[3] ); +++ +++ +++ if (resp && (resp[0] & 0x80000000)) { +++ printf ("detected MMC card\n"); +++ reg = SDIO_REG_READ16(SDIO_HOST_CTRL); +++ reg &= ~(0x3<<1); +++ reg |= SDIO_HOST_CTRL_CARD_TYPE_IO_MMC; +++ SDIO_REG_WRITE16(SDIO_HOST_CTRL, reg); +++ break; +++ } +++ +++ udelay(100*1000); +++ } +++ } +++ +++ if (retries <= 0) { +++ debug ("detect fails\n"); +++ +++ return -ENODEV; +++ } +++ +++ /* try to get card id */ +++ resp = mv_mmc_cmd(2, 0, 0, SDIO_CMD_RSP_136, SDIO_NOR_CMD_DONE ); +++ debug("cmd 2 resp : %08x %08x %08x %08x\n", +++ (unsigned int)resp[0], (unsigned int)resp[1], (unsigned int)resp[2], (unsigned int)resp[3] ); +++ +++ +++ if (resp == NULL) { +++ debug ("read cid fails\n"); +++ +++ return -ENODEV; +++ } +++ +++ if (is_sd) { +++ mv_sd_cid_t *cid = (mv_sd_cid_t *) resp; +++ +++ memcpy(cidbuf, resp, sizeof(mv_sd_cid_t)); +++ +++ sprintf((char *) mmc_dev.vendor, +++ "Man %02x OEM %c%c \"%c%c%c%c%c\"", +++ cid->mid, cid->oid_0, cid->oid_1, +++ cid->pnm_0, cid->pnm_1, cid->pnm_2, cid->pnm_3, cid->pnm_4); +++ +++ sprintf((char *) mmc_dev.product, "%d", +++ (cid->psn_0 << 24) | (cid->psn_1 <<16) | (cid->psn_2 << 8) | (cid->psn_3 << 8)); +++ +++ sprintf((char *) mmc_dev.revision, "%d.%d", cid->prv>>4, cid->prv & 0xff); +++ +++ } else { +++ /* TODO configure mmc driver depending on card attributes */ +++ mv_mmc_cid_t *cid = (mv_mmc_cid_t *) resp; +++ +++ memcpy(cidbuf, resp, sizeof(mv_sd_cid_t)); +++ +++ +++ sprintf((char *) mmc_dev.vendor, +++ "Man %02x%02x%02x Snr %02x%02x%02x", +++ cid->id[0], cid->id[1], cid->id[2], +++ cid->sn[0], cid->sn[1], cid->sn[2]); +++ sprintf((char *) mmc_dev.product, "%s", cid->name); +++ sprintf((char *) mmc_dev.revision, "%x %x", cid->hwrev, cid->fwrev); +++ } +++ +++ /* fill in device description */ +++ mmc_dev.if_type = IF_TYPE_MMC; +++ mmc_dev.part_type = PART_TYPE_DOS; +++ mmc_dev.dev = 0; +++ mmc_dev.lun = 0; +++ mmc_dev.type = 0; +++ +++ /* FIXME fill in the correct size (is set to 128MByte) */ +++ mmc_dev.blksz = MMC_BLOCK_SIZE; +++ mmc_dev.lba = 0x10000; +++ +++ mmc_dev.removable = 0; +++ mmc_dev.block_read = mv_mmc_bread; +++ +++ /* MMC exists, get CSD too */ +++ resp = mv_mmc_cmd(MMC_CMD_SET_RCA, 0, 0, SDIO_CMD_RSP_48, SDIO_NOR_CMD_DONE ); +++ if (resp == NULL) { +++ debug ("set rca fails\n"); +++ +++ return -ENODEV; +++ } +++ debug("cmd3 resp : 0x%08x 0x%08x 0x%08x 0x%08x\n", +++ (unsigned int)resp[0], (unsigned int)resp[1], (unsigned int)resp[2], (unsigned int)resp[3]); +++ +++ +++ if (is_sd) +++ rca = resp[0] >> 16; +++ else +++ rca = 0; +++ +++ resp = mv_mmc_cmd(MMC_CMD_SEND_CSD, rca<<16, 0, SDIO_CMD_RSP_136,SDIO_NOR_CMD_DONE ); +++ debug("cmd 9 resp : %08x %08x %08x %08x\n", +++ (unsigned int)resp[0], (unsigned int)resp[1], (unsigned int)resp[2], (unsigned int)resp[3] ); +++ +++ if (resp == NULL) { +++ debug ("read csd fails\n"); +++ +++ return -ENODEV; +++ } +++ +++ memcpy(&mv_mmc_csd, (mv_mmc_csd_t *) resp, sizeof(mv_mmc_csd_t)); +++ rc = 0; +++ mmc_ready = 1; +++ +++ /* FIXME add verbose printout for csd */ +++ debug ("size = %u\n", mv_mmc_size(&mv_mmc_csd)); +++ +++ +++ resp = mv_mmc_cmd(7, rca<<16, 0, SDIO_CMD_RSP_48BUSY, SDIO_NOR_CMD_DONE); +++ if (resp == NULL) { +++ debug ("select card fails\n"); +++ +++ return -ENODEV; +++ } +++ debug("cmd 7 resp : %08x %08x %08x %08x\n", +++ (unsigned int)resp[0], (unsigned int)resp[1], (unsigned int)resp[2], (unsigned int)resp[3] ); +++ +++ +++ if (is_sd) { +++ resp = mv_mmc_cmd(55, rca<<16, 0, SDIO_CMD_RSP_48, SDIO_NOR_CMD_DONE ); +++ if (resp == NULL) { +++ debug ("cmd55 fails\n"); +++ +++ return -ENODEV; +++ } +++ debug("cmd55 resp : 0x%08x 0x%08x 0x%08x 0x%08x\n", +++ (unsigned int)resp[0], (unsigned int)resp[1], (unsigned int)resp[2], (unsigned int)resp[3]); +++ +++ +++ resp = mv_mmc_cmd(6, (rca<<16) | 0x2 , 0, SDIO_CMD_RSP_48, SDIO_NOR_CMD_DONE ); +++ if (resp == NULL) { +++ debug ("cmd55 fails\n"); +++ +++ return -ENODEV; +++ } +++ debug("cmd6 resp : 0x%08x 0x%08x 0x%08x 0x%08x\n", +++ (unsigned int)resp[0], (unsigned int)resp[1], (unsigned int)resp[2], (unsigned int)resp[3]); +++ +++ } +++ +++ resp = (ulong *) &mv_mmc_csd; +++ debug("csd: 0x%08x 0x%08x 0x%08x 0x%08x\n", +++ (unsigned int)resp[0], (unsigned int)resp[1], (unsigned int)resp[2], (unsigned int)resp[3]); +++ +++ +++ /* check SDHC */ +++ if ((resp[0]&0xf0000000)==0x40000000) +++ is_sdhc = 1; +++ +++ /* set block len */ +++ resp = mv_mmc_cmd(MMC_CMD_SET_BLOCKLEN, MMC_BLOCK_SIZE, 0, SDIO_CMD_RSP_48, SDIO_NOR_CMD_DONE ); +++ if (!resp) { +++ debug("mv_mmc_block_read: set blk len fails\n"); +++ return -ENODEV; +++ } +++ +++ if (verbose) { +++ if (is_sd) +++ print_sd_cid((mv_sd_cid_t *) cidbuf); +++ else +++ print_mmc_cid((mv_mmc_cid_t *) cidbuf); +++ } +++ +++ mvsdio_set_clock(CONFIG_SYS_MMC_CLK_PP); +++ +++ fat_register_device(&mmc_dev,1); /* partitions start counting with 1 */ +++ +++ return 0; +++} +++ +++#endif /* CONFIG_MMC */ +++ ++--- /dev/null +++++ b/drivers/mmc/mv_sdio.h ++@@ -0,0 +1,296 @@ +++/* +++ * Copyright (C) 2008 Marvell Semiconductors, All Rights Reserved. +++ * Copyright (C) 2010 G?rald Kerma +++ * +++ * This program is free software; you can redistribute it and/or modify +++ * it under the terms of the GNU General Public License version 2 as +++ * published by the Free Software Foundation. +++ * +++ */ +++ +++#ifndef _MVSDIO_INCLUDE +++#define _MVSDIO_INCLUDE +++ +++#define SDIO_REG(x) (KW_SDIO_BASE + (x)) +++ +++#define SDIO_REG_WRITE32(offset,value) writel(value,SDIO_REG(offset)) +++#define SDIO_REG_READ32(offset) readl(SDIO_REG(offset)) +++ +++#define SDIO_REG_WRITE16(offset,value) writew(value,SDIO_REG(offset)) +++#define SDIO_REG_READ16(offset) readw(SDIO_REG(offset)) +++ +++#define MVSDMMC_DMA_SIZE 65536 +++#define MVSDMMC_CMD_TIMEOUT 2 /* 100 usec*/ +++ +++/* +++ * Clock rates +++ */ +++ +++#define MVSD_CLOCKRATE_MAX 50000000 +++#define MVSD_BASE_DIV_MAX 0x7ff +++ +++#define CONFIG_SYS_MMC_CLK_PP 25000000 +++ +++/* +++ * The base MMC clock rate +++ */ +++ +++#define MVSDMMC_CLOCKRATE_MIN 100000 +++#define MVSDMMC_CLOCKRATE_MAX MVSD_CLOCKRATE_MAX +++#define MVSDMMC_BASE_FAST_CLOCK CONFIG_SYS_TCLK +++ +++ +++/* +++ * SDIO register +++ */ +++ +++#define SDIO_SYS_ADDR_LOW 0x000 +++#define SDIO_SYS_ADDR_HI 0x004 +++#define SDIO_BLK_SIZE 0x008 +++#define SDIO_BLK_COUNT 0x00c +++#define SDIO_ARG_LOW 0x010 +++#define SDIO_ARG_HI 0x014 +++#define SDIO_XFER_MODE 0x018 +++#define SDIO_CMD 0x01c +++#define SDIO_RSP(i) (0x020 + ((i)<<2)) +++#define SDIO_RSP0 0x020 +++#define SDIO_RSP1 0x024 +++#define SDIO_RSP2 0x028 +++#define SDIO_RSP3 0x02c +++#define SDIO_RSP4 0x030 +++#define SDIO_RSP5 0x034 +++#define SDIO_RSP6 0x038 +++#define SDIO_RSP7 0x03c +++#define SDIO_BUF_DATA_PORT 0x040 +++#define SDIO_RSVED 0x044 +++ +++#define SDIO_PRESENT_STATE0 0x048 +++#define SDIO_PRESENT_STATE1 0x04c +++#define SDIO_HOST_CTRL 0x050 +++#define SDIO_BLK_GAP_CTRL 0x054 +++#define SDIO_CLK_CTRL 0x058 +++#define SDIO_SW_RESET 0x05c +++#define SDIO_NOR_INTR_STATUS 0x060 +++#define SDIO_ERR_INTR_STATUS 0x064 +++#define SDIO_NOR_STATUS_EN 0x068 +++#define SDIO_ERR_STATUS_EN 0x06c +++#define SDIO_NOR_INTR_EN 0x070 +++#define SDIO_ERR_INTR_EN 0x074 +++#define SDIO_AUTOCMD12_ERR_STATUS 0x078 +++#define SDIO_CURR_BYTE_LEFT 0x07c +++#define SDIO_CURR_BLK_LEFT 0x080 +++#define SDIO_AUTOCMD12_ARG_LOW 0x084 +++#define SDIO_AUTOCMD12_ARG_HI 0x088 +++#define SDIO_AUTOCMD12_INDEX 0x08c +++#define SDIO_AUTO_RSP(i) (0x090 + ((i)<<2)) +++#define SDIO_AUTO_RSP0 0x090 +++#define SDIO_AUTO_RSP1 0x094 +++#define SDIO_AUTO_RSP2 0x098 +++#define SDIO_CLK_DIV 0x128 +++ +++#define WINDOW_CTRL(i) (0x108 + ((i) << 3)) +++#define WINDOW_BASE(i) (0x10c + ((i) << 3)) +++ +++ +++/* +++ * SDIO_PRESENT_STATE +++ */ +++ +++#define CARD_BUSY (1 << 1) +++#define CMD_INHIBIT (1 << 0) +++#define CMD_TXACTIVE (1 << 8) +++#define CMD_RXACTIVE (1 << 9) +++#define CMD_AUTOCMD12ACTIVE (1 << 14) +++ +++#define CMD_BUS_BUSY (CMD_AUTOCMD12ACTIVE| \ +++ CMD_RXACTIVE| \ +++ CMD_TXACTIVE| \ +++ CMD_INHIBIT| \ +++ CARD_BUSY) +++ +++/* +++ * SDIO_CMD +++ */ +++ +++#define SDIO_CMD_RSP_NONE (0 << 0) +++#define SDIO_CMD_RSP_136 (1 << 0) +++#define SDIO_CMD_RSP_48 (2 << 0) +++#define SDIO_CMD_RSP_48BUSY (3 << 0) +++ +++#define SDIO_CMD_CHECK_DATACRC16 (1 << 2) +++#define SDIO_CMD_CHECK_CMDCRC (1 << 3) +++#define SDIO_CMD_INDX_CHECK (1 << 4) +++#define SDIO_CMD_DATA_PRESENT (1 << 5) +++#define SDIO_UNEXPECTED_RESP (1 << 7) +++ +++ +++/* +++ * SDIO_XFER_MODE +++ */ +++ +++#define SDIO_XFER_MODE_STOP_CLK (1 << 5) +++#define SDIO_XFER_MODE_HW_WR_DATA_EN (1 << 1) +++#define SDIO_XFER_MODE_AUTO_CMD12 (1 << 2) +++#define SDIO_XFER_MODE_INT_CHK_EN (1 << 3) +++#define SDIO_XFER_MODE_TO_HOST (1 << 4) +++ +++ +++/* +++ * SDIO_HOST_CTRL +++ */ +++ +++#define SDIO_HOST_CTRL_PUSH_PULL_EN (1 << 0) +++ +++#define SDIO_HOST_CTRL_CARD_TYPE_MEM_ONLY (0 << 1) +++#define SDIO_HOST_CTRL_CARD_TYPE_IO_ONLY (1 << 1) +++#define SDIO_HOST_CTRL_CARD_TYPE_IO_MEM_COMBO (2 << 1) +++#define SDIO_HOST_CTRL_CARD_TYPE_IO_MMC (3 << 1) +++#define SDIO_HOST_CTRL_CARD_TYPE_MASK (3 << 1) +++ +++#define SDIO_HOST_CTRL_BIG_ENDIAN (1 << 3) +++#define SDIO_HOST_CTRL_LSB_FIRST (1 << 4) +++#define SDIO_HOST_CTRL_ID_MODE_LOW_FREQ (1 << 5) +++#define SDIO_HOST_CTRL_HALF_SPEED (1 << 6) +++#define SDIO_HOST_CTRL_DATA_WIDTH_4_BITS (1 << 9) +++#define SDIO_HOST_CTRL_HI_SPEED_EN (1 << 10) +++ +++ +++#define SDIO_HOST_CTRL_TMOUT_MASK (0xf << 11) +++#define SDIO_HOST_CTRL_TMOUT_MAX (0xf << 11) +++#define SDIO_HOST_CTRL_TMOUT(x) ((x) << 11) +++#define SDIO_HOST_CTRL_TMOUT_EN (1 << 15) +++ +++#define SDIO_HOST_CTRL_DFAULT_OPEN_DRAIN \ +++ (SDIO_HOST_CTRL_TMOUT(x)(0xf)) +++#define SDIO_HOST_CTRL_DFAULT_PUSH_PULL \ +++ (SDIO_HOST_CTRL_TMOUT(x)(0xf) | SDIO_HOST_CTRL_PUSH_PULL_EN) +++ +++ +++/* +++ * NOR status bits +++ */ +++ +++#define SDIO_NOR_ERROR (1 << 15) +++#define SDIO_NOR_UNEXP_RSP (1 << 14) +++#define SDIO_NOR_AUTOCMD12_DONE (1 << 13) +++#define SDIO_NOR_SUSPEND_ON (1 << 12) +++#define SDIO_NOR_LMB_FF_8W_AVAIL (1 << 11) +++#define SDIO_NOR_LMB_FF_8W_FILLED (1 << 10) +++#define SDIO_NOR_READ_WAIT_ON (1 << 9) +++#define SDIO_NOR_CARD_INT (1 << 8) +++#define SDIO_NOR_READ_READY (1 << 5) +++#define SDIO_NOR_WRITE_READY (1 << 4) +++#define SDIO_NOR_DMA_INI (1 << 3) +++#define SDIO_NOR_BLK_GAP_EVT (1 << 2) +++#define SDIO_NOR_XFER_DONE (1 << 1) +++#define SDIO_NOR_CMD_DONE (1 << 0) +++ +++ +++/* +++ * ERR status bits +++ */ +++ +++#define SDIO_ERR_CRC_STATUS (1 << 14) +++#define SDIO_ERR_CRC_STARTBIT (1 << 13) +++#define SDIO_ERR_CRC_ENDBIT (1 << 12) +++#define SDIO_ERR_RESP_TBIT (1 << 11) +++#define SDIO_ERR_SIZE (1 << 10) +++#define SDIO_ERR_CMD_STARTBIT (1 << 9) +++#define SDIO_ERR_AUTOCMD12 (1 << 8) +++#define SDIO_ERR_DATA_ENDBIT (1 << 6) +++#define SDIO_ERR_DATA_CRC (1 << 5) +++#define SDIO_ERR_DATA_TIMEOUT (1 << 4) +++#define SDIO_ERR_CMD_INDEX (1 << 3) +++#define SDIO_ERR_CMD_ENDBIT (1 << 2) +++#define SDIO_ERR_CMD_CRC (1 << 1) +++#define SDIO_ERR_CMD_TIMEOUT (1 << 0) +++ +++#define SDIO_ERR_INTR_MASK 0xFFFF +++ +++ +++#define MMC_BLOCK_SIZE 512 +++#define MMC_CMD_RESET 0 +++#define MMC_CMD_SEND_OP_COND 1 +++#define MMC_CMD_ALL_SEND_CID 2 +++#define MMC_CMD_SET_RCA 3 +++#define MMC_CMD_SELECT_CARD 7 +++#define MMC_CMD_SEND_CSD 9 +++#define MMC_CMD_SEND_CID 10 +++#define MMC_CMD_SEND_STATUS 13 +++#define MMC_CMD_SET_BLOCKLEN 16 +++#define MMC_CMD_READ_BLOCK 17 +++#define MMC_CMD_RD_BLK_MULTI 18 +++#define MMC_CMD_WRITE_BLOCK 24 +++#define MMC_MAX_BLOCK_SIZE 512 +++ +++typedef struct mv_mmc_cid +++{ +++ /* FIXME: BYTE_ORDER */ +++ uchar year:4, +++ month:4; +++ uchar sn[3]; +++ uchar fwrev:4, +++ hwrev:4; +++ uchar name[6]; +++ uchar id[3]; +++} mv_mmc_cid_t; +++ +++typedef struct mv_mmc_csd +++{ +++ uchar ecc:2, +++ file_format:2, +++ tmp_write_protect:1, +++ perm_write_protect:1, +++ copy:1, +++ file_format_grp:1; +++ uint64_t content_prot_app:1, +++ rsvd3:4, +++ write_bl_partial:1, +++ write_bl_len:4, +++ r2w_factor:3, +++ default_ecc:2, +++ wp_grp_enable:1, +++ wp_grp_size:5, +++ erase_grp_mult:5, +++ erase_grp_size:5, +++ c_size_mult1:3, +++ vdd_w_curr_max:3, +++ vdd_w_curr_min:3, +++ vdd_r_curr_max:3, +++ vdd_r_curr_min:3, +++ c_size:12, +++ rsvd2:2, +++ dsr_imp:1, +++ read_blk_misalign:1, +++ write_blk_misalign:1, +++ read_bl_partial:1; +++ ushort read_bl_len:4, +++ ccc:12; +++ uchar tran_speed; +++ uchar nsac; +++ uchar taac; +++ uchar rsvd1:2, +++ spec_vers:4, +++ csd_structure:2; +++} mv_mmc_csd_t; +++ +++typedef struct { +++ char pnm_0; /* product name */ +++ char oid_1; /* OEM/application ID */ +++ char oid_0; +++ uint8_t mid; /* manufacturer ID */ +++ char pnm_4; +++ char pnm_3; +++ char pnm_2; +++ char pnm_1; +++ uint8_t psn_2; /* product serial number */ +++ uint8_t psn_1; +++ uint8_t psn_0; /* MSB */ +++ uint8_t prv; /* product revision */ +++ uint8_t crc; /* CRC7 checksum, b0 is unused and set to 1 */ +++ uint8_t mdt_1; /* manufacturing date, LSB, RRRRyyyy yyyymmmm */ +++ uint8_t mdt_0; /* MSB */ +++ uint8_t psn_3; /* LSB */ +++} mv_sd_cid_t; +++ +++#endif /* _MVSDIO_INCLUDE */ ++--- a/include/configs/sheevaplug.h +++++ b/include/configs/sheevaplug.h ++@@ -25,10 +25,12 @@ ++ #ifndef _CONFIG_SHEEVAPLUG_H ++ #define _CONFIG_SHEEVAPLUG_H ++ +++//#define DEBUG 1 +++ ++ /* ++ * Version number information ++ */ ++-#define CONFIG_IDENT_STRING "\nMarvell-Sheevaplug" +++#define CONFIG_IDENT_STRING "\nMarvell-Sheevaplug - eSATA - SD/MMC" ++ ++ /* ++ * High Level Configuration Options (easy to change) ++@@ -48,6 +50,7 @@ ++ #define CONFIG_CMD_ENV ++ #define CONFIG_CMD_IDE ++ #define CONFIG_CMD_MII +++#define CONFIG_CMD_MMC ++ #define CONFIG_CMD_NAND ++ #define CONFIG_CMD_PING ++ #define CONFIG_CMD_USB ++@@ -79,16 +82,18 @@ ++ */ ++ #define CONFIG_BOOTCOMMAND "${x_bootcmd_kernel}; " \ ++ "setenv bootargs ${x_bootargs} ${x_bootargs_root}; " \ ++- "${x_bootcmd_usb}; bootm 0x6400000;" +++ "${x_bootcmd_usb}; ${x_bootcmd_sata}; bootm 0x6400000;" +++ +++#define CONFIG_MTDPARTS "orion_nand:" \ +++ "512k(uboot),4m@1m(kernel),507m@5m(rootfs) rw\0" ++ ++-#define CONFIG_MTDPARTS "orion_nand:512k(uboot)," \ ++- "3m@1m(kernel),1m@4m(psm),13m@5m(rootfs) rw\0" ++ ++-#define CONFIG_EXTRA_ENV_SETTINGS "x_bootargs=console" \ ++- "=ttyS0,115200 mtdparts="CONFIG_MTDPARTS \ ++- "x_bootcmd_kernel=nand read 0x6400000 0x100000 0x300000\0" \ ++- "x_bootcmd_usb=usb start\0" \ ++- "x_bootargs_root=root=/dev/mtdblock3 rw rootfstype=jffs2\0" +++#define CONFIG_EXTRA_ENV_SETTINGS "x_bootargs=console" \ +++ "=ttyS0,115200 mtdparts="CONFIG_MTDPARTS \ +++ "x_bootcmd_kernel=nand read 0x6400000 0x100000 0x400000\0" \ +++ "x_bootcmd_usb=usb start;\0" \ +++ "x_bootcmd_sata=ide reset;\0" \ +++ "x_bootargs_root=ubi.mtd=2 root=ubi0:rootfs rootfstype=ubifs\0" ++ ++ /* ++ * Ethernet Driver configuration ++@@ -99,6 +104,14 @@ ++ #endif /* CONFIG_CMD_NET */ ++ ++ /* +++ * SDIO/MMC Card Configuration +++ */ +++#ifdef CONFIG_CMD_MMC +++#define CONFIG_MMC +++#define CONFIG_MV_SDIO +++#endif /* CONFIG_CMD_MMC */ +++ +++/* ++ * IDE Support on SATA port0 ++ */ ++ #ifdef CONFIG_CMD_IDE diff --cc debian/patches/mipsel-native-endianness.diff index 000000000,000000000..c63f18c6d new file mode 100644 --- /dev/null +++ b/debian/patches/mipsel-native-endianness.diff @@@ -1,0 -1,0 +1,137 @@@ ++[MIPS] Fix little-endian build with non-ELDK toolchains ++ ++We've been in trouble for a long time when cross compiling with non-ELDK ++toolchains. This is caused by -EB passed to CPPFLAGS incorrectly, by the ++lack of an endian specifier to LDFLAGS, and by wrong OUTPUT_FORMATs. ++ ++We're going to implement two workarounds. One is the endianness specifier ++bugfix not to pass -EB / -EL to CPPFLAGS unless ELDK toolchain is used. ++Note that ELDK and non-ELDK toolchains know their default endianness, so ++the endianness specifier may not be necessary in principle. ++ ++The other is removal of OUTPUT_FORMAT in *.lds files. If we have this, ++it doesn't work unless an endianness specifier is added to LDFLAGS. As ++we haven't added that to LDFLAGS so far, it must have not worked properly, ++except ELDK; I don't know why and how ELDK works, though. ++ ++With these two changes, all objects will be generated and linked in the ++toolchain's default endianness. Then MAKEALL mips_el will work even with ++non-ELDK toolchain. ++ ++Note that Linux/MIPS kernel has CONFIG_CPU_BIG_ENDIAN and ++CONFIG_CPU_LITTLE_ENDIAN alternatives to allow users to compile kernels ++with a toolchain for the other endianness. But U-Boot does not have such ++feature for now, and it's another story. ++ ++Signed-off-by: Shinya Kuribayashi ++--- ++ board/dbau1x00/u-boot.lds | 4 ---- ++ board/gth2/u-boot.lds | 4 ---- ++ board/incaip/u-boot.lds | 4 ---- ++ board/pb1x00/u-boot.lds | 4 ---- ++ board/purple/u-boot.lds | 4 ---- ++ board/qemu-mips/u-boot.lds | 4 ---- ++ board/tb0229/u-boot.lds | 2 -- ++ cpu/mips/config.mk | 8 -------- ++ examples/mips.lds | 4 ---- ++ mips_config.mk | 26 ++++++++++++++++++++++++++ ++ 10 files changed, 26 insertions(+), 38 deletions(-) ++ ++--- a/board/dbau1x00/u-boot.lds +++++ b/board/dbau1x00/u-boot.lds ++@@ -21,10 +21,6 @@ ++ * MA 02111-1307 USA ++ */ ++ ++-/* ++-OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips", "elf32-bigmips") ++-*/ ++-OUTPUT_FORMAT("elf32-tradbigmips", "elf32-tradbigmips", "elf32-tradlittlemips") ++ OUTPUT_ARCH(mips) ++ ENTRY(_start) ++ SECTIONS ++--- a/board/gth2/u-boot.lds +++++ b/board/gth2/u-boot.lds ++@@ -21,10 +21,6 @@ ++ * MA 02111-1307 USA ++ */ ++ ++-/* ++-OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips", "elf32-bigmips") ++-*/ ++-OUTPUT_FORMAT("elf32-tradbigmips", "elf32-tradbigmips", "elf32-tradlittlemips") ++ OUTPUT_ARCH(mips) ++ ENTRY(_start) ++ SECTIONS ++--- a/board/incaip/u-boot.lds +++++ b/board/incaip/u-boot.lds ++@@ -21,10 +21,6 @@ ++ * MA 02111-1307 USA ++ */ ++ ++-/* ++-OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips", "elf32-bigmips") ++-*/ ++-OUTPUT_FORMAT("elf32-tradbigmips", "elf32-tradbigmips", "elf32-tradlittlemips") ++ OUTPUT_ARCH(mips) ++ ENTRY(_start) ++ SECTIONS ++--- a/board/pb1x00/u-boot.lds +++++ b/board/pb1x00/u-boot.lds ++@@ -21,10 +21,6 @@ ++ * MA 02111-1307 USA ++ */ ++ ++-/* ++-OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips", "elf32-bigmips") ++-*/ ++-OUTPUT_FORMAT("elf32-tradlittlemips", "elf32-tradbigmips", "elf32-tradlittlemips") ++ OUTPUT_ARCH(mips) ++ ENTRY(_start) ++ SECTIONS ++--- a/board/qemu-mips/u-boot.lds +++++ b/board/qemu-mips/u-boot.lds ++@@ -21,10 +21,6 @@ ++ * MA 02111-1307 USA ++ */ ++ ++-/* ++-OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips", "elf32-bigmips") ++-*/ ++-OUTPUT_FORMAT("elf32-tradbigmips", "elf32-tradbigmips", "elf32-tradlittlemips") ++ OUTPUT_ARCH(mips) ++ ENTRY(_start) ++ SECTIONS ++--- a/examples/standalone/mips.lds +++++ b/examples/standalone/mips.lds ++@@ -21,10 +21,6 @@ ++ * MA 02111-1307 USA ++ */ ++ ++-/* ++-OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips", "elf32-bigmips") ++-*/ ++-OUTPUT_FORMAT("elf32-tradbigmips", "elf32-tradbigmips", "elf32-tradlittlemips") ++ OUTPUT_ARCH(mips) ++ SECTIONS ++ { ++--- a/arch/mips/cpu/mips32/config.mk +++++ b/arch/mips/cpu/mips32/config.mk ++@@ -45,5 +45,4 @@ ++ # Default to EB if no endianess is configured ++ ENDIANNESS ?= -EB ++ ++-PLATFORM_CPPFLAGS += $(MIPSFLAGS) $(ENDIANNESS) ++-PLATFORM_LDFLAGS += $(ENDIANNESS) +++PLATFORM_CPPFLAGS += $(MIPSFLAGS) ++--- a/arch/mips/config.mk +++++ b/arch/mips/config.mk ++@@ -21,7 +21,7 @@ ++ # MA 02111-1307 USA ++ # ++ ++-CROSS_COMPILE ?= mips_4KC- +++#CROSS_COMPILE ?= mips_4KC- ++ ++ CONFIG_STANDALONE_LOAD_ADDR ?= 0x80200000 -T mips.lds ++ diff --cc debian/patches/no-error-on-set-but-unused-variables.diff index 000000000,000000000..307fd89c3 new file mode 100644 --- /dev/null +++ b/debian/patches/no-error-on-set-but-unused-variables.diff @@@ -1,0 -1,0 +1,11 @@@ ++--- a/arch/x86/cpu/config.mk +++++ b/arch/x86/cpu/config.mk ++@@ -23,7 +23,7 @@ ++ ++ CROSS_COMPILE ?= i386-linux- ++ ++-PLATFORM_CPPFLAGS += -DCONFIG_X86 -D__I386__ -march=i386 -Werror +++PLATFORM_CPPFLAGS += -DCONFIG_X86 -D__I386__ -march=i386 -Werror -Wno-error=unused-but-set-variable ++ ++ # DO NOT MODIFY THE FOLLOWING UNLESS YOU REALLY KNOW WHAT YOU ARE DOING! ++ LDPPFLAGS += -DRESET_SEG_START=0xffff0000 diff --cc debian/patches/openrd-mmc.diff index 000000000,000000000..4457b6050 new file mode 100644 --- /dev/null +++ b/debian/patches/openrd-mmc.diff @@@ -1,0 -1,0 +1,22 @@@ ++This partially depends on the kerma sheevaplug stuff. ++ ++--- a/include/configs/openrd.h +++++ b/include/configs/openrd.h ++@@ -65,6 +65,7 @@ ++ #define CONFIG_CMD_DHCP ++ #define CONFIG_CMD_ENV ++ #define CONFIG_CMD_MII +++#define CONFIG_CMD_MMC ++ #define CONFIG_CMD_NAND ++ #define CONFIG_CMD_PING ++ #define CONFIG_CMD_USB ++@@ -139,4 +140,9 @@ ++ #define CONFIG_SYS_ATA_IDE1_OFFSET MV_SATA_PORT1_OFFSET ++ #endif /*CONFIG_MVSATA_IDE*/ ++ +++#ifdef CONFIG_CMD_MMC +++#define CONFIG_MMC +++#define CONFIG_MV_SDIO +++#endif /* CONFIG_CMD_MMC */ +++ ++ #endif /* _CONFIG_OPENRD_BASE_H */ diff --cc debian/patches/series index 000000000,000000000..f636816d7 new file mode 100644 --- /dev/null +++ b/debian/patches/series @@@ -1,0 -1,0 +1,7 @@@ ++mipsel-native-endianness.diff ++kerma-sheevaplug-mvsata.diff ++kerma-sheevaplug-mvsdio.diff ++openrd-mmc.diff ++no-error-on-set-but-unused-variables.diff ++hurd.diff ++strip-env-tools.diff diff --cc debian/patches/strip-env-tools.diff index 000000000,000000000..c0e165e45 new file mode 100644 --- /dev/null +++ b/debian/patches/strip-env-tools.diff @@@ -1,0 -1,0 +1,28 @@@ ++From 17a2bf859d1dcd393db767a254442e35f01804f2 Mon Sep 17 00:00:00 2001 ++From: =?UTF-8?q?Lo=C3=AFc=20Minier?= ++Date: Sun, 11 Mar 2012 16:40:59 +0100 ++Subject: [PATCH] Strip fw_printenv like the other tools ++MIME-Version: 1.0 ++Content-Type: text/plain; charset=UTF-8 ++Content-Transfer-Encoding: 8bit ++ ++Signed-off-by: Loïc Minier ++--- ++ tools/env/Makefile | 1 + ++ 1 files changed, 1 insertions(+), 0 deletions(-) ++ ++diff --git a/tools/env/Makefile b/tools/env/Makefile ++index 28b73da..07634bc 100644 ++--- a/tools/env/Makefile +++++ b/tools/env/Makefile ++@@ -41,6 +41,7 @@ all: $(obj)fw_printenv ++ # Some files complain if compiled with -pedantic, use HOSTCFLAGS_NOPED ++ $(obj)fw_printenv: $(HOSTSRCS) $(HEADERS) ++ $(HOSTCC) $(HOSTCFLAGS_NOPED) $(HOSTLDFLAGS) -o $@ $(HOSTSRCS) +++ $(HOSTSTRIP) $@ ++ ++ clean: ++ rm -f $(obj)fw_printenv ++-- ++1.7.9 ++ diff --cc debian/rules index 000000000,000000000..1c2e7063c new file mode 100755 --- /dev/null +++ b/debian/rules @@@ -1,0 -1,0 +1,186 @@@ ++#!/usr/bin/make -f ++ ++INSTALL_FILE := install -m 644 ++INSTALL_PROGRAM := install -m 755 ++INSTALL_DIR := install -m 755 -d ++ ++version := $(shell dpkg-parsechangelog | sed -n 's/^Version: //p') ++tools_version := 20081215-3+$(version) ++ ++env_package := uboot-envtools ++mkimage_package := uboot-mkimage ++package := u-boot ++tools_package := u-boot-tools ++ ++DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH) ++DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) ++DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) ++ ++ifneq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE)) ++export CROSS_COMPILE ?= $(DEB_HOST_GNU_TYPE)- ++endif ++ ++# the upstream build passes LDFLAGS directly to ld instead of calling gcc for ++# linking; so instead of passing -Wl,foo in LDFLAGS as in automake builds, one ++# should set LDFLAGS to foo directly ++comma := , ++LDFLAGS := $(patsubst -Wl$(comma)%,%,$(LDFLAGS)) ++ ++# macro to test whether a host header is present ++check_include = $(shell echo | $(CROSS_COMPILE)gcc -E -include $(1) -o /dev/null - 2>/dev/null && echo 1 || echo 0) ++ ++# whether we have Linux MTD headers ++has_mtd_user := $(call check_include, mtd/mtd-user.h) ++ ++build-indep: ++ ++build: build-arch build-indep ++build-arch: ++ $(checkdir) ++ ++ set -e; sed -n 's/^$(DEB_HOST_ARCH)[[:space:]]\+//p' debian/targets \ ++ | while read platform target; do \ ++ builddir=`pwd`/debian/build/$$platform; \ ++ installdir=debian/$(package)/usr/lib/$(package)/$$platform; \ ++ mkdir -p $$builddir; \ ++ $(MAKE) O=$$builddir $${platform}_config; \ ++ $(MAKE) O=$$builddir $$builddir/$$target; \ ++ $(INSTALL_DIR) $$installdir; \ ++ $(INSTALL_FILE) $$builddir/$$target $$installdir; \ ++ $(INSTALL_FILE) $$builddir/u-boot $$installdir/uboot.elf; \ ++ $(CROSS_COMPILE)strip --remove-section=.comment \ ++ $$installdir/uboot.elf; \ ++ done ++ ++ifeq ($(CROSS_COMPILE),) ++ # board-independent tools ++ $(INSTALL_DIR) debian/$(tools_package)/usr/bin/ ++ touch include/config.h ++ $(MAKE) HOSTCC=$(CROSS_COMPILE)gcc HOSTSTRIP=$(CROSS_COMPILE)strip \ ++ tools ++ $(INSTALL_PROGRAM) tools/mkimage debian/$(tools_package)/usr/bin/ ++ # only build env tools if we have Linux MTD headers ++ifeq ($(has_mtd_user),1) ++ $(MAKE) HOSTCC=$(CROSS_COMPILE)gcc HOSTSTRIP=$(CROSS_COMPILE)strip env ++ $(INSTALL_PROGRAM) tools/env/fw_printenv debian/$(tools_package)/usr/bin/ ++ ln -sf fw_printenv debian/$(tools_package)/usr/bin/fw_setenv ++endif ++ rm include/config.h ++endif ++ ++ touch $@ ++ ++clean: ++ $(checkdir) ++ rm -f debian/files debian/*.substvars ++ rm -rf debian/$(env_package) debian/$(mkimage_package) debian/$(package) debian/$(tools_package) ++ rm -f build-arch ++ $(MAKE) distclean ++ rm -rf arch/arm/include/asm/arch arch/arm/include/asm/proc ++ rm -rf debian/build ++ rm -f `find . -name "*~"` ++ ++binary-indep: checkroot ++ $(checkdir) ++ ++ $(INSTALL_DIR) debian/$(mkimage_package)/DEBIAN ++ $(INSTALL_DIR) debian/$(mkimage_package)/usr/share/doc/$(mkimage_package)/ ++ ++ $(INSTALL_FILE) debian/copyright \ ++ debian/$(mkimage_package)/usr/share/doc/$(mkimage_package)/ ++ $(INSTALL_FILE) debian/changelog \ ++ debian/$(mkimage_package)/usr/share/doc/$(mkimage_package)/changelog.Debian ++ ++ gzip -9f `find debian/$(mkimage_package)/usr/share/doc -type f ! -name "copyright"` ++ dpkg-gencontrol -ldebian/changelog -isp -p$(mkimage_package) -Tdebian/$(mkimage_package).substvars -Pdebian/$(mkimage_package) ++ cd debian/$(mkimage_package) && find * -type f ! -regex '^DEBIAN/.*' -print0 | xargs -r0 md5sum > DEBIAN/md5sums ++ ++ chown -R root:root debian/$(mkimage_package) ++ chmod -R go=rX debian/$(mkimage_package) ++ ++ dpkg --build debian/$(mkimage_package) .. ++ ++ ++ $(INSTALL_DIR) debian/$(env_package)/DEBIAN ++ $(INSTALL_DIR) debian/$(env_package)/usr/share/doc/$(env_package)/ ++ ++ $(INSTALL_FILE) debian/copyright \ ++ debian/$(env_package)/usr/share/doc/$(env_package)/ ++ $(INSTALL_FILE) debian/changelog \ ++ debian/$(env_package)/usr/share/doc/$(env_package)/changelog.Debian ++ ++ gzip -9f `find debian/$(env_package)/usr/share/doc -type f ! -name "copyright"` ++ dpkg-gencontrol -v$(tools_version) -ldebian/changelog -isp -p$(env_package) -Tdebian/$(env_package).substvars -Pdebian/$(env_package) ++ cd debian/$(env_package) && find * -type f ! -regex '^DEBIAN/.*' -print0 | xargs -r0 md5sum > DEBIAN/md5sums ++ ++ chown -R root:root debian/$(env_package) ++ chmod -R go=rX debian/$(env_package) ++ ++ dpkg --build debian/$(env_package) .. ++ ++binary-arch: checkroot build ++ $(checkdir) ++ ++ $(INSTALL_DIR) debian/$(package)/DEBIAN ++ ++ $(INSTALL_DIR) debian/$(package)/usr/share/doc/$(package)/ ++ $(INSTALL_FILE) debian/README.Debian \ ++ debian/$(package)/usr/share/doc/$(package)/ ++ $(INSTALL_FILE) debian/copyright \ ++ debian/$(package)/usr/share/doc/$(package)/ ++ $(INSTALL_FILE) debian/changelog \ ++ debian/$(package)/usr/share/doc/$(package)/changelog.Debian ++ ++ $(INSTALL_DIR) debian/$(package)/usr/share/lintian/overrides/ ++ $(INSTALL_FILE) debian/lintian.overrides \ ++ debian/$(package)/usr/share/lintian/overrides/$(package) ++ ++ gzip -9f `find debian/$(package)/usr/share/doc -type f ! -name "copyright"` ++ dpkg-gencontrol -ldebian/changelog -isp -p$(package) -Tdebian/$(package).substvars -Pdebian/$(package) ++ cd debian/$(package) && find * -type f ! -regex '^DEBIAN/.*' -print0 | xargs -r0 md5sum > DEBIAN/md5sums ++ ++ chown -R root:root debian/$(package) ++ chmod -R go=rX debian/$(package) ++ ++ dpkg --build debian/$(package) .. ++ ++ ++ $(INSTALL_DIR) debian/$(tools_package)/DEBIAN ++ ++ $(INSTALL_DIR) debian/$(tools_package)/usr/share/doc/$(tools_package)/ ++ $(INSTALL_FILE) debian/copyright debian/$(tools_package)/usr/share/doc/$(tools_package)/ ++ $(INSTALL_FILE) debian/changelog debian/$(tools_package)/usr/share/doc/$(tools_package)/changelog.Debian ++ ++ $(INSTALL_DIR) debian/$(tools_package)/usr/share/man/man1 ++ $(INSTALL_DIR) debian/$(tools_package)/usr/share/man/man8 ++ $(INSTALL_FILE) doc/mkimage.1 debian/$(tools_package)/usr/share/man/man1/ ++ $(INSTALL_FILE) debian/manpages/fw_printenv.8 debian/$(tools_package)/usr/share/man/man8/ ++ $(INSTALL_FILE) debian/manpages/fw_setenv.8 debian/$(tools_package)/usr/share/man/man8/ ++ ++ gzip -9f `find debian/$(tools_package)/usr/share/doc -type f ! -name "copyright"` ++ gzip -9f `find debian/$(tools_package)/usr/share/man -type f` ++ ++ dpkg-shlibdeps -Tdebian/$(tools_package).substvars \ ++ debian/$(tools_package)/usr/bin/* ++ dpkg-gencontrol -ldebian/changelog -isp -p$(tools_package) -Tdebian/$(tools_package).substvars -Pdebian/$(tools_package) ++ cd debian/$(tools_package) && find * -type f ! -regex '^DEBIAN/.*' -print0 | xargs -r0 md5sum > DEBIAN/md5sums ++ ++ chown -R root:root debian/$(tools_package) ++ chmod -R go=rX debian/$(tools_package) ++ ++ dpkg --build debian/$(tools_package) .. ++ ++define checkdir ++ test -f debian/rules ++endef ++ ++binary: binary-arch binary-indep ++ ++prebuild: ++ @true ++ ++checkroot: ++ $(checkdir) ++ test root = "`whoami`" ++ ++.PHONY: build build-indep binary binary-arch binary-indep clean checkroot prebuild diff --cc debian/source/format index 000000000,000000000..163aaf8d8 new file mode 100644 --- /dev/null +++ b/debian/source/format @@@ -1,0 -1,0 +1,1 @@@ ++3.0 (quilt) diff --cc debian/targets index 000000000,000000000..e18920192 new file mode 100644 --- /dev/null +++ b/debian/targets @@@ -1,0 -1,0 +1,20 @@@ ++# DEB_HOST_ARCH platform target ++# -------------------------------------------- ++armel dockstar u-boot.kwb ++armel dreamplug u-boot.kwb ++armel guruplug u-boot.kwb ++armel openrd_ultimate u-boot.kwb ++armel sheevaplug u-boot.kwb ++armhf efikamx u-boot.imx ++armhf efikasb u-boot.imx ++armhf igep0020 u-boot.bin ++armhf omap3_beagle u-boot.bin ++armhf omap4_panda u-boot.bin ++armhf mx53loco u-boot.imx ++avr32 hammerhead u-boot.img ++i386 eNET u-boot.bin ++mipsel dbau1100 u-boot.img ++mips qemu_mips u-boot.img ++powerpc ZUMA u-boot.img ++sh4 r2dplus u-boot.img ++sh4 sh7785lcr_32bit u-boot.img diff --cc debian/watch index 000000000,000000000..142fed4f7 new file mode 100644 --- /dev/null +++ b/debian/watch @@@ -1,0 -1,0 +1,3 @@@ ++version=3 ++ ++ftp://ftp.denx.de/pub/u-boot/ u-boot-([\d\.]+)\.tar\.bz2