summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2011-10-19ColdFire: Cleanup lds files for multiple defined symbolsstany MARCEL
Lds files cleened to remove multiple defined section and modified to be compliant with --gc-sections added for ColdFire platform in a previous patch. Signed-off-by: Stany MARCEL <stany.marcel@novasys-ingenierie.com> Acked-by: Mike Frysinger <vapier@gentoo.org>
2011-10-17Move timestamp and version files into 'generated' subdirSimon Glass
There is a rather subtle build problem where the build time stamp is not updated for out-of-tree builds if there exists an in-tree build which has a valid timestamp file. So if you do an in-tree build, then an out-of-tree build your timestamp will not change. The correct timestamp_autogenerated.h lives in the object tree, but it is not always found there. The source still lives in the source tree and when compiling version.h, it includes timestamp_autogenerated.h. Since the current directory is always searched first, this will come from the source tree rather than the object tree if it exists there. This affects dependency generation also, which means that common/cmd_version.o will not even be rebuilt if you have ever done an in-tree build. A similar problem exists with the version file. This change moves both files into the 'generated' subdir, which is already used for asm-offsets.h. Then timestamp.h and version.h are updated to include the files from there. There are other places where these generated files are included, but I cannot see why these don't just use the timestamp.h and version.h headers. So this change also tidies that up. I have tested this with in- and out-of-tree builds, but not SPL. I have looked at various other options for fixing this, including sed on the dep files, -I- and -include flags to gcc, but I don't think they can be made to work. Comments welcome. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Mike Frysinger <vapier@gentoo.org>
2011-10-17sandbox: Makefile changes to build sandbox architectureSimon Glass
At this point U-Boot will build and run on x86 under Linux. The idea is to define a new architecture called 'sandbox', alongside ARM and x86. This runs natively on Linux to suit the host machine. All hardware access is either omitted or emulated. The purpose of this system is to test the bulk of the non-hardware-specific U-Boot code. We can mock the SPI flash, GPIOs, UART and keyboard, then test that U-Boot behaves as we wish. Signed-off-by: Simon Glass <sjg@chromium.org>
2011-10-17Add generic gpio.h in asm-genericSimon Glass
Since we want want to have a standard GPIO interface, this adds a definition for this into include/asm-generic/gpio.h. Signed-off-by: Simon Glass <sjg@chromium.org>
2011-10-17Adjust dependency rules to permit per-file flagsSimon Glass
The dependency rules are currently done in a shell 'for' loop. This does not permit Makefile variables to adjust preprocessor flags as is done with normal compile flags, using the CFLAGS_path/file.o syntax. This change moves the dependency generation into the Makefile itself, and permits a CPPFLAGS_path/file.o to adjust preprocessor flags on a file or directory basis. The CPPFLAGS_... variable is also folded into CFLAGS during the build. Signed-off-by: Simon Glass <sjg@chromium.org>
2011-10-17sandbox: Use uintptr_t for 32/64-bit compatibilitySimon Glass
This fixes a problems when building on some 64-bit machines. Signed-off-by: Simon Glass <sjg@chromium.org>
2011-10-17sandbox: Add basic config fileSimon Glass
This basic provides required features along with a basic command set. Signed-off-by: Simon Glass <sjg@chromium.org>
2011-10-17sandbox: Add serial uartSimon Glass
This uart simply writes to stdout and reads from stdin. We might imagine instead buffering the data so that a test interface can check output and inject input. Signed-off-by: Simon Glass <sjg@chromium.org>
2011-10-17sandbox: Add main programSimon Glass
Add a main program so that we can run U-Boot. Signed-off-by: Simon Glass <sjg@chromium.org>
2011-10-17sandbox: Add OS dependent layerSimon Glass
We want to keep all OS-dependent code in once place, with a simple interface to U-Boot. For now, this is that place. Signed-off-by: Simon Glass <sjg@chromium.org>
2011-10-17sandbox: Force command sections to be 4-byte alignedSimon Glass
By default sections are 16-byte aligned on some architectures, but the command name structure (struct cmd_tbl_s) does not have padding to 16 bytes. This reduces the alignment to 4-bytes so that the command table can be accessed correctly on any architecture. (Note: this needs doing properly) Signed-off-by: Simon Glass <sjg@chromium.org>
2011-10-17sandbox: Disable standalone/API supportSimon Glass
This is not useful on the sandbox architecture since we can simply link all our code with U-Boot. Signed-off-by: Simon Glass <sjg@chromium.org>
2011-10-17sandbox: Disable built-in mallocSimon Glass
We prefer to U-Boot's malloc but for now it is easier to use the C library's version. Signed-off-by: Simon Glass <sjg@chromium.org>
2011-10-17sandbox: Add bootm supportSimon Glass
This adds sandbox architecture support to bootm, although it is probably not useful to load sandbox code into the address space and execute it. This change at least make the file build correctly on 64-bit machines. Signed-off-by: Simon Glass <sjg@chromium.org>
2011-10-17sandbox: Add board info for architectureSimon Glass
This is required for the bdinfo command to work. Signed-off-by: Simon Glass <sjg@chromium.org> Fix syntax error. Signed-off-by: Wolfgang Denk <wd@denx.de>
2011-10-17sandbox: Add sandbox boardSimon Glass
This adds basic files for the sandbox board. The lds file is very simple since we can rely mostly on the linker defaults. Signed-off-by: Simon Glass <sjg@chromium.org>
2011-10-17sandbox: Add architecture lib filesSimon Glass
These files are taken from the ARM board implementation and then reduced to remove unneeded cruft. Ideally we would work towards unifying arch/xxx/lib files, particularly board.c. Signed-off-by: Simon Glass <sjg@chromium.org>
2011-10-17sandbox: Add cpu filesSimon Glass
This is an initial implementation with all functions defined but not working. The lds file is very simple since we can mostly rely on the linker defaults. Signed-off-by: Simon Glass <sjg@chromium.org>
2011-10-17sandbox: Add compiler defines to support a 64-bit x86_64 platformSimon Glass
This sets __WORDSIZE to 8 correctly on 64-bit machines. Signed-off-by: Simon Glass <sjg@chromium.org>
2011-10-17sandbox: Add architecture image supportSimon Glass
We won't actually load an image with this architecture, but we still need to define it. Signed-off-by: Simon Glass <sjg@chromium.org>
2011-10-17Fix use of int as pointer in image.cSimon Glass
It is better to use %p in this case. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Mike Frysinger <vapier@gentoo.org>
2011-10-17sandbox: Add architecture header filesSimon Glass
This adds required header files for the sandbox architecture, and a basic description of what sandbox is (README.sandbox). Signed-off-by: Simon Glass <sjg@chromium.org>
2011-10-17arm: ca9x4_ct_vxp: enable PXE BOOTP options supportJason Hobbs
Signed-off-by: Jason Hobbs <jason.hobbs@calxeda.com> Cc: Matt Waddel <matt.waddel@linaro.org>
2011-10-17arm: ca9x4_ct_vxp: enable pxe command supportJason Hobbs
Signed-off-by: Jason Hobbs <jason.hobbs@calxeda.com> Cc: Matt Waddel <matt.waddel@linaro.org>
2011-10-17Convert ca9x4_ct_vxp to standard env variablesJason Hobbs
Signed-off-by: Jason Hobbs <jason.hobbs@calxeda.com> Cc: Matt Waddel <matt.waddel@linaro.org>
2011-10-17net: bootp: add PXE/RFC 4578 DHCP options supportJason Hobbs
These options are required to be present in RFC 4578 compliant DHCP requests. They give more information to DHCP servers to allow serving different DHCP responses to different systems based on client architecture, client capabilities, UUID, or vendor. Signed-off-by: Jason Hobbs <jason.hobbs@calxeda.com>
2011-10-17Add pxe commandJason Hobbs
Add pxe command, which is intended to mimic PXELINUX functionality. 'pxe get' uses tftp to retrieve a file based on UUID, MAC address or IP address. 'pxe boot' interprets the contents of PXELINUX config like file to boot using a specific initrd, kernel and kernel command line. This patch also adds a README.pxe file - see it for more details on the pxe command. Signed-off-by: Jason Hobbs <jason.hobbs@calxeda.com>
2011-10-17lib: add uuid_str_to_bin for use with bootp and PXE uuidJason Hobbs
Signed-off-by: Jason Hobbs <jason.hobbs@calxeda.com>
2011-10-17README: document standard image variablesJason Hobbs
With these documented, we can start pushing towards standardizing their use across boards. Signed-off-by: Jason Hobbs <jason.hobbs@calxeda.com> Cc: Mike Frysinger <vapier@gentoo.org>
2011-10-17Replace space and tab checks with isblankJason Hobbs
These are various places I found that checked for conditions equivalent to isblank. Signed-off-by: Jason Hobbs <jason.hobbs@calxeda.com>
2011-10-17cosmetic: remove unneeded curly bracesJason Hobbs
This prevents a checkpatch warning in the patch to use isblank Signed-off-by: Jason Hobbs <jason.hobbs@calxeda.com>
2011-10-17Add isblankJason Hobbs
Existing ctype checks are implemented using a 256 byte lookup table, allowing each character to be in any of 8 character classes. Since there are 8 existing character classes without the blank class, I implemented isblank without using the lookup table. Since there are only two blank characters - tab and space - this is a more reasonable approach than doubling the size of the lookup table to accommodate one more class. Signed-off-by: Jason Hobbs <jason.hobbs@calxeda.com>
2011-10-17common: add run_command2 for running simple or hush commandsJason Hobbs
Signed-off-by: Jason Hobbs <jason.hobbs@calxeda.com> Cc: Mike Frysinger <vapier@gentoo.org> Acked-by: Mike Frysinger <vapier@gentoo.org>
2011-10-17common, menu: use abortboot for menu timeoutJason Hobbs
Signed-off-by: Jason Hobbs <jason.hobbs@calxeda.com>
2011-10-17Add generic, reusable menu codeJason Hobbs
This will be used first by the pxe code, but is intended to be generic and reusable for other jobs in U-boot. Signed-off-by: Jason Hobbs <jason.hobbs@calxeda.com>
2011-10-17DM9000:Add a byte swap macro for dm9000 io operation.Jason Jin
commit a45dde2293c816138e53c26eca6fd0322583f9a6 changed the dm9000 direct register access to standard IO. This should work on the ColdFire platform as there are corresponding macros for the LE devices. But the hardware settings on some ColdFire boards had swapped the byte order which make the original macros such as out_le16 cannot work. To avoid changing the common io access code on ColdFire platform, the DM9000_BYTE_SWAPPED define was added to make the dm9000 use __raw* IO access on some ColdFire boards. Signed-off-by: Jason Jin <Jason.jin@freescale.com>
2011-10-17kw_gpio: fix error in kw_gpio_direction_inputHolger Brunck
The function kw_gpio_is_valid returns zero on success, so adapt the error check accordingly. Signed-off-by: Holger Brunck <holger.brunck@keymile.com> cc: Prafulla Wadaskar <prafulla@marvell.com> cc: Dieter Kiermaier <dk-arm-linux@gmx.de>
2011-10-17Blackfin: bfin_spi: fix build error when DEBUG is definedMike Frysinger
The new debug() changes pointed out debug code that rotted a little. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-10-17Blackfin: define CONFIG_SYS_CACHELINE_SIZEMike Frysinger
Common U-Boot API wants this define, so import asm/cache.h from Linux to provide suitable defines. Acked-by: Anton Staaf <robotboy@chromium.org> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-10-17video: Moving mx3fb.c to CONFIG_VIDEOHelmut Raiger
mx3fb.c was based on CONFIG_LCD and is moved by this patch to CONFIG_VIDEO, which has greater freedom in selecting videomodes even at runtime. This renders the accumulating list of display defines (CONFIG_DISPLAY_VBEST..., CONFIG_DISPLAY_C057...) obsolete as these may be setup through env variables: uboot> setenv mydisplay 'video=ctfb:x:240,y:320,depth:16,mode:0,pclk:185925, le:9,ri:17,up:7,lo:10,hs:1,vs:1,sync:100663296,vmode:0' uboot> setenv videomode ${mydisplay} This commit also fixes the board config files for qong and imx31_phycore boards as needed. The videomode settings of previously supported displays are added to CONFIG_EXTRA_ENV_SETTINGS now. CONFIG_SYS_MALLOC_LEN for imx31_phycore board is increased to make the frame buffer allocation working with the changed driver. Signed-off-by: Helmut Raiger <helmut.raiger@hale.at> Signed-off-by: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de>
2011-10-17mx31: make HSP clock for mx3fb driver availableHelmut Raiger
This additionally updates mx31/generic.c by - replacing __REG() macro accesses with readl() and writel() - providing macros for PDR0 and PLL bit accesses Signed-off-by: Helmut Raiger <helmut.raiger@hale.at> Acked-by: Marek Vasut <marek.vasut@gmail.com> Cc: Stefano Babic <sbabic@denx.de> Acked-by: Stefano Babic <sbabic@denx.de> Signed-off-by: Anatolij Gustschin <agust@denx.de>
2011-10-17MX5: Make IPU display output and pixel format configurableMarek Vasut
Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Signed-off-by: Stefano Babic <sbabic@denx.de> Tested-by: Stefano Babic <sbabic@denx.de> Signed-off-by: Anatolij Gustschin <agust@denx.de>
2011-10-17VIDEO: MX5: export pix formatStefano Babic
Pixel format defines must be available for boards to set up the right display. Move them and export in a new file. Signed-off-by: Stefano Babic <sbabic@denx.de> CC: Anatolij Gustschin <agust@denx.de> CC: Marek Vasut <marek.vasut@gmail.com> Tested-by: Stefano Babic <sbabic@denx.de> Signed-off-by: Anatolij Gustschin <agust@denx.de>
2011-10-17VIDEO: MX5: Switch MX5 to CONFIG_VIDEOStefano Babic
The framebuffer driver for MX5 is based on CONFIG_LCD. In the current implementation, there is a serious bug because the required memory is allocated before relocation, but the driver knows only later which is the resolution of the display. The patch switches the driver to CONFIG_VIDEO and the memory is allocated by the driver itself. We also need to switch the vision2 board code and config file in the same commit so that this commit will be bisectable. Signed-off-by: Stefano Babic <sbabic@denx.de> CC: Anatolij Gustschin <agust@denx.de> Tested-by: Stefano Babic <sbabic@denx.de> Signed-off-by: Anatolij Gustschin <agust@denx.de>
2011-10-17video: update the Freescale DIU driver to use linux/fb.hTimur Tabi
Update the Freescale DIU video driver (fsl_diu_fb.c) to use linux/fb.h. Some data structures from this header file were just copied into fsl_diu_fb.c. Signed-off-by: Timur Tabi <timur@freescale.com>
2011-10-17powerpc: cpm2 boards: update fcc register logicMike Frysinger
In the recent dropping of !NET_MULTI code (commit e2a53458a7ab37523304), I misread the logic in include/net.h. Some of it was used by NET_MULTI code as glue between the multi/non-multi worlds for cpm2 boards. Rather than restore the block of code, push the logic to the board config headers where it all belongs. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-10-17zlib: handle overflow while calculating available stream input sizeAnatolij Gustschin
If compressed data is located in sectors at the end of the flash and it's offset + input stream size > 0xFFFFFFFF, the uncompressing time is very long, since processing of the stream is done bytewise (and not blockwise) due to overflow in inflate_fast() while calculation and checking for enough input available. Check for this overflow condition and limit the available stream input size to the actually max. possible input size. This fixes the problem. The issue is easily reproduceable by placing a gziped bitmap in flash, e.g. at FFF80000, and running 'bmp' commands like 'bmp info FFF80000' or 'bmp display FFF80000'. The uncompressing can take up to 3 sec. whereas it should normaly take a fraction of a second. If the 'splashimage' environment variable points to this address, the booting time also increases significantly. Signed-off-by: Anatolij Gustschin <agust@denx.de>
2011-10-15serial_exit: punt unused prototypeMike Frysinger
No code defines or calls this, so drop the prototype. Signed-off-by: Mike Frysinger <vapier@gentoo.org> Acked-by: Simon Glass <sjg@chromium.org>
2011-10-15punt unused clean/distclean targetsMike Frysinger
The top level Makefile does not do any recursion into subdirs when cleaning, so these clean/distclean targets in random arch/board dirs never get used. Punt them all. MAKEALL didn't report any errors related to this that I could see. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-10-15common: fix missing function pointer relocation in fixup_cmdtable()Daniel Schwierzeck
The command auto-completion does not work on architectures relying on CONFIG_NEEDS_MANUAL_RELOC like MIPS. Cause is the missing function pointer fixup for cmd_tbl_t::complete function in fixup_cmdtable(). This patch adds the missing pointer fixup in case of CONFIG_AUTO_COMPLETE is defined. Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@googlemail.com>