aboutsummaryrefslogtreecommitdiffstats
path: root/arch/blackfin
Commit message (Collapse)AuthorAge
* Merge branch 'timers-fixes-for-linus' of ↵Linus Torvalds2008-07-24
|\ | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: nohz: adjust tick_nohz_stop_sched_tick() call of s390 as well nohz: prevent tick stop outside of the idle loop
| * Merge branch 'linus' into timers/nohzIngo Molnar2008-07-18
| |\
| * | nohz: prevent tick stop outside of the idle loopThomas Gleixner2008-07-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Jack Ren and Eric Miao tracked down the following long standing problem in the NOHZ code: scheduler switch to idle task enable interrupts Window starts here ----> interrupt happens (does not set NEED_RESCHED) irq_exit() stops the tick ----> interrupt happens (does set NEED_RESCHED) return from schedule() cpu_idle(): preempt_disable(); Window ends here The interrupts can happen at any point inside the race window. The first interrupt stops the tick, the second one causes the scheduler to rerun and switch away from idle again and we end up with the tick disabled. The fact that it needs two interrupts where the first one does not set NEED_RESCHED and the second one does made the bug obscure and extremly hard to reproduce and analyse. Kudos to Jack and Eric. Solution: Limit the NOHZ functionality to the idle loop to make sure that we can not run into such a situation ever again. cpu_idle() { preempt_disable(); while(1) { tick_nohz_stop_sched_tick(1); <- tell NOHZ code that we are in the idle loop while (!need_resched()) halt(); tick_nohz_restart_sched_tick(); <- disables NOHZ mode preempt_enable_no_resched(); schedule(); preempt_disable(); } } In hindsight we should have done this forever, but ... /me grabs a large brown paperbag. Debugged-by: Jack Ren <jack.ren@marvell.com>, Debugged-by: eric miao <eric.y.miao@gmail.com> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
* | | remove mention of CONFIG_KMOD from documentationJohannes Berg2008-07-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also includes a few Kconfig files (xtensa, blackfin) Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Cc: Michael Kerrisk <mtk.manpages@gmail.com> Cc: linux-doc@vger.kernel.org Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Acked-by: Randy Dunlap <rdunlap@xenotime.net>
* | | Merge branch 'master' of ↵David S. Miller2008-07-18
|\ \ \ | | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6 Conflicts: Documentation/powerpc/booting-without-of.txt drivers/atm/Makefile drivers/net/fs_enet/fs_enet-main.c drivers/pci/pci-acpi.c net/8021q/vlan.c net/iucv/iucv.c
| * | Merge commit 'v2.6.26' into bkl-removalJonathan Corbet2008-07-14
| |\ \
| * | | bf561-coreb: BKL unneeded for open()Jonathan Corbet2008-07-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | According to Mike Frysinger: http://permalink.gmane.org/gmane.linux.kernel/699279 open() does not need the BKL, so take it back out.
| * | | bf561-coreb: BKL pushdownArnd Bergmann2008-06-20
| | | | | | | | | | | | | | | | Signed-off-by: Arnd Bergmann <arnd@arndb.de>
* | | | Merge branch 'master' of ↵David S. Miller2008-07-06
|\ \ \ \ | | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: Documentation/feature-removal-schedule.txt drivers/net/wan/hdlc_fr.c drivers/net/wireless/iwlwifi/iwl-4965.c drivers/net/wireless/iwlwifi/iwl3945-base.c
| * | | Blackfin arch: fix up section mismatch warningBryan Wu2008-06-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -- WARNING: vmlinux.o(.text+0x721a): Section mismatch in reference from the function ___fill_code_cplbtab() to the function .init.text:_fill_cplbtab() The function ___fill_code_cplbtab() references the function __init _fill_cplbtab(). This is often because ___fill_code_cplbtab lacks a __init annotation or the annotation of _fill_cplbtab is wrong. WARNING: vmlinux.o(.text+0x7238): Section mismatch in reference from the function ___fill_code_cplbtab() to the function .init.text:_fill_cplbtab() The function ___fill_code_cplbtab() references the function __init _fill_cplbtab(). This is often because ___fill_code_cplbtab lacks a __init annotation or the annotation of _fill_cplbtab is wrong. WARNING: vmlinux.o(.text+0x7250): Section mismatch in reference from the function ___fill_code_cplbtab() to the function .init.text:_fill_cplbtab() The function ___fill_code_cplbtab() references the function __init _fill_cplbtab(). This is often because ___fill_code_cplbtab lacks a __init annotation or the annotation of _fill_cplbtab is wrong. WARNING: vmlinux.o(.text+0x7264): Section mismatch in reference from the function ___fill_code_cplbtab() to the function .init.text:_fill_cplbtab() The function ___fill_code_cplbtab() references the function __init _fill_cplbtab(). This is often because ___fill_code_cplbtab lacks a __init annotation or the annotation of _fill_cplbtab is wrong. WARNING: vmlinux.o(.text+0x72a2): Section mismatch in reference from the function ___fill_data_cplbtab() to the function .init.text:_fill_cplbtab() The function ___fill_data_cplbtab() references the function __init _fill_cplbtab(). This is often because ___fill_data_cplbtab lacks a __init annotation or the annotation of _fill_cplbtab is wrong. WARNING: vmlinux.o(.text+0x72bc): Section mismatch in reference from the function ___fill_data_cplbtab() to the function .init.text:_fill_cplbtab() The function ___fill_data_cplbtab() references the function __init _fill_cplbtab(). This is often because ___fill_data_cplbtab lacks a __init annotation or the annotation of _fill_cplbtab is wrong. WARNING: vmlinux.o(.text+0x72d4): Section mismatch in reference from the function ___fill_data_cplbtab() to the function .init.text:_fill_cplbtab() The function ___fill_data_cplbtab() references the function __init _fill_cplbtab(). This is often because ___fill_data_cplbtab lacks a __init annotation or the annotation of _fill_cplbtab is wrong. WARNING: vmlinux.o(.text+0x72e8): Section mismatch in reference from the function ___fill_data_cplbtab() to the function .init.text:_fill_cplbtab() The function ___fill_data_cplbtab() references the function __init _fill_cplbtab(). This is often because ___fill_data_cplbtab lacks a __init annotation or the annotation of _fill_cplbtab is wrong. -- Signed-off-by: Bryan Wu <cooloney@kernel.org>
| * | | Blackfin arch: fix bug - kernel boot fails when Spinlock and rw-lock ↵Sonic Zhang2008-06-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | debugging enabled Initialize the lock of bad_irq_desc properly. The content of irq_desc array is replaced by bad_irq_desc in blackfin arch irqchip init code. So, do it properly as common irq init code. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* | | | DM9000: Fixup blackfin after removing 2 resource usageLaurent Pinchart2008-06-24
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The dm9000 driver accepts either 2 or 3 resources to describe the platform devices. The 2 resources case abuses the ioresource mechanism by passing ioremap()ed memory through the platform device resources. This patch removes converts boards that were using it to the 3 resources scheme. CC: Bryan Wu <cooloney@kernel.org> Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Laurent Pinchart <laurentp@cse-semaphore.com> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
* | | Blackfin arch: protect only the SPI bus controller with CONFIG_SPI_BFINMike Frysinger2008-06-07
| | | | | | | | | | | | | | | | | | Signed-off-by: Mike Frysinger <vapier.adi@gmail.com> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* | | Blackfin arch: fixup warnings with the new cplb saved valuesMike Frysinger2008-06-03
| | | | | | | | | | | | | | | | | | Signed-off-by: Mike Frysinger <vapier.adi@gmail.com> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* | | Blackfin arch: Remove bad and usless codeMichael Hennerich2008-05-31
| | | | | | | | | | | | | | | | | | Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* | | Blackfin arch: Fix bug - set corret SSEL and IRQ to enable AD7877 on BF527Bryan Wu2008-05-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | AD7877 use SSEL_2 (P9.9) and IRQ_PF8 (P9.14) on BF527 - populating JP3 to enable STAMP - disable SW11.2 to disconnect SSEL_2/PF12 from Rotary NAND - disable SW18.1 to disconnect SSEL_2 from MAX1233 touchscreen chip Signed-off-by: Bryan Wu <cooloney@kernel.org>
* | | Blackfin arch: Fix typo. it should be _outsw_8Bryan Wu2008-05-20
| | | | | | | | | | | | | | | Signed-off-by: Bryan Wu <cooloney@kernel.org>
* | | Blackfin arch: Cleanup no functional changesMichael Hennerich2008-05-20
| |/ |/| | | | | | | | | Singed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* | Merge branch 'for-linus' of ↵Linus Torvalds2008-05-19
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: [PATCH] return to old errno choice in mkdir() et.al. [Patch] fs/binfmt_elf.c: fix wrong return values [PATCH] get rid of leak in compat_execve() [Patch] fs/binfmt_elf.c: fix a wrong free [PATCH] avoid multiplication overflows and signedness issues for max_fds [PATCH] dup_fd() part 4 - race fix [PATCH] dup_fd() - part 3 [PATCH] dup_fd() part 2 [PATCH] dup_fd() fixes, part 1 [PATCH] take init_files to fs/file.c
| * | [PATCH] take init_files to fs/file.cAl Viro2008-05-16
| | | | | | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* | | Blackfin arch: update boards defconfig filesMichael Hennerich2008-05-19
| | | | | | | | | | | | | | | | | | Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* | | Blackfin arch: IO Port functions to read/write unalligned memoryMichael Hennerich2008-05-17
| | | | | | | | | | | | | | | | | | Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* | | Blackfin arch: enable a choice to provide 4M DMA memoryCliff Cai2008-05-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | support two cascaded AD73322 cards, more uncached DMA memory is needed, so add a choice to provide 4M DMA memory Signed-off-by: Cliff Cai <cliff.cai@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* | | Blackfin arch: cleanup the icplb/dcplb multiple hit checksMike Frysinger2008-05-17
| | | | | | | | | | | | | | | | | | | | | | | | so that we always send the same signal and we handle the NULL ptr condition properly Signed-off-by: Mike Frysinger <vapier.adi@gmail.com> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* | | Blackfin arch: Add workaround to read edge triggered GPIOsMichael Hennerich2008-05-17
| | | | | | | | | | | | | | | | | | Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* | | Blackfin arch: Check for Anomaly 05000182Michael Hennerich2008-05-17
| | | | | | | | | | | | | | | | | | | | | | | | IMDMA does not operate to full speed for 600MHz and higher devices Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* | | [Blackfin] arch: rename bf5xx-flash to bfin-async-flashMike Frysinger2008-05-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - move all kconfig board settings into board resources - fixup casting style according to lkml feedback - rewrite driver so that it can handle arbitrary of instances according to the declared platform resources Signed-off-by: Mike Frysinger <vapier.adi@gmail.com> Cc: Joern Engel <joern@logfs.org> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* | | [Blackfin] arch: Blackfin checksum annotationsAl Viro2008-05-11
| |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | FSVOtest in this case, since I don't have the hardware... However, all changes seen by gcc are actually - explicit cast to unsigned short in return expression of functions returning unsigned short - csum_fold() return type changed from unsigned int to __sum16 (unsigned short), same as for all other architecture and as net/* expects; expression actually returned is ((~(sum << 16)) >> 16) with sum being unsigned 32bit, so it's (a) going to fit into the range of unsigned short and (b) had been unsigned all along, so no sign expansion mess happened. Tested-by: Bryan Wu <cooloney@kernel.org> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: David Miller <davem@davemloft.net> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* | i2c: Clean up Blackfin BF527 I2C device declarationsJean Delvare2008-05-18
|/ | | | | | | | I2C_BOARD_INFO() now sets the type field so no need to set it separatetly. Signed-off-by: Jean Delvare <khali@linux-fr.org> Cc: Bryan Wu <cooloney@kernel.org>
* [Blackfin] arch: protect linux/usb/musb.h include until the driver gets ↵Mike Frysinger2008-05-09
| | | | | | | | mainlined Signed-off-by: Mike Frysinger <vapier.adi@gmail.com> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* [Blackfin] arch: protect linux/usb/isp1362.h include until the driver gets ↵Mike Frysinger2008-05-09
| | | | | | | | mainlined Signed-off-by: Mike Frysinger <vapier.adi@gmail.com> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* [Blackfin] arch: add EBIU supporting for BF54x EZKIT SMSC LAN911x/LAN921x ↵Michael Hennerich2008-05-07
| | | | | | | | families embedded ethernet driver Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* [Blackfin] arch: Set spi flash partition on bf527 as like bf548.Grace Pan2008-05-06
| | | | | | Signed-off-by: Grace Pan <grace.pan@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* [Blackfin] arch: fix bug - Remove module will not free L1 memory usedMeihui Fan2008-05-06
| | | | | | | | | Remove module will not free L1 memory used which caused by memory access after free. This patch fixes it. Signed-off-by: Meihui Fan <mhfan@hhcn.com> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* [Blackfin] arch: fix wrong header name in commentMike Frysinger2008-05-06
| | | | | | Signed-off-by: Mike Frysinger <vapier.adi@gmail.com> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* [Blackfin] arch: Fix BUG - spi flash on bf527 ezkit would fail at mountMichael Hennerich2008-05-06
| | | | | | | | BF527-EZKit features 16MBit M25P16 flash Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* [Blackfin] arch: add twi_lcd and twi_keypad i2c board info to bf527-ezkitBryan Wu2008-05-06
| | | | | | | | - JP3 should be installed for STAMP enable - IRQ for twi_keypad driver is IRQ_PF8 Signed-off-by: Bryan Wu <cooloney@kernel.org>
* [Blackfin] arch: Add physmap partition for BF527-EZkitMichael Hennerich2008-05-06
| | | | | | Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* [Blackfin] arch: fix gdb testing regressionBernd Schmidt2008-05-06
| | | | | | | | | | | | | | When transferring to IRQ5 from an exception, save SYSCFG in memory across the transfer and clear the trace bit. When we get a single step exception, check whether we can safely clear the trace bit in SYSCFG. We can (and should) clear it after the first instruction of the interrupt handler; the first insn saves SYSCFG to the stack in all handlers. Signed-off-by: Bernd Schmidt <bernds_cb1@t-online.de> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* [Blackfin] arch: disable single stepping when delivering a signalBernd Schmidt2008-05-06
| | | | | | | | | | When delivering a signal, disable single stepping but call ptrace_notify if it was enabled before. The idea was taken from the x86 port. Signed-off-by: Bernd Schmidt <bernds_cb1@t-online.de> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* [Blackfin] arch: Delete unused (copied from m68k) entries in asm-offsets.c.Bernd Schmidt2008-05-06
| | | | | | | | | Fix some really ancient code that was correct only for the m68k port. Delete unused (i.e. copied from m68k) entries in asm-offsets.c. Signed-off-by: Bernd Schmidt <bernds_cb1@t-online.de> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* [Blackfin] arch: In the double fault handler, set up the PT_RETI slotBernd Schmidt2008-05-06
| | | | | | | | | In the double fault handler, set up the PT_RETI slot so that we print out the correct return address in the dumping code. Signed-off-by: Bernd Schmidt <bernds_cb1@t-online.de> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* [Blackfin] arch: Support for CPU_FREQ and NOHZVitja Makarov2008-05-06
| | | | | Singed-off-by: Vitja Makarov <vitja.makarov@gmail.com>
* [Blackfin] arch: Functional power management support: Add CPU and platform ↵Michael Hennerich2008-05-06
| | | | | | | | voltage scaling support Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* [Blackfin] arch: fix bug - breaking the atomic sections code.Bernd Schmidt2008-05-06
| | | | | | | | | | | | The following cleanup patch: add __user markings to a few userspace system functions mysteriously added a "&" operator that doesn't belong in there, breaking the atomic sections code. Signed-off-by: Bernd Schmidt <bernds_cb1@t-online.de> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* [Blackfin] arch: Cleanup Kconfig, fix comment and make sure we exclude ↵Michael Hennerich2008-05-06
| | | | | | | | CCLK=SCLK for some configurations Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org>
* unified (weak) sys_pipe implementationUlrich Drepper2008-05-03
| | | | | | | | | | | | | | | | | | | This replaces the duplicated arch-specific versions of "sys_pipe()" with one unified implementation. This removes almost 250 lines of duplicated code. It's marked __weak, so that *if* an architecture wants to override the default implementation it can do so by simply having its own replacement version, since many architectures use alternate calling conventions for the 'pipe()' system call for legacy reasons (ie traditional UNIX implementations often return the two file descriptors in registers) I still haven't changed the cris version even though Linus says the BKL isn't needed. The arch maintainer can easily do it if there are really no obstacles. Signed-off-by: Ulrich Drepper <drepper@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* i2c: Convert most new-style drivers to use module aliasingJean Delvare2008-04-29
| | | | | | | | | | | | | | Based on earlier work by Jon Smirl and Jochen Friedrich. Update most new-style i2c drivers to use standard module aliasing instead of the old driver_name/type driver matching scheme. I've left the video drivers apart (except for SoC camera drivers) as they're a bit more diffcult to deal with, they'll have their own patch later. Signed-off-by: Jean Delvare <khali@linux-fr.org> Cc: Jon Smirl <jonsmirl@gmail.com> Cc: Jochen Friedrich <jochen@scram.de>
* blackfin: use kbuild.h instead of defining macros in asm-macros.cChristoph Lameter2008-04-29
| | | | | | | | Signed-off-by: Christoph Lameter <clameter@sgi.com> Cc: Bryan Wu <bryan.wu@analog.com> Cc: Mike Frysinger <vapier.adi@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Remove the macro get_personalityWANG Cong2008-04-29
| | | | | | | | | | | | Remove the macro get_personality, use ->personality instead. Cc: Christoph Hellwig <hch@infradead.org Cc: Alexey Dobriyan <adobriyan@gmail.com> Cc: David Howells <dhowells@redhat.com> Cc: Bryan Wu <bryan.wu@analog.com> Signed-off-by: WANG Cong <xiyou.wangcong@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>