- 17 Oct, 2008 20 commits
-
-
Paul Walmsley authored
Commit 8b1f0bd4 introduced a bug that caused non-CORE DPLL rates to be incorrectly set on boot in omap3_noncore_dpll_enable(). Debugged by Tomi Valkeinen <tomi.valkeinen@nokia.com> - thanks Tomi. Also fix omap3_noncore_dpll_set_rate() to assign clk->rate after a DPLL reprogram. Tested on 3430SDP. Signed-off-by: Paul Walmsley <paul@pwsan.com> Cc: Tomi Valkeinen <tomi.valkeinen@nokia.com> Cc: Rick Bronson <rick@efn.org> Cc: Timo Kokkonen <timo.t.kokkonen@nokia.com> Cc: Sakari Poussa <sakari.poussa@nokia.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
Felipe Balbi authored
num_eps is 16, not 32. Signed-off-by: Felipe Balbi <felipe.balbi@nokia.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
Sanjeev Premi authored
Signed-off-by: Sanjeev Premi <premi@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
Sanjeev Premi authored
Fix these compiler warnings: smartreflex.c:126: warning: initialization makes integer from pointer without a cast smartreflex.c:134: warning: initialization makes integer from pointer without a cast Refreshed after updates from Felipe. Signed-off-by: Sanjeev Premi <premi@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
vimal singh authored
Sync nand.h with mainline kernel Moving NAND_BLOCK_SIZE definition to board-3430sdp-flash.c Signed-off-by: Vimal Singh <vimalsingh@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
Timo Karjalainen authored
This patch fixes two problems in LM8323 PWM control. One is that locking is needed when setting and reading pwm->desired_brightness asynchronously. The other is that LM8323 may stop a PWM script only after the current instruction has finished. If it is a long RAMP, the chip would keep executing the old instruction and new settings were effectively ignored. Signed-off-by: Timo Karjalainen <timo.o.karjalainen@nokia.com> Signed-off-by: Daniel Stone <daniel.stone@nokia.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
Peter Ujfalusi authored
There is no reason to limit the GPIO rows to 6 for OMAP2. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
Peter Ujfalusi authored
The GPIO interrupts has been disabled several times after the first key press. No need to disable - again - the interrupts in the omap_kp_scan_keypad function on OMAP2. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
Felipe Balbi authored
That cast was annyoing for quite a while. Now omap_ctrl_base_get() returns void __iomem * and __raw_read/write friends uses void __iomem * so there's no need for casting. Signed-off-by: Felipe Balbi <felipe.balbi@nokia.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
Arun KS authored
Adding MCBSP port 1, 3, 4 and 5 ports mux settings for 2430. Signed-off-by: Arun KS <arunks@mistralsolutions.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
Arun KS authored
Enables mcspi support in omap2evm defconfig Signed-off-by: Arun KS <arunks@mistralsolutions.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
Arun KS authored
Adding ads7846 touchscreen support to omap2evm board Signed-off-by: Arun KS <arunks@mistralsolutions.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
Arun KS authored
This patch adds mcspi1 and gpio_85 mux configuration for 2430. Signed-off-by: Arun KS <arunks@mistralsolutions.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
arun c authored
As sugested by RMK Signed-off-by: Arun C <arunedarath@mistralsolutions.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
David Brownell authored
Various cleanups to the OMAP EHCI bus glue: - Whitespace fixes. - Busy-wait loops should really have timeouts, but lacking that ... at least cpu_relax() in the body. - Debug messages should end with newlines, so they don't break the next message; should not embed newlines; and should otherwise be clean and correctly spelled. - The probe() method should have initialized the SBRN value, so the driver didn't report "USB 0.0 started". - The MODULE_ALIAS() was missing its "platform:" prefix; doing it right means the module could hotplug/coldplug. No real functional change except for the hotplug/coldplug thing. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
Lauri Leukkunen authored
This prevents spurious interrupts from repeating unacked and thus locking the system, while still allowing the spurious bad irq error message to be show on console. Signed-off-by: Lauri Leukkunen <lauri.leukkunen@nokia.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
This is until the EHCI issues have been sorted out. Signed-off-by: Tony Lindgren <tony@atomid.com>
-
Tony Lindgren authored
Update defconfigs for boards that have EHCI set Signed-off-by: Tony Lindgren <tony@atomide.com>
-
Zhaolei authored
debugfs_create_*() returns NULL if an error occurs, returns -ENODEV when debugfs is not enabled in the kernel. Comparing to PATCH v1, because clk_debugfs_init is included in "#if defined CONFIG_DEBUG_FS", we only need to check NULL return. Thanks Li Zefan <lizf@cn.fujitsu.com> debugfs_create_u8() and other function's return value's checking method are also fixed in this patch. Signed-off-by: Zhao Lei <zhaolei@cn.fujitsu.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
Nathan Monson authored
On Wed, Oct 8, 2008 at 11:36 AM, Nathan Monson <nmonson@gmail.com> wrote: > "Felipe Contreras" <felipe.contreras@gmail.com> writes: >> irq -33, desc: c0335cf8, depth: 0, count: 0, unhandled: 0 > > On the BeagleBoard list, Pratheesh Gangadhar said that mapping I/O > regions as Strongly Ordered suppresses this problem: > http://groups.google.com/group/beagleboard/browse_thread/thread/23e1c95b4bfb09b5/70d12dca569ca503?show_docid=70d12dca569ca503 Pratheesh helped me make a patch against the latest linux-omap git to try this. With this patch, my IRQ -33 problems with the DSP have disappeared. Before, I would end up in IRQ -33 loop after 10 invocations of the DSP Bridge 'ping.out' utility. I just finished running it 50,000 times without error. As stated before, this patch is just a workaround for testing purposes, not a fix. Who knows what performance side effects it has... Signed-off-by: Nathan Monson <nmonson@gmail.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
- 16 Oct, 2008 15 commits
-
-
Jagadeesh Bhaskar Pakaravoor authored
The i2c_driver in twl4030-core.c and platform_driver of twl4030-usb.c both has the name twl4030_driver. This leads to unnecessary confusion. So rename the usb platform_driver appropriately to: twl4030_usb_driver. Signed-off-by: Jagadeesh Bhaskar Pakaravoor <j-pakaravoor@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
David Brownell authored
Replace stubbed-out card-detect support for twl4030 GPIOs with a simpler platform_data mechanism. As before, no current users. Sanity tested by enabling this on Beagle; it booted OK with root on MMC. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
David Brownell authored
Export Beagle's third LED to the LED framework, now that it's accessible through the twl4030-gpio code. Claim the VBUS control, defaulting to OFF. Boards that have an EHCI connector (not rev B) will need to update this slightly. (Ideally as part of adding hooks to the ehci-map code supporting external power switching and overcurrent detection.) Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
David Brownell authored
Expose the two TWL4030 LED signals as output-only GPIOs. Boards need to explicitly ask that this be done, to help avoid conflicts on boards using these same pins to hook up to a vibrator motor. Note that these are high drive open drain signals; LEDA is rated for up to 160 mA (!), LEDB up to 60 mA. Boards using one of these signals to drive a bank of LCD backlight LEDs would probably want to access the dedicated PWMs for brightness control, too; easy to add such support later. Example: Beagle has one real LED here (PWM not necessary), and one GPIO controlling VBUS output over EHCI (PWM not wanted). Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
David Brownell authored
Convert the hsmmc init code over to standard GPIO calls: gpio_request(), gpio_free(), gpio_get_value_cansleep(). NOTE that this doesn't pass GPIO numbers in to hsmmc_init(); those values are still hard-wired. (For the write protect signal, the LACK of value is hard-wired...) So the hsmmc glue is still kind of problematic. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
David Brownell authored
Use the new gpiolib internal mechanism for tracking gpio usage, making them power the GPIO module on/off, so that the standard gpio_request()/gpio_free() calls can completely replace the twl4030-specific versions. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
David Brownell authored
Add a new internal mechanism to gpiolib to support low power operations by letting gpio_chip instances see when their GPIOs are in use. When no GPIOs are active, chips may be able to enter lower powered runtime states by disabling clocks and/or power domains. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
Remove now unncessary casts and use the same order for include files. Signed-off-by: Tony Lindgren <tony@atomide.com>
-
David Brownell authored
Simplify handling of VBUS and ID status and the USB_PRES interrupt. This seems to resolve the problems I previously saw on Beagle and Overo boards. - Read the status directly, instead of trying to infer it from dodgey side effects of IRQ handling and trigger tweaking. - Stop trying to arrange those dodgey side effects; just leave the IRQ enabled at all times. - Check that status as part of driver probe, so the PHY can always be active by the time it's needed. (BUGFIX!) - Re-sequence probe() to be less racey, and to avoid duplicating logic found elsewhere (notably irq handling and PHY activation). - Make the irq_chip be the exclusive owner of PWR_EDR (finally). - Get rid of needless work_struct ... in this irq handling thread, it's safe and cheap to call sysfs_notify() directly. Stop enabling IRQs on the USB subchip. There's no IRQ handler for them, and since ALT_INT_REROUTE isn't being set they'll never arrive ... so there's no point to enabling them. Also add some comments about other things such an otg_transciever driver should be doing, fixing minor omissions; and remove some unnecessary file inclusions. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
David Brownell authored
Disable more unnecessary TWL4030_*IRQ_* symbols. We're not yet ready to remove them all from <linux/i2c/twl4030.h> since various drivers still use those symbols (maybe indirectly) not platform resources: twl4030_bci_battery.c, twl4030-madc.c, twl4030-pwrbutton.c, and omap-twl4030keypad.c all need updates. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
David Brownell authored
Replace twl4030 GPIO IRQ handling with generic SIH support. No change in functionality; but there's now one less kernel thread tied up supporting this chip. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
David Brownell authored
Replace twl4030-pwrirq with the more capable generic TWL SIH support. "More capable" includes standard support for IRQ trigger modes; so make the RTC and USB transceiver drivers use genirq for that. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
David Brownell authored
Add TWL4030 infrastructure for shared SIH interrupts. This is basically what the twl4030 GPIO IRQ code does, but switching to a workqueue to handle each irqchip's mask/unmask and set_type operations instead of a kthread that must figure out what to do each time it wakes up. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
David Brownell authored
Switch to a different twl4030-irq SIH irq init scheme. Its goal is to remove some section issues while providing a data structure that can be reused by generic SIH IRQ handling code. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
David Brownell authored
Split the IRQ support out of twl4030-core.c into twl4030-irq.c, including some minor tidy-ups and a note_interrupt() paranoia in case of flakiness with some PIH interrupt. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
- 14 Oct, 2008 1 commit
-
-
Tony Lindgren authored
Looks like we lost this at some point, add it back to sync with mainline tree. Signed-off-by: Tony Lindgren <tony@atomide.com>
-
- 11 Oct, 2008 1 commit
-
-
Paul Walmsley authored
omap_i2c_unidle() and omap_i2c_idle() are called recursively during omap_i2c_probe(). This is evidently unexpected and will wipe out the I2C interrupt enable register the second time that omap_i2c_idle() is called consecutively. Any I2C transactions following a probe of a bus with at least one device on it will then time out. Fix by moving omap_i2c_idle() further up in omap_i2c_probe(). Ensure the I2C controller is marked as idle before the probe starts. Also attempt to catch future reappearances of this bug early in development by warning in omap_i2c_{un,}idle() when they are called recursively. Problem reported by David Brownell <david-b@pacbell.net>. Tested on 3430SDP and 2430SDP. Signed-off-by: Paul Walmsley <paul@pwsan.com> Cc: David Brownell <david-b@pacbell.net> Cc: Richard Woodruff <r-woodruff2@ti.com> Acked-by; Steve Sakoman <steve@sakoman.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
- 10 Oct, 2008 3 commits
-
-
Sanjeev Premi authored
Without this option, kernel builds would fail, with errors similar to: hsmmc.c:50: undefined reference to `twl4030_get_gpio_datain' hsmmc.c:82: undefined reference to `twl4030_free_gpio' hsmmc.c:63: undefined reference to `twl4030_request_gpio' hsmmc.c:67: undefined reference to `twl4030_set_gpio_debounce' Signed-off-by: Sanjeev Premi <premi@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
-
David Brownell authored
I can't test the pwrbutton stuff, but rtc and musb behave... With one issue: the usb transceiver glue misbehaves on startup if the device is connected. (Again.) I looked at this a bit, and I think the issue is probably caused by not actually using key USB registers ... IRQ trigger mode state transitions are at best a fragile proxy for the real state. (This is similar to the GPIO patch I just sent, but simpler except for the impact on the few drivers thinking oddly about IRQs. Those patches cover the key SIH modules, and a similar one affects the PIH in twl4030-core.) - Dave ================================ Streamline the "power irq" code, and some of the mechanisms it uses: - Support IRQ masking, not just unmasking; simpler code. - Use the standard handle_edge_irq() handler for these edge IRQs. - Use generic_handle_irq() instead of a manual expansion thereof. - Provide a missing spinlock for the shared data. In short, use more of the standard genirq code ... more correctly. Also, update the drivers using the "power IRQ" accordingly: - Don't request IRQF_DISABLED if the handler makes I2C calls; and defend against lockdep forcing it on us. - Let the irq_chip handle IRQ mask/unmask; it handles mutual exclusion between drivers, among other things. - (Unrelated) remove useless MODULE_ALIAS in pwrbutton. The USB transceiver driver still places some dodgey games with IRQ enable/disable, and IRQ trigger flags. At least some of them seem like they'd be simplified by using USB transceiver registers ... notably, startup code, which doesn't seem to check state before it enters an irq-driven mode. For the moment, these drivers still (wrongly) try to configure IRQ trigger modes themselves ... again, that's something that an irq_chip handles (but not yet, for this one). NOTE: tested (MUSB and RTC only) along with the init/retry hack to make twl4030-pwrirq work around the i2c-omap timeout problems.
-
Tony Lindgren authored
Minor cosmetic clean-up for LDP for mainline Signed-off-by: Tony Lindgren <tony@atomide.com>
-