summaryrefslogtreecommitdiff
path: root/arch/blackfin/include
Commit message (Collapse)AuthorAgeLines
* bfin: Move gpio support for bf54x and bf60x into the generic driver folder.Sonic Zhang2013-05-13-57/+10
| | | | | | | | | | | | | | | The gpio spec for bf54x and bf60x differ a lot from the old gpio driver for bf5xx. A lot of machine macros are used to accomodate both code in one gpio driver. This patch split the old gpio driver and move new gpio2 support to the generic gpio driver folder. - To enable gpio2 driver, macro CONFIG_ADI_GPIO2 should be defined in the board's config header file. - The gpio2 driver supports bf54x, bf60x and future ADI processors, while the older gpio driver supports bf50x, bf51x, bf52x, bf53x and bf561. - All blackfin specific gpio function names are replaced by the generic gpio APIs. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
* blackfin: Move blackfin serial driver out of blackfin arch folder.Sonic Zhang2013-05-13-0/+623
| | | | | | | | - Move blackfin serial driver to the generic driver folder. - Move blackfin serial headers to blackfin arch head folder. - Update the include path to blackfin serial header in start up code. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
* bf609: add SPI register base addressScott Jiang2013-05-13-0/+3
| | | | | | | - BF609 spi driver depend on this. Signed-off-by: Scott Jiang <scott.jiang.linux@gmail.com> Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
* blackfin: bf609: add softswitch config commandBob Liu2013-05-13-0/+18
| | | | | | | Add softswitch_output command for bf609-ezkit to enable softswitches. Signed-off-by: Bob Liu <lliubbo@gmail.com> Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
* blackfin: Correct early serial mess output in BYPASS boot mode.Sonic Zhang2013-05-13-1/+5
| | | | | | | | | | | | The early serial should not be configured again in initcode() for BYPASS boot mode and in start() for the other LDR boot modes. In BYPASS boot mode, the start up code is located in Nor flash address other than the DRAM address defined in link script. The code embedded string can't be addressed by its compile time symbol. Calculate it according to the flash offset. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
* blackfin: Set correct early debug serial baudrate.Sonic Zhang2013-05-13-0/+74
| | | | | | | | | | Calculate the early uart clock from the system clock registers set by the bootrom other than the predefine uboot clock macros. Split the early baudrate setting function and the normal baudrate setting one. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
* blackfin: run core1 from L1 code sram start address in uboot init code on core 0Sonic Zhang2013-05-13-0/+4
| | | | | | | | Define core 1 L1 code sram start address. Add function to enable core 1 for BF609 and BF561. Add config macro to allow customer to run core 1 in uboot init code on core 0. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
* blackfin: Change the member's type in dma structures.Sonic Zhang2013-05-13-12/+12
| | | | Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
* Consolidate bool typeYork Sun2013-04-01-3/+0
| | | | | | | | | | | | | 'bool' is defined in random places. This patch consolidates them into a single header file include/linux/types.h, using stdbool.h introduced in C99. All other #define, typedef and enum are removed. They are all consistent with true = 1, false = 0. Replace FALSE, False with false. Replace TRUE, True with true. Skip *.py, *.php, lib/* files. Signed-off-by: York Sun <yorksun@freescale.com>
* blackfin: Fix up board_type global dataSimon Glass2013-03-15-0/+1
| | | | | | This should be in arch_global_data but was dropped in the change-over. Signed-off-by: Simon Glass <sjg@chromium.org>
* Introduce generic link section.h symbol filesSimon Glass2013-03-15-0/+27
| | | | | | | | | | | | | | | | | | We create a separate header file for link symbols defined by the link scripts. It is helpful to have these all in one place and try to make them common across architectures. Since Linux already has a similar file, we bring this in even though many of the symbols there are not relevant to us. Each architecture has its own asm/sections.h where symbols specifc to that architecture can be added. For now everything except AVR32 just includes the generic header. One change is needed in arch/avr32/lib/board.c to make this conversion work. Reviewed-by: Tom Rini <trini@ti.com> (version 5) Signed-off-by: Simon Glass <sjg@chromium.org>
* blackfin: add bf6xx spi driverScott Jiang2013-03-04-0/+240
| | | | | | | | | | Spi driver for bf60x is different from old one, so implement a new driver for it. Signed-off-by: Scott Jiang <scott.jiang.linux@gmail.com> Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Bob Liu <lliubbo@gmail.com> Signed-off-by: Sonic Zhang <sonic.adi@gmail.com>
* blackfin: bf60x: add rsi/sdh supportSonic Zhang2013-03-04-2/+36
| | | | | | | | Add rsi/sdh support for bf60x. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Bob Liu <lliubbo@gmail.com> Signed-off-by: Sonic Zhang <sonic.adi@gmail.com>
* blackfin: bf60x: add gpio supportBob Liu2013-03-04-1/+152
| | | | | | Signed-off-by: Bob Liu <lliubbo@gmail.com> Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Sonic Zhang <sonic.adi@gmail.com>
* blackfin: bf60x: support big cplb pageBob Liu2013-03-04-4/+27
| | | | | | | | | BF60x support 16K, 64K, 16M and 64M cplb pages, this patch add support for them. So that bf609-ezkit can use it's 128M memory. Signed-off-by: Bob Liu <lliubbo@gmail.com> Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Sonic Zhang <sonic.adi@gmail.com>
* blackfin: bf60x: add dma supportBob Liu2013-03-04-31/+104
| | | | | | | | Add dma support for bf60x. Signed-off-by: Bob Liu <lliubbo@gmail.com> Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Sonic Zhang <sonic.adi@gmail.com>
* blackfin: bf60x: add serial supportSonic Zhang2013-03-04-0/+68
| | | | | | | | Add serial for bf60x. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Bob Liu <lliubbo@gmail.com> Signed-off-by: Sonic Zhang <sonic.adi@gmail.com>
* blackfin: bf60x: Port blackfin core architecture code to boot on bf60x.Sonic Zhang2013-03-04-0/+4
| | | | | | | | | Set up clocks, DDR controller, Nor flash controller, reboot, serial port. Add new SPI boot modes. Signed-off-by: Bob Liu <lliubbo@gmail.com> Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Sonic Zhang <sonic.adi@gmail.com>
* blackfin: bf60x: new processor header filesBob Liu2013-03-04-1/+1090
| | | | | | | | Add header files for blackfin new processor bf60x. Signed-off-by: Bob Liu <lliubbo@gmail.com> Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Sonic Zhang <sonic.adi@gmail.com>
* blackfin: Use generic global_dataSimon Glass2013-02-04-31/+1
| | | | | | Move blackfin over to use generic global_data. Signed-off-by: Simon Glass <sjg@chromium.org>
* Add architecture-specific global dataSimon Glass2013-02-01-0/+5
| | | | | | | | | | | | | We plan to move architecture-specific data into a separate structure so that we can make the rest of it common. As a first step, create struct arch_global_data to hold these fields. Initially it is empty. This patch applies to all archs at once. I can split it if this is really a pain. Signed-off-by: Simon Glass <sjg@chromium.org>
* blackfin: Change global data baudrate to intSimon Glass2012-10-19-2/+2
| | | | | | | | | This doesn't need to be a long, so change it. Also adjust bi_baudrate to be unsigned. Signed-off-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Rini <trini@ti.com>
* COMMON: Use __stringify() instead of MK_STR()Marek Vasut2012-10-15-2/+0
| | | | | | | | | Kill multiple occurances and redeclaration of MK_STR in favor of __stringify(). Signed-off-by: Marek Vasut <marex@denx.de> Cc: Wolfgang Denk <wd@denx.de> Signed-off-by: Tom Rini <trini@ti.com>
* global_data: unify global flag definesMike Frysinger2012-08-09-13/+1
| | | | | | | All the global flag defines are the same across all arches. So unify them in one place, and add a simple way for arches to extend for their needs. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Blackfin: easylogo: add lzma logosMike Frysinger2012-02-03-0/+2898
| | | | | | | | | | The bf527-ezkit boards are getting too big to fit into their reserved flash space, so we need to use a lzma compressed logo. Since the video driver code is very similar, add lzma compressed support to all of the Blackfin video drivers. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* CONFIG_SYS_BAUDRATE_TABLE: Add <config_fallbacks.h>, place thereTom Rini2012-06-20-3/+0
| | | | | | | | | We provide a default table of { 9600, 19200, 38400, 57600, 115200 } in <config_fallbacks.h> which mkconfig places after <configs/...h> in the generated config file. This is used when a board has not set its own table. Signed-off-by: Tom Rini <trini@ti.com>
* net: punt bd->bi_ip_addrMike Frysinger2012-05-15-1/+0
| | | | | | | | | This field gets read in one place (by "bdinfo"), and we can replace that with getenv("ipaddr"). After all, the bi_ip_addr field is kept up-to-date implicitly with the value of the ipaddr env var. Signed-off-by: Mike Frysinger <vapier@gentoo.org> Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
* Blackfin: move gd/bd to bss by defaultMike Frysinger2012-04-22-7/+1
| | | | | | | | We don't need these setup manually, so let the bss do the rest. On Blackfin systems, we clear the bss before executing any C code that would use these, so this should be fine. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Blackfin: gd_t: relocate volatile markingsMike Frysinger2012-04-22-1/+1
| | | | | | | | | 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>
* linkage.h: move from blackfin to common includesMacpaul Lin2012-02-12-50/+4
| | | | | | | | | | | 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>
* Blackfin: add in/out le32 variantsMike Frysinger2012-02-12-0/+2
| | | | | | | 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>
* Blackfin: define CONFIG_SYS_CACHELINE_SIZEMike Frysinger2011-10-16-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: post: generalize led/button tests with GPIOsMike Frysinger2011-09-29-0/+18
| | | | | | Make it easy for any Blackfin board to enable led/push button tests. 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: 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/+2
| | | | | | | | | 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>
* gpio: generalize for all generic gpio providersMike Frysinger2011-04-13-0/+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>
* 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: 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-0/+3156
| | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Blackfin: fix bd_t handlingMike Frysinger2011-04-08-1/+4
| | | | | | | | | 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: move CONFIG_BFIN_CPU back to board config.hMike Frysinger2011-04-08-0/+5
| | | | | | This is a revert of 821ad16fa9900c as Wolfgang doesn't like the new code. Signed-off-by: Mike Frysinger <vapier@gentoo.org>