aboutsummaryrefslogtreecommitdiffstats
path: root/arch/blackfin
Commit message (Collapse)AuthorAgeFilesLines
...
| * Blackfin: add preliminary support for STACKTRACEMike Frysinger2009-06-133-0/+57
| | | | | | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: move custom sections into sections.hMike Frysinger2009-06-132-10/+12
| | | | | | | | | | | | | | The Blackfin arch has a bunch of custom section markings for its on-chip regions, but they aren't declared in the right header. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: punt unused/wrong mutex-dec.hMike Frysinger2009-06-131-112/+0
| | | | | | | | | | | | | | Looks like the mutex-dec.h header file was incorrectly copied into the Blackfin asm path. Nothing uses it, so punt it. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: add support for irqflagsMike Frysinger2009-06-134-264/+77
| | | | | | | | | | | | | | | | This converts the irq handling in the Blackfin arch from the old irq.h / system.h method to the new irqflags.h. A stepping stone on the way to other tracing functionality. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: add support for bzip2/lzma compressed kernel imagesMike Frysinger2009-06-134-10/+34
| | | | | | | | | | | | | | Since U-Boot can support these compression types, add appropriate targets to the Blackfin boot files. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: convert Kconfig style to def_boolMike Frysinger2009-06-131-24/+12
| | | | | | | | | | | | Makes the file easier to read when there isn't so much clutter. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: bf548-ezkit: update smsc911x resourcesMike Frysinger2009-06-131-0/+13
| | | | | | | | | | | | | | The older smsc911x driver made platform data optional, but the newer one always requires it, so add proper settings to the BF548-EZKIT. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: update aedos-ipipe code to upstream 1.10-00Yi Li2009-06-132-33/+37
| | | | | | | | | | Signed-off-by: Yi Li <yi.li@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: bf537-stamp: update ADP5520 resourcesMike Frysinger2009-06-131-1/+1
| | | | | | | | | | | | | | The ADP5520 hooks up to PF7 rather than PG0. Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: bf518f-ezbrd: fix SPI CS for SPI flashGraf Yang2009-06-131-1/+1
| | | | | | | | | | | | | | | | | | The SPI flash on the BF518F-EZBRD board is actually hooked up to CS2, not CS1, so make sure the resources are correct. URL: http://blackfin.uclinux.org/gf/tracker/5220 Signed-off-by: Graf Yang <graf.yang@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: define SPI IRQ in board resourcesYi Li2009-06-1318-3/+113
| | | | | | | | | | | | | | | | The Blackfin SPI driver can be driven by an IRQ now, so declare it in the board resources. Signed-off-by: Yi Li <yi.li@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: do not configure the UART early if on wrong processorRobin Getz2009-06-131-2/+6
| | | | | | | | | | | | | | | | | | Before we configure the early UART, check to make sure we are running on the expected processor - otherwise, we cause problems by configuring pins that don't exist (and causing an infinite loop of faults). Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: fix deadlock in SMP IPI handlerSonic Zhang2009-06-131-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | When a low priority interrupt (like ethernet) is triggered between 2 high priority IPI messages, a deadlock in disable_irq() is hit by the second IPI handler. This is because the second IPI message is queued within the first IPI handler, but the handler doesn't process all messages, and new ones are inserted rather than appended. So now we process all the pending messages, and append new ones to the pending list. URL: http://blackfin.uclinux.org/gf/tracker/5226 Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: fix flag storage for irq funcsMike Frysinger2009-06-132-9/+10
| | | | | | | | | | | | | | The IRQ functions take an "unsigned long" flags variable, not any other type, so fix the places where we use "int" or "long". Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: push down exception oops checkingMike Frysinger2009-06-131-45/+43
| | | | | | | | | | | | | | | | | | Rather than maintain a duplicate list of valid exceptions we can take in the kernel both in the first if() check and the switch() check, delay the oops check to after the switch(). All valid exceptions will have returned by this point leaving only the invalid ones. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: fix trap_c() exit pathsMike Frysinger2009-06-131-5/+5
| | | | | | | | | | | | | | | | The trap_c() code pushes the hardware trace status onto the stack, but doesn't always restore it when returning from some trap code paths. So unify the exit code paths to all head to the end of the function. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: add blackfin_invalidate_entire_icache for SMP systemsSonic Zhang2009-06-136-4/+37
| | | | | | | | | | | | | | | | The KGDB code uses this when switching processors to make sure the icache is in a valid state. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: include the cpu compiled version in /proc/cpuinfoRobin Getz2009-06-131-2/+11
| | | | | | | | | | | | | | | | Since the compiled-for cpu revision can be significant, include it in the cpuinfo output along side the cpu revision we're currently running on. Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: add support for GENERIC_BUGMike Frysinger2009-06-134-8/+99
| | | | | | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: rename bfin_addr_dcachable to bfin_addr_dcacheableJie Zhang2009-06-133-4/+4
| | | | | | | | | | | | | | The latter naming convention is much more common. Signed-off-by: Jie Zhang <jie.zhang@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: export ip_compute_csum/csum_partial_copy_from_user symbolsMike Frysinger2009-06-131-0/+2
| | | | | | | | | | | | | | All other arches do this, and some places like the net/scsi code will fail as modules without them. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: only handle CPLB protection violations when MPU is enabledRobin Getz2009-06-132-55/+10
| | | | | | | | | | | | | | | | | | | | | | We don't need to handle CPLB protection violations unless we are running with the MPU on. Fix the entry code to call common trap_c, and remove the code which is never run. This allows the traps test suite to run on older boards with the MPU disabled. URL: http://blackfin.uclinux.org/gf/tracker/5129 Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | Merge branch 'for-linus' of ↵Linus Torvalds2009-06-141-1/+1
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (31 commits) trivial: remove the trivial patch monkey's name from SubmittingPatches trivial: Fix a typo in comment of addrconf_dad_start() trivial: usb: fix missing space typo in doc trivial: pci hotplug: adding __init/__exit macros to sgi_hotplug trivial: Remove the hyphen from git commands trivial: fix ETIMEOUT -> ETIMEDOUT typos trivial: Kconfig: .ko is normally not included in module names trivial: SubmittingPatches: fix typo trivial: Documentation/dell_rbu.txt: fix typos trivial: Fix Pavel's address in MAINTAINERS trivial: ftrace:fix description of trace directory trivial: unnecessary (void*) cast removal in sound/oss/msnd.c trivial: input/misc: Fix typo in Kconfig trivial: fix grammo in bus_for_each_dev() kerneldoc trivial: rbtree.txt: fix rb_entry() parameters in sample code trivial: spelling fix in ppc code comments trivial: fix typo in bio_alloc kernel doc trivial: Documentation/rbtree.txt: cleanup kerneldoc of rbtree.txt trivial: Miscellaneous documentation typo fixes trivial: fix typo milisecond/millisecond for documentation and source comments. ...
| * trivial: Kconfig: .ko is normally not included in module namesPavel Machek2009-06-121-1/+1
| | | | | | | | | | | | | | .ko is normally not included in Kconfig help, make it consistent. Signed-off-by: Pavel Machek <pavel@ucw.cz> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* | Merge branch 'for-linus' of ↵Linus Torvalds2009-06-124-3/+4
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic: add generic lib/checksum.c asm-generic: add a generic uaccess.h asm-generic: add generic NOMMU versions of some headers asm-generic: add generic atomic.h and io.h asm-generic: add legacy I/O header files asm-generic: add generic versions of common headers asm-generic: make bitops.h usable asm-generic: make pci.h usable directly asm-generic: make get_rtc_time overridable asm-generic: rename page.h and uaccess.h asm-generic: rename atomic.h to atomic-long.h asm-generic: add a generic unistd.h asm-generic: add generic ABI headers asm-generic: add generic sysv ipc headers asm-generic: introduce asm/bitsperlong.h asm-generic: rename termios.h, signal.h and mman.h
| * | asm-generic: rename page.h and uaccess.hArnd Bergmann2009-06-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current asm-generic/page.h only contains the get_order function, and asm-generic/uaccess.h only implements unaligned accesses. This renames the file to getorder.h and uaccess-unaligned.h to make room for new page.h and uaccess.h file that will be usable by all simple (e.g. nommu) architectures. Signed-off-by: Remis Lima Baima <remis.developer@googlemail.com> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
| * | asm-generic: rename atomic.h to atomic-long.hArnd Bergmann2009-06-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The existing asm-generic/atomic.h only defines the atomic_long type. This renames it to atomic-long.h so we have a place to add a truly generic atomic.h that can be used on all non-SMP systems. Signed-off-by: Remis Lima Baima <remis.developer@googlemail.com> Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Ingo Molnar <mingo@elte.hu>
| * | asm-generic: introduce asm/bitsperlong.hArnd Bergmann2009-06-111-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This provides a reliable way for asm-generic/types.h and other files to find out if it is running on a 32 or 64 bit platform. We cannot use CONFIG_64BIT for this in headers that are included from user space because CONFIG symbols are not available there. We also cannot do it inside of asm/types.h because some headers need the word size but cannot include types.h. The solution is to introduce a new header <asm/bitsperlong.h> that defines both __BITS_PER_LONG for user space and BITS_PER_LONG for usage in the kernel. The asm-generic version falls back to 32 bit unless the architecture overrides it, which I did for all 64 bit platforms. Signed-off-by: Remis Lima Baima <remis.developer@googlemail.com> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
| * | asm-generic: rename termios.h, signal.h and mman.hArnd Bergmann2009-06-111-1/+1
| |/ | | | | | | | | | | | | | | | | | | The existing asm-generic versions are incomplete and included by some architectures. New architectures should be able to use a generic version, so rename the existing files and change all users, which lets us add the new files. Signed-off-by: Remis Lima Baima <remis.developer@googlemail.com> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
* | Blackfin: fix sparseirq/kstat_irqs falloutMike Frysinger2009-06-121-0/+2
| | | | | | | | | | | | | | | | | | The sparseirq changes (d7e51e66) played poorly with the Blackfin irqchip implementation as we're still using the old hardirq method. Our bad irq structure had a NULL kstat_irqs field so when all the common code tries to increment this field, everything goes big bada boom. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | Blackfin: fix unused warnings after nommu updateMike Frysinger2009-06-121-1/+0
| | | | | | | | | | | | | | The massive nommu update (8feae131) left the local variable "vml" unused, so punt it. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | Blackfin: export the last exception cause via debugfsRobin Getz2009-06-121-0/+10
| | | | | | | | | | | | | | | | | | | | We have some test code that runs in userspace that exercises the exception handling of the Blackfin pretty thoroughly. Part of the validation process is checking the exact exception triggered, so export the last one seen to userspace via debugfs when debugging is enabled for the test code to check. Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | Blackfin: fix length checking in kgdb_ebin2memRoel Kluin2009-06-121-3/+2
| | | | | | | | | | | | | | | | | | The kgdb_ebin2mem() was decrementing the count variable to do parsing, but then later still tries to use it based on its original meaning. So leave it untouched and use a different variable to walk the memory. Signed-off-by: Roel Kluin <roel.kluin@gmail.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | Blackfin: kgdb: fix up error return valuesMike Frysinger2009-06-121-25/+30
| | | | | | | | | | | | | | | | The Blackfin kgdb code was all passing back positive errno values when it really should have been using negative errno values. Reported-by: Roel Kluin <roel.kluin@gmail.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | Blackfin: push access_ok() L1 attribute downMike Frysinger2009-06-122-4/+3
| | | | | | | | | | | | | | | | | | There is no need for the L1 attribute to be on the prototype of the access_ok() function as all consumers of the function do not care where it lives -- they'll always use pcrel calls to get to it. This prevents pointless recompiles of most of the system when this config option changes. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | Blackfin: punt duplicated search_exception_table() prototypeMike Frysinger2009-06-121-3/+0
| | | | | | | | | | | | | | The common code already has a prototype for this function and we don't use it anywhere in the Blackfin code, so punt it from the Blackfin headers. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | Blackfin: add missing access_ok() checks to user functionsRobin Getz2009-06-121-5/+20
| | | | | | | | | | | | | | | | The core string/clear user functions weren't checking the user pointers which caused kernel crashes with some bad programs and tests (like LTP). Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | Blackfin: convert early_printk EVT init to a loopMike Frysinger2009-06-121-13/+3
| | | | | | | | | | | | | | | | | | The EVT registers are all contiguous in the memory map, so using a loop to initialize them all rather than hardcoding the list results in much better generated code (a hardware loop rather than a whole bunch of individual loads). Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | Blackfin: document the lsl variants of the L1 allocatorMike Frysinger2009-06-121-0/+4
| | | | | | | | | | | | | | Make sure the meaning of "lsl" is covered somewhere and it is clear why we somewhat duplicate the sram alloc/free functions. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | Blackfin: rename Blackfin relocs according to the toolchainMike Frysinger2009-06-122-53/+53
| | | | | | | | | | | | | | | | The latest Blackfin toolchain has fixed its relocation scheme to match other ports: always use R_BFIN_ prefix and capitalize everything. This brings the kernel in line with those fixes. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | Blackfin: check SIC defines rather than variant namesMike Frysinger2009-06-121-9/+8
| | | | | | | | | | | | | | | | Rather than having to maintain a hard coded list of Blackfin variants, use the SIC defines themselves. This fixes build problems on BF51x/BF538 under some configurations as they were missing from one of the lists. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | Blackfin: add SSYNC to set_dma_sg() for descriptor fetchingSonic Zhang2009-06-121-1/+7
| | | | | | | | | | | | | | | | Make sure the internal core buffers are flushed before telling the DMA engine to fetch the descriptor structure so that it gets the right values. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | Blackfin: convert SMP to only use generic time frameworkGraf Yang2009-06-122-34/+20
| | | | | | | | | | Signed-off-by: Graf Yang <graf.yang@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | Blackfin: bf548-ezkit/bf537-stamp: add resources for ADXL345/346Michael Hennerich2009-06-122-10/+117
| | | | | | | | | | Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | Blackfin: override default uClinux MTD addr/sizeMike Frysinger2009-06-121-4/+7
| | | | | | | | | | | | | | | | | | | | Due to a processor anomaly (05000263 to be exact), most Blackfin parts cannot keep the embedded filesystem image directly after the kernel in RAM. Instead, the filesystem needs to be relocated to the end of memory. As such, we need to tweak the map addr/size during boot for Blackfin systems. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | Blackfin: fix command line corruption with DEBUG_DOUBLEFAULTMike Frysinger2009-06-121-8/+8
| | | | | | | | | | | | | | | | Commit 6b3087c6 (which introduced Blackfin SMP) broke command line passing when the DEBUG_DOUBLEFAULT config option was enabled. Switch the code to using a scratch register and not R7 which holds the command line. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | Blackfin: fix handling of initial L1 reservationGraf Yang2009-06-121-2/+10
| | | | | | | | | | | | | | | | This restores some L1 reservation logic that was lost during the Blackfin SMP merge. Signed-off-by: Graf Yang <graf.yang@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | Blackfin: merge sram init functionsGraf Yang2009-06-123-11/+4
| | | | | | | | | | | | | | | | | | Now that the sram_init() function exists only to call the bfin_sram_init() after the punting of the reserve_pda() function, simply merge the two to avoid pointless overhead. Signed-off-by: Graf Yang <graf.yang@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | Blackfin: drop unused reserve_pda() functionGraf Yang2009-06-123-15/+0
| | | | | | | | | | | | | | | | The Per-processor Data Area isn't actually reserved by this function, and all it ended up doing was issuing a printk(), so punt it. Signed-off-by: Graf Yang <graf.yang@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | Blackfin: update gptimers APIMichael Hennerich2009-06-122-24/+49
| | | | | | | | | | | | | | | | | | | | | | First we fix the prototypes for functions that return boolean values by using "int" rather than "uint16_t". Then we introduce a get_gptimer_run() function for checking the current run status of a timer, and then we add a disable_gptimers_sync() function which parallels disable_gptimers() with corresponding normal "_sync" behavior. Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>