armboot-1.1.0

所属分类:处理器开发
开发工具:C/C++
文件大小:600KB
下载次数:3
上传日期:2009-05-28 08:51:05
上 传 者godtoyou
说明:  bootloader实现源码,适合多种嵌入式处理器。
(arm)

文件列表:
armboot-1.1.0\include\ata.h (9525, 2002-03-15)
armboot-1.1.0\include\s3c2410.h (26509, 2002-07-15)
armboot-1.1.0\include\pcmcia.h (6724, 2002-03-15)
armboot-1.1.0\include\cmd_autoscript.h (1426, 2002-03-21)
armboot-1.1.0\include\s_record.h (4121, 2002-03-15)
armboot-1.1.0\include\serial.h (1453, 2002-03-21)
armboot-1.1.0\include\lists.h (3806, 2002-03-15)
armboot-1.1.0\include\cmd_mem.h (4127, 2002-03-21)
armboot-1.1.0\include\malloc.h (33922, 2002-03-15)
armboot-1.1.0\include\linux\stat.h (1686, 2002-03-15)
armboot-1.1.0\include\linux\time.h (5037, 2002-03-15)
armboot-1.1.0\include\linux\ctype.h (1399, 2002-03-27)
armboot-1.1.0\include\linux\string.h (2215, 2002-03-27)
armboot-1.1.0\include\zlib.h (17302, 2002-03-15)
armboot-1.1.0\include\version.h (1028, 2002-03-28)
armboot-1.1.0\include\clps7111.h (8862, 2002-03-15)
armboot-1.1.0\include\net.h (8341, 2002-03-15)
armboot-1.1.0\include\cmd_rtc.h (1428, 2002-03-21)
armboot-1.1.0\include\SA-1100.h (152921, 2002-03-27)
armboot-1.1.0\include\cmd_bsp.h (1083, 2002-03-15)
armboot-1.1.0\include\types.h (872, 2002-03-15)
armboot-1.1.0\include\kgdb.h (1866, 2002-03-15)
armboot-1.1.0\include\cmd_net.h (2320, 2002-03-21)
armboot-1.1.0\include\configs\config_shannon.h (7727, 2002-05-16)
armboot-1.1.0\include\configs\config_lart.h (5705, 2002-03-15)
armboot-1.1.0\include\configs\config_lubbock.h (8011, 2002-08-23)
armboot-1.1.0\include\configs\config_epxa1db.h (5699, 2002-08-23)
armboot-1.1.0\include\configs\config_ep7312.h (5672, 2002-03-15)
armboot-1.1.0\include\configs\config_cradle.h (11734, 2002-08-23)
armboot-1.1.0\include\configs\config_dnp1110.h (5384, 2002-03-15)
armboot-1.1.0\include\configs\config_samsung.h (5724, 2002-07-15)
armboot-1.1.0\include\configs\config_impa7.h (5812, 2002-03-21)
armboot-1.1.0\include\configs\config_smdk2410.h (5764, 2002-07-15)
armboot-1.1.0\include\epxa\timer00.h (3796, 2002-08-16)
armboot-1.1.0\include\epxa\uart00.h (6434, 2002-08-16)
armboot-1.1.0\include\epxa\clock_ctrl00.h (4543, 2002-08-16)
armboot-1.1.0\include\epxa\ebi00.h (5218, 2002-08-16)
armboot-1.1.0\include\epxa\io_ctrl00.h (2951, 2002-08-16)
armboot-1.1.0\include\epxa\int_ctrl00.h (12565, 2002-08-16)
armboot-1.1.0\include\epxa\mmap00.h (7830, 2002-08-16)
... ...

# # (C) Copyright 2002 # SYSGO Real-Time Solutions GmbH # # http://www.sysgo.de # http://www.elinos.com # # 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 Overview ======== ARMboot is a firmware monitor/bootloader for embedded systems based on ARM or StrongARM CPUs. The primary objectives for this software is to be easily portable to new platforms while being as powerful as possible. To date it is the only GPL'ed ARM firmware capable of supporting multiple types of flash memory, network download via bootp, dhcp, tftp, PCMCIA CF booting and more. ARMboot is heavily based on the sister project PPCboot. It is planned, to move both projects even close together to increase their robustness and mutual benefit. Getting ARMboot =============== ARMboot is hosted on Sourceforge: http://www.sourceforge.net/projects/armboot The lastest version can always be obtained via the anonymous CVS access of Sourceforge. Tarballs are released sporadically, and can be downloaded from the same site. Mailing List ============ Questions regarding the use and porting of ARMboot should be posted to the ARMboot mailing list. You can subscibe here: http://lists.sourceforge.net/lists/listinfo/armboot-users/ If you want to get help on a certin issue, please go first to the mailing list's archive to whether that question has been discussed in the past. Building ARMboot ================ To configure and build ARMboot you will need a GNU cross development tool-chain configured for arm-linux. You should NOT need any linux header files. If so, please report this on the mailing list. The cross development tools usually have a target specific prefix. For instance, your cross compiler may be called "arm-linux-gcc" or "arm_armv4-gcc". This prefix can be passed to the Makefile by setting the CROSS_COMPILE variable, which defaults to "arm-linux-". The following example is for the "LART" board: 1. Configure sh# make lart_config rm -f include/config.h include/config.mk Configuring for lart Board... 2. Build sh# make all ... arm_armv4-objcopy -O srec armboot armboot.srec arm_armv4-objcopy -O binary armboot armboot.bin Supported Hardware ================== Board Configuration Notes -------------------------------------------------------------------------- LART lart_config "Linux ARM Radio Terminal" SSV DNP1110 dnp1110_config SSV DilNET PC (no flash support) Shannon shannon_config Tuxscreen (no support for IrDA keyboard, LCD screen) implementa impA7 impa7_config EP7211 based CLEP7312 ep7312_config Cirrus Logic EP7312 Dev. Board S3C2400X samsung_config Samsung S3C2400X SMDK2410X smdk2410_config Samsung SMDK2410X Eval Board EPXA1DB epxa1db_config Altera EPXA1 Development Board Testing of ARMBoot Modifications, Ports to New Hardware, etc.: ============================================================== If you have modified ARMBoot sources (for instance added a new board or support for new devices, a new CPU, etc.) you are expected to provide feedback to the other developers. The feedback normally takes the form of a "patch", i. e. a context diff against a certain (latest official or latest in CVS) version of ARMBoot sources. But before you submit such a patch, please verify that your modifi- cation did not break existing code. At least make sure that *ALL* of the supported boards compile WITHOUT ANY compiler warnings. To do so, just run the "MAKEALL" script, which will configure and build ARMBoot for ALL supported system. Be warned, this will take a while. You can select which (cross) compiler to use py passing a `CROSS_COMPILE' environment variable to the script, i. e. to use the cross tools from the ELinOS Toolkit you can type CROSS_COMPILE=arm_armv4- MAKEALL Image Formats ============= The "boot" commands of this monitor operate on "image" files which can be basicly anything, preceeded by a special header; see the definitions in include/image.h for details; basicly, the header defines the following image properties: * Target Operating System (Provisions for OpenBSD, NetBSD, FreeBSD, 4.4BSD, Linux, SVR4, Esix, Solaris, Irix, SCO, Dell, NCR, VxWorks, LynxOS, pSOS, QNX; Currently supported: Linux, NetBSD, VxWorks, QNX). * Target CPU Architecture (Provisions for Alpha, ARM, Intel x86, IA***, MIPS, MIPS, PowerPC, IBM S390, SuperH, Sparc, Sparc *** Bit; Currently supported: PowerPC). * Compression Type (Provisions for uncompressed, gzip, bzip2; Currently supported: uncompressed, gzip). * Load Address * Entry Point * Image Name * Image Timestamp The header is marked by a special Magic Number, and both the header and the data portions of the image are secured against corruption by CRC32 checksums. Submitting Patches ================== Since the number of patches for ARMBoot is growing, we need to establish some rules. Submissions which do not conform to these rules may be rejected, even when they contain important and valuable stuff. When you send a patch, please include the following information with it: * For bug fixes: a description of the bug and how your patch fixes this bug. Please try to include a way of demonstrating that the patch actually fixes something. * For new features: a description of the feature and your implementation. * A CHANGELOG entry * A MAINTAINERS entry * For major contributions, your entry to the CREDITS file * When you add support for a new board, don't forget to add this board to the MAKEALL script, too. * If your patch adds new configuration options, don't forget to document these in the README file. * The patch itself. If you are accessing the CVS repository use "cvs update; cvs diff -puRN"; else, use "diff -purN OLD NEW". If your version of diff does not support these options, then get the latest version of GNU diff. We accept patches as plain text, MIME attachments or as uuencoded gzipped text. Notes: * Before sending the patch, run the MAKEALL script on your patched source tree and make sure that no errors or warnings are reported for any of the boards. * Keep your modifications to the necessary minimum: A patch containing several unrelated changes or arbitrary reformats will be returned with a request to re-formatting / split it. * If you modify existing code, make sure that your new code does not add to the memory footprint of the code ;-) Small is beautiful! When adding new features, these should compile conditionally only (using #ifdef), and the resulting code with the new feature disabled must not need more memory than the old code without your modification.

近期下载者

相关文件


收藏者