- 13 11月, 2015 2 次提交
-
-
由 Bin Meng 提交于
Currently timer_init() is called in board_r.c which is quite late. Some vgabios execution requires we set up the i8254 timer correctly, but video initialization comes before timer_init(). Move the call to board_f.c. Signed-off-by: NBin Meng <bmeng.cn@gmail.com> Acked-by: NSimon Glass <sjg@chromium.org>
-
由 Peng Fan 提交于
get_clocks is wrapped by CONFIG_FSL_CLK and CONFIG_M68K in seperate piece code. They can be merged into one snippet. Signed-off-by: NPeng Fan <Peng.Fan@freescale.com> Cc: Tom Rini <trini@konsulko.com> Cc: Simon Glass <sjg@chromium.org> Cc: Bin Meng <bmeng.cn@gmail.com> Cc: Alexey Brodkin <abrodkin@synopsys.com> Cc: "angelo@sysam.it" <angelo@sysam.it> Cc: Daniel Schwierzeck <daniel.schwierzeck@gmail.com> Cc: Stephen Warren <swarren@nvidia.com> Cc: "Andreas Bießmann" <andreas.devel@googlemail.com> Reviewed-by: NSimon Glass <sjg@chromium.org> Acked-by: NAngelo Dureghello <angelo@sysam.it>
-
- 06 11月, 2015 2 次提交
-
-
由 Daniel Schwierzeck 提交于
The variables bd_t:bi_memstart and bd_t:bi_memsize have to be initialized also on MIPS. Otherwise LMB and cmd_bdinfo do not correctly work. This currently breaks the booting of FIT images on MIPS. Enable the board_init_f hook setup_board_part1() for MIPS to fix this. Signed-off-by: NDaniel Schwierzeck <daniel.schwierzeck@gmail.com> Reviewed-by: NTom Rini <trini@konsulko.com> Reviewed-by: NSimon Glass <sjg@chromium.org>
-
由 Thomas Chou 提交于
Use common sequence for reserve_uboot, as the result is the same. Signed-off-by: NThomas Chou <thomas@wytron.com.tw>
-
- 30 10月, 2015 1 次提交
-
-
由 Gong Qianyu 提交于
For most PPC platforms, they will call the first get_clocks() in init_sequence_f[] as they define CONFIG_PPC. CONFIG_SYS_FSL_CLK is then defined to call the second get_clocks(), which should be redundant for PPC. Signed-off-by: NGong Qianyu <Qianyu.Gong@freescale.com> Reviewed-by: NYork Sun <yorksun@freescale.com>
-
- 25 10月, 2015 2 次提交
-
-
由 Gong Qianyu 提交于
get_clocks() should not be limited by ESDHC. Signed-off-by: NGong Qianyu <Qianyu.Gong@freescale.com>
-
由 Simon Glass 提交于
This function will be used by both SPL and U-Boot proper. So move it into a common place. Also change the #ifdef so that the early malloc() area is not set up in SPL if CONFIG_SYS_SPL_MALLOC_START is defined. In that case it would never actually be used, and just chews up stack space. Signed-off-by: NSimon Glass <sjg@chromium.org>
-
- 23 10月, 2015 2 次提交
-
-
由 Thomas Chou 提交于
Convert altera timer to driver model. Signed-off-by: NThomas Chou <thomas@wytron.com.tw> Acked-by: NChin Liang See <clsee@altera.com>
-
由 Thomas Chou 提交于
Zap almost all of the ad-hoc timer code from interrupts.c and use the code in lib/time.c instead. Signed-off-by: NMarek Vasut <marex@denx.de> Signed-off-by: NThomas Chou <thomas@wytron.com.tw>
-
- 28 8月, 2015 1 次提交
-
-
由 Kun-Hua Huang 提交于
Add nds32 ag101p generic board support. Signed-off-by: NKun-Hua Huang <kunhua@andestech.com>
-
- 26 8月, 2015 1 次提交
-
-
由 Bin Meng 提交于
Move x86_fsp_init() call after initf_malloc() so that we can fix up the gd->malloc_limit later. Signed-off-by: NBin Meng <bmeng.cn@gmail.com> Acked-by: NSimon Glass <sjg@chromium.org>
-
- 18 8月, 2015 1 次提交
-
-
由 Simon Glass 提交于
This causes widespread breakage due to the operation of the low-level code in crt0.S and cro0_64.S for ARM at least. The fix is not complicated but it seems safer to revert this for now. This reverts commit 2afddae0. Signed-off-by: NSimon Glass <sjg@chromium.org>
-
- 14 8月, 2015 4 次提交
-
-
由 Simon Glass 提交于
There is quite a bit of assembler code that can be removed if we use the generic global_data setup. Less arch-specific code makes it easier to add new features and maintain the start-up code. Drop the unneeded code and adjust the hooks in board_f.c to cope. Signed-off-by: NSimon Glass <sjg@chromium.org> Reviewed-by: NBin Meng <bmeng.cn@gmail.com>
-
由 Simon Glass 提交于
At present we have a simple assignment to gd. With some archs this is implemented as a register or through some other means; a simple assignment does not suit in all cases. Change this to a function and add documentation to describe how this all works. Signed-off-by: NSimon Glass <sjg@chromium.org> Reviewed-by: NYork Sun <yorksun@freescale.com> Reviewed-by: NBin Meng <bmeng.cn@gmail.com>
-
由 Simon Glass 提交于
Some archs like to have larger alignment for their global data. Use 16 bytes which suits all current archs. Signed-off-by: NSimon Glass <sjg@chromium.org> Reviewed-by: NBin Meng <bmeng.cn@gmail.com>
-
由 Bin Meng 提交于
bd->bi_dram[] has both start address and size defined as 32-bit, which is not the case on some platforms where >=4GiB memory bank is used. Change them to support such memory banks. Signed-off-by: NBin Meng <bmeng.cn@gmail.com>
-
- 05 8月, 2015 2 次提交
-
-
由 Simon Glass 提交于
When running U-Boot as an EFI application we cannot relocate since we do not have relocation information. U-Boot has already been relocated to a suitable address. Add a global_data flag to control skipping relocation. Signed-off-by: NSimon Glass <sjg@chromium.org> Reviewed-by: NBin Meng <bmeng.cn@gmail.com>
-
由 Ben Stoltz 提交于
When U-Boot runs as an EFI application is does not have a definition of CONFIG_SYS_TEXT_BASE. U-Boot is a relocatable application and the relocation is done by EFI. U-Boot can be loaded at any address. This is similar to how sandbox works. Adjust the early board init to deal with this. Signed-off-by: NBen Stoltz <stoltz@google.com> Signed-off-by: NSimon Glass <sjg@chromium.org> Reviewed-by: NBin Meng <bmeng.cn@gmail.com>
-
- 15 7月, 2015 1 次提交
-
-
由 Bin Meng 提交于
The call to FspInitEntry is done in arch/x86/lib/fsp/fsp_car.S so far. It worked pretty well but looks not that good. Apart from doing too much work than just enabling CAR, it cannot read the configuration data from device tree at that time. Now we want to move it a little bit later as part of init_sequence_f[] being called by board_init_f(). This way it looks and works better in the U-Boot initialization path. Due to FSP's design, after calling FspInitEntry it will not return to its caller, instead it jumps to a continuation function which is given by bootloader with a new stack in system memory. The original stack in the CAR is gone, but its content is perserved by FSP and described by a bootloader temporary memory HOB. Technically we can recover anything we had before in the previous stack, but that is way too complicated. To make life much easier, in the FSP continuation routine we just simply call fsp_init_done() and jump back to car_init_ret() to redo the whole board_init_f() initialization, but this time with a non-zero HOB list pointer saved in U-Boot's global data so that we can bypass the FspInitEntry for the second time. Signed-off-by: NBin Meng <bmeng.cn@gmail.com> Acked-by: NSimon Glass <sjg@chromium.org> Tested-by: NAndrew Bradford <andrew.bradford@kodakalaris.com> Tested-by: NSimon Glass <sjg@chromium.org>
-
- 30 4月, 2015 1 次提交
-
-
由 Simon Glass 提交于
Try to make it a little clearer. Signed-off-by: NSimon Glass <sjg@chromium.org> Reviewed-by: NBin Meng <bmeng.cn@gmail.com>
-
- 23 4月, 2015 3 次提交
-
-
由 Simon Glass 提交于
To allow this function to be used from SPL, move it to the malloc() code. Signed-off-by: NSimon Glass <sjg@chromium.org>
-
由 Simon Glass 提交于
There is little reason to split these two functions. Bring them together which simplifies the init sequence. Signed-off-by: NSimon Glass <sjg@chromium.org>
-
由 Simon Glass 提交于
We want to be able to set up the device tree in SPL, so move this code to a common place. Signed-off-by: NSimon Glass <sjg@chromium.org>
-
- 19 4月, 2015 1 次提交
-
-
由 Joe Hershberger 提交于
In the case where the arch defines a custom map_sysmem(), make sure that including just mapmem.h is sufficient to have these functions as they are when the arch does not override it. Also split the non-arch specific functions out of common.h Signed-off-by: NJoe Hershberger <joe.hershberger@ni.com> Reviewed-by: NSimon Glass <sjg@chromium.org>
-
- 17 4月, 2015 1 次提交
-
-
由 Simon Glass 提交于
Since driver model is set up after arch_cpu_init(), that function cannot use drivers. Add a new arch_cpu_init_dm() function which is called immediately after driver model is ready, and can reference devices. This can be used to probe essential devices for the CPU. Signed-off-by: NSimon Glass <sjg@chromium.org> Reviewed-by: NBin Meng <bmeng.cn@gmail.com>
-
- 03 4月, 2015 1 次提交
-
-
由 Alexey Brodkin 提交于
Intention behind this work was elimination of as much assembly-written code as it is possible. In case of ARC we already have relocation fix-up implemented in C so why don't we use C for U-Boot copying, .bss zeroing etc. It turned out x86 uses pretty similar approach so we re-used parts of code in "board_f.c" initially implemented for x86. Now assembly usage during init is limited to stack- and frame-pointer setup before and after relocation. Signed-off-by: NAlexey Brodkin <abrodkin@synopsys.com> Cc: Simon Glass <sjg@chromium.org>
-
- 29 3月, 2015 2 次提交
-
-
由 angelo@sysam.it 提交于
Fix eb_cpu5282 and eb_cpu5282_internal unresolved external error. These boards have video but don't need any ppc related video_setmem(). Fix M53017EVB moving away embedded env to a different offset, as in M52277EVB. Signed-off-by: NAngelo Dureghello <angelo@sysam.it>
-
由 Alexey Brodkin 提交于
Purpose of this change is to make it possible to re-use code currently used on X86 solely for other architectures. For example: * init_sequence_f_r * board_init_f_r Even though board_init_f_mem() has nothing to do with any particular architecture it won't work (at least in current implementation) for X86. This is because on X86 "gd" is an alias to function get_fs_gd_ptr(), thus we cannot assign anything to it. So this change separates selection of board_init_f_mem() from X86 while keeping it disabled for X86 still. Signed-off-by: NAlexey Brodkin <abrodkin@synopsys.com> Cc: Simon Glass <sjg@chromium.org> Cc: Tom Rini <trini@konsulko.com>
-
- 13 3月, 2015 1 次提交
-
-
由 Stefan Roese 提交于
Without this patch, the IMX watchdog will not be initialized. And therefor not active. This patch fixes this by calling hw_watchdog_init() also when CONFIG_IMX_WATCHDOG is defined. Signed-off-by: NStefan Roese <sr@denx.de> Cc: Simon Glass <sjg@chromium.org> Cc: Fabio Estevam <fabio.estevam@freescale.com> Cc: Stefano Babic <sbabic@denx.de> Cc: Heiko Schocher <hs@denx.de> Acked-by: NHeiko Schocher <hs@denx.de>
-
- 06 3月, 2015 3 次提交
-
-
由 Alexey Brodkin 提交于
In case of global data structure defined as "register volatile" compiler throws an warning about incorrect type used: --->8--- common/board_f.c: In function "board_init_f_r": common/board_f.c:1073:2: warning: passing argument 1 of "&board_init_r +(sizetype)gd->reloc_off" discards "volatile" qualifier from pointer target type [enabled by default] (board_init_r + gd->reloc_off)(gd, gd->relocaddr); ^ common/board_f.c:1073:2: note: expected "struct gd_t *" but argument is of type "volatile struct gd_t *" --->8--- An obvious fix is manual casting to "gd_t *". Signed-off-by: NAlexey Brodkin <abrodkin@synopsys.com> Cc: Simon Glass <sjg@chromium.org> Cc: Tom Rini <trini@ti.com> Acked-by: NSimon Glass <sjg@chromium.org>
-
由 Alison Wang 提交于
This patch adds generic board support for MCF547X/8X and MCF5445X. It is based on the patch about common generic board support for M68K architecture sent by Angelo. Signed-off-by: NAlison Wang <alison.wang@freescale.com>
-
由 angelo@sysam.it 提交于
Add generic-board support for the m68k architecture. Signed-off-by: NAngelo Dureghello <angelo@sysam.it>
-
- 05 3月, 2015 1 次提交
-
-
由 Stephen Warren 提交于
Some systems have so much RAM that the end of RAM is beyond 4GB. An example would be a Tegra124 system (where RAM starts at 2GB physical) that has more than 2GB of RAM. In this case, we can gd->ram_size to represent the actual RAM size, so that the actual RAM size is passed to the OS. This is useful if the OS implements LPAE, and can actually use the "extra" RAM. However, U-Boot does not implement LPAE and so must deal with 32-bit physical addresses. To this end, we enhance board_get_usable_ram_top() to detect the "over-sized" case, and limit the relocation addres so that it fits into 32-bits of physical address space. Signed-off-by: NStephen Warren <swarren@nvidia.com> Reviewed-by: NSimon Glass <sjg@chromium.org> Signed-off-by: NTom Warren <twarren@nvidia.com>
-
- 18 2月, 2015 2 次提交
-
-
由 Andreas Bießmann 提交于
Signed-off-by: NAndreas Bießmann <andreas.devel@googlemail.com>
-
由 Andreas Bießmann 提交于
Introduce arch_reserve_stacks() to tailor gd->start_addr_sp and gd->irq_sp to the architecture needs. Signed-off-by: NAndreas Bießmann <andreas.devel@googlemail.com> Reviewed-by: NSimon Glass <sjg@chromium.org>
-
- 13 2月, 2015 1 次提交
-
-
由 Simon Glass 提交于
At present on some architectures we set up the following before calling board_init_f(): - global_data - stack - early malloc memory Adding the code to support early malloc and global data setup to every arch's assembler start-up is a pain. Also this code is not actually architecture-specific. We can use common code for all architectures and with a bit of care we can write this code in C. Add a new function to deal with this. It should be called after memory is available, with a pointer to the top of the area that should be used before relocation. The function will set things up and return the lowest memory address that it allocated/used. That can then be set as the top of the stack. Note that on some archs this function will use the stack, so the stack pointer should be set to same value as is pased to board_init_f_mem(). A margin of 128 bytes will be left for this stack, so that it is not overwritten. This means that 64 bytes is wasted by this early call. This is not strictly necessary on several more modern archs, so we could remove this at the cost of some arch-dependent code. With this function there is no-longer any need for the assembler code to zero global_data or set up the early malloc pointers. Signed-off-by: NSimon Glass <sjg@chromium.org>
-
- 09 2月, 2015 1 次提交
-
-
由 Michal Simek 提交于
Compile code with -fPIC to get GOT. Do not build SPL with fPIC because it increasing SPL size for nothing. Signed-off-by: NMichal Simek <michal.simek@xilinx.com>
-
- 08 2月, 2015 1 次提交
-
-
由 Heiko Schocher 提交于
call hw_watchdog_init() also if CONFIG_AT91SAM9_WATCHDOG is used. Signed-off-by: NHeiko Schocher <hs@denx.de> Reviewed-by: NSimon Glass <sjg@chromium.org>
-
- 30 1月, 2015 1 次提交
-
-
由 Masahiro Yamada 提交于
The common/board_r.c has show_model_r() to display the model name if the DTB has a "model" property. It sounds useful to have a similar function in common/board_f.c too because most of the boards show their board name before relocation. Instead of implementing the same function in both common/board_f.c and common/board_r.c, let's split it up into common/show_board_info.c. Signed-off-by: NMasahiro Yamada <yamada.m@jp.panasonic.com> Acked-by: NSimon Glass <sjg@chromium.org>
-
- 24 1月, 2015 1 次提交
-
-
由 Simon Glass 提交于
All memory to be reserved for use after relocation by adding a new call to perform this reservation. Signed-off-by: NSimon Glass <sjg@chromium.org>
-