- 21 Nov, 2012 5 commits
-
-
Aaro Koskinen authored
Retu is a multi-function device found on Nokia Internet Tablets implementing at least watchdog, RTC, headset detection and power button functionality. This patch implements minimum functionality providing register access, IRQ handling and power off functions. Acked-by:
Felipe Balbi <balbi@ti.com> Acked-by:
Tony Lindgren <tony@atomide.com> Signed-off-by:
Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
Laxman Dewangan authored
Use the regmap irq framework for implementing TPS65090 interrupt support in place of implementing it locally. Signed-off-by:
Laxman Dewangan <ldewangan@nvidia.com> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
Laxman Dewangan authored
Since tps65090 register is accessed via regmap, moving the register access APIs to header and making it as inline. Signed-off-by:
Laxman Dewangan <ldewangan@nvidia.com> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
Laxman Dewangan authored
Remove unused member from tps65090 data structure as these are not used. Signed-off-by:
Laxman Dewangan <ldewangan@nvidia.com> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
Laxman Dewangan authored
TPS80031/ TPS80032 Fully Integrated Power Management with Power Path and Battery Charger. The device provides five configurable step-down converters, 11 general purpose LDOs, USB OTG Module, ADC, RTC, 2 PWM, System Voltage Regulator/Battery Charger with Power Path from USB, 32K clock generator. Add the mfd core driver for TPS80031/TPS80032. Signed-off-by:
Laxman Dewangan <ldewangan@nvidia.com> Reviwed-by:
Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
- 20 Nov, 2012 13 commits
-
-
Davide Ciminaghi authored
These are required for the clock infrastructure code to properly configure and control the sta2x11 PLLs. Signed-off-by:
Davide Ciminaghi <ciminaghi@gnudd.com> Acked-by:
Alessandro Rubini <rubini@gnudd.com> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
Davide Ciminaghi authored
Signed-off-by:
Davide Ciminaghi <ciminaghi@gnudd.com> Acked-by:
Alessandro Rubini <rubini@gnudd.com> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
Davide Ciminaghi authored
Since there are now many sta2x11-mfd platform devices, using defines for their names looks like a better solution. Signed-off-by:
Davide Ciminaghi <ciminaghi@gnudd.com> Acked-by:
Alessandro Rubini <rubini@gnudd.com> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
Davide Ciminaghi authored
A couple of predefined clocks (mux and gated) need to be initialized with the virtual address of the clock's controlling register and the address of a spinlock used to protect against races. This function exports such data for all the mfd cells. Signed-off-by:
Davide Ciminaghi <ciminaghi@gnudd.com> Acked-by:
Alessandro Rubini <rubini@gnudd.com> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
Davide Ciminaghi authored
Signed-off-by:
Davide Ciminaghi <ciminaghi@gnudd.com> Acked-by:
Alessandro Rubini <rubini@gnudd.com> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
Davide Ciminaghi authored
A driver for the apb-soc registers is needed by the clock infrastructure code to configure and control clocks on the sta2x11 chip. Since some of the functions in sta2x11-mfd.c were almost identical for the two existing platform devices, the following changes have been performed to avoid further code duplication while adding the apb-soc-regs driver: * The sctl_regs and apbreg_regs fields in struct sta2x11_mfd have been turned into just one array of pointers accessed by device index. * Platform probe methods have become one-liners invoking a common probe with the device's index as second parameter. * For loops have been inserted where the same operations were performed for each of the two bars of a pci device. * The apbreg_mask and sctl_mask functions were almost identical, so they were turned into inline functions invoking a common __sta2x11_mfd_mask() with the platform device's index as last parameter. To do this, enum sta2x11_mfd_plat_dev has been declared in sta2x11-mfd.h and more device types have been added to it. Reviewed-by:
Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by:
Davide Ciminaghi <ciminaghi@gnudd.com> Acked-by:
Alessandro Rubini <rubini@gnudd.com> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
Lars Poeschel authored
This adds the mfd cell to use the adc part of the Nano River Technologies viperboard. Signed-off-by:
Lars Poeschel <poeschel@lemonage.de> Reviewed-by:
Lars-Peter Clausen <lars@metafoo.de> Acked-by:
Jonathan Cameron <jic23@kernel.org> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
Lars Poeschel authored
This adds the mfd cell to use the i2c part of the Nano River Technologies viperboard as i2c master. Signed-off-by:
Lars Poeschel <poeschel@lemonage.de> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
Lars Poeschel authored
This adds the mfd cell to use the gpio a and gpio b part of the Nano River Technologies viperboard. Signed-off-by:
Lars Poeschel <poeschel@lemonage.de> Reviewed-by:
Linus Walleij <linus.walleij@linaro.org> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
Lars Poeschel authored
Add mfd driver for Nano River Technologies viperboard. Signed-off-by:
Lars Poeschel <poeschel@lemonage.de> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
Fabio Estevam authored
Create a da9052-irq.c file so that it can handle interrupt related functions. This is useful for allowing the da9052 drivers to use such functions when dealing with da9052 interrupts. Signed-off-by:
Fabio Estevam <fabio.estevam@freescale.com> Acked-by:
Arnd Bergmann <arnd@arndb.de> Reviewed-by:
Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
Laxman Dewangan authored
In place of implementing the irq support in separate file, moving implementation to main mfd file. The irq files only contains the table and init steps only and does not need extra file to have this only for this purpose. Signed-off-by:
Laxman Dewangan <ldewangan@nvidia.com> Reviewed-by:
Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
Laxman Dewangan authored
Implement irq support of tps65910 with regmap irq framework in place of implementing locally. This reduces the code size significantly and easy to maintain. Signed-off-by:
Laxman Dewangan <ldewangan@nvidia.com> Reviewed-by:
Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
- 13 Nov, 2012 2 commits
-
-
Laxman Dewangan authored
Allocate the irq base if it base is not porvided i.e. in case of device tree invocation of this driver. Convert the tps6586x driver to irq domain, using a legacy IRQ mapping if an irq_base is specified in platform data or dynamically allocated and otherwise using a linear mapping. Signed-off-by:
Laxman Dewangan <ldewangan@nvidia.com> Reviewed-by:
Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
Peter Ujfalusi authored
With regmap_irq it is possible to remove the twl6040-irq.c file and simplify the code. Signed-off-by:
Peter Ujfalusi <peter.ujfalusi@ti.com> Reviewed-by:
Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
- 11 Nov, 2012 2 commits
-
-
Geert Uytterhoeven authored
Older gcc (< 4.4) doesn't like files starting with Unicode BOMs: include/linux/mfd/da9055/core.h:1: error: stray ‘\357’ in program include/linux/mfd/da9055/core.h:1: error: stray ‘\273’ in program include/linux/mfd/da9055/core.h:1: error: stray ‘\277’ in program include/linux/mfd/da9055/pdata.h:1: error: stray ‘\357’ in program include/linux/mfd/da9055/pdata.h:1: error: stray ‘\273’ in program include/linux/mfd/da9055/pdata.h:1: error: stray ‘\277’ in program include/linux/mfd/da9055/reg.h:1: error: stray ‘\357’ in program include/linux/mfd/da9055/reg.h:1: error: stray ‘\273’ in program include/linux/mfd/da9055/reg.h:1: error: stray ‘\277’ in program Remove the BOMs, the rest of the files is plain ASCII anyway. Output of "file" before: include/linux/mfd/da9055/core.h: UTF-8 Unicode (with BOM) C program text include/linux/mfd/da9055/pdata.h: UTF-8 Unicode (with BOM) C program text include/linux/mfd/da9055/reg.h: UTF-8 Unicode (with BOM) C program text Output of "file" after: include/linux/mfd/da9055/core.h: ASCII C program text include/linux/mfd/da9055/pdata.h: ASCII C program text include/linux/mfd/da9055/reg.h: ASCII C program text Signed-off-by:
Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
Lee Jones authored
The STMPE driver is yet another IRQ controller which requires its own IRQ domain. So, we provide it with one. Acked-by:
Arnd Bergmann <arnd@arndb.de> Acked-by:
Linus Walleij <linus.walleij@linaro.org> Signed-off-by:
Lee Jones <lee.jones@linaro.org> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
- 08 Nov, 2012 1 commit
-
-
Wei WANG authored
Realtek PCI-E card reader driver adapts requests from upper-level sdmmc/memstick layer to the real physical card reader. Signed-off-by:
Wei WANG <wei_wang@realsil.com.cn> Reviewed-by:
Arnd Bergmann <arnd@arndb.de> Tested-by:
Borislav Petkov <bp@alien8.de> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
- 05 Nov, 2012 5 commits
-
-
Patil, Rachna authored
This patch adds support for TI's ADC driver. This is a multifunctional device. Analog input lines are provided on which voltage measurements can be carried out. You can have upto 8 input lines. Signed-off-by:
Patil, Rachna <rachna@ti.com> Acked-by:
Jonathan Cameron <jic23@kernel.org> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
Patil, Rachna authored
This patch converts touchscreen into a MFD client. All the register definitions, clock initialization, etc has been moved to MFD core driver. Signed-off-by:
Patil, Rachna <rachna@ti.com> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
Patil, Rachna authored
Add the mfd core driver which supports touchscreen and ADC. With this patch we are only adding infrastructure to support the MFD clients. Signed-off-by:
Patil, Rachna <rachna@ti.com> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
Patil, Rachna authored
Make way for addition of MFD driver. The existing touchsreen driver is a MFD client. For better readability we rename the file to indicate its functionality as only touchscreen. Signed-off-by:
Patil, Rachna <rachna@ti.com> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
Patil, Rachna authored
There are 16 programmable Step Configuration registers which are used by the sequencer. Program the Steps in order to configure a channel input to be sampled. If the same step is applied several times, the coordinate values read are more accurate. Hence we provide the user an option of how many steps should be configured. For ex: If this value is assigned as 4, This means that 4 steps are applied to read x co-ordinate and 4 steps to read y co-ordinate. Furtheron the interrupt handler already holds code to use delta filter and report the best value out of these values to the input sub-system. Signed-off-by:
Patil, Rachna <rachna@ti.com> Signed-off-by:
Samuel Ortiz <sameo@linux.intel.com>
-
- 02 Nov, 2012 1 commit
-
-
Sasha Levin authored
This hashtable implementation is using hlist buckets to provide a simple hashtable to prevent it from getting reimplemented all over the kernel. Signed-off-by:
Sasha Levin <levinsasha928@gmail.com> [ Merging this now, so that subsystems can start applying Sasha's patches that use this - Linus ] Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org>
-
- 31 Oct, 2012 2 commits
-
-
Xiao Guangrong authored
After commit b3356bf0 (KVM: emulator: optimize "rep ins" handling), the pieces of io data can be collected and write them to the guest memory or MMIO together Unfortunately, kvm splits the mmio access into 8 bytes and store them to vcpu->mmio_fragments. If the guest uses "rep ins" to move large data, it will cause vcpu->mmio_fragments overflow The bug can be exposed by isapc (-M isapc): [23154.818733] general protection fault: 0000 [#1] SMP DEBUG_PAGEALLOC [ ......] [23154.858083] Call Trace: [23154.859874] [<ffffffffa04f0e17>] kvm_get_cr8+0x1d/0x28 [kvm] [23154.861677] [<ffffffffa04fa6d4>] kvm_arch_vcpu_ioctl_run+0xcda/0xe45 [kvm] [23154.863604] [<ffffffffa04f5a1a>] ? kvm_arch_vcpu_load+0x17b/0x180 [kvm] Actually, we can use one mmio_fragment to store a large mmio access then split it when we pass the mmio-exit-info to userspace. After that, we only need two entries to store mmio info for the cross-mmio pages access Signed-off-by:
Xiao Guangrong <xiaoguangrong@linux.vnet.ibm.com> Signed-off-by:
Marcelo Tosatti <mtosatti@redhat.com>
-
Konrad Rzeszutek Wilk authored
As Mukesh explained it, the MMUEXT_TLB_FLUSH_ALL allows the hypervisor to do a TLB flush on all active vCPUs. If instead we were using the generic one (which ends up being xen_flush_tlb) we end up making the MMUEXT_TLB_FLUSH_LOCAL hypercall. But before we make that hypercall the kernel will IPI all of the vCPUs (even those that were asleep from the hypervisor perspective). The end result is that we needlessly wake them up and do a TLB flush when we can just let the hypervisor do it correctly. This patch gives around 50% speed improvement when migrating idle guest's from one host to another. Oracle-bug: 14630170 CC: stable@vger.kernel.org Tested-by:
Jingjie Jiang <jingjie.jiang@oracle.com> Suggested-by:
Mukesh Rathor <mukesh.rathor@oracle.com> Signed-off-by:
Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
-
- 30 Oct, 2012 1 commit
-
-
Takashi Iwai authored
For more strict protection for wild disconnections, a refcount is introduced to the card instance, and let it up/down when an object is referred via snd_lookup_*() in the open ops. The free-after-last-close check is also changed to check this refcount instead of the empty list, too. Reported-by:
Matthieu CASTET <matthieu.castet@parrot.com> Cc: <stable@vger.kernel.org> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 28 Oct, 2012 2 commits
-
-
Mikulas Patocka authored
Use rcu_read_lock_sched / rcu_read_unlock_sched / synchronize_sched instead of rcu_read_lock / rcu_read_unlock / synchronize_rcu. This is an optimization. The RCU-protected region is very small, so there will be no latency problems if we disable preempt in this region. So we use rcu_read_lock_sched / rcu_read_unlock_sched that translates to preempt_disable / preempt_disable. It is smaller (and supposedly faster) than preemptible rcu_read_lock / rcu_read_unlock. Signed-off-by:
Mikulas Patocka <mpatocka@redhat.com> Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org>
-
Mikulas Patocka authored
This patch introduces new barrier pair light_mb() and heavy_mb() for percpu rw semaphores. This patch fixes a bug in percpu-rw-semaphores where a barrier was missing in percpu_up_write. This patch improves performance on the read path of percpu-rw-semaphores: on non-x86 cpus, there was a smp_mb() in percpu_up_read. This patch changes it to a compiler barrier and removes the "#if defined(X86) ..." condition. From: Lai Jiangshan <laijs@cn.fujitsu.com> Signed-off-by:
Mikulas Patocka <mpatocka@redhat.com> Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org>
-
- 26 Oct, 2012 1 commit
-
-
Johannes Berg authored
A number of places in the mesh code don't check that the frame data is present and in the skb header when trying to access. Add those checks and the necessary pskb_may_pull() calls. This prevents accessing data that doesn't actually exist. To do this, export ieee80211_get_mesh_hdrlen() to be able to use it in mac80211. Cc: stable@vger.kernel.org Signed-off-by:
Johannes Berg <johannes.berg@intel.com>
-
- 25 Oct, 2012 1 commit
-
-
Will Deacon authored
rb_erase_augmented() is a static function annotated with __always_inline. This causes a compile failure when attempting to use the rbtree implementation as a library (e.g. kvm tool): rbtree_augmented.h:125:24: error: expected `=', `,', `;', `asm' or `__attribute__' before `void' Include linux/compiler.h in rbtree_augmented.h so that the __always_inline macro is resolved correctly. Signed-off-by:
Will Deacon <will.deacon@arm.com> Cc: Pekka Enberg <penberg@kernel.org> Reviewed-by:
Michel Lespinasse <walken@google.com> Cc: Ingo Molnar <mingo@elte.hu> Signed-off-by:
Andrew Morton <akpm@linux-foundation.org> Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org>
-
- 24 Oct, 2012 4 commits
-
-
Joe Perches authored
The __used attribute prevents gcc from eliminating unnecessary, otherwise optimized away, metadata for debugging logging messages. Remove the __used attribute. Signed-off-by:
Joe Perches <joe@perches.com> Acked-by:
Jason Baron <jbaron@redhat.com> Signed-off-by:
Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-
Yinghai Lu authored
We will not map partial pages, so need to make sure memblock allocation will not allocate those bytes out. Also we will use for_each_mem_pfn_range() to loop to map memory range to keep them consistent. Signed-off-by:
Yinghai Lu <yinghai@kernel.org> Link: http://lkml.kernel.org/r/CAE9FiQVZirvaBMFYRfXMmWEcHbKSicQEHz4VAwUv0xFCk51ZNw@mail.gmail.com Acked-by:
Jacob Shin <jacob.shin@amd.com> Signed-off-by:
H. Peter Anvin <hpa@linux.intel.com> Cc: <stable@vger.kernel.org>
-
Srivatsa S. Bhat authored
The perf_cpu_notifier() macro invokes smp_processor_id() multiple times. Optimize it by using a local variable. Signed-off-by:
Srivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com> Reviewed-by:
Paul E. McKenney <paulmck@linux.vnet.ibm.com> Cc: peterz@infradead.org Cc: acme@ghostprotocols.net Link: http://lkml.kernel.org/r/20121016075817.3572.76733.stgit@srivatsabhat.in.ibm.com Signed-off-by:
Ingo Molnar <mingo@kernel.org>
-
Srivatsa S. Bhat authored
The CPU_STARTING notifiers are supposed to be run with irqs disabled. But the perf_cpu_notifier() macro invokes them without doing that. Fix it. Signed-off-by:
Srivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com> Reviewed-by:
Paul E. McKenney <paulmck@linux.vnet.ibm.com> Cc: peterz@infradead.org Cc: acme@ghostprotocols.net Link: http://lkml.kernel.org/r/20121016075809.3572.47848.stgit@srivatsabhat.in.ibm.com Signed-off-by:
Ingo Molnar <mingo@kernel.org>
-