summaryrefslogtreecommitdiff
path: root/arch/blackfin
Commit message (Collapse)AuthorAgeLines
* Blackfin: define CONFIG_SYS_CACHELINE_SIZEMike Frysinger2011-10-17-0/+74
| | | | | | | | Common U-Boot API wants this define, so import asm/cache.h from Linux to provide suitable defines. Acked-by: Anton Staaf <robotboy@chromium.org> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* image: push default arch values to arch headersMike Frysinger2011-10-05-0/+3
| | | | | | | | | This pushes the ugly duplicated arch ifdef lists we maintain in various image related files out to the arch headers themselves. Acked-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org> Tested-by: Thomas Chou <thomas@wytron.com.tw> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* POST: add post_log_res field for post results in global dataValentin Longchamp2011-10-05-0/+1
| | | | | | | | | | | | | | | | The current post_log_word in global data is currently split into 2x 16 bits: half for the test start, half for the test success. Since we alredy have more than 16 POST tests defined and more could be defined, this may result in an overflow and the post_output_backlog would not work for the tests defined further of these 16 positions. An additional field is added to global data so that we can now support up to 32 (depending of architecture) tests. The post_log_word is only used to record the start of the test and the new field post_log_res for the test success (or failure). The post_output_backlog is for this change also adapted. Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
* console: Implement pre-console bufferGraeme Russ2011-10-05-0/+3
| | | | | | | | | | | | | Allow redirection of console output prior to console initialisation to a temporary buffer. To enable this functionality, the board (or arch) must define: - CONFIG_PRE_CONSOLE_BUFFER - Enable pre-console buffer - CONFIG_PRE_CON_BUF_ADDR - Base address of pre-console buffer - CONFIG_PRE_CON_BUF_SZ - Size of pre-console buffer (in bytes) The pre-console buffer will buffer the last CONFIG_PRE_CON_BUF_SZ bytes Any earlier characters are silently dropped.
* Blackfin: uart: implement loop callback for postMike Frysinger2011-09-29-0/+40
| | | | | | This allows the Blackfin UART driver to be tested via post. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Blackfin: post: generalize led/button tests with GPIOsMike Frysinger2011-09-29-0/+104
| | | | | | Make it easy for any Blackfin board to enable led/push button tests. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Blackfin: post: drop custom test listMike Frysinger2011-09-29-251/+0
| | | | | | | The few tests that are Blackfin-specific have been migrated to common code or been rewritten with the existing "bsp-specific" defines. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Merge branch 'master' of git://git.denx.de/u-boot-blackfinWolfgang Denk2011-08-02-409/+758
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'master' of git://git.denx.de/u-boot-blackfin: Blackfin: jtag-console: fix timer usage Blackfin: switch to common display_options() Blackfin: serial: move early debug strings into .rodata section Blackfin: adi boards: also set stderr to nc with helper Blackfin: update anomaly lists to latest public info Blackfin: serial: convert to bfin_{read,write} helpers Blackfin: split out async setup Blackfin: adi boards: enable pretty flash progress output Blackfin: drop unused dma.h header from start code Blackfin: portmux: allow header to be included in assembly files Blackfin: cm-bf537e/cm-bf537u/tcm-bf537: enable mmc_spi support Blackfin: cm-bf537e/cm-bf537u/tcm-bf537: update network settings Blackfin: sync MMR read/write helpers with Linux Blackfin: gpio: optimize free path a little Blackfin: post: setup default CONFIG_SYS_POST_WORD_ADDR Blackfin: uart: fix printf warning Blackfin: add init.elf helper code Blackfin: dont reset SWRST on newer bf526 parts Blackfin: adi boards: enable multi serial support by default Blackfin: uart: add multiple serial support Blackfin: uart: move debug buffers into local bss
| * Blackfin: jtag-console: fix timer usageMike Frysinger2011-07-12-2/+2
| | | | | | | | | | Reported-by: Graeme Russ <graeme.russ@gmail.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: switch to common display_options()Mike Frysinger2011-07-12-1/+1
| | | | | | | | | | | | | | Use common code to output the version string rather than doing it ourselves. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: serial: move early debug strings into .rodata sectionMike Frysinger2011-07-12-5/+5
| | | | | | | | | | | | | | | | | | | | Rewrite the assembly serial_early_puts() helper to place the strings in the .rodata section rather than embedding them directly in the .text section. Using .text is a little simpler, but it doesn't let people execute out of internal L1 sram (since core reads don't work on those regions). Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: update anomaly lists to latest public infoMike Frysinger2011-07-12-221/+335
| | | | | | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: serial: convert to bfin_{read,write} helpersMike Frysinger2011-07-12-17/+19
| | | | | | | | | | | | | | | | Since the serial struct declares the sizes for us, no need to hardcode them in the accessor functions. Let the bfin_{read,write} helpers do it for us. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: split out async setupMike Frysinger2011-07-12-50/+84
| | | | | | | | | | | | | | | | | | | | | | We really only need to tweak the async banks in the initcode if the processor is booting out of it, otherwise we can wait until later on in the CPU booting setup. This also makes testing in the sim and early bring up over JTAG work much smoother when the initcode gets bypassed. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: drop unused dma.h header from start codeMike Frysinger2011-07-12-1/+0
| | | | | | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: portmux: allow header to be included in assembly filesMike Frysinger2011-07-12-0/+4
| | | | | | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: sync MMR read/write helpers with LinuxMike Frysinger2011-07-12-46/+42
| | | | | | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: gpio: optimize free path a littleMike Frysinger2011-07-12-1/+4
| | | | | | | | | | | | | | | | | | When we aren't doing resource tracking, the gpio_free() function is a stub that simply returns, so pull this logic up a level and make it an inline stub in the header. Now we don't have to waste time at any of the call sites. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: post: setup default CONFIG_SYS_POST_WORD_ADDRMike Frysinger2011-07-12-0/+3
| | | | | | | | | | | | | | Set the default post word location to an L1 data location for all Blackfin parts so things "just work" for most people. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: uart: fix printf warningMike Frysinger2011-07-12-1/+1
| | | | | | | | | | | | | | The code uses %i to printf a size_t when it should use %zu, otherwise we get a warning from gcc about it. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: add init.elf helper codeMike Frysinger2011-07-12-1/+43
| | | | | | | | | | | | | | | | | | This creates a standalone ELF that executes just the Blackfin initcode. This is useful for people who want to program the low level aspects of the CPU (memory/clocks/etc...) and can easily be used with JTAG for quick booting while developing. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: dont reset SWRST on newer bf526 partsMike Frysinger2011-07-12-1/+3
| | | | | | | | | | | | | | The bug in the BF526 rom when doing a software reset exists only in older silicon versions, so don't clear SWRST on newer parts. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: uart: add multiple serial supportMike Frysinger2011-07-12-55/+210
| | | | | | | | | | | | | | This brings CONFIG_SERIAL_MULTI support to the Blackfin on-chip UARTs. Ends up adding only ~512bytes per additional UART. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: uart: move debug buffers into local bssMike Frysinger2011-07-12-8/+3
| | | | | | | | | | | | | | There's no need for these saved buffers to be global symbols, or in the data section. So mark them static to move them into the bss. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | unify version_stringAndreas Bießmann2011-07-28-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | This patch removes the architecture specific implementation of version_string where possible. Some architectures use a special place and therefore we provide U_BOOT_VERSION_STRING definition and a common weak symbol version_string. Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com> CC: Mike Frysinger <vapier@gentoo.org> CC: Peter Pan <pppeterpppan@gmail.com> Acked-by: Mike Frysinger <vapier@gentoo.org>
* | Timer: Remove reset_timer() for non-Nios2 archesGraeme Russ2011-07-26-5/+0
| |
* | Use ALL-y style instead of ifeq blocks for better readabilityDaniel Schwierzeck2011-07-26-1/+1
|/ | | | Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@googlemail.com>
* Blackfin: use on-chip reset func with newer partsMike Frysinger2011-06-03-36/+34
| | | | | | | | Turns out the documentation is wrong and doing "RAISE 1" does not result in a software reset, only a core reset. So when the on-chip rom has a functioning reset helper, use it. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Blackfin: use common LDSCRIPT logicMike Frysinger2011-06-03-4/+0
| | | | | | | | Now that common code is a bit smarter when it comes to default LDSCRIPT values, rename the default Blackfin file and drop the Blackfin-specific config.mk logic. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* gpio: generalize for all generic gpio providersMike Frysinger2011-04-13-119/+53
| | | | | | | | | | | | The Blackfin gpio command isn't terribly Blackfin-specific. So generalize the few pieces into two new optional helpers: name_to_gpio() - turn a string name into a GPIO # gpio_status() - display current pin bindings (think /proc/gpio) Once these pieces are pulled out, we can relocate the cmd_gpio.c into the common directory. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Make STANDALONE_LOAD_ADDR configurable per boardWolfgang Denk2011-04-12-1/+1
| | | | | | | | | | | | | Rename STANDALONE_LOAD_ADDR into CONFIG_STANDALONE_LOAD_ADDR and allow that the architecture-specific default value gets overwritten by defining the value in the board header file. Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Mike Frysinger <vapier@gentoo.org> Cc: Shinya Kuribayashi <skuribay@ruby.dti.ne.jp> Cc: Daniel Hellstrom <daniel@gaisler.com> Cc: Tsi Chung Liew <tsi-chung.liew@freescale.com> Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
* Blackfin: replace "bfin_reset_or_hang()" with "panic()"Kyle Moffett2011-04-08-19/+2
| | | | | | | | | | | The bfin_reset_or_hang function unnecessarily duplicates the panic() logic based on CONFIG_PANIC_HANG. This patch deletes 20 lines of code and just calls panic() instead. This also makes the following generic-restart conversion patch simpler. Signed-off-by: Kyle Moffett <Kyle.D.Moffett@boeing.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Blackfin: bootrom.h: sync with toolchainMike Frysinger2011-04-08-27/+59
| | | | | | We need the updated LDR bit defines for our LDR utils. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Blackfin: default to L1 bank A when L1 bank B does not existMike Frysinger2011-04-08-3/+7
| | | | | | | Some parts lack Bank B in L1 data, so have the linker script fall back to Bank A when that happens. This way we can still leverage L1 data. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Blackfin: turn off caches when self initializingMike Frysinger2011-04-08-12/+33
| | | | | | | | | | | | | | When bootstrapping ourselves on the fly at runtime (via "go"), we need to turn off the caches to avoid taking software exceptions. Since caches need CPLBs and CPLBs need exception handlers, but we're about to rewrite the code in memory where those exception handlers live, we need to turn off caches first. This new code also encourages a slight code optimization by storing the MMR bases in dedicated registers so we don't have to fully load up the pointer regs multiple times. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Blackfin: only check for os log when we have external memoryMike Frysinger2011-04-08-1/+1
| | | | | | | | If the part has no external memory configured, then there will be no os log for us to check, and any attempt to access that memory will trigger hardware errors. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Blackfin: BF537: unify duplicated headersMike Frysinger2011-04-08-2446/+2419
| | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Blackfin: BF52x: unify duplicated headersMike Frysinger2011-04-08-2068/+1481
| | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Blackfin: drop duplicate system mmr and L1 scratch definesMike Frysinger2011-04-08-42/+1
| | | | | | | Common code already takes care of setting up these defines when a port hasn't specified them, so punt the duplicate values. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Blackfin: BF50x: new processor portMike Frysinger2011-04-08-17/+3193
| | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Blackfin: fix bd_t handlingMike Frysinger2011-04-08-9/+6
| | | | | | | | | The recent global data changes (making the size autogenerated) broke the board info handling on Blackfin ports as we were lying and lumping the bd_t size in with the gd_t size. So use the new dedicated bd_t size to setup its own address in memory. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Blackfin: bf537: fix L1 data definesMike Frysinger2011-04-08-1/+1
| | | | | | | The __BFIN_DEF_ADSP_BF537_proc__ define isn't setup anymore, so use the one coming from the compiler. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Blackfin: serial: clean up muxing a bitMike Frysinger2011-04-08-31/+20
| | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Blackfin: move CONFIG_BFIN_CPU back to board config.hMike Frysinger2011-04-08-2/+13
| | | | | | This is a revert of 821ad16fa9900c as Wolfgang doesn't like the new code. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Blackfin: unify bootmode based LDR_FLAGS setupMike Frysinger2011-04-08-0/+3
| | | | | | Unify this convention for all Blackfin boards. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Blackfin: drop CONFIG_SYS_TEXT_BASE from boardsMike Frysinger2011-04-08-0/+4
| | | | | | | We don't want/use this value for Blackfin boards, so punt it and have the common code error out when people try to use it. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Blackfin: skip RAM display for 0 mem systemsMike Frysinger2011-04-08-2/+5
| | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Introduce a new linker flag LDFLAGS_FINALHaiying Wang2011-03-22-1/+1
| | | | | | | | | | | | | | | commit 8aba9dceebb14144e07d19593111ee3a999c37fc Divides variable of linker flags to LDFLAGS-u-boot and LDFLAGS breaks the usage of --gc-section to build nand_spl. We still need linker option --gc-section for every uboot image, not only the main one. LDFLAGS_FINAL passes the --gc-sections to each uboot image. To get the proper linker flags, we use LDFLAGS and LDFLAGS_FINAL to replace PLATFORM_LDFLAGS in the Makefile of each nand_spl board. Signed-off-by: Scott Wood <scottwood@freescale.com> Signed-off-by: Haiying Wang <Haiying.Wang@freescale.com>
* Divides variable of linker flags to LDFLAGS-u-boot and LDFLAGSNobuhiro Iwamatsu2011-01-25-1/+2
| | | | | | | | | | Linker needs to use the proper endian/bfd flags even when doing partial linking. LDFLAGS_u-boot sets linker option which is called it when U-boot is built (u-boot final). LDFLAGS sets necessary option by partial linking (use in cmd_link_o_target). CC: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
* Move DECLARE_GLOBAL_DATA_PTR to file scopeJohn Rigby2010-12-21-1/+2
| | | | | | | | | | | | | | | It can be optimised out by the compiler otherwise resulting in obscure errors like a board not booting. This has been documented in README since 2006 when these were first fixed up for GCC 4.x. Signed-off-by: John Rigby <john.rigby@linaro.org> Fix some additional places. Signed-off-by: Wolfgang Denk <wd@denx.de> Acked-By: Albert ARIBAUD <albert.aribaud@free.fr>