summaryrefslogtreecommitdiff
path: root/lib_ppc/board.c
Commit message (Collapse)AuthorAgeLines
* Revert "Avoid initrd and logbuffer area overlaps"Wolfgang Denk2008-05-12-5/+0
| | | | | This reverts commit 1b5605ca57fbb364f4d78eeee28b974ed875e888 which breaks building on all PPC boards that don't use a log buffer.
* Avoid initrd and logbuffer area overlapsMarian Balakowicz2008-05-10-0/+5
| | | | | | | | | Add logbuffer to reserved LMB areas to prevent initrd allocation from overlaping with it. Make sure to use correct logbuffer base address. Signed-off-by: Marian Balakowicz <m8@semihalf.com>
* ppc: Cleanup get_effective_memsize() useMarian Balakowicz2008-05-10-11/+0
| | | | | | Removed duplicated effective memory size calculation code. Signed-off-by: Marian Balakowicz <m8@semihalf.com>
* lib_ppc: Revert "Make MPC83xx one step closer to full relocation."Kim Phillips2008-04-25-1/+0
| | | | | | | | This reverts commit 70431e8a7393b6b793f77957f95b999fc9a269b8 which has proven problematic getting right from the start at least on 83xx and 4xx. Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
* ppc: Revert patch 70431e8a that used _start instead of CFG_MONITOR_BASEStefan Roese2008-04-09-1/+1
| | | | | | | | | The patch 70431e8a7393b6b793f77957f95b999fc9a269b8 (Make MPC83xx one step closer to full relocation.) doesn't use CFG_MONITOR_BASE anymore. But on 4xx systems _start currently cannot be used for this calculation. So revert back to the original version for now. Signed-off-by: Stefan Roese <sr@denx.de>
* Merge branch 'master' of git://www.denx.de/git/u-boot-mpc83xxWolfgang Denk2008-04-07-2/+3
|\ | | | | | | | | | | | | | | Conflicts: lib_ppc/board.c Signed-off-by: Wolfgang Denk <wd@denx.de>
| * Make MPC83xx one step closer to full relocation.Joakim Tjernlund2008-03-28-1/+2
| | | | | | | | | | | | | | | | Remove a few absolute references to CFG_MONITOR_BASE for ppc/mpc83xx and use GOT relative reference. Signed-off-by: Joakim Tjernlund <Joakim.Tjernlund@transmode.se> Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
| * mpc8323erdb: fix EEPROM page size and get MAC from EEPROMMichael Barkowski2008-03-28-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes eeprom page size so that you can now write more than 64 bytes at a time. It also makes the board take MAC addresses, if found, from EEPROM. User should place up to 4 addresses at offset 0x7f00, for eth{,1,2,3}addr. Any unused addresses should be zero. This group of four six-byte values should have it's CRC at the end. crc32 and eeprom commands can be used to accomplish this. If CRC fails, MAC addresses come from the environment. If CRC succeeds, the environment is overwritten at startup. Signed-off-by: Michael Barkowski <michael.barkowski@freescale.com> Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
* | ppc: Set CFG_MEM_TOP_HIDE to 0 if not already definedStefan Roese2008-03-27-0/+4
| | | | | | | | Signed-off-by: Stefan Roese <sr@denx.de>
* | ppc: Add CFG_MEM_TOP_HIDE option to hide memory area that doesn't get "touched"Stefan Roese2008-03-27-0/+13
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If CFG_MEM_TOP_HIDE is defined in the board config header, this specified memory area will get subtracted from the top (end) of ram and won't get "touched" at all by U-Boot. By fixing up gd->ram_size the Linux kernel should gets passed the now "corrected" memory size and won't touch it either. This should work for arch/ppc and arch/powerpc. Only Linux board ports in arch/powerpc with bootwrapper support, which recalculate the memory size from the SDRAM controller setup, will have to get fixed in Linux additionally. This patch enables this config option on some PPC440EPx boards as a workaround for the CHIP 11 errata. Here the description from the AMCC documentation: CHIP_11: End of memory range area restricted access. Category: 3 Overview: The 440EPx DDR controller does not acknowledge any transaction which is determined to be crossing over the end-of-memory-range boundary, even if the starting address is within valid memory space. Any such transaction from any PLB4 master will result in a PLB time-out on PLB4 bus. Impact: In case of such misaligned bursts, PLB4 masters will not retrieve any data at all, just the available data up to the end of memory, especially the 440 CPU. For example, if a CPU instruction required an operand located in memory within the last 7 words of memory, the DCU master would burst read 8 words to update the data cache and cross over the end-of-memory-range boundary. Such a DCU read would not be answered by the DDR controller, resulting in a PLB4 time-out and ultimately in a Machine Check interrupt. The data would be inaccessible to the CPU. Workaround: Forbid any application to access the last 256 bytes of DDR memory. For example, make your operating system believe that the last 256 bytes of DDR memory are absent. AMCC has a patch that does this, available for Linux. This patch sets CFG_MEM_TOP_HIDE for the following 440EPx boards: lwmon5, korat, sequoia The other remaining 440EPx board were intentionally not included since it is not clear to me, if they use the end of ram for some other purpose. This is unclear, since these boards have CONFIG_PRAM defined and even comments like this: PMC440.h: /* esd expects pram at end of physical memory. * So no logbuffer at the moment. */ It is strongly recommended to not use the last 256 bytes on those boards too. Patches from the board maintainers are welcome. Signed-off-by: Stefan Roese <sr@denx.de>
* ata: enable the sata initialize on boot upDave Liu2008-03-26-0/+8
| | | | Signed-off-by: Dave Liu <daveliu@freescale.com>
* ppc: Allow boards to specify how much memory they can mapKumar Gala2008-03-25-0/+11
| | | | | | | | For historical reasons we limited the stack to 256M because some boards could only map that much via BATS. However newer boards are capable of mapping more memory (for example 85xx is capble of doing up to 2G). Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* The patch introduces the alternative configuration of the log buffer for the ↵Yuri Tikhonov2008-03-18-0/+4
| | | | | | | | | | | | | | lwmon5 board: the storage for the log-buffer itself is OCM(on-chip memory), the log-buffer header is moved to six GPT registers (PPC440EPX_GPT0_COMP1, ..., PPC440EPX_GPT0_COMP5). To enable this, alternative, configuration the U-Boot board configuration file for lwmon5 includes the definitions of alternative addresses for header (CONFIG_ALT_LH_ADDR) and buffer (CONFIG_ALT_LB_ADDR). The Linux shall be configured with the CONFIG_ALT_LB_LOCATION option set, and has the BOARD_ALT_LH_ADDR and BOARD_ALT_LB_ADDR constants defined in the lwmon5 board-specific header (arch/ppc/platforms/4xx/lwmon5.h). Signed-off-by: Yuri Tikhonov <yur@emcraft.com>
* ppc: Allow boards to specify effective amount of memoryKumar Gala2008-02-22-7/+15
| | | | | | | | For historical reasons we limited the stack to 256M because some boards could only map that much via BATS. However newer boards are capable of mapping more memory (for example 85xx is capable of doing up to 2G). Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* Merge branch 'master' of git://www.denx.de/git/u-boot-mpc86xxWolfgang Denk2008-01-23-4/+5
|\
| * FSL: Fix common EEPROM_data structure definitionHaiying Wang2008-01-17-4/+5
| | | | | | | | | | | | | | | | - Fix EEPROM_data structure definition according to System EEPROM Data Format. - Read MAC addresses from EEPROM to ethXaddr before saving ethXaddr to bd->bi_ethaddr. Signed-off-by: Haiying Wang <Haiying.Wang@freescale.com>
* | Add support for a Freescale non-CPM SPI controllerBen Warren2008-01-17-0/+16
|/ | | | | | | | | This patch adds support for the SPI controller found on Freescale PowerPC processors such as the MCP834x family. Additionally, a new config option, CONFIG_HARD_SPI, is added for general purpose SPI controller use. Signed-off-by: Ben Warren <biggerbadderben@gmail.com> Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
* MPC512X: Cleanup bus clock names.Grzegorz Bernacki2008-01-12-1/+1
| | | | Signed-off-by: Grzegorz Bernacki <gjb@semihalf.com>
* ads5121: Added support for FDT.Grzegorz Bernacki2008-01-12-0/+3
| | | | Signed-off-by: Grzegorz Bernacki <gjb@semihalf.com>
* API for external applications.Rafal Jaworowski2008-01-09-0/+5
| | | | | | | | | | | | | | This is an API for external (standalone) applications running on top of U-Boot, and is meant to be more extensible and robust than the existing jumptable mechanism. It is similar to UNIX syscall approach. See api/README for more details. Included is the demo application using this new framework (api_examples). Please note this is still an experimental feature, and is turned off by default. Signed-off-by: Rafal Jaworowski <raj@semihalf.com>
* lib_ppc: make board_add_ram_info weakKim Phillips2007-08-18-5/+6
| | | | | | | | | | | | platforms wishing to display RAM diagnostics in addition to size, can do so, on one line, in their own board_add_ram_info() implementation. this consequently eliminates CONFIG_ADD_RAM_INFO. Thanks to Stefan for the hint. Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
* mpc83xx: Add support for the display of reset statusDave Liu2007-08-10-2/+4
| | | | | | | | | | | | | 83xx processor family has many reset sources, such as power on reset, software hard reset, software soft reset, JTAG, bus monitor, software watchdog, check stop reset, external hard reset, external software reset. sometimes, to figure out the fault of system, we need to know the cause of reset early before the prompt of u-boot present. Signed-off-by: Dave Liu <daveliu@freescale.com> Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
* Merge with /home/wd/git/u-boot/custodian/u-boot-testingWolfgang Denk2007-08-06-22/+29
|\
| * Merge branch 'testing' into workingAndy Fleming2007-08-03-22/+29
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: CHANGELOG fs/fat/fat.c include/configs/MPC8560ADS.h include/configs/pcs440ep.h net/eth.c
| | * Fix malloc problem introduced with the relocation fixup for the PPC platformStefan Roese2007-07-11-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | The relocation fixup didn't handle the malloc pointer initialization correctly. This patch fixes this problem. Tested successfully on 4xx. The relocation fixup patches for 4xx will follow soon. Signed-off-by: Stefan Roese <sr@denx.de>
| | * disk/ doc/ lib_*/ and tools/: Remove lingering references to CFG_CMD_* symbols.Jon Loeliger2007-07-10-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Fixed some broken instances of "#ifdef CMD_CFG_IDE" too. Those always evaluated TRUE, and thus were always compiled even when IDE really wasn't defined/wanted. Signed-off-by: Jon Loeliger <jdl@freescale.com>
| | * lib_{m68k,microblaze,mips,ppc}/: Remove obsolete references to CONFIG_COMMANDSJon Loeliger2007-07-09-17/+17
| | | | | | | | | | | | Signed-off-by: Jon Loeliger <jdl@freescale.com>
| | * Don't set gd->reloc_off if relocation of .fixup works correctlyGrant Likely2007-07-04-0/+5
| | | | | | | | | | | | Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
| | * lib_ppc/: Augment CONFIG_COMMANDS tests with defined(CONFIG_CMD_*).Jon Loeliger2007-07-04-16/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a compatibility step that allows both the older form and the new form to co-exist for a while until the older can be removed entirely. All transformations are of the form: Before: #if (CONFIG_COMMANDS & CFG_CMD_AUTOSCRIPT) After: #if (CONFIG_COMMANDS & CFG_CMD_AUTOSCRIPT) || defined(CONFIG_CMD_AUTOSCRIPT) Signed-off-by: Jon Loeliger <jdl@freescale.com>
* | | make show_boot_progress () weak.Heiko Schocher2007-07-13-2/+0
|/ / | | | | | | Signed-off-by: Heiko Schocher <hs@denx.de>
* | [PCS440EP] upgrade the PCS440EP board:Heiko Schocher2007-06-22-2/+3
|/ | | | | | | | | | | | - Show on the Status LEDs, some States of the board. - Get the MAC addresses from the EEProm - use PREBOOT - use the CF on the board. - check the U-Boot image in the Flash with a SHA1 checksum. - use dynamic TLB entries generation for the SDRAM Signed-off-by: Heiko Schocher <hs@denx.de>
* Fix config problems on SC3 board; make ide_reset_timeout work.Wolfgang Denk2007-06-08-3/+3
|
* Merge with git://www.denx.de/git/u-boot.gitStefan Roese2007-05-18-4/+0
|\
| * mpc83xx: replace elaborate boottime verbosity with 'clocks' commandKim Phillips2007-05-01-4/+0
| | | | | | | | | | | | and fix CPU: to align with Board: display text. Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
* | ppc4xx: Set bd->bi_pci_busfreq on 440EPx/GRx tooStefan Roese2007-05-11-1/+3
|/ | | | Signed-off-by: Stefan Roese <sr@denx.de>
* Added support for the SOLIDCARD III board from EurodesignHeiko Schocher2007-01-11-0/+16
| | | | Signed-off-by: Heiko Schocher <hs@denx.de>
* Merge with /home/hs/TQ/u-boot-devWolfgang Denk2006-12-24-0/+12
|\
| * Added support for the TQM8272 board from TQHeiko Schocher2006-12-21-0/+12
| | | | | | | | Signed-off-by: Heiko Schocher <hs@denx.de>
* | Code cleanup.Wolfgang Denk2006-11-30-11/+11
| |
* | mpc83xx: Replace CFG_IMMRBAR with CFG_IMMRTimur Tabi2006-11-03-1/+1
|/ | | | | | | Replace all instances of CFG_IMMRBAR with CFG_IMMR, so that the 83xx tree matches the other 8xxx trees. Signed-off-by: Timur Tabi <timur@freescale.com>
* Merge branch 'master' of http://www.denx.de/git/u-bootJon Loeliger2006-10-19-2/+5
|\
| * Preliminary patch adding support for the MarelV38B board.Bartlomiej Sieka2006-10-13-2/+5
| |
* | Merge branch 'master' of http://www.denx.de/git/u-bootJon Loeliger2006-09-19-6/+6
|\ \ | |/ | | | | | | | | Conflicts: board/stxxtc/Makefile
| * Add support for AMCC Sequoia PPC440EPx eval boardStefan Roese2006-09-07-6/+6
| | | | | | | | | | | | | | | | | | | | | | - Add support for PPC440EPx & PPC440GRx - Add support for PPC440EP(x)/GR(x) NAND controller in cpu/ppc4xx directory - Add NAND boot functionality for Sequoia board, please see doc/README.nand-boot-ppc440 for details - This Sequoia NAND image doesn't support environment in NAND for now. This will be added in a short while. Patch by Stefan Roese, 07 Sep 2006
* | Unlock cache before kernel starts up for MPC86xxHaiying Wang2006-08-17-1/+1
| |
* | Merge branch 'wd'Jon Loeliger2006-08-09-7/+7
|\ \ | |/
| * Add support for TQM885D board.Markus Klotzbuecher2006-07-12-1/+2
| | | | | | | | | | | | Patch by Martin Krause, 20 Mar 2006 Signed-off-by: Martin Krause <martin.krause@tqs.de>
| * Merge: Add support for AMCC 440SPe CPU based eval board (Yucca).Marian Balakowicz2006-06-30-6/+5
| |\
| | * Call serial_initialize() before first debug() is used.Marian Balakowicz2006-06-30-6/+5
| | |
* | | Add support for reading and writing mac addresses to or from ID EEPROM.Haiying Wang2006-07-13-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added code for reading and writing Mac addresses to/from ID EEPROM(0x57). With attached patch, we can use command "mac/mac read/mac save/" to read and write EEPROM under u-boot prompt. U-boot will calculate the checksum of EEPROM while bootup, if it is right, then u-boot will check whether the mac address of eTSEC0/1/2/3 is availalbe (non-zero). If there is mac address availabe in EEPROM, u-boot will use it, otherewise, u-boot will use the mac address defined in MPC8641HPCN.h. This matches the requirement to set unique mac address for each TSEC port. Signed-off-by: Haiying Wang <haiying.wang@freescale.com> Signed-off-by: York Sun <yorksun@freescale.com>