summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeLines
* powerpc/85xx: Update device tree handling for SRIOKumar Gala2011-10-18-10/+93
| | | | | | | | | | | Update device tree handling for SRIO controller to support updated fsl,srio device tree binding. We handle disabling of individual ports, the whole controller, RMU, and RMAN. Additionally, we setup the SRIO related LIODNs in the device tree. Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* powerpc/85xx: Update setting of SRIO LIODNsKumar Gala2011-10-18-6/+72
| | | | | | | | | | | Properly set the LIODN values associated with SRIO controller. On P4080/P3060 we have an LIODN per port and one for the RMU. On P2041/P3041/P5020 we have 2 LIODNs per port. Update the tables for all of these devices to properly handle both styles. Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* fm: Don't allow disabling of FM1-DTSEC1Kumar Gala2011-10-18-0/+20
| | | | | | | | The MDIO controller to talk to external PHYs is on FM1-DTSEC1 so don't allow disabling. If we disable it we end up powering the block down in the SoC and thus can't communicate to any external PHYs. Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* fm-eth: Don't mark the MAC we use for MDIO as disabled in device treeKumar Gala2011-10-18-2/+8
| | | | | | | | FM1-DTSEC1's MAC was being marked as disabled if the port was not configured based on the SoC configuration. However we utilize the MAC interface for MDIO and thus should NOT mark it disabled. Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* Move timestamp and version files into 'generated' subdirSimon Glass2011-10-17-13/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* sandbox: Makefile changes to build sandbox architectureSimon Glass2011-10-17-0/+8
| | | | | | | | | | | | | | 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>
* Add generic gpio.h in asm-genericSimon Glass2011-10-17-0/+74
| | | | | | | 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>
* Adjust dependency rules to permit per-file flagsSimon Glass2011-10-17-13/+42
| | | | | | | | | | | | | | 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>
* sandbox: Use uintptr_t for 32/64-bit compatibilitySimon Glass2011-10-17-5/+5
| | | | | | This fixes a problems when building on some 64-bit machines. Signed-off-by: Simon Glass <sjg@chromium.org>
* sandbox: Add basic config fileSimon Glass2011-10-17-0/+85
| | | | | | This basic provides required features along with a basic command set. Signed-off-by: Simon Glass <sjg@chromium.org>
* sandbox: Add serial uartSimon Glass2011-10-17-0/+64
| | | | | | | | 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>
* sandbox: Add main programSimon Glass2011-10-17-1/+34
| | | | | | Add a main program so that we can run U-Boot. Signed-off-by: Simon Glass <sjg@chromium.org>
* sandbox: Add OS dependent layerSimon Glass2011-10-17-5/+135
| | | | | | | 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>
* sandbox: Force command sections to be 4-byte alignedSimon Glass2011-10-17-1/+2
| | | | | | | | | | | 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>
* sandbox: Disable standalone/API supportSimon Glass2011-10-17-3/+6
| | | | | | | 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>
* sandbox: Disable built-in mallocSimon Glass2011-10-17-0/+2
| | | | | | | 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>
* sandbox: Add bootm supportSimon Glass2011-10-17-4/+3
| | | | | | | | | 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>
* sandbox: Add board info for architectureSimon Glass2011-10-17-4/+30
| | | | | | | | | 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>
* sandbox: Add sandbox boardSimon Glass2011-10-17-0/+92
| | | | | | | 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>
* sandbox: Add architecture lib filesSimon Glass2011-10-17-0/+366
| | | | | | | | | | 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>
* sandbox: Add cpu filesSimon Glass2011-10-17-0/+164
| | | | | | | | 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>
* sandbox: Add compiler defines to support a 64-bit x86_64 platformSimon Glass2011-10-17-1/+15
| | | | | | This sets __WORDSIZE to 8 correctly on 64-bit machines. Signed-off-by: Simon Glass <sjg@chromium.org>
* sandbox: Add architecture image supportSimon Glass2011-10-17-0/+4
| | | | | | | 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>
* Fix use of int as pointer in image.cSimon Glass2011-10-17-2/+2
| | | | | | | It is better to use %p in this case. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Mike Frysinger <vapier@gentoo.org>
* sandbox: Add architecture header filesSimon Glass2011-10-17-0/+739
| | | | | | | 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>
* arm: ca9x4_ct_vxp: enable PXE BOOTP options supportJason Hobbs2011-10-17-0/+3
| | | | | Signed-off-by: Jason Hobbs <jason.hobbs@calxeda.com> Cc: Matt Waddel <matt.waddel@linaro.org>
* arm: ca9x4_ct_vxp: enable pxe command supportJason Hobbs2011-10-17-0/+4
| | | | | Signed-off-by: Jason Hobbs <jason.hobbs@calxeda.com> Cc: Matt Waddel <matt.waddel@linaro.org>
* Convert ca9x4_ct_vxp to standard env variablesJason Hobbs2011-10-17-6/+6
| | | | | Signed-off-by: Jason Hobbs <jason.hobbs@calxeda.com> Cc: Matt Waddel <matt.waddel@linaro.org>
* net: bootp: add PXE/RFC 4578 DHCP options supportJason Hobbs2011-10-17-0/+40
| | | | | | | | | | 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>
* Add pxe commandJason Hobbs2011-10-17-0/+1604
| | | | | | | | | | | | 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>
* lib: add uuid_str_to_bin for use with bootp and PXE uuidJason Hobbs2011-10-17-0/+90
| | | | Signed-off-by: Jason Hobbs <jason.hobbs@calxeda.com>
* README: document standard image variablesJason Hobbs2011-10-17-0/+19
| | | | | | | | 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>
* Replace space and tab checks with isblankJason Hobbs2011-10-17-16/+23
| | | | | | | These are various places I found that checked for conditions equivalent to isblank. Signed-off-by: Jason Hobbs <jason.hobbs@calxeda.com>
* cosmetic: remove unneeded curly bracesJason Hobbs2011-10-17-4/+2
| | | | | | This prevents a checkpatch warning in the patch to use isblank Signed-off-by: Jason Hobbs <jason.hobbs@calxeda.com>
* Add isblankJason Hobbs2011-10-17-0/+6
| | | | | | | | | | | 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>
* common: add run_command2 for running simple or hush commandsJason Hobbs2011-10-17-31/+29
| | | | | | Signed-off-by: Jason Hobbs <jason.hobbs@calxeda.com> Cc: Mike Frysinger <vapier@gentoo.org> Acked-by: Mike Frysinger <vapier@gentoo.org>
* common, menu: use abortboot for menu timeoutJason Hobbs2011-10-17-14/+47
| | | | Signed-off-by: Jason Hobbs <jason.hobbs@calxeda.com>
* Add generic, reusable menu codeJason Hobbs2011-10-17-0/+543
| | | | | | | 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>
* DM9000:Add a byte swap macro for dm9000 io operation.Jason Jin2011-10-17-1/+9
| | | | | | | | | | | | | 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>
* kw_gpio: fix error in kw_gpio_direction_inputHolger Brunck2011-10-17-1/+1
| | | | | | | | | 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>
* Blackfin: bfin_spi: fix build error when DEBUG is definedMike Frysinger2011-10-17-1/+1
| | | | | | The new debug() changes pointed out debug code that rotted a little. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Blackfin: define CONFIG_SYS_CACHELINE_SIZEMike Frysinger2011-10-17-0/+74
| | | | | | | | 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>
* video: Moving mx3fb.c to CONFIG_VIDEOHelmut Raiger2011-10-17-209/+297
| | | | | | | | | | | | | | | | | | | | | | | | | 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>
* mx31: make HSP clock for mx3fb driver availableHelmut Raiger2011-10-17-13/+42
| | | | | | | | | | | | 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>
* MX5: Make IPU display output and pixel format configurableMarek Vasut2011-10-17-8/+18
| | | | | | | 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>
* VIDEO: MX5: export pix formatStefano Babic2011-10-17-45/+77
| | | | | | | | | | | 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>
* VIDEO: MX5: Switch MX5 to CONFIG_VIDEOStefano Babic2011-10-17-95/+62
| | | | | | | | | | | | | | | | | 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>
* video: update the Freescale DIU driver to use linux/fb.hTimur Tabi2011-10-17-49/+5
| | | | | | | | 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>
* powerpc: cpm2 boards: update fcc register logicMike Frysinger2011-10-17-69/+69
| | | | | | | | | | | 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>
* zlib: handle overflow while calculating available stream input sizeAnatolij Gustschin2011-10-17-0/+8
| | | | | | | | | | | | | | | | | | | | | 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>