summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'for-jens' of git://git.drbd.org/linux-2.6-drbd into ↵Jens Axboe2010-10-239-344/+202
|\ | | | | | | for-2.6.37/drivers
| * drbd: Removed checks for REQ_HARDBARRIER on incomming BIOsPhilipp Reisner2010-10-233-20/+0
| | | | | | | | | | Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
| * drbd: REQ_HARDBARRIER -> REQ_FUA transition for meta data accessesPhilipp Reisner2010-10-233-20/+7
| | | | | | | | | | Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
| * drbd: Removed the BIO_RW_BARRIER support form the receiver/epoch codePhilipp Reisner2010-10-236-219/+33
| | | | | | | | | | Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
| * drbd: Silenced an assertPhilipp Reisner2010-10-222-2/+2
| | | | | | | | | | | | | | That assertion's condition needed adjustment for today's semantics Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
| * drbd: rate limit an error messageLars Ellenberg2010-10-221-1/+2
| | | | | | | | | | | | | | | | | | If we don't rate limit it, and you happen to log err level messages via serial console, an IO error on a disconnected Primary may cause serious unresponsiveness. Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
| * drbd: fix a misleading printkLars Ellenberg2010-10-221-1/+1
| | | | | | | | | | | | | | | | This codepath used to be called only for failed kmalloc GFP_ATOMIC, but is now also triggered by other things. Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
| * drbd: fix potential data divergence after multiple failuresLars Ellenberg2010-10-223-11/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If we get an IO-error during an activity log transaction, if we failed to write the bitmap of the evicted extent, we must not write the transaction itself. If we failed to write the transaction, we must not even submit the corresponding bio, as its extent is not yet marked in the activity log. Otherwise, if this was a disconneted Primary (degraded cluster), which now lost its disk as well, and we later re-attach the same backend storage, we possibly "forget" to resync some parts of the disk that potentially have been changed. On the receiving side, when receiving from a peer with unhealthy disk, checking for pdsk == D_DISKLESS is not enough, we need to set out of sync and do AL transactions for everything pdsk < D_INCONSISTENT on the receiving side. Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
| * drbd: fix potential deadlock on detachLars Ellenberg2010-10-224-63/+113
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If we have contention in drbd_al_begin_iod (heavy randon IO), an administrative request to detach the disk may deadlock for similar reasons as the recently fixed deadlock if detaching because of IO-error. The approach taken here is to either go through the intermediate cleanup state D_FAILED, or first lock out application io, don't just go directly to D_DISKLESS. We need an additional state bit (WAS_IO_ERROR) to distinguish the -> D_FAILED because of IO-error from other failures. Sanitize D_ATTACHING -> D_FAILED to D_ATTACHING -> D_DISKLESS. If only attaching, ldev may be missing still, but would be referenced from within the after_state_ch for -> D_FAILED, potentially dereferencing a NULL pointer. Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
| * drbd: tag a few error messages with "assert failed"Lars Ellenberg2010-10-221-5/+5
| | | | | | | | | | | | | | | | | | If those messages ever get logged, clearly state that they are actually failed ASSERTS, so our regression tests can pick them up from the logs more easily. Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
| * drbd: consolidate explicit drbd_md_sync into drbd_create_new_uuidLars Ellenberg2010-10-222-2/+2
| | | | | | | | | | | | | | | | | | Every code path changing the current UUID needs to get it on stable storage anyways. Flush it to disk right there, remove the now obsolte explicit drbd_md_sync statements in the other code paths. Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
* | Merge branch 'for-linus' of ↵Linus Torvalds2010-10-2365-839/+3431
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/vapier/blackfin * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/vapier/blackfin: (47 commits) Blackfin: bfin_spi.h: add MMR peripheral layout Blackfin: bfin_ppi.h: start a common PPI/EPPI header Blackfin: bfin_can.h: add missing VERSION/VERSION2 MMRs Blackfin: bf538: add missing SIC_RVECT define Blackfin: bf561: rewrite SICA_xxx to just SIC_xxx Blackfin: bf54x: add missing SIC_RVECT definition Blackfin: H8606: move 8250 irqflags to platform resources Blackfin: glue XIP/ROM kernel kconfigs Blackfin: update sparse flags for latest upstream changes Blackfin: coreb: update ioctl numbers Blackfin: coreb: add gpl module license Blackfin: bf518-ezkit: add ssm2603 codec resources Blackfin: bf51x/bf52x: fix 16/32bit SPORT MMR helpers Blackfin: tll6527m: new board port Blackfin: bf526-ezbrd/bf527-ezkit: add NAND partition for u-boot Blackfin: merge kernel init memory back into main memory region Blackfin: gpio: add peripheral group check Blackfin: dma: bf54x: add missing break for SPORT1 TX IRQ Blackfin: add new cacheflush syscall Blackfin: bf548-ezkit: increase u-boot partition size ...
| * | Blackfin: bfin_spi.h: add MMR peripheral layoutMike Frysinger2010-10-221-0/+19
| | | | | | | | | | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: bfin_ppi.h: start a common PPI/EPPI headerMike Frysinger2010-10-221-0/+51
| | | | | | | | | | | | | | | | | | | | | Start unifying the PPI/EPPI peripheral structures in one place. This may be used by camera/video/fpga/high speed devices. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: bfin_can.h: add missing VERSION/VERSION2 MMRsMike Frysinger2010-10-221-3/+6
| | | | | | | | | | | | | | | | | | Also document the mailbox (channel) data array layout. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: bf538: add missing SIC_RVECT defineMike Frysinger2010-10-221-0/+1
| | | | | | | | | | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: bf561: rewrite SICA_xxx to just SIC_xxxMike Frysinger2010-10-228-157/+87
| | | | | | | | | | | | | | | | | | | | | This matches all the other Blackfin ports and keep us from having to write bf561-specific code in many places. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: bf54x: add missing SIC_RVECT definitionMike Frysinger2010-10-222-0/+3
| | | | | | | | | | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: H8606: move 8250 irqflags to platform resourcesMike Frysinger2010-10-222-1/+2
| | | | | | | | | | | | | | | | | | | | | Now that the common 8250 serial driver supports an "irqflags" field, we don't need to patch in a custom define into the code. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: glue XIP/ROM kernel kconfigsMike Frysinger2010-10-221-0/+6
| | | | | | | | | | | | | | | | | | | | | Different arches use different names, so make sure we define both so common code (like MTD_XIP) "just works". Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: update sparse flags for latest upstream changesMike Frysinger2010-10-221-2/+1
| | | | | | | | | | | | | | | | | | | | | Mainline version of git merged support for Blackfin parts, but we now need to propagate the gcc arch define to make it work. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: coreb: update ioctl numbersMike Frysinger2010-10-221-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | We have to use ioctl numbers that don't collide with common code. Otherwise, these ones never even get called because the common fs code swalled all invocations. Reported-by: Kay Duenzer <kduenzer@maku.eu> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: coreb: add gpl module licenseMike Frysinger2010-10-221-0/+1
| | | | | | | | | | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: bf518-ezkit: add ssm2603 codec resourcesBob Liu2010-10-221-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | This board has a SSM2603 codec, so make sure we have the right resources declared for it. Signed-off-by: Bob Liu <lliubbo@gmail.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: bf51x/bf52x: fix 16/32bit SPORT MMR helpersBob Liu2010-10-222-32/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The RX/TX address is always the same regardless of the size of the access. That means there is no dedicated "16bit" or "32bit" MMR. Trying to use these currently leads to compile errors. So change everything to use the right MMR define. Signed-off-by: Bob Liu <lliubbo@gmail.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: tll6527m: new board portAshish Gupta2010-10-224-0/+1172
| | | | | | | | | | | | | | | Signed-off-by: Ashish Gupta <asg@thelearninglabs.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: bf526-ezbrd/bf527-ezkit: add NAND partition for u-bootMike Frysinger2010-10-222-2/+10
| | | | | | | | | | | | | | | | | | | | | Since these boards can boot out of NAND, make sure we give u-boot its own partition by default to avoid clobbering it. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: merge kernel init memory back into main memory regionSonic Zhang2010-10-221-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the kernel's init section is merged back into the main memory region during boot (which it should since that is how we've laid out the kernel linker map), we want to make sure that these aren't counted as independent regions. Otherwise, if a large mapping is attempted which starts in the init region and extends into the main memory region, the access_ok func will deny it. This leads to weird messages during runtime like "unable to map xxx library" from the ldso but upon running the application again, everything works fine. So if the address of the end of the init region is the same as the start of the main memory region, simply enlarge the memory region to include the init region. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: gpio: add peripheral group checksteven miao2010-10-221-67/+118
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Many Blackfin parts group sets of pins into a single functional unit. This means you cannot use different pins within a group for different peripherals. Our resource conflict checking thus far has been limited to individual pins, so if someone tried to grab a different pin from the same group, it would be allowed while silently changing the other pins in the same group. One common example is the pin set PG12 - PG15 on BF51x parts. They may either be used with SPI0 (1st function), or they may be used with PTP/PWM/AMS3 (3rd function). Ideally, we'd like to use PG12 - PG14 for SPI0 while using PG15 with AMS3, but the hardware does not permit this. In the past, the software would allow the pins to be requested this way, but ultimately things like the Blackfin SPI driver would stop working when the hardware rerouted to a different peripheral. Signed-off-by: steven miao <realmz6@gmail.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: dma: bf54x: add missing break for SPORT1 TX IRQMike Frysinger2010-10-221-0/+1
| | | | | | | | | | | | | | | Reported-by: D Binderman <dcb314@hotmail.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: add new cacheflush syscallSonic Zhang2010-10-227-3/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Flushing caches sometimes requires anomaly workarounds which require supervisor-only insns. Normally we don't need to flush caches from userspace so this isn't a problem, but when gcc generates trampolines on the stack, we do. So add a new syscall for gcc to use modeled after the mips version. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: bf548-ezkit: increase u-boot partition sizeMike Frysinger2010-10-221-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | The BF54x processor has a ton of on-chip peripherals and in order to support them all, the u-boot image is quite large. So give it 512KiB in all bootable flashes to make our lives easier. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: boards: add example i2c resources for ad525x devicessteven miao2010-10-224-0/+20
| | | | | | | | | | | | | | | Signed-off-by: steven miao <realmz6@gmail.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: SIC: fix off-by-one error in loopMichael Hennerich2010-10-221-3/+4
| | | | | | | | | | | | | | | | | | | | | Make sure we include EMAC_SYSTAT when showing errors. Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: bf537-stamp: tweak i2c address for ad5280 add-on tftlcd boardSonic Zhang2010-10-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | The predefined i2c address 0x2c doesn't match the configuration of the ad5280 PINs AD0 and AD1 on the tftlcd add-on board. Both AD0 and AD1 are of voltage 3.3V, which means the i2c address should be 0x2F. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: bf51x: enable support for 0.2 siliconMike Frysinger2010-10-221-1/+1
| | | | | | | | | | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: initial preempt support while returning from interruptBarry Song2010-10-222-3/+126
| | | | | | | | | | | | | | | Signed-off-by: Barry Song <barry.song@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: workaround anomaly 05000481 (corruption with ITEST MMRs)Robin Getz2010-10-221-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Nothing actually needs to use these MMRs (as direct cache manipulation is done with the DTEST MMRs), so simply hide the read funcs behind the anomaly define. They're generally unusable anyways when this anomaly is in effect. Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: i2c-gpio boards: use GPIO_PF# definesMike Frysinger2010-10-224-8/+8
| | | | | | | | | | | | | | | | | | Rather than use raw numbers for the GPIO pins, use proper GPIO defines. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: access_ok: permit L1 stackBarry Song2010-10-221-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | When apps run with their stack in L1, some system calls might be made where a buffer is in the stack as an argument. So make sure the core Blackfin access code does not reject this memory location. Signed-off-by: Barry Song <barry.song@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: bf561-ezkit: add AD1836 codec resourcesBarry Song2010-10-221-0/+50
| | | | | | | | | | | | | | | | | | | | | | | | This board has an AD1836 codec, so make sure we have the right resources declared for it. Signed-off-by: Barry Song <barry.song@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: ptrace: enable access to L1 stacksBarry Song2010-10-221-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | If an app is placing its stack in L1 scratchpad SRAM, make sure ptrace is granted access to it so that gdb can do its thing. Signed-off-by: Barry Song <barry.song@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: boards: fix num_chipselect values for on-chip SPI busesMike Frysinger2010-10-225-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | The num_chipselect field for on-chip Blackfin SPI buses is supposed to be 1 larger than the number of actual CSs available. This is because the hardware starts counting at 1 and not 0. There is a field for "CS0", but it is marked as "reserved" everywhere. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: ad7160eval: new board portMichael Hennerich2010-10-225-1/+984
| | | | | | | | | | | | | | | Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: bf537-stamp: re-use regulator framework with ad5398 partsSonic Zhang2010-10-221-10/+1
| | | | | | | | | | | | | | | | | | | | | | | | We don't need our own header and structure to hook up the ad5398 part, so drop the custom resources for it. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: bf537-stamp: re-use the fixed regulator voltage driverSonic Zhang2010-10-221-55/+25
| | | | | | | | | | | | | | | | | | | | | | | | Rather than write our own ADP switch driver, use the existing fixed regulator driver and rewrite the platform resources accordingly. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: SIC: BF537: change default data/error relative prioritiesMichael Hennerich2010-10-221-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some peripherals might generate an error interrupt shortly after the data interrupt due to the fact that the peripheral isn't serviced fast enough. In most cases this isn't a problem and is expected behavior. This hasn't been a problem on most parts since you simply don't request the error interrupt (or you leave it disabled while there is an expected state) and do the peripheral status checking in the data interrupt. The Blackfin SIC allows people to prioritize data and error interrupts, and the Blackfin CEC allows interrupts of equal or higher priority to nest. The current default settings gives error interrupts a higher priority than data interrupts. So if an error occurs while processing the data interrupt, it will be serviced immediately. However, the error interrupt on the BF537 SIC cannot be enabled on a per-peripheral basis. Once the error interrupt is enabled for one peripheral, it is automatically enabled for all peripherals. Therefore lower the default multiplexed error interrupt priority so most people need not worry themselves with this issue. Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: bf537-stamp: add example IIO resourcesMichael Hennerich2010-10-221-12/+442
| | | | | | | | | | | | | | | | | | | | | Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Signed-off-by: Barry Song <barry.song@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: bf537-stamp: use correct spi mode with ad2s90 partsBarry Song2010-10-221-0/+1
| | | | | | | | | | | | | | | Signed-off-by: Barry Song <barry.song@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * | Blackfin: bf537-stamp: add example adau1373 i2c resourcesCliff Cai2010-10-221-0/+5
| | | | | | | | | | | | | | | Signed-off-by: Cliff Cai <cliff.cai@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>