aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-01-14ARM: pxa: fix suspend/resume array index miscalculationMarek Vasut1-4/+4
Signed-off-by: Marek Vasut <[email protected]> Signed-off-by: Eric Miao <[email protected]>
2011-01-14ARM: pxa: use cpu_has_ipr() consistently in irq.cMarek Vasut1-1/+1
Signed-off-by: Marek Vasut <[email protected]> Signed-off-by: Eric Miao <[email protected]>
2011-01-14ARM: pxa: remove unused variable in clock-pxa3xx.cMarek Vasut1-1/+0
Signed-off-by: Marek Vasut <[email protected]> Signed-off-by: Eric Miao <[email protected]>
2011-01-14ARM: pxa: fix warning in zeus.cMarek Vasut1-2/+2
Signed-off-by: Marek Vasut <[email protected]> Signed-off-by: Eric Miao <[email protected]>
2011-01-14ARM: sa1111: fix typo in sa1111_retrigger_lowirq()Pavel Machek1-1/+1
Signed-off-by: Pavel Machek <[email protected]> Signed-off-by: Eric Miao <[email protected]>
2011-01-14gpio: timbgpio: Fix up irq_data conversion breakage.Lennert Buytenhek1-3/+3
Commit a1f5f22adc3206c47e70652c12671666c65b579f ("gpio: timbgpio: irq_data conversion") was slightly too enthusiastic in converting timbgpio_irq() over to take an irq_data * argument instead of an unsigned int irq argument, as it is a flow handler, which still take IRQ numbers for now. (And on top of that, it was using the wrong accessors.) This fixes it up, and seems to build without warnings. Signed-off-by: Lennert Buytenhek <[email protected]> Cc: Andrew Morton <[email protected]> Cc: Richard Röjfors <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2011-01-14[SCSI] target: Add LIO target core v4.0.0-rc6Nicholas Bellinger44-0/+30521
LIO target is a full featured in-kernel target framework with the following feature set: High-performance, non-blocking, multithreaded architecture with SIMD support. Advanced SCSI feature set: * Persistent Reservations (PRs) * Asymmetric Logical Unit Assignment (ALUA) * Protocol and intra-nexus multiplexing, load-balancing and failover (MC/S) * Full Error Recovery (ERL=0,1,2) * Active/active task migration and session continuation (ERL=2) * Thin LUN provisioning (UNMAP and WRITE_SAMExx) Multiprotocol target plugins Storage media independence: * Virtualization of all storage media; transparent mapping of IO to LUNs * No hard limits on number of LUNs per Target; maximum LUN size ~750 TB * Backstores: SATA, SAS, SCSI, BluRay, DVD, FLASH, USB, ramdisk, etc. Standards compliance: * Full compliance with IETF (RFC 3720) * Full implementation of SPC-4 PRs and ALUA Significant code cleanups done by Christoph Hellwig. [jejb: fix up for new block bdev exclusive interface. Minor fixes from Randy Dunlap and Dan Carpenter.] Signed-off-by: Nicholas A. Bellinger <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-01-14cgroup_fs: fix cgroup use of simple_lookup()Al Viro1-1/+16
cgroup can't use simple_lookup(), since that'd override its desired ->d_op. Tested-by: Li Zefan <[email protected]> Signed-off-by: Al Viro <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2011-01-14include/gpio.h: remove remaining __must_check-annotiationsWolfram Sang1-2/+2
Commit 5f829e405ec4e96f711165a4a7b55c271d4363e2 (gpiolib: add missing functions to generic fallback) also introduced two. Signed-off-by: Wolfram Sang <[email protected]> Cc: Greg KH <[email protected]> Cc: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2011-01-14Revert update for dirty_ratio for memcg.KAMEZAWA Hiroyuki1-23/+0
The flags added by commit db16d5ec1f87f17511599bc77857dd1662b5a22f has no user now. We believe we'll use it soon but considering patch reviewing, the change itself should be folded into incoming set of "dirty ratio for memcg" patches. So, it's better to drop this change from current mainline tree. Signed-off-by: KAMEZAWA Hiroyuki <[email protected]> Reviewed-by: Greg Thelen <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2011-01-14revert documentaion update for memcg's dirty ratio.KAMEZAWA Hiroyuki1-74/+0
Subjct: Revert memory cgroup dirty_ratio Documentation. The commit ece72400c2a27a3d726cb0854449f991d9fcd2da adds documentation for memcg's dirty ratio. But the function is not implemented yet. Remove the documentation for avoiding confusing users. Signed-off-by: KAMEZAWA Hiroyuki <[email protected]> Reviewed-by: Greg Thelen <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2011-01-14[SCSI] sd,sr: kill compat SDEV_MEDIA_CHANGE eventTejun Heo2-9/+0
SDEV_MEDIA_CHANGE event was first added by commit a341cd0f (SCSI: add asynchronous event notification API) for SATA AN support and then extended to cover generic media change events by commit 285e9670 ([SCSI] sr,sd: send media state change modification events). This event was mapped to block device in userland with all properties stripped to simulate CHANGE event on the block device, which, in turn, was used to trigger further userspace action on media change. The recent addition of disk event framework kept this event for backward compatibility but it turns out to be unnecessary and causes erratic and inefficient behavior. The new disk event generates proper events on the block devices and the compat events are mapped to block device with all properties stripped, so the block device ends up generating multiple duplicate events for single actual event. This patch removes the compat event generation from both sr and sd as suggested by Kay Sievers. Both existing and newer versions of udev and the associated tools will behave better with the removal of these events as they from the beginning were expecting events on the block devices. Signed-off-by: Tejun Heo <[email protected]> Acked-by: Kay Sievers <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-01-14[SCSI] sd: implement sd_check_events()Tejun Heo2-52/+53
Replace sd_media_change() with sd_check_events(). * Move media removed logic into set_media_not_present() and media_not_present() and set sdev->changed iff an existing media is removed or the device indicates UNIT_ATTENTION. * Make sd_check_events() sets sdev->changed if previously missing media becomes present. * Event is reported only if sdev->changed is set. This makes media presence event reported if scsi_disk->media_present actually changed or the device indicated UNIT_ATTENTION. For backward compatibility, SDEV_EVT_MEDIA_CHANGE is generated each time sd_check_events() detects media change event. [jejb: fix boot failure] Signed-off-by: Tejun Heo <[email protected]> Acked-by: Jens Axboe <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-01-14power_supply: Add MAX17042 Fuel Gauge DriverMyungJoo Ham4-0/+280
The MAX17042 is a fuel gauge with an I2C interface for lithium-ion betteries. Unlike its predecessor MAX17040, MAX17042 uses 16bit registers. Besides, MAX17042 has much more features than MAX17040; e.g., a thermistor, current and current accumulation measurement, battery internal resistance estimate, average values of measurement, and others. This patch implements a driver for MAX17042. In this initial release, we have implemented the most basic features of a fuel gauge: measure the battery capacity and voltage. Signed-off-by: MyungJoo Ham <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Signed-off-by: Anton Vorontsov <[email protected]>
2011-01-14Merge branch 'rcu/next' of ↵Ingo Molnar3-18/+15
git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-2.6-rcu into core/urgent
2011-01-14kernel: fix hlist_bl againRussell King1-1/+1
__d_rehash is dereferencing an almost-NULL pointer on my ARM926. CONFIG_SMP=n and CONFIG_DEBUG_SPINLOCK=y. The faulting instruction is: strne r3, [r2, #4] and as can be seen from the register dump below, r2 is 0x00000001, hence the faulting 0x00000005 address. __d_rehash is essentially: spin_lock_bucket(b); entry->d_flags &= ~DCACHE_UNHASHED; hlist_bl_add_head_rcu(&entry->d_hash, &b->head); spin_unlock_bucket(b); which is: bit_spin_lock(0, (unsigned long *)&b->head.first); entry->d_flags &= ~DCACHE_UNHASHED; hlist_bl_add_head_rcu(&entry->d_hash, &b->head); __bit_spin_unlock(0, (unsigned long *)&b->head.first); bit_spin_lock(0, ptr) sets bit 0 of *ptr, in this case b->head.first if CONFIG_SMP or CONFIG_DEBUG_SPINLOCK is set: #if defined(CONFIG_SMP) || defined(CONFIG_DEBUG_SPINLOCK) while (unlikely(test_and_set_bit_lock(bitnum, addr))) { while (test_bit(bitnum, addr)) { preempt_enable(); cpu_relax(); preempt_disable(); } } #endif So, b->head.first starts off NULL, and becomes a non-NULL (address 1). hlist_bl_add_head_rcu() does this: static inline void hlist_bl_add_head_rcu(struct hlist_bl_node *n, struct hlist_bl_head *h) { first = hlist_bl_first(h); n->next = first; if (first) first->pprev = &n->next; It is the store to first->pprev which is faulting. hlist_bl_first(): static inline struct hlist_bl_node *hlist_bl_first(struct hlist_bl_head *h) { return (struct hlist_bl_node *) ((unsigned long)h->first & ~LIST_BL_LOCKMASK); } but: #if defined(CONFIG_SMP) #define LIST_BL_LOCKMASK 1UL #else #define LIST_BL_LOCKMASK 0UL #endif So, we have one piece of code which sets bit 0 of addresses, and another bit of code which doesn't clear it before dereferencing the pointer if !CONFIG_SMP && CONFIG_DEBUG_SPINLOCK. With the patch below, I can again sucessfully boot the kernel on my Versatile PB/926 platform. Signed-off-by: Russell King <[email protected]>
2011-01-14rcu: avoid pointless blocked-task warningsPaul E. McKenney1-1/+2
If the RCU callback-processing kthread has nothing to do, it parks in a wait_event(). If RCU remains idle for more than two minutes, the kernel complains about this. This commit changes from wait_event() to wait_event_interruptible() to prevent the kernel from complaining just because RCU is idle. Reported-by: Russell King <[email protected]> Signed-off-by: Paul E. McKenney <[email protected]> Signed-off-by: Paul E. McKenney <[email protected]> Tested-by: Thomas Weber <[email protected]> Tested-by: Russell King <[email protected]>
2011-01-14rcu: demote SRCU_SYNCHRONIZE_DELAY from kernel-parameter statusPaul E. McKenney2-17/+13
Because the adaptive synchronize_srcu_expedited() approach has worked very well in testing, remove the kernel parameter and replace it by a C-preprocessor macro. If someone finds problems with this approach, a more complex and aggressively adaptive approach might be required. Longer term, SRCU will be merged with the other RCU implementations, at which point synchronize_srcu_expedited() will be event driven, just as synchronize_sched_expedited() currently is. At that point, there will be no need for this adaptive approach. Reported-by: Linus Torvalds <[email protected]> Signed-off-by: Paul E. McKenney <[email protected]>
2011-01-14Merge branch 'for-rmk' of git://git.pengutronix.de/git/imx/linux-2.6 into ↵Russell King41-125/+567
devel-stable
2011-01-14ARM: fix wrongly patched constantsRussell King2-4/+4
e3d9c625 (ARM: CPU hotplug: fix hard-coded control register constants) changed the wrong constants in the hotplug assembly code. Fix this. Reported-by: viresh kumar <[email protected]> Signed-off-by: Russell King <[email protected]>
2011-01-14mfd: ab8500-core chip version cut 2.0 supportMattias Wallin2-34/+55
This patch adds support for chip version 2.0 or cut 2.0. One new interrupt latch register - latch 12 - is introduced. Signed-off-by: Mattias Wallin <[email protected]> Acked-by: Linus Walleij <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14mfd: Flag WM831x /IRQ as a wake sourceMark Brown1-0/+11
The WM831x can generate wake events, some unconditionally, so flag the primary IRQ as a wake source in order to help the CPU treat the /IRQ signal appropriately. Signed-off-by: Mark Brown <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14mfd: Convert WM831x away from legacy I2C PM operationsMark Brown1-5/+8
Since the legacy bus PM operations are deprecated move the suspend method over to dev_pm_ops. Signed-off-by: Mark Brown <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14regulator: Support MAX8998/LP3974 DVS-GPIOMyungJoo Ham2-26/+87
The previous driver did not support BUCK1-DVS3, BUCK1-DVS4, and BUCK2-DVS2 modes. This patch adds such modes and an option to block setting buck1/2 voltages out of the preset values. Signed-off-by: MyungJoo Ham <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Acked-by: Mark Brown <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14mfd: Support LP3974 RTCMyungJoo Ham4-8/+83
The first releases of LP3974 have a large delay in RTC registers, which requires 2 seconds of delay after writing to a rtc register (recommended by National Semiconductor's engineers) before reading it. If "rtc_delay" field of the platform data is true, the rtc driver assumes that such delays are required. Although we have not seen LP3974s without requiring such delays, we assume that such LP3974s will be released soon (or they have done so already) and they are supported by "lp3974" without setting "rtc_delay" at the platform data. This patch adds delays with msleep when writing values to RTC registers if the platform data has rtc_delay set. Signed-off-by: MyungJoo Ham <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Reviewed-by: Mark Brown <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14i2c: Convert SCx200 driver from using raw PCI to platform deviceAndres Salomon1-120/+80
The SCx200 ACB driver supports ISA hardware as well as PCI. The PCI hardware is CS5535/CS5536 based, and the device that it grabs is handled by the cs5535-mfd driver. This converts the SCx200 driver to use a platform_driver rather than the previous PCI hackery. The driver used to manually track the iface list (via linked list); now it only does this for ISA devices. PCI ifaces are handled through standard driver model lists. It's unclear what happens in case of errors in the old ISA code; rather than pretending the code actually cares, I've dropped the (implicit) ignorance of return values and marked it with a comment. Signed-off-by: Andres Salomon <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14x86: OLPC: convert olpc-xo1 driver from pci device to platform deviceAndres Salomon2-47/+56
The cs5535-mfd driver now takes care of the PCI BAR handling; this means the olpc-xo1 driver shouldn't be touching the PCI device at all. This patch uses both cs5535-acpi and cs5535-pms platform devices rather than a single platform device because the cs5535-mfd driver may be used by other CS5535 platform-specific drivers; OLPC doesn't get to dictate that ACPI and PMS will always be used together. Signed-off-by: Andres Salomon <[email protected]> Acked-by: H. Peter Anvin <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14mfd: MAX8998/LP3974 hibernation supportMyungJoo Ham4-0/+118
This patch makes the driver to save and restore register values for hibernation. Signed-off-by: MyungJoo Ham <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14mfd/ab8500: remove spi supportSundar Iyer3-148/+5
Since the Ab8500 v1.0, the SPI support is deprecated on the HW. Signed-off-by: Sundar Iyer <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14mfd: Remove ARCH_U8500 dependency from AB8500Mark Brown1-1/+1
While it is vanishingly unlikely that the device will be deployed on other architectures removing the dependency facilitates build testing when doing generic work on both the MFD core for the device and the subsystem drivers. There appears to be no actual code dependency. Signed-off-by: Mark Brown <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14misc: Make AB8500_PWM driver depend on U8500 due to PWM breakageMark Brown1-1/+1
Since we don't have a PWM API every PWM driver ends up exporting its own version and we need to limit the platforms we try to build them on in order to avoid multiple definitions. As the AB8500 is normally a companion chip for the U8500 CPU depend on that architecture. Signed-off-by: Mark Brown <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14mfd: Add __devexit annotation for vx855_removeAxel Lin1-1/+1
Signed-off-by: Axel Lin <[email protected]> Acked-by: Harald Welte <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14mfd: twl6030 irq_data conversion.Lennert Buytenhek1-1/+1
Signed-off-by: Lennert Buytenhek <[email protected]> Acked-by: Santosh Shilimkar <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14gpio: Fix cs5535 printk warningsJoe Perches1-2/+1
drivers/gpio/cs5535-gpio.c: In function 'cs5535_gpio_probe': drivers/gpio/cs5535-gpio.c:269: warning: format '%x' expects type 'unsigned int', but argument 3 has type 'resource_size_t' drivers/gpio/cs5535-gpio.c:269: warning: format '%x' expects type 'unsigned int', but argument 4 has type 'resource_size_t' Use vsprintf extension %pR to format resource. Original-patch-by: Randy Dunlap <[email protected]> Signed-off-by: Joe Perches <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14misc: Fix cs5535 printk warningsJoe Perches1-2/+1
drivers/misc/cs5535-mfgpt.c: In function 'cs5535_mfgpt_probe': drivers/misc/cs5535-mfgpt.c:320: warning: format '%x' expects type 'unsigned int', but argument 3 has type 'resource_size_t' drivers/misc/cs5535-mfgpt.c:320: warning: format '%x' expects type 'unsigned int', but argument 4 has type 'resource_size_t' Use vsprintf extension %pR to format resource. Original-patch-by: Randy Dunlap <[email protected]> Signed-off-by: Joe Perches <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14mfd: Convert Wolfson MFD drivers to use irq_data accessor functionMark Brown3-13/+13
Actually makes the code larger rathe rthan smaller but does provide some isolation against core API changes. Signed-off-by: Mark Brown <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14mfd: Convert TWL4030 to new irq_ APIsMark Brown1-14/+14
The genirq core is being updated to pass struct irq_data to irq_chip operations. Update the TWL4030 driver to the new APIs. Signed-off-by: Mark Brown <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14mfd: Convert tps6586x driver to new irq_ APIMark Brown1-14/+14
The genirq core is being updated to supply struct irq_data to irq_chip operations rather than an irq number. Update the tps6586x driver to the new APIs. Signed-off-by: Mark Brown <[email protected]> Acked-by: Mike Rapoport <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14mfd: Convert tc6393xb driver to new irq_ APIsMark Brown1-11/+11
The genirq core is being update to pass struct irq_data to irq_chip rather than an irq number to operations. Update tc6393 to the new API. Signed-off-by: Mark Brown <[email protected]> Acked-by: Ian Molton <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14mfd: Convert t7166xb driver to new irq_ APIMark Brown1-10/+10
The genirq core is being updated to pass struct irq_data rather than an irq number to irq_chip operations. Update the t7166xb driver to the new APIs. Signed-off-by: Mark Brown <[email protected]> Acked-by: Ian Molton <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14mfd: Convert SMTPE driver to new irq_ APIsMark Brown1-14/+14
The genirq core is being updated to supply struct irq_data to irq_chip operations rather than an irq number. Update the SMTPE driver to the new APIs. Signed-off-by: Mark Brown <[email protected]> Acked-by: Rabin Vincent <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14mfd: Convert MAX8998 driver to irq_ APIMark Brown1-14/+16
The genirq core is being updated to pass struct irq_data to interrupt operations, update the MAX8998 driver to the new API. Signed-off-by: Mark Brown <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14mfd: Convert max8925 to new irq_ APIMark Brown1-15/+15
The genirq infrastructure is being converted to pass struct irq_data rather than an irq number to irq_chip operations, update max8925 to the new APIs. Signed-off-by: Mark Brown <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14mfd: Convert jz4740-adc to new irq_ methodsMark Brown1-13/+12
Convert the jz4740-adc driver to use the recently introduced IRQ API variants which are passed struct irq_data rather than an IRQ number. Signed-off-by: Mark Brown <[email protected]> Signed-off-by: Lars-Peter Clausen <[email protected]> Signed-off-by: Mark Brown <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14mfd: Convert HTC I2C CPLD driver to irq_ APIMark Brown1-15/+15
The genirq core is being converted to pass a struct irq_data to interrupt operations rather than an IRQ number. Signed-off-by: Mark Brown <[email protected]> Acked-by: Cory Maccarrone <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14mfd: Convert HTC EGPIO driver to irq_ APIMark Brown1-13/+14
The genirq core is being converted to pass a struct irq_data to interrupt operations rather than an IRQ number. Signed-off-by: Mark Brown <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14mfd: Convert ezx-pcap to new irq_ methodsLennert Buytenhek1-10/+10
Signed-off-by: Lennert Buytenhek <[email protected]> Signed-off-by: Mark Brown <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14mfd: Convert AB8500 to new irq_ methodsMark Brown1-14/+14
The genirq core is being converted to supply struct irq_data to chips rather than the interrupt number. Signed-off-by: Mark Brown <[email protected]> Acked-by: Mattias Wallin <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14mfd: Convert AB3500 to new irq_ APIsMark Brown1-15/+13
The genirq core is being updated to pass struct irq_data rather than irq numbers into chip drivers. As part of the update assignments to NULL for unused operations are removed, these are not needed and the genirq docs should be good enough. Signed-off-by: Mark Brown <[email protected]> Acked-by: Mattias Wallin <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2011-01-14mfd: Convert ASIC3 to new irq_ APIsMark Brown1-28/+28
The interrupt controller APIs are being updated to pass a struct irq_data rather than the interrupt number. Signed-off-by: Mark Brown <[email protected]> Acked-by: Ian Molton <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>