- 23 11月, 2009 1 次提交
-
-
由 Charulatha V 提交于
This patch disables a GPIO module when all pins of a GPIO module are inactive (clock gating forced at module level) and enables the module when any gpio in the module is requested. The module is enabled only when "mod_usage" indicates that no GPIO in that module is currently active and the GPIO being requested is the 1st one to be active in that module. Each module would be disabled in omap_gpio_free() API when all GPIOs in a particular module becomes inactive. The module is re-enabled in omap_gpio_request() API when a GPIO is requested from the module that was previously disabled. Since individual GPIO's bookkeeping is added in this patch via "mod_usage", the same is used in omap_set_gpio_debounce() & omap_set_gpio_debounce_time() APIs to ensure that the gpio being used is actually "requested" prior to being used (Nishant Menon's <nm@ti.comSuggestion) GPIO module level details are specific to hardware and hence introducing this patch in low level layer (plat-omap/gpio.c) Signed-off-by: NCharulatha V <charu@ti.com> Acked-by: NNishanth Menon <nm@ti.com> Signed-off-by: NTony Lindgren <tony@atomide.com>
-
- 19 11月, 2009 1 次提交
-
-
由 Roel Kluin 提交于
The closing parenthesis was not in the right location. Signed-off-by: NRoel Kluin <roel.kluin@gmail.com> Cc: Russell King <rmk@arm.linux.org.uk> Signed-off-by: NTony Lindgren <tony@atomide.com> Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
-
- 12 11月, 2009 1 次提交
-
-
由 Rajendra Nayak 提交于
Add context save and restore to enable off-mode. Signed-off-by: NRajendra Nayak <rnayak@ti.com> Signed-off-by: NKevin Hilman <khilman@deeprootsystems.com>
-
- 20 10月, 2009 1 次提交
-
-
由 Tony Lindgren 提交于
Use ioremap in gpio.c Signed-off-by: NTony Lindgren <tony@atomide.com>
-
- 08 10月, 2009 3 次提交
-
-
由 Alistair Buxton 提交于
This patch is part of a series which removes references to omap730 in code which is shared with omap850, replacing them with references to omap7xx. This updates all the remaining omap730 references in miscellaneous local variables, macros and similar. Signed-off-by: NAlistair Buxton <a.j.buxton@gmail.com> Reviewed-by: NZebediah C. McClure <zmc@lurian.net>
-
由 Alistair Buxton 提交于
This patch is part of a series which removes references to omap730 in code which is shared with omap850, replacing them with references to omap7xx. Turns INT_730_* to INT_7XX_* for definitions in irqs.h and all users. Signed-off-by: NAlistair Buxton <a.j.buxton@gmail.com> Reviewed-by: NZebediah C. McClure <zmc@lurian.net>
-
由 Alistair Buxton 提交于
This patch is part of a series which unifies all duplicated code between omap730 and omap850. All cpu checks are converted to cpu_is_omap7xx() and CONFIG_ARCH_OMAP850 is added to all CONFIG_ARCH_OMAP730 checks. Signed-off-by: NAlistair Buxton <a.j.buxton@gmail.com> Reviewed-by: NZebediah C. McClure <zmc@lurian.net>
-
- 25 9月, 2009 1 次提交
-
-
由 Angelo Arrifano 提交于
This was crashing omap850 devices. Reported-by: NAlistair Buxton <a.j.buxton@gmail.com> Signed-off-by: NAngelo Arrifano <miknix@gmail.com> Signed-obb-by: NTony Lindgren <tony@atomide.com>
-
- 29 8月, 2009 3 次提交
-
-
由 Eero Nurkkala 提交于
It is possible for GPIO IRQ lines configured with falling edge triggering only to get IRQs at the rising edge upon the exit of offmode. And vice versa. Prevent such IRQs to arrive by generating the IRQ obeying the detection scheme. Signed-off-by: NEero Nurkkala <ext-eero.nurkkala@nokia.com> Signed-off-by: NTony Lindgren <tony@atomide.com>
-
由 Tony Lindgren 提交于
Rename OMAP_MPUIO_BASE to OMAP1_MPUIO_BASE Signed-off-by: NTony Lindgren <tony@atomide.com>
-
由 Tony Lindgren 提交于
Search and replace OMAP_IO_ADDRESS with OMAP1_IO_ADDRESS and OMAP2_IO_ADDRESS, and convert omap_read/write into a functions instead of a macros. Also rename OMAP_MPUIO_VBASE to OMAP1_MPUIO_VBASE. In the long run, most code should use ioremap + __raw_read/write instead. Signed-off-by: NTony Lindgren <tony@atomide.com>
-
- 06 8月, 2009 1 次提交
-
-
由 Kevin Hilman 提交于
If IRQ triggering is enabled, it can trigger a pending interrupt even for masked interrupts. Any pending GPIO interrupts can prevent the powerdomain from hitting retention. Problem found, reported and additional review and testing by Chunquiu Wang. Tested-by: NChunquiu Wang <cqwang@motorola.com> Signed-off-by: NKevin Hilman <khilman@deeprootsystems.com>
-
- 05 8月, 2009 1 次提交
-
-
由 Roger Quadros 提交于
gpio_get() should return DATAIN register value when the GPIO is configured as input whereas it should return DATAOUT register value when the GPIO is configured as output. Now /sys/kernel/debug/gpio shows proper values for output GPIOs Signed-off-by: NRoger Quadros <ext-roger.quadros@nokia.com> Signed-off-by: NTony Lindgren <tony@atomide.com>
-
- 28 7月, 2009 1 次提交
-
-
由 Syed Rafiuddin 提交于
This patch adds GPIO support on OMAP4430 development platform. Signed-off-by: NSyed Rafiuddin <rafiuddin.syed@ti.com>
-
- 22 7月, 2009 1 次提交
-
-
由 Magnus Damm 提交于
This patch reworks platform driver power management code for omap drivers using late/early legacy callbacks. The callbacks are converted for CONFIG_SUSPEND like this: suspend_late() -> suspend_noirq() resume_early() -> resume_noirq() Signed-off-by: NMagnus Damm <damm@igel.co.jp> Acked-by: NGreg Kroah-Hartman <gregkh@suse.de> Acked-by: NPavel Machek <pavel@ucw.cz> Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
-
- 23 6月, 2009 1 次提交
-
-
由 janboe 提交于
Some bootloader may initialize debounce register and this will make dbclk not consist with the debounce register after linux kernel boot up. Signed-off-by: Njanboe <janboe.ye@gmail.com> Signed-off-by: NKevin Hilman <khilman@deeprootsystems.com> Signed-off-by: NTony Lindgren <tony@atomide.com>
-
- 29 5月, 2009 1 次提交
-
-
由 Santosh Shilimkar 提交于
This patch adds the support for OMAP4. The platform and machine specific headers and sources updated for OMAP4430 SDP platform. OMAP4430 is Texas Instrument's SOC based on ARM Cortex-A9 SMP architecture. It's a dual core SOC with GIC used for interrupt handling and SCU for cache coherency. Signed-off-by: NSantosh Shilimkar <santosh.shilimkar@ti.com> Signed-off-by: NTony Lindgren <tony@atomide.com>
-
- 16 5月, 2009 1 次提交
-
-
由 Vikram Pandita 提交于
As per 3430 TRM, there are 6 banks [0 to 191] Signed-off-by: NTom Rix <Tom.Rix@windriver.com> Signed-off-by: NVikram Pandita <vikram.pandita@ti.com> Signed-off-by: NTony Lindgren <tony@atomide.com>
-
- 24 4月, 2009 2 次提交
-
-
由 Roger Quadros 提交于
Flush posted write to IRQSTATUS register in GPIO IRQ handler. This eliminates the below error for all peripherals that use GPIO interrupts. <4>Spurious irq 95: 0xffffffdf, please flush posted write for irq 31 Signed-off-by: NRoger Quadros <ext-roger.quadros@nokia.com> Signed-off-by: NTony Lindgren <tony@atomide.com>
-
由 Kevin Hilman 提交于
The GPIO IRQ enable/disable path attempts to also enable IRQ wake support for the parent GPIO bank IRQ as well. However, since there is no 'set_wake' hook for the bank IRQs, these calls will always fail. Also, since the enable will fail on the suspend path, the disable on the resume path will trigger unbalanced enable/disable warnings. This was discovered in the suspend/resume path on OMAP3/Beagle using the gpio-keys driver which disables/re-enables GPIO IRQ wakeups in the suspend/resume path. Signed-off-by: NKevin Hilman <khilman@deeprootsystems.com> Signed-off-by: NTony Lindgren <tony@atomide.com>
-
- 24 3月, 2009 1 次提交
-
-
由 Zebediah C. McClure 提交于
Changes to base IO subsystem. Signed-off-by: NZebediah C. McClure <zmc@lurian.net> Signed-off-by: NTony Lindgren <tony@atomide.com>
-
- 15 1月, 2009 1 次提交
-
-
由 Tony Lindgren 提交于
There are no wakeup registers on 15xx, and suspend_wakeup does not exist in the struct gpio_bank. Without this fix we'll get "arch/arm/plat-omap/gpio.c:1792: error: 'struct gpio_bank' has no member named 'suspend_wakeup'" as noted by Russell King. Note that the ifdefs will be cleaned up once the omap gpio code gets split into omap1 and omap2 specific parts. Signed-off-by: NTony Lindgren <tony@atomide.com>
-
- 11 12月, 2008 7 次提交
-
-
由 David Brownell 提交于
Minor GPIO fixes: - If get_gpio_bank() fails, then BUG() out. - In omap_set_gpio_debounce(): * protect the read/modify/write with the relevant spinlock * make the omap3 clock ops pass "sparse" checking Except for the spinlock problem, these were reported through "make". Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net> Signed-off-by: NTony Lindgren <tony@atomide.com>
-
由 Jarkko Nikula 提交于
Clean up OMAP GPIO request/free functions - Rename and declare static OMAP specific GPIO request/free functions - Register them into gpiolib as chip-specific hooks - Add omap_request_gpio/omap_free_gpio wrappers for existing code not converted yet to use gpiolib Signed-off-by: NJarkko Nikula <jarkko.nikula@nokia.com> [ dbrownell@users.sourceforge.net: remove needless check_gpio() calls ] Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net> Signed-off-by: NTony Lindgren <tony@atomide.com>
-
由 David Brownell 提交于
More conversion to the standard GPIO interfaces: stop using omap_set_gpio_direction() entirely, and switch over to the gpio_direction_output() call. Note that because gpio_direction_output() includes the initial value, this change isn't quite transparent. - For the call sites which defined an initial value either before or after setting the direction, that value was used. When that value was previously assigned afterwards, this could eliminate a brief output glitch ... and possibly change behavior. In a few cases (LCDs) several values were assigned together ... those were re-arranged to match the explicit sequence provided. - Some call sites didn't define such a value; so I chose an initial "off/reset" value that seemed to default to "off". In short, files touched by this patch might notice some small changes in startup behavior (with trivial fixes). Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net> Signed-off-by: NTony Lindgren <tony@atomide.com>
-
由 David Brownell 提交于
This patch replaces some legacy OMAP GPIO calls with the "new" (not really, any more!) calls that work on most platforms. The calls addressed by this patch are the simple ones to get and set values ... for code that's in mainline, including the implementations of those calls. Except for the declarations and definitions of those calls, all of these changes were performed by a simple SED script. Plus, a few "if() set() else set()" branches were merged by hand. Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net> Signed-off-by: NTony Lindgren <tony@atomide.com>
-
由 David Brownell 提交于
Make OMAP use the new __gpio_to_irq() hook, to make it easier to support IRQs coming in from off-chip gpio controllers like the TWL4030/TPS65930 chip used on OMAP3 boads like Beagleboard.org and the Gumstix Overo. Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net> Signed-off-by: NTony Lindgren <tony@atomide.com>
-
由 Jarkko Nikula 提交于
There are already various drivers having bigger label than 10 bytes. Most of them fit well under 20 bytes but make column width exact so that oversized labels don't mess up output alignment. Signed-off-by: NJarkko Nikula <jarkko.nikula@nokia.com> Acked-by: NDavid Brownell <dbrownell@users.sourceforge.net> Signed-off-by: NTony Lindgren <tony@atomide.com>
-
由 Jouni Hogander 提交于
This patch changes gpio "driver" to enable debounce clock for gpio-bank only when debounce is enabled for some gpio in that bank. Gpio functional clocks are also renamed in clock tree, gpioX_fck -> gpioX_dbck. This patch triggers problem with gpio wake-up and Omap3. Gpios in PER domain aren't capable to generate wake-up if PER domain is in sleep state. For this iopad wake-up should be used and needed pad configuration should be done. Enabling iopad wake-up for gpio pads is left for bootloader or omap mux configuration in kernel. Signed-off-by: NJouni Hogander <jouni.hogander@nokia.com> Acked-by: NPaul Walmsley <paul@pwsan.com> Signed-off-by: NTony Lindgren <tony@atomide.com>
-
- 27 11月, 2008 1 次提交
-
-
由 Tero Kristo 提交于
Use the correct wake-up enable register, and make it work with 34xx also. Signed-off-by: NTero Kristo <tero.kristo@nokia.com> Signed-off-by: NKevin Hilman <khilman@deeprootsystems.com> Signed-off-by: NTony Lindgren <tony@atomide.com>
-
- 09 10月, 2008 1 次提交
-
-
由 Dmitry Baryshkov 提交于
desc_handle_irq() was declared as obsolete since long ago. Replace it with generic_handle_irq() Signed-off-by: NDmitry Baryshkov <dbaryshkov@gmail.com> Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
- 06 9月, 2008 2 次提交
-
-
由 Russell King 提交于
Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
由 Russell King 提交于
gpio.c wilfully casts physical addresses to void __iomem * and then fixes them up at runtime using: bank->base = IO_ADDRESS(bank->base); where accesses prior to this fixup are via omap_read/omap_write, and after are by __raw_read/__raw_write. This doesn't lend itself to static checking, nor to easy understanding of the code. And so, OMAP_MPUIO_BASE gets to be the right type - integer like since it's a physical address, not a MMIO pointer. Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
- 03 9月, 2008 1 次提交
-
-
由 Russell King 提交于
arch/arm/plat-omap/gpio.c: In function '_omap_gpio_init': arch/arm/plat-omap/gpio.c:1492: error: 'omap_mpuio_device' undeclared (first use in this function) Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
- 07 8月, 2008 2 次提交
-
-
由 Russell King 提交于
This just leaves include/asm-arm/plat-* to deal with. Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
由 Russell King 提交于
Remove includes of asm/hardware.h in addition to asm/arch/hardware.h. Then, since asm/hardware.h only exists to include asm/arch/hardware.h, update everything to directly include asm/arch/hardware.h and remove asm/hardware.h. Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
- 27 7月, 2008 1 次提交
-
-
由 Dmitry Baryshkov 提交于
IRQT_* and __IRQT_* were obsoleted long ago by patch [3692/1]. Remove them completely. Sed script for the reference: s/__IRQT_RISEDGE/IRQ_TYPE_EDGE_RISING/g s/__IRQT_FALEDGE/IRQ_TYPE_EDGE_FALLING/g s/__IRQT_LOWLVL/IRQ_TYPE_LEVEL_LOW/g s/__IRQT_HIGHLVL/IRQ_TYPE_LEVEL_HIGH/g s/IRQT_RISING/IRQ_TYPE_EDGE_RISING/g s/IRQT_FALLING/IRQ_TYPE_EDGE_FALLING/g s/IRQT_BOTHEDGE/IRQ_TYPE_EDGE_BOTH/g s/IRQT_LOW/IRQ_TYPE_LEVEL_LOW/g s/IRQT_HIGH/IRQ_TYPE_LEVEL_HIGH/g s/IRQT_PROBE/IRQ_TYPE_PROBE/g s/IRQT_NOEDGE/IRQ_TYPE_NONE/g Signed-off-by: NDmitry Baryshkov <dbaryshkov@gmail.com> Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
- 26 7月, 2008 1 次提交
-
-
由 David Brownell 提交于
This adds a simple sysfs interface for GPIOs. /sys/class/gpio /export ... asks the kernel to export a GPIO to userspace /unexport ... to return a GPIO to the kernel /gpioN ... for each exported GPIO #N /value ... always readable, writes fail for input GPIOs /direction ... r/w as: in, out (default low); write high, low /gpiochipN ... for each gpiochip; #N is its first GPIO /base ... (r/o) same as N /label ... (r/o) descriptive, not necessarily unique /ngpio ... (r/o) number of GPIOs; numbered N .. N+(ngpio - 1) GPIOs claimed by kernel code may be exported by its owner using a new gpio_export() call, which should be most useful for driver debugging. Such exports may optionally be done without a "direction" attribute. Userspace may ask to take over a GPIO by writing to a sysfs control file, helping to cope with incomplete board support or other "one-off" requirements that don't merit full kernel support: echo 23 > /sys/class/gpio/export ... will gpio_request(23, "sysfs") and gpio_export(23); use /sys/class/gpio/gpio-23/direction to (re)configure it, when that GPIO can be used as both input and output. echo 23 > /sys/class/gpio/unexport ... will gpio_free(23), when it was exported as above The extra D-space footprint is a few hundred bytes, except for the sysfs resources associated with each exported GPIO. The additional I-space footprint is about two thirds of the current size of gpiolib (!). Since no /dev node creation is involved, no "udev" support is needed. Related changes: * This adds a device pointer to "struct gpio_chip". When GPIO providers initialize that, sysfs gpio class devices become children of that device instead of being "virtual" devices. * The (few) gpio_chip providers which have such a device node have been updated. * Some gpio_chip drivers also needed to update their module "owner" field ... for which missing kerneldoc was added. * Some gpio_chips don't support input GPIOs. Those GPIOs are now flagged appropriately when the chip is registered. Based on previous patches, and discussion both on and off LKML. A Documentation/ABI/testing/sysfs-gpio update is ready to submit once this merges to mainline. [akpm@linux-foundation.org: a few maintenance build fixes] Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net> Cc: Guennadi Liakhovetski <g.liakhovetski@pengutronix.de> Cc: Greg KH <greg@kroah.com> Cc: Kay Sievers <kay.sievers@vrfy.org> Signed-off-by: NAndrew Morton <akpm@linux-foundation.org> Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-
- 15 4月, 2008 2 次提交
-
-
由 Kevin Hilman 提交于
Currently, the GPIO interrupt handling is duplicating some of the work done by the generic IRQ handlers (handle_edge_irq, handle_level_irq) such as detecting nesting, handling re-triggers etc. Remove this duplication and use generic hooks based on IRQ type. Using generic IRQ handlers ensures correct behavior when using threaded interrupts introduced by the -rt patch. Signed-off-by: NKevin Hilman <khilman@mvista.com> Signed-off-by: NTony Lindgren <tony@atomide.com>
-
由 Kevin Hilman 提交于
The clearing was moved to the unmask hook because it is known to run after the interrupt handler has actually run. Before this patch, if interrupts are threaded, the clearing/unmasking of level triggered interrupts would be done before the threaded handler actually ran. Signed-off-by: NKevin Hilman <khilman@mvista.com> Signed-off-by: NTony Lindgren <tony@atomide.com>
-