summaryrefslogtreecommitdiff
path: root/post/cpu
AgeCommit message (Collapse)Author
2010-11-17Switch from archive libraries to partial linkingSebastien Carlier
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 <sebastien.carlier@gmail.com>
2010-10-04ppc4xx: Use common ns16550 functions in 4xx UART POST driverStefan Roese
This patch changes the PPC4xx POST UART driver to use the common NS16550 functions for receiving and sending. Additionally the local function for SoC divisor setup are removed. Instead the functions from arch/powerpc/cpu/ppc4xx/4xx_uart.c are used. This removes code duplication. Also the common CONFIG_SYS_NS16550_COMx defines are now used to describe the POST UART's. And a compile breakage is fixed, introduced by a git merge of the ppc4xx/next branch into master. Now "ppc4xx.h" is moved to "asm/ppc4xx.h". Fixed as well with this patch. Signed-off-by: Stefan Roese <sr@denx.de>
2010-09-28Merge branch 'next' of /home/wd/git/u-boot/nextWolfgang Denk
Conflicts: include/ppc4xx.h Signed-off-by: Wolfgang Denk <wd@denx.de>
2010-09-23ppc4xx: Move ppc4xx headers to powerpc include directoryStefan 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 <sr@denx.de>
2010-09-23ppc4xx: POST UART: Use in/out_8() io-accessor functionsStefan Roese
This patch fixes a problem in the PPC4xx POST UART driver. This driver incorrectly used the in/out8() io-accessor functions. This could lead to problems since these functions don't guarantee execution ordering. This patch now replaces these functions with the correct ones. Additionally the driver is converted to using the NS16550 struct instead of macros for the register offsets. And some common code is factored out for better maintainability. Signed-off-by: Stefan Roese <sr@denx.de>
2010-05-06POST: Added ECC memory test for mpc83xx.Michael Zaidman
Signed-off-by: Michael Zaidman <michael.zaidman@gmail.com> Fixed minor coding style issue. Signed-off-by: Wolfgang Denk <wd@denx.de>
2010-04-21Move arch/ppc to arch/powerpcStefan Roese
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 <sr@denx.de> Acked-by: Wolfgang Denk <wd@denx.de> Acked-by: Detlev Zundel <dzu@denx.de> Acked-by: Kim Phillips <kim.phillips@freescale.com> Cc: Peter Tyser <ptyser@xes-inc.com> Cc: Anatolij Gustschin <agust@denx.de>
2010-04-13ppc: Move cpu/$CPU to arch/ppc/cpu/$CPUPeter Tyser
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
2009-10-07ppc_4xx: Apply new HW register namesNiklaus Giger
Modify all existing *.c files to use the new register names as seen in the AMCC manuals. Signed-off-by: Niklaus Giger <niklaus.giger@member.fsf.org> Signed-off-by: Stefan Roese <sr@denx.de>
2009-09-11ppc4xx: Big cleanup of PPC4xx definesStefan Roese
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 defines Please 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 <sr@denx.de>
2009-07-24ppc4xx: Replace 4xx lowercase SPR referencesMatthias Fuchs
Signed-off-by: Matthias Fuchs <matthias.fuchs@esd.eu> Signed-off-by: Stefan Roese <sr@denx.de>
2009-03-28mpc8xx/ether.c: fix warning: unused variable 'bd'Wolfgang Denk
Also minor coding style cleanup. Signed-off-by: Wolfgang Denk <wd@denx.de>
2009-03-20cpu/: get mac address from environmentMike Frysinger
The environment is the canonical storage location of the mac address, so we're killing off the global data location and moving everything to querying the env directly. The cpus that get converted here: at91rm9200 mpc512x mpc5xxx mpc8260 mpc8xx ppc4xx Signed-off-by: Mike Frysinger <vapier@gentoo.org> CC: Ben Warren <biggerbadderben@gmail.com> CC: John Rigby <jrigby@freescale.com> CC: Stefan Roese <sr@denx.de>
2008-10-18rename CFG_ macros to CONFIG_SYSJean-Christophe PLAGNIOL-VILLARD
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
2008-08-06Fix merge problemsStefan Roese
Signed-off-by: Stefan Roese <sr@denx.de>
2008-06-06ppc4xx: Fix misspelled CONFIG_440SPE/440EPX/GRX config optionsStefan Roese
We use upper case letters for the AMCC processor defines (like CONFIG_440SPE) in U-Boot. So the 440SPe is labeled CONFIG_440SPE and not CONFIG_440SPe. This patch fixes the last misspelled config options. Signed-off-by: Stefan Roese <sr@denx.de>
2008-05-20POST: OCM test added.Yuri Tikhonov
Added OCM test to POST layer. This version runs before all other tests but doesn't yet interrupt post sequence on failure. Signed-off-by: Ilya Yanok <yanok@emcraft.com> Signed-off-by: Yuri Tikhonov <yur@emcraft.com>
2008-05-10post/cpu/ppc4xx/Makefile: line length cleanupWolfgang Denk
Signed-off-by: Wolfgang Denk <wd@denx.de>
2008-04-29POST: fix Makefiles for mpc8xx, lwmon, and netta POSTs.Yuri Tikhonov
Signed-off-by: Yuri Tikhonov <yur@emcraft.com>
2008-04-28post: Fix building with O=Kumar Gala
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
2008-04-22POST: move CONFIG_POST to MakefilesYuri Tikhonov
Introduce the new logical option CONFIG_HAS_POST which is set when the platform has CONFIG_POST set. Use CONFIG_HAS_POST in the post/ Makefiles to determine should the POST libs be compiled for the selected target platform, or not. To avoid breaking u-boot linking process, the empty post/libpost.a file is created for platforms which do not have POSTs. Signed-off-by: Yuri Tikhonov <yur@emcraft.com> Signed-off-by: Wolfgang Denk <wd@denx.de>
2008-04-22POST: preparations for moving CONFIG_POST to MakefilesYuri Tikhonov
Remove CONFIG_POST ifdefs from the post/ source files. Signed-off-by: Yuri Tikhonov <yur@emcraft.com> Signed-off-by: Wolfgang Denk <wd@denx.de>
2008-03-15ppc4xx: program_tlb now uses 64bit physical addessStefan Roese
This patch changes the physical addess parameter from 32bit to 64bit. This is needed for 36bit 4xx platforms to access areas located beyond the 4GB border, like SoC peripherals (EBC etc.). Signed-off-by: Stefan Roese <sr@denx.de>
2008-03-02POST: Disable cache while SPR POSTAnatolij Gustschin
Currently (since commit b2e2142c) u-boot crashes on sequoia board while SPR test if CONFIG_4xx_DCACHE is enabled. This patch disables the cache while SPR test. Signed-off-by: Anatolij Gustschin <agust@denx.de>
2008-01-16ppc4xx: Refactor ECC POST for AMCC Denali coreLarry Johnson
The ECC POST reported intermittent failures running after power-up on the Korat PPC440EPx board. Even when the test passed, the debugging output occasionally reported additional unexpected ECC errors. This refactoring has three main objectives: (1) minimize the code executed with ECC enabled during the tests, (2) add more checking of the results so any unexpected ECC errors would cause the test to fail, and (3) use synchronization (only) where required by the processor. Signed-off-by: Larry Johnson <lrj@acm.org>
2008-01-14ppc_4xx: Fix post spr.c for PPC405Niklaus Giger
post/cpu/ppc4xx/spr.c contained a few checks for registers only present for PPC440 and derivates processor. Signed-off-by: Niklaus Giger <niklaus.giger@netstal.com>
2007-12-27Cosmetic changes to ECC POST for AMCC Denali coreLarry Johnson
Signed-off-by: Larry Johnson <lrj@acm.org>
2007-12-27ppc4xx: Fix compilation problem in 405 cache POST testStefan Roese
Signed-off-by: Stefan Roese <sr@denx.de>
2007-12-27ppc4xx: Fix problem in 44x cache POST routineStefan Roese
As repoted by Larry Johnson, running "diag run cache" caused a crash in U-Boot. This problem was introduced by a patch that removed the TLB entry for the cache test after the test has completed. Since this TLB was only setup once, a 2nd attempt to run this cache test failed with a crash. Now this TLB entry is created every time the routine is called. Signed-off-by: Stefan Roese <sr@denx.de>
2007-12-27Fix/enhance ECC POST for 440EPx/GRxLarry Johnson
This patch allows the ECC POST to be used for different boards with the PPC440 Denali SDRAM controller. Modifications include skipping the test if ECC is not enabled (as for non-ECC DIMMs) and adding synchronization to prevent timing errors. Signed-off-by: Larry Johnson <lrj@acm.org>
2007-12-27PPC4xx: Move/rename ECC POST for 440EPx/GRxLarry Johnson
Signed-off-by: Larry Johnson <lrj@acm.org>
2007-12-27ppc4xx: use correct io accessors for 4xx ethernet POSTMatthias Fuchs
Signed-off-by: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
2007-10-31ppc4xx: Change 4xx POST ethernet test to handle cached memory tooStefan Roese
This patch enables the 4xx EMAC POST driver to work too, when dcache is enabled. Signed-off-by: Stefan Roese <sr@denx.de>
2007-10-31ppc4xx: Remove temporary TLB entry in POST cache test only for 440Stefan Roese
Signed-off-by: Stefan Roese <sr@denx.de>
2007-10-31ppc4xx: Remove compiler warning from previous commitStefan Roese
Signed-off-by: Stefan Roese <sr@denx.de>
2007-10-31ppc4xx: Remove temporary TLB entry in POST cache testStefan Roese
Signed-off-by: Stefan Roese <sr@denx.de>
2007-10-31ppc4xx: Fix POST ethernet test for HaleakalaStefan Roese
The POST ethernet test needed to be changed to dynamically determine the count of ethernet devices. This code is cloned from the 4xx ethernet driver. Signed-off-by: Stefan Roese <sr@denx.de>
2007-10-31POST: Add 405EX support to 4xx UART POST testStefan Roese
Signed-off-by: Stefan Roese <sr@denx.de>
2007-08-14POST: Fix merge problemStefan Roese
Signed-off-by: Stefan Roese <sr@denx.de>
2007-08-14Merge with /home/stefan/git/u-boot/zeusStefan Roese
2007-08-14POST: Add option for external ethernet loopback testStefan Roese
When CFG_POST_ETHER_EXT_LOOPBACK is defined, the ethernet POST is not done using an internal loopback connection, but by assuming that an external loopback connector is plugged into the board. Signed-off-by: Stefan Roese <sr@denx.de>
2007-08-14POST: Add ppc405 support to cache and UART POSTStefan Roese
Signed-off-by: Stefan Roese <sr@denx.de>
2007-08-10POST: Add ppc4xx UART POST support without external uart clock (lwmon5)Yuri Tikhonov
The patch adds support for UART POST on ppc44x-based boards with no external serial clocks installed. Signed-off-by: Yuri Tikhonov <yur@emcraft.com> Acked-by: Stefan Roese <sr@denx.de>
2007-07-31ppc4xx: Update 440EPx lwmon5 board supportStefan Roese
- Clear ECC status regs after ECC POST test - Set dcbz for ECC generation with caches enabled as default - Code cleanup Signed-off-by: Stefan Roese <sr@denx.de>
2007-07-10Coding style cleanup; update CHANGELOG.Wolfgang Denk
Signed-off-by: Wolfgang Denk <wd@denx.de>
2007-07-05Merged POST framework with the current TOT.Sergei Poselenov
Signed-off-by: Sergei Poselenov <sposelenov@emcraft.com>
2007-06-22Extend POST support for PPC440Igor Lisitsin
Added memory, CPU, UART, I2C and SPR POST tests for PPC440. Signed-off-by: Igor Lisitsin <igor@emcraft.com> --
2007-03-19Remove obsoleted POST files.Wolfgang Denk
Signed-off-by: Wolfgang Denk <wd@denx.de>
2007-03-06Restructure POST directory to support of other CPUs, boards, etc.Wolfgang Denk
2006-09-01Add support for a saving build objects in a separate directory.Marian Balakowicz
Modifications are based on the linux kernel approach and support two use cases: 1) Add O= to the make command line 'make O=/tmp/build all' 2) Set environement variable BUILD_DIR to point to the desired location 'export BUILD_DIR=/tmp/build' 'make' The second approach can also be used with a MAKEALL script 'export BUILD_DIR=/tmp/build' './MAKEALL' Command line 'O=' setting overrides BUILD_DIR environent variable. When none of the above methods is used the local build is performed and the object files are placed in the source directory.