summaryrefslogtreecommitdiff
path: root/arch/blackfin
AgeCommit message (Collapse)Author
2012-04-22Blackfin: gd_t: relocate volatile markingsMike Frysinger
This makes Blackfin behave the same as other ports, and fixes many gcc warnings that show up with 4.5+: board.c:40:1: warning: optimization may eliminate reads and/or writes to register variables Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-02-12linkage.h: move from blackfin to common includesMacpaul Lin
1. Add linkage.h support from blackfin to common include, which is a reduced version from Linux. 2. Add architecture part support of linkage.h into blackfin 3. Fix include path of in blackfin related to linkage.h due to header file movement. Signed-off-by: Macpaul Lin <macpaul@andestech.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-02-12Blackfin: add in/out le32 variantsMike Frysinger
These are rarely used, but the post code does currently, so add small redirect hacks for that. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-11-19Blackfin: cache result of cpp checkMike Frysinger
Avoid overhead of computing this value multiple times. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-11-19Blackfin: traps: fix up printf warnings from debugMike Frysinger
Cast uint32_t to void* for %p, and use %zu for size_t. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-11-19Blackfin: drop now unused local variableMike Frysinger
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-10-23blackfin: Use getenv_ulong() in place of getenv(), strtoulSimon Glass
This changes the board code to use the new getenv_ulong() function. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Mike Frysinger <vapier@gentoo.org>
2011-10-16Blackfin: define CONFIG_SYS_CACHELINE_SIZEMike Frysinger
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>
2011-10-05image: push default arch values to arch headersMike Frysinger
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>
2011-10-05POST: add post_log_res field for post results in global dataValentin Longchamp
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>
2011-10-05console: Implement pre-console bufferGraeme Russ
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.
2011-09-29Blackfin: uart: implement loop callback for postMike Frysinger
This allows the Blackfin UART driver to be tested via post. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-09-29Blackfin: post: generalize led/button tests with GPIOsMike Frysinger
Make it easy for any Blackfin board to enable led/push button tests. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-09-29Blackfin: post: drop custom test listMike Frysinger
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>
2011-08-02Merge branch 'master' of git://git.denx.de/u-boot-blackfinWolfgang Denk
* '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
2011-07-28unify version_stringAndreas Bießmann
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>
2011-07-26Timer: Remove reset_timer() for non-Nios2 archesGraeme Russ
2011-07-26Use ALL-y style instead of ifeq blocks for better readabilityDaniel Schwierzeck
Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@googlemail.com>
2011-07-12Blackfin: jtag-console: fix timer usageMike Frysinger
Reported-by: Graeme Russ <graeme.russ@gmail.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-07-12Blackfin: switch to common display_options()Mike Frysinger
Use common code to output the version string rather than doing it ourselves. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-07-12Blackfin: serial: move early debug strings into .rodata sectionMike Frysinger
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>
2011-07-12Blackfin: update anomaly lists to latest public infoMike Frysinger
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-07-12Blackfin: serial: convert to bfin_{read,write} helpersMike Frysinger
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>
2011-07-12Blackfin: split out async setupMike Frysinger
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>
2011-07-12Blackfin: drop unused dma.h header from start codeMike Frysinger
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-07-12Blackfin: portmux: allow header to be included in assembly filesMike Frysinger
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-07-12Blackfin: sync MMR read/write helpers with LinuxMike Frysinger
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-07-12Blackfin: gpio: optimize free path a littleMike Frysinger
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>
2011-07-12Blackfin: post: setup default CONFIG_SYS_POST_WORD_ADDRMike Frysinger
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>
2011-07-12Blackfin: uart: fix printf warningMike Frysinger
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>
2011-07-12Blackfin: add init.elf helper codeMike Frysinger
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>
2011-07-12Blackfin: dont reset SWRST on newer bf526 partsMike Frysinger
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>
2011-07-12Blackfin: uart: add multiple serial supportMike Frysinger
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>
2011-07-12Blackfin: uart: move debug buffers into local bssMike Frysinger
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>
2011-06-03Blackfin: use on-chip reset func with newer partsMike Frysinger
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>
2011-06-03Blackfin: use common LDSCRIPT logicMike Frysinger
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>
2011-04-13gpio: generalize for all generic gpio providersMike Frysinger
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>
2011-04-12Make STANDALONE_LOAD_ADDR configurable per boardWolfgang Denk
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>
2011-04-08Blackfin: replace "bfin_reset_or_hang()" with "panic()"Kyle Moffett
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>
2011-04-08Blackfin: bootrom.h: sync with toolchainMike Frysinger
We need the updated LDR bit defines for our LDR utils. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-04-08Blackfin: default to L1 bank A when L1 bank B does not existMike Frysinger
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>
2011-04-08Blackfin: turn off caches when self initializingMike Frysinger
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>
2011-04-08Blackfin: only check for os log when we have external memoryMike Frysinger
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>
2011-04-08Blackfin: BF537: unify duplicated headersMike Frysinger
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-04-08Blackfin: BF52x: unify duplicated headersMike Frysinger
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-04-08Blackfin: drop duplicate system mmr and L1 scratch definesMike Frysinger
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>
2011-04-08Blackfin: BF50x: new processor portMike Frysinger
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-04-08Blackfin: fix bd_t handlingMike Frysinger
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>
2011-04-08Blackfin: bf537: fix L1 data definesMike Frysinger
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>
2011-04-08Blackfin: serial: clean up muxing a bitMike Frysinger
Signed-off-by: Mike Frysinger <vapier@gentoo.org>