20 Feb, 2014
2 commits
-
We had switched to Kbuild, so we do not need to
delete sandburst board files at every build.U-Boot conventional build system did not check the
update of command line option, -DBUILDUSER.Kbuild can handle it nicely and re-builds object files
when command line options are changed.
(The file ".*.cmd" stores the information how the file
was generated at the previous build.)Signed-off-by: Masahiro Yamada
-
Now we are ready to switch over to real Kbuild.
This commit disables temporary scripts:
scripts/{Makefile.build.tmp, Makefile.host.tmp}
and enables real Kbuild scripts:
scripts/{Makefile.build,Makefile.host,Makefile.lib}.This switch is triggered by the line in scripts/Kbuild.include
-build := -f $(if $(KBUILD_SRC),$(srctree)/)scripts/Makefile.build.tmp obj
+build := -f $(if $(KBUILD_SRC),$(srctree)/)scripts/Makefile.build objWe need to adjust some build scripts for U-Boot.
But smaller amount of modification is preferable.Additionally, we need to fix compiler flags which are
locally added or removed.In Kbuild, it is not allowed to change CFLAGS locally.
Instead, ccflags-y, asflags-y, cppflags-y,
CFLAGS_$(basetarget).o, CFLAGS_REMOVE_$(basetarget).o
are prepared for that purpose.Signed-off-by: Masahiro Yamada
Tested-by: Gerhard Sittig
18 Nov, 2013
1 commit
-
Signed-off-by: Masahiro Yamada
01 Nov, 2013
1 commit
-
Signed-off-by: Masahiro Yamada
Cc: Wolfgang Denk
Cc: Kim Phillips
Cc: York Sun
Cc: Stefan Roese
15 Oct, 2013
1 commit
-
Signed-off-by: Wolfgang Denk
24 Jul, 2013
2 commits
-
The sandburst-specific i2c drivers have been deleted, conflict was just
over the SPDX conversion.Conflicts:
board/sandburst/common/ppc440gx_i2c.c
board/sandburst/common/ppc440gx_i2c.hSigned-off-by: Tom Rini
-
Signed-off-by: Wolfgang Denk
[trini: Fixup common/cmd_io.c]
Signed-off-by: Tom Rini
23 Jul, 2013
2 commits
-
Signed-off-by: Dirk Eibach
Cc: Heiko Schocher
Cc: Stefan Roese
Tested-by: Stefan Roese -
- added to soft_i2c driver new multibus/multiadpater support
- adapted all config files, which uses this driverSigned-off-by: Heiko Schocher
Cc: Simon Glass
Cc: Stephen Warren
03 Apr, 2013
1 commit
-
Simon Glass' commit 3929fb0a141530551b3fce15ee08629f80d5ef2a,
which changed all occurrences of __bss__end__ into __bss_end,
left behind some untouched __bss_end__ occurrences in all 33
u-boot.lds.debug files, in board/mousse/u-boot.lds.ram and
in board/mousse/u-boot.lds.rom. These are replaced here.Signed-off-by: Albert ARIBAUD
13 Mar, 2013
1 commit
-
Refactor linker-generated array code so that symbols
which were previously linker-generated are now compiler-
generated. This causes relocation records of type
R_ARM_ABS32 to become R_ARM_RELATIVE, which makes
code which uses LGA able to run before relocation as
well as after.Note: this affects more than ARM targets, as linker-
lists span possibly all target architectures, notably
PowerPC.Conflicts:
arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds
arch/arm/cpu/arm926ejs/spear/u-boot-spl.lds
arch/arm/cpu/armv7/omap-common/u-boot-spl.lds
board/ait/cam_enc_4xx/u-boot-spl.lds
board/davinci/da8xxevm/u-boot-spl-da850evm.lds
board/davinci/da8xxevm/u-boot-spl-hawk.lds
board/vpac270/u-boot-spl.ldsSigned-off-by: Albert ARIBAUD
22 Oct, 2012
2 commits
-
The command declaration now uses the new LG-array method to generate
list of commands. Thus the __u_boot_cmd section is now superseded and
redundant and therefore can be removed. Also, remove externed symbols
associated with this section from include/command.h .Signed-off-by: Marek Vasut
Cc: Joe Hershberger
Cc: Mike Frysinger -
Add section for the linker-generated lists into all possible linker
files, so that everyone can easily use these lists. This is mostly
a mechanical adjustment.Signed-off-by: Marek Vasut
Cc: Joe Hershberger
Cc: Mike Frysinger
02 Dec, 2011
1 commit
-
Fix:
../common/flash.c: In function 'flash_erase':
../common/flash.c:307:24: warning: variable 'l_sect' set but not used
[-Wunused-but-set-variable]Signed-off-by: Wolfgang Denk
Cc: Travis Sawyer
Acked-by: Marek Vasut
16 Oct, 2011
1 commit
-
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
28 Mar, 2011
1 commit
-
Currently, _end is used for end of BSS section. We want _end to mean
end of u-boot image, so we rename _end to __bss_end__ first.Signed-off-by: Po-Yu Chuang
18 Nov, 2010
1 commit
-
Before this commit, weak symbols were not overridden by non-weak symbols
found in archive libraries when linking with recent versions of
binutils. As stated in the System V ABI, "the link editor does not
extract archive members to resolve undefined weak symbols".This commit changes all Makefiles to use partial linking (ld -r) instead
of creating library archives, which forces all symbols to participate in
linking, allowing non-weak symbols to override weak symbols as intended.
This approach is also used by Linux, from which the gmake function
cmd_link_o_target (defined in config.mk and used in all Makefiles) is
inspired.The name of each former library archive is preserved except for
extensions which change from ".a" to ".o". This commit updates
references accordingly where needed, in particular in some linker
scripts.This commit reveals board configurations that exclude some features but
include source files that depend these disabled features in the build,
resulting in undefined symbols. Known such cases include:
- disabling CMD_NET but not CMD_NFS;
- enabling CONFIG_OF_LIBFDT but not CONFIG_QE.Signed-off-by: Sebastien Carlier
19 Oct, 2010
2 commits
-
Clean up Makefile, and drop a lot of the config.mk files on the way.
We now also automatically pick all boards that are listed in
boards.cfg (and with all configurations), so we can drop the redundant
entries from MAKEALL to avoid building these twice.Signed-off-by: Wolfgang Denk
-
The change is currently needed to be able to remove the board
configuration scripting from the top level Makefile and replace it by
a simple, table driven script.Moving this configuration setting into the "CONFIG_*" name space is
also desirable because it is needed if we ever should move forward to
a Kconfig driven configuration system.Signed-off-by: Wolfgang Denk
23 Sep, 2010
2 commits
-
This patch removes the PPC4xx UART driver. Instead the common NS16550
driver is used, since all PPC4xx SoC's use this peripheral device.The file 4xx_uart.c now only implements the UART clock calculation
function which also sets the SoC internal UART divisors.All PPC4xx board config headers are changed to use this common NS16550
driver now.Tested on these boards:
acadia, canyonlands, katmai, kilauea, sequoia, zeusSigned-off-by: Stefan Roese
-
This patch moves some ppc4xx related headers from the common include
directory (include/) to the powerpc specific one
(arch/powerpc/include/asm/). This way to common include directory is not
so cluttered with files.Signed-off-by: Stefan Roese
05 Jul, 2010
1 commit
-
The hush shell dynamically allocates (and re-allocates) memory for the
argument strings in the "char *argv[]" argument vector passed to
commands. Any code that modifies these pointers will cause serious
corruption of the malloc data structures and crash U-Boot, so make
sure the compiler can check that no such modifications are being done
by changing the code into "char * const argv[]".This modification is the result of debugging a strange crash caused
after adding a new command, which used the following argument
processing code which has been working perfectly fine in all Unix
systems since version 6 - but not so in U-Boot:int main (int argc, char **argv)
{
while (--argc > 0 && **++argv == '-') {
/* ====> */ while (*++*argv) {
switch (**argv) {
case 'd':
debug++;
break;
...
default:
usage ();
}
}
}
...
}The line marked "====>" will corrupt the malloc data structures and
usually cause U-Boot to crash when the next command gets executed by
the shell. With the modification, the compiler will prevent this with
an
error: increment of read-only location '*argv'N.B.: The code above can be trivially rewritten like this:
while (--argc > 0 && **++argv == '-') {
char *arg = *argv;
while (*++arg) {
switch (*arg) {
...Signed-off-by: Wolfgang Denk
Acked-by: Mike Frysinger
25 Apr, 2010
1 commit
22 Apr, 2010
1 commit
-
As discussed on the list, move "arch/ppc" to "arch/powerpc" to
better match the Linux directory structure.Please note that this patch also changes the "ppc" target in
MAKEALL to "powerpc" to match this new infrastructure. But "ppc"
is kept as an alias for now, to not break compatibility with
scripts using this name.Signed-off-by: Stefan Roese
Acked-by: Wolfgang Denk
Acked-by: Detlev Zundel
Acked-by: Kim Phillips
Cc: Peter Tyser
Cc: Anatolij Gustschin
19 Apr, 2010
1 commit
-
This patch adds new macros, with frequently used combinations of the
4xx TLB access control and storage attibutes. Additionally the 4xx init.S
files are updated to make use of these new macros. Resulting in easier
to read TLB definitions.Additionally some init.S files are updated to use the mmu header for the
TLB defines, instead of defining their own macros.Signed-off-by: Stefan Roese
13 Apr, 2010
4 commits
-
Signed-off-by: Peter Tyser
-
The appropriate include/asm-$ARCH directory should already by symlinked
to include/asm so using the whole "asm-$ARCH" path is unnecessary.This change should also allow us to move the include/asm-$ARCH
directories into their appropriate lib/$ARCH/ directories.Signed-off-by: Peter Tyser
-
Now that the other architecture-specific lib directories have been
moved out of the top-level directory there's not much reason to have the
'_generic' suffix on the common lib directory.Signed-off-by: Peter Tyser
-
Also move lib_$ARCH/config.mk to arch/$ARCH/config.mk
This change is intended to clean up the top-level directory structure
and more closely mimic Linux's directory organization.Signed-off-by: Peter Tyser
22 Dec, 2009
1 commit
-
commit eb5eb2b0f744f0cba405160c5d01335c40f09acf
ppc4xx: Cleanup PPC4xx I2C infrastructure
This patch cleans up the PPC4xx I2C intrastructure:
- Use C struct to describe the I2C registers instead of defines
- Coding style cleanup (braces, whitespace, comments, line length)
- Extract common code from i2c_read() and i2c_write()
- Remove unneeded IIC defines from ppc405.h & ppc440.hbreaks comiling for the KAREF and METROBOX boards.
This patch fixes this issue.
Signed-off-by: Heiko Schocher
Signed-off-by: Stefan Roese
19 Nov, 2009
2 commits
-
This patch removes the duplicted implementations of the pci_pre_init()
function by introducing a weak default function for it. This weak default
has a different implementation for some PPC variants. It can be
overridden by a board specific version.Signed-off-by: Stefan Roese
-
This patch removes the duplicted implementations of the pci_target_init()
function by introducing a weak default function for it. This weak default
has a different implementation for 440EP(x)/GR(x) PPC's. It can be
overridden by a board specific version (e.g. PMC440, korat).Signed-off-by: Stefan Roese
Acked-by: Matthias Fuchs
09 Nov, 2009
1 commit
-
This patch introduces a weak default function for is_pci_host(),
returning 1. This is the default behaviour, since most boards only
implement PCI host functionality. This weak default can be overridden
by a board specific version if needed.Signed-off-by: Stefan Roese
02 Nov, 2009
1 commit
-
All these linker scripts can be removed since the new common ppc4xx
linker script should be able to handle all of those boards.Please test and report problems. Thanks.
Signed-off-by: Stefan Roese
09 Oct, 2009
1 commit
07 Oct, 2009
1 commit
-
Modify all existing *.c files to use the new register names
as seen in the AMCC manuals.Signed-off-by: Niklaus Giger
Signed-off-by: Stefan Roese
03 Oct, 2009
1 commit
-
The following changes allow U-Boot to fully relocate from flash to
RAM:
- Remove linker scripts' .fixup sections from the .text section
- Add -mrelocatable to PLATFORM_RELFLAGS for all boards
- Define CONFIG_RELOC_FIXUP_WORKS for all boardsPreviously, U-Boot would partially relocate, but statically initialized
pointers needed to be manually relocated.Signed-off-by: Peter Tyser
28 Sep, 2009
2 commits
-
The latest PPC4xx register cleanup patch missed some SDRAM defines.
This patch now changes lower case UIC defines to upper case. Also
some names are changed to match the naming in the IBM/AMCC users
manuals (e.g. mem_mcopt1 -> SDRAM0_CFG).Signed-off-by: Stefan Roese
-
The latest PPC4xx register cleanup patch missed the UIC defines.
This patch now changes lower case UIC defines to upper case.Signed-off-by: Stefan Roese
11 Sep, 2009
1 commit
-
This patch cleans up multiple issues of the 4xx register (mostly
DCR, SDR, CPR, etc) definitions:- Change lower case defines to upper case (plb4_acr -> PLB4_ACR)
- Change the defines to better match the names from the
user's manuals (e.g. cprpllc -> CPR0_PLLC)
- Removal of some unused definesPlease test this patch intensive on your PPC4xx platform. Even though
I tried not to break anything and tested successfully on multiple
4xx AMCC platforms, testing on custom platforms is recommended.Signed-off-by: Stefan Roese