summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2014-07-23stdio: Provide functions to add/remove devices using stdio_devSimon Glass
The current functions for adding and removing devices require a device name. This is not convenient for driver model, which wants to store a pointer to the relevant device. Add new functions which provide this feature and adjust the old ones to call these. Signed-off-by: Simon Glass <sjg@chromium.org>
2014-07-23dm: Support driver model prior to relocationSimon Glass
Initialise devices marked 'pre-reloc' and make them available prior to relocation. Note that this requires pre-reloc malloc() to be available. Signed-off-by: Simon Glass <sjg@chromium.org>
2014-07-23dm: Allow drivers to be marked 'before relocation'Simon Glass
Driver model currently only operates after relocation is complete. In this state U-Boot typically has a small amount of memory available. In adding support for driver model prior to relocation we must try to use as little memory as possible. In addition, on some machines the memory has not be inited and/or the CPU is not running at full speed or the data cache is off. These can reduce execution performance, so the less initialisation that is done before relocation the better. An immediately-obvious improvement is to only initialise drivers which are actually going to be used before relocation. On many boards the only such driver is a serial UART, so this provides a very large potential benefit. Allow drivers to mark themselves as 'pre-reloc' which means that they will be initialised prior to relocation. This can be done either with a driver flag or with a 'dm,pre-reloc' device tree property. To support this, the various dm scanning function now take a 'pre_reloc_only' parameter which indicates that only drivers marked pre-reloc should be bound. Signed-off-by: Simon Glass <sjg@chromium.org>
2014-07-23dm: Provide a way to shut down driver modelSimon Glass
Add a new method which removes and unbinds all drivers. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Marek Vasut <marex@denx.de>
2014-07-23stdio: Pass device pointer to stdio methodsSimon Glass
At present stdio device functions do not get any clue as to which stdio device is being acted on. Some implementations go to great lengths to work around this, such as defining a whole separate set of functions for each possible device. For driver model we need to associate a stdio_dev with a device. It doesn't seem possible to continue with this work-around approach. Instead, add a stdio_dev pointer to each of the stdio member functions. Note: The serial drivers have the same problem, but it is not strictly necessary to fix that to get driver model running. Also, if we convert serial over to driver model the problem will go away. Code size increases by 244 bytes for Thumb2 and 428 for PowerPC. 22: stdio: Pass device pointer to stdio methods arm: (for 2/2 boards) all +244.0 bss -4.0 text +248.0 powerpc: (for 1/1 boards) all +428.0 text +428.0 Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Marek Vasut <marex@denx.de> Reviewed-by: Marek Vasut <marex@denx.de>
2014-07-23sandbox: config: Enable pre-relocation malloc()Simon Glass
Enable this for sandbox so that we will be able to use driver model before relocation. Signed-off-by: Simon Glass <sjg@chromium.org>
2014-07-23Add a simple malloc() implementation for pre-relocationSimon Glass
If we are to have driver model before relocation we need to support some way of calling memory allocation routines. The standard malloc() is pretty complicated: 1. It uses some BSS memory for its state, and BSS is not available before relocation 2. It supports algorithms for reducing memory fragmentation and improving performace of free(). Before relocation we could happily just not support free(). 3. It includes about 4KB of code (Thumb 2) and 1KB of data. However since this has been loaded anyway this is not really a problem. The simplest way to support pre-relocation malloc() is to reserve an area of memory and allocate it in increasing blocks as needed. This implementation does this. To enable it, you need to define the size of the malloc() pool as described in the README. It will be located above the pre-relocation stack on supported architectures. Note that this implementation is only useful on machines which have some memory available before dram_init() is called - this includes those that do no DRAM init (like tegra) and those that do it in SPL (quite a few boards). Enabling driver model preior to relocation for the rest of the boards is left for a later exercise. Signed-off-by: Simon Glass <sjg@chromium.org>
2014-07-22whitespace cleanupsPavel Machek
Whitespace cleanups. Signed-off-by: Pavel Machek <pavel@denx.de>
2014-07-22rpi_b: handle import of environments in files with CRLF as line endingsAlexander Holler
Use the new option -r for env import. Signed-off-by: Alexander Holler <holler@ahsoftware.de>
2014-07-22am335x_evm: handle import of environments in files with CRLF as line endingsAlexander Holler
Use the new option -r for env import. Signed-off-by: Alexander Holler <holler@ahsoftware.de>
2014-07-22omap3_beagle: handle import of environments in files with CRLF as line endingsAlexander Holler
Use the new option -r for env import. Signed-off-by: Alexander Holler <holler@ahsoftware.de>
2014-07-22Add option -r to env import to allow import of text files with CRLF as line ↵Alexander Holler
endings When this option is enabled, CRLF is treated like LF when importing environments from text files, which means CRs ('\r') in front of LFs ('\n') are just ignored. Drawback of enabling this option is that (maybe exported) variables which have a trailing CR in their content will get imported without that CR. But this drawback is very unlikely and the big advantage of letting Windows user create a *working* uEnv.txt too is likely more welcome. Signed-off-by: Alexander Holler <holler@ahsoftware.de>
2014-07-22h2200: Disable SHA256 on FIT imagesTom Rini
This board is close in binary size to one of its hard limits, so disable SHA256 FIT image support to gain some breathing room. Signed-off-by: Tom Rini <trini@ti.com>
2014-07-22common: cmd_ide: use __weak and add prototypesJeroen Hofstee
clang chokes about the concept of having an alias to an always_inlined function. gcc likely just ignores the always inlined since binary sizes are equal before and after this patch. Convert the aliases to weak functions and provide missing prototypes. cc: Pavel Herrmann <morpheus.ibis@gmail.com> Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl>
2014-07-22tools: compiler.h: add missing time.hJeroen Hofstee
genimg_print_time uses time_t, but time.h is never included. Linux gets away with this since types.h includes time.h. Explicitly include the header file so building on e.g. FreeBSD also works. cc: Tom Rini <trini@ti.com> Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl>
2014-07-22linux/compat.h: port lower_32_bits and upper_32_bits from LinuxLijun Pan
[backport from linux commit 204b885e and 218e180e7] 64 bit processors are becomming more and more popular. lower_32_bits and upper_32_bits save our labor doing shifts/manipulations like (u32)(n) and (u32)((n) >> 32). They are good helpers in both little and big endian cases. Port these two functions here from Linux:include/linux/kernel.h, cater the comment message to little/big endian cases. Later on, developers could include linux/compat.h if they want to use these two functions. Signed-off-by: Lijun Pan <Lijun.Pan@freescale.com>
2014-07-18mmc: prevent some warnings with make W=1Jeroen Hofstee
Add missing prototypes for global functions and make local functions static. cc: panto@antoniou-consulting.com Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl>
2014-07-18env_callback.h: spl: mark callback as maybe_unusedJeroen Hofstee
When static inline is used in a header file the function should preferably be inlined and if not possible made a static function. When declared inside a c file there is a static function, which might be inlined. Since SPL uses a define to declare the static inline it becomes part of the c file although it is declared in a header and clang will warn that you have introduced unused static functions. Add maybe_unused to prevent such warnings. Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl>
2014-07-18common: board_f: cosmetic use __weak for ledsJeroen Hofstee
First of all this looks a lot better, but it also prevents a gcc warning (W=1), that the weak function has no previous prototype. cc: Simon Glass <sjg@chromium.org> Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl> Acked-by: Simon Glass <sjg@chromium.org>
2014-07-14socfpga: timer actually counts downPavel Machek
Timer on cyclone5 actually counts down. It took me a while to figure out, as timer counting in wrong direction actually _can_ be used, it just appears to tick at extremely high frequency in u-boot. The bug was introduced in commit 23ab7ee0ffa9d5efd0b4ad830befba306d24a327. Signed-off-by: Pavel Machek <pavel@denx.de> Acked-by: Marek Vasut <marex@denx.de>
2014-07-14ARM: DRA7xx: Update the board_name env variableLokesh Vutla
Update the board_name env variable and accordingly populate the dtb file. Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
2014-07-09Merge branch 'master' of git://www.denx.de/git/u-boot-imxTom Rini
2014-07-09ARM: m53evk: Update default environmentLothar Rubusch
Signed-off-by: Marek Vasut <marex@denx.de> Signed-off-by: Lothar Rubusch <lothar@denx.de> Signed-off-by: Wolfgang Denk <wd@denx.de>
2014-07-09ARM: m53evk: Adjust mtdparts settingsMarek Vasut
Adjust the mtdparts settings to allow for alternative boot images and for using UBI. Signed-off-by: Marek Vasut <marex@denx.de> Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Stefano Babic <sbabic@denx.de>
2014-07-09ARM: m53evk: add needed commands and optionsMarek Vasut
- "env ask", "env grep" and "setexpr" are needed for commissioning - add support for ext4 file systems - adjust default environment to use ext4 commands - add write support for (V)FAT and EXT4 - add bitmap and splashscreen support - print timestamp information for images Signed-off-by: Marek Vasut <marex@denx.de> Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Stefano Babic <sbabic@denx.de>
2014-07-09ARM: m28evk: Update default environmentLothar Rubusch
Signed-off-by: Marek Vasut <marex@denx.de> Signed-off-by: Lothar Rubusch <lothar@denx.de>
2014-07-09ARM: m28evk: Adjust mtdpartsMarek Vasut
Adjust the mtdparts to also consider factory-programmed config block. Signed-off-by: Marek Vasut <marex@denx.de>
2014-07-09ARM: m28evk: add needed commands and optionsMarek Vasut
- "env ask", "env grep" and "setexpr" are needed for commissioning - add support for ext4 file systems - adjust default environment to use ext4 commands - add write support for (V)FAT and EXT4 - add bitmap and splashscreen support - print timestamp information for images Signed-off-by: Marek Vasut <marex@denx.de> Cc: Stefano Babic <sbabic@denx.de>
2014-07-08TI:omap3: enable CONFIG_CMD_DHCP for omap3_beagleTyler Baker
The following patch re-enables the dhcp functionality on omap3_beagle. It was removed with df4dbb5df6ab1c1d27b3fd4acbaad69b47095daf when omap3_beagle was converted to use ti_omap3_common.h. I have tested beagleboard and beagleboard-xm with this patch and confirmed dhcp is working. Signed-off-by: Tyler Baker <tyler.baker@linaro.org>
2014-07-07fit: make sha256 support optionalDirk Eibach
sha256 has some beefy memory footprint. Make it optional for constrained systems. Signed-off-by: Dirk Eibach <dirk.eibach@gdsys.cc>
2014-07-07board: gdsys: Remove commands to reduce footprintDirk Eibach
Commit "2842c1c fit: add sha256 support" badly increased memory footprint, so some of our boards did not build anymore. Since monitor base must not be changed I removed some commands to save memory. Maybe making sha256 optional for fit would be an option for the future since it really has some beefy footprint. Signed-off-by: Dirk Eibach <dirk.eibach@gdsys.cc>
2014-07-07board: gdsys: Make gdsys osd hardware detection more robustDirk Eibach
Signed-off-by: Dirk Eibach <dirk.eibach@gdsys.cc>
2014-07-07board: gdsys: Configure bridge on DP501 to support DDC onlyDirk Eibach
The I2C bridge on DP501 supports EDID, MCCS and HDCP by default. Allow EDID only to avoid I2C address conflicts. Signed-off-by: Dirk Eibach <dirk.eibach@gdsys.cc>
2014-07-07board: gdsys: Increase iocon and dlv10g version stringDirk Eibach
Signed-off-by: Dirk Eibach <dirk.eibach@gdsys.cc>
2014-07-07board: gdsys: Fix dlvision-10g I2C configurationDirk Eibach
PPC4xx config options were not complete. ICS8N3QV01 and SIL1178 needed some more configuration. Signed-off-by: Dirk Eibach <dirk.eibach@gdsys.cc>
2014-07-07i2c: IHS I2C master driverDirk Eibach
IHS I2C master support was merely a hack in the osd driver. Now it is a proper u-boot I2C framework driver, supporting the v2.00 master features. Signed-off-by: Dirk Eibach <dirk.eibach@gdsys.cc>
2014-07-07board: iocon: Support DisplayPort hardwareDirk Eibach
There is a new iocon hardware flavor, supporting DisplayPort finally. Signed-off-by: Dirk Eibach <dirk.eibach@gdsys.cc>
2014-07-07mpc8xx: remove spc1920 board supportMasahiro Yamada
This board is old enough and has no maintainer. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2014-07-07mpc8xx: remove v37 board supportMasahiro Yamada
This board is old enough and has no maintainer. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2014-07-07mpc8xx: remove fads board supportMasahiro Yamada
These boards are old enough and have no maintainers. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2014-07-07mpc8xx: remove netta, netta2, netphone board supportMasahiro Yamada
These boards are old enough and have no maintainers. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2014-07-07mpc8xx: remove rbc823 board supportMasahiro Yamada
This board is old enough and has no maintainer. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2014-07-07mpc8xx: remove RPXlite_dw, quantum board supportMasahiro Yamada
These boards are old enough and have no maintainers. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2014-07-07mpc8xx: remove qs850, qs860t board supportMasahiro Yamada
These boards are old enough and have no maintainers. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2014-07-07env_fat: use get_device_and_partition() during env save and loadWu, Josh
Use get_device_and_partition() is better since: 1. It will call the device initialize function internally. So we can remove the mmc intialization code to save many lines. 2. It is used by fatls/fatload/fatwrite. So saveenv & load env should use it too. 3. It can parse the "D:P", "D", "D:", "D:auto" string to get correct device and partition information by run-time. Also we remove the FAT_ENV_DEVICE and FAT_ENV_PART. We use a string: FAT_ENV_DEVICE_AND_PART. For at91sam9m10g45ek, it is "0". That means use device 0 and if: a)device 0 has no partition table, use the whole device as a FAT file system. b)device 0 has partittion table, use the partition #1. Refer to the commit: 10a37fd7a4 for details of device & partition string. Signed-off-by: Josh Wu <josh.wu@atmel.com> Reviewed-by: Stephen Warren <swarren@nvidia.com>
2014-07-05integrator: switch to generic boardLinus Walleij
Turn on generic board for the integrators, as per the request in the startup message. Everything just works, tested on the Integrator/AP and Integrator/CP. Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Acked-by: Simon Glass <sjg@chromium.org>
2014-07-05ARM: rpi_b: enable GENERIC_BOARDStephen Warren
Serial port, SD card, and LCD all work. Signed-off-by: Stephen Warren <swarren@wwwdotorg.org> Acked-by: Simon Glass <sjg@chromium.org>
2014-07-05arm, calimain: Add CONFIG_SYS_GENERIC_BOARDChristian Riesch
Signed-off-by: Christian Riesch <christian.riesch@omicron.at>
2014-07-05arm:board:h2200: Add CONFIG_SYS_GENERIC_BOARDŁukasz Dałek
Enable 'generic board init' for H2200 palmtop. Signed-off-by: Lukasz Dalek <luk0104@gmail.com> Acked-by: Marek Vasut <marex@denx.de>
2014-07-04socfpga: Adding Scan Manager driverChin Liang See
Scan Manager driver will be called to configure the IOCSR scan chain. This configuration will setup the IO buffer settings Signed-off-by: Chin Liang See <clsee@altera.com> Cc: Dinh Nguyen <dinguyen@altera.com> Cc: Wolfgang Denk <wd@denx.de> CC: Pavel Machek <pavel@denx.de> Cc: Tom Rini <trini@ti.com> Cc: Albert Aribaud <albert.u.boot@aribaud.net>