aboutsummaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)Author
2008-11-19fix-glamo-mci-no-need-for-suspend-fake-command.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-glamo-reparenting-panic-sd-boot.patchAndy Green
We panic on SD boot now we changed Glamo order, because it didn't succeed to bring up mmcblk0p1. But, if you do loglevel=8 then it works OK. So we are racing with something... Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19debug-aux-key-probe-resume-death.patchAndy Green
Nasty temporary patch that is VERY useful, basically if you hit AUX key during suspend time, it will force an OOPS, which due to another debug patch forces a spew on serial console showing dmesg to date and the oops. Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-glamo-probe-fail-bail.patchAndy Green
Backout from failed probe was quite broken. Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19debug-glamo-drop-lcm-reset-during-glamo-probe.patchAndy Green
We shouldn't have to reset it in glamo probe Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-glamo-migrate-irq-init-before-register-init.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-glamo-irq-recursive-locking.patchAndy Green
Running heavily instrumented kernel, get report about glamo IRQ spinlock probem. [ 8.795000] ============================================= [ 8.795000] [ INFO: possible recursive locking detected ] [ 8.795000] 2.6.24 #782 [ 8.795000] --------------------------------------------- [ 8.795000] swapper/1 is trying to acquire lock: [ 8.795000] (&irq_desc_lock_class){++..}, at: [<c0077ae4>] handle_level_irq+0x24/0x120 [ 8.795000] [ 8.795000] but task is already holding lock: [ 8.795000] (&irq_desc_lock_class){++..}, at: [<c01be628>] glamo_irq_demux_handler+0x24/0x140 [ 8.795000] [ 8.795000] other info that might help us debug this: [ 8.795000] 1 lock held by swapper/1: [ 8.795000] #0: (&irq_desc_lock_class){++..}, at: [<c01be628>] glamo_irq_demux_handler+0x24/0x140 [ 8.795000] [ 8.795000] stack backtrace: [ 8.795000] [<c002ec28>] (dump_stack+0x0/0x14) from [<c006ad74>] (__lock_acquire+0x9a0/0xdec) [ 8.795000] [<c006a3d4>] (__lock_acquire+0x0/0xdec) from [<c006b264>] (lock_acquire+0xa4/0xc0) [ 8.795000] [<c006b1c0>] (lock_acquire+0x0/0xc0) from [<c02f7878>] (_spin_lock+0x44/0x78) [ 8.795000] [<c02f7834>] (_spin_lock+0x0/0x78) from [<c0077ae4>] (handle_level_irq+0x24/0x120) [ 8.795000] r6:c03e11c0 r5:0000005c r4:c03e11c0 [ 8.795000] [<c0077ac0>] (handle_level_irq+0x0/0x120) from [<c01be708>] (glamo_irq_demux_handler+0x104/0x140) [ 8.795000] r7:00000038 r6:c03e11c0 r5:00000008 r4:c03e0560 [ 8.795000] [<c01be604>] (glamo_irq_demux_handler+0x0/0x140) from [<c003c934>] (s3c_irq_demux_extint8+0x94/0xa4) [ 8.795000] r8:00000002 r7:00000003 r6:00000000 r5:c03df958 r4:00000000 [ 8.795000] [<c003c8a0>] (s3c_irq_demux_extint8+0x0/0xa4) from [<c0029048>] (__exception_text_start+0x48/0x64) [ 8.795000] r4:00000015 [ 8.795000] [<c0029000>] (__exception_text_start+0x0/0x64) from [<c0029a5c>] (__irq_svc+0x3c/0xb4) Patch removes desc->lock locking around glamo_irq_demux_handler... guess it is OK since we didn't clear interrupt source, can't recurse? Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-glamofb-defuse-yield-bomb-in-atomic-context.patchAndy Green
If we ever fall through to the yield when we turned off interrupts... it wouldn't be pretty. Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-hdq-child-attach-callback.patchAndy Green
Along the same lines as FIQ, HDQ can have children in device tree terms too. Allow the same kind of callback in machine-specific code Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19change-glamo-mci-try-memcpy.patchAndy Green
Trial to see if (mainly 32-bit) memcpy is any better than u16 loop Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-glamofb-remove-soft-delays.patchAndy Green
The delay versions of the access to registers were based on a misunderstanding of the Glamo docs: it can force nWAIT differently depending on the access type. Therefore we don't need to take special care about delays on CPU side. Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19clean-glamofb-cruft.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19test-touchscreen-median.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19introduce-gta02-pm-wlan.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19GTA02: Improve NAND timingsHarald Welte
Rather than using conservative default timings for the NAND flash, use the timings as specified in the S3C2442B MCP data sheet. Signed-off-by: Harald Welte <laforge@openmoko.org>
2008-11-19tracking-2.6.28-breakage-after-change-to-64xx-tree.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19tracking-2.6.28-device_create_drvdata-gone.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19tracking-2.6.28-bcd-functions-changed.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19Fixing trivial warningsNelson Castillo
Removed unused variable. Signed-off-by: Nelson Castillo <nelsoneci@gmail.com>
2008-11-19Fixing trivial warningsNelson Castillo
The function glamo_mci_reset is not being used. Let's comment it out. Signed-off-by: Nelson Castillo <nelsoneci@gmail.com>
2008-11-19Carry over changes to spi-gpio.hJonas Bonn
This patch carries over the OpenMoko modifications at include/asm-arm/arch-s3c2410/spi-gpio.h to arch/arm/mach-s3c2410/include/mach/spi-gpio.h Note: board_size and board_info have been removed upstream, but as we still rely on them we'll just put them back for now. These will need to be removed (and the corresponding driver changes made, of course) before this can go upstream. Signed-off-by: Jonas Bonn <jonas.bonn@gmail.com>
2008-11-19Carry over changes from asm/arch/regs-sdi.hJonas Bonn
This pulls the Moko changes to regs-sdi.h that were in include/asm-arm/arch-s3c2410 over to the file at arch/arm/../mach and deletes the file at include/asm-arm. Note: we have been using a mix of regs-sdi.h from the two different locations. The unification of these two files may have some unknown consequences... keep your eyes open for oddities after applying this. Signed-off-by: Jonas Bonn <jonas.bonn@gmail.com>
2008-11-19Move asm/arch/fiq_ipc_gta02.h to mach/fiq_ipc_gta02.hJonas Bonn
Signed-off-by: Jonas Bonn <jonas.bonn@gmail.com>
2008-11-19Move asm/arch/gta02.h to mach/gta02.hJonas Bonn
Signed-off-by: Jonas Bonn <jonas.bonn@gmail.com>
2008-11-19Move asm/arch/ts.h to mach/ts.hJonas Bonn
Signed-off-by: Jonas Bonn <jonas.bonn@gmail.com>
2008-11-19Move asm/arch/mci.h to mach/mci.hJonas Bonn
Signed-off-by: Jonas Bonn <jonas.bonn@gmail.com>
2008-11-19Move asm/arch/pwm.h to mach/pwm.hJonas Bonn
Signed-off-by: Jonas Bonn <jonas.bonn@gmail.com>
2008-11-19Re: [PATCH]: Cleanup of leds-neo1973Nelson Castillo
Remove unneeded spaces and coding style fixes. Purely cosmetic.
2008-11-19fix-stable-tracking-build-without-symlink.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19[ARM]: Move asm/arch/gpio.h to mach/ directoryJonas Bonn
This file was moved in the big file move, but some OpenMoko specific changes did not make it. This patch peels out the relevant bits and adds them to the gpio.h file in the upstream location. The only OpenMoko specific change is the definition of gpio_to_irq and irq_to_gpio. These functions should really be defined in gpio_chip and asm-generic/gpio.h; this is coming soon, but until then we'll just use the Moko definitions that we've been using up until now. This is not strictly correct for the GTA02 case, but it works given the configuration that's currently in use. This can be fixed (and should become evident) when the configuration options are cleaned up. Signed-off-by: Jonas Bonn <jonas.bonn@gmail.com>
2008-11-19[ARM]: Move asm/arch/gta01.h to include/machJonas Bonn
This file is OpenMoko specific and didn't get moved in the big file move. Move it to arch/arm/mach-s3c2410/include/mach where it belongs and fix the references to it. Signed-off-by: Jonas Bonn <jonas.bonn@gmail.com>
2008-11-19[ARM]: Build fix after file moveJonas Bonn
After the big include file move these paths ended up incorrect. Fix these so that this builds cleanly again. Signed-off-by: Jonas Bonn <jonas.bonn@gmail.com>
2008-11-19suppress "onkey" events on resume [Was: Re: Where are actions configured for ↵\\\\\\\\\\\\\\\"Mike (mwester)\\\\\\\\\\\\
buttons in FSO?] Michael 'Mickey' Lauer wrote: ... > The problem is (and this is the reason why I'm crossposting this to the > kernel mailing list), the kernel is not swallowing the power button > presses that triggers the resume, so you need some "real" programming > (as opposed to the expressional complexity of our rules) in order to > prevent falling asleep right after resume. > > Kernel-guys, can we change that? suppress-resume-onkey-event.patch This suppresses the key press and key release events from the power button, in the case where the power button is the wake event for the GTA01 or GTA02 device. Signed-off-by: Mike Westerhof <mwester@dls.net>
2008-11-19fix-wrongful-led-trigger-removal.patchSean McNeil
LED trigger gets removed in led_brightness_store??? Signed-off-by: Sean McNeil <sean@mcneil.com>
2008-11-19fix-lis302dl-issues.patchSean McNeil
Move to level from edge, fix local_save... to local_irq... simplify bitbang sequence Signed-off-by: Sean McNeil <sean@mcneil.com>
2008-11-19clean-leds-remove-pwm-stuff.patchSean McNeil
Remove unsued PWM stuff around LEDs. Signed-off-by: Sean McNeil <sean@mcneil.com>
2008-11-19add-powersupply-ac-usb-automonitor.patchSean McNeil
Adds AC and USB powersupply objects, and a workqueue to automonitor changes in battery state and fire change events on any change to selected registers. Signed-off-by: Sean McNeil <sean@mcneil.com>
2008-11-19add-neo1973kbd-jack-state-sys.patchSean McNeil
Add /sys files for jack state reporting. Signed-off-by: Sean McNeil <sean@mcneil.com>
2008-11-19glamo_fb: Implement screen blankingHarald Welte
This patch implements fb_blank() for the glamo-fb driver, which switches off the pixel clock (DCLK) for power saving. We currently delay the actual pixel clock switch until we enter FB_BLANK_POWERDOWN, since the backlight fade is slow and we don't want the user to see artefacts on the screen while the backlight is fading out. So since the X server first sends FB_BLANK_{V,H}SYNC_SUSPEND, we start the backlight fade here, and only once we get FB_BLANK_POWERDOWN the pixel clock is disabled. There are no measurements yet, but the power savings should be double, since there is no longer any generation of the high-frequency LCM signals, and there are no video-related SDRAM accesses anymore. Signed-off-by: Harald Welte <laforge@openmoko.org>
2008-11-19glamo_fb: sync comment with codeHarald Welte
the comment claims that DHCLK is enabled, while the code actually disables it. No code change, purely cosmetic patch. Signed-off-by: Harald Welte <laforge@openmoko.org>
2008-11-19glamo_fb: Cosmetic cleanupHarald Welte
Remove dead code and coding style fixes. Purely cosmetic. Signed-off-by: Harald Welte <laforge@openmoko.org>
2008-11-19fix-pcf50633-do-backlight-bringup-in-probe.patchAndy Green
Qi does not touch the backlight, we have to do it in Linux now Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19This patch adds a framebuffer notifier in order to detectHarald Welte
FB_BLANK events and switch the JBT6K74 LCM controller into its power saving mode. This has the potential of saving something like 50mW during screen blank. Signed-off-by: Harald Welte <laforge@openmoko.org>
2008-11-19revert-fix-build-with-no-config_mmc-glamo-resume-callback-part.patchAndy Green
Thomas White noticed that the recent patch from Andrzej cleaning up a nasty cast in the resume_dependency stuff for Glamo broke resume. The problem was that the wrong resume callback was arrived at by the new code, the one in the device's device_driver struct rather than the struct platform_driver that actually holds the right pointer. Since this code will be gone in 2.6.26, I reverted this part of Andrzej's patch, tidying the cast a bit anyway. Reported-by: Thomas White <taw27@cam.ac.uk> Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19tracking-2.6.27-rc9-hdq-ordering.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19GTA01: replace mutex with spinlock in neo1973_vib_vib_setJonas Bonn
This function (set_brightness) may be called in interrupt context and therefore should not sleep; use a spin_lock instead of a mutex to ensure this. This should take care of the following BUG: [21474678.340000] BUG: sleeping function called from invalid context at kernel/mutex.c:207 [21474678.340000] in_atomic():1, irqs_disabled():0 [21474678.340000] no locks held by python/1255. [21474678.340000] [<c002d928>] (dump_stack+0x0/0x18) from [<c003b08c>] (__might_sleep+0xdc/0xf8) [21474678.340000] [<c003afb0>] (__might_sleep+0x0/0xf8) from [<c02efc08>] (mutex_lock_nested+0x2c/0x264) [21474678.340000] r5:c03ed754 r4:c03ed6dc [21474678.340000] [<c02efbdc>] (mutex_lock_nested+0x0/0x264) from [<c022e180>] (neo1973_vib_vib_set+0x2c/0x6c) [21474678.340000] [<c022e154>] (neo1973_vib_vib_set+0x0/0x6c) from [<c022e6a4>] (led_timer_function+0x8c/0xb4) [21474678.340000] r6:c041a1a0 r5:c7f34820 r4:0000012c [21474678.340000] [<c022e618>] (led_timer_function+0x0/0xb4) from [<c004aeb4>] (run_timer_softirq+0x180/0x20c) [21474678.340000] r5:c7f3482c r4:00000102 [21474678.340000] [<c004ad34>] (run_timer_softirq+0x0/0x20c) from [<c0046368>] (__do_softirq+0x64/0xd8) [21474678.340000] r8:00000000 r7:00000001 r6:0000000a r5:c0419ff8 r4:00000041 [21474678.340000] [<c0046304>] (__do_softirq+0x0/0xd8) from [<c0046764>] (irq_exit+0x48/0x5c) [21474678.340000] r6:00000000 r5:c03d128c r4:0000001e [21474678.340000] [<c004671c>] (irq_exit+0x0/0x5c) from [<c0028050>] (__exception_text_start+0x50/0x68) [21474678.340000] [<c0028000>] (__exception_text_start+0x0/0x68) from [<c0028a8c>] (__irq_usr+0x4c/0xe0) [21474678.340000] Exception stack(0xc7d7bfb0 to 0xc7d7bff8) [21474678.340000] bfa0: 0055bb3a 0000004a 00000000 0055baf0 [21474678.340000] bfc0: 0000004a 0052ae30 00000025 005168e0 00000073 00000025 401281ec 00000000 [21474678.340000] bfe0: 0000006f be9b8470 006e0069 400a8844 60000010 ffffffff [21474678.340000] r6:00004000 r5:f4000000 r4:ffffffff Signed-off-by: Jonas Bonn <jonas.bonn@gmail.com>
2008-11-19Drop FIQ dependency for GTA01 configuration.Jonas Bonn
When the config option MACH_NEO1973_GTA02 is not set, then we do not need to have any access to the FIQ symbols. Signed-off-by: Jonas Bonn <jonas.bonn@gmail.com>
2008-11-19always-call-resume-dependencies.patch\\\\\\\\\\\\\\\"Mike (mwester)\\\\\\\\\\\\
Attached is a patch that has greatly reduced the frequency of failures to resume (due to an oops from the glamo resume handler), and the dreaded "white screen after resume". I can't say that it fixes all of these, although I have yet to see the white-screen since applying this patch and suspending/resuming several hundred times (with the 30-second suspend on the 2008.8 image and the endless stream of GSM error messages generated by something in that image, it has proved to be very useful to do an automated stress test!) This patch will apply to stable, and should make stable slightly more, well, "stable". [Feel free to remove the debug messages if someone feels strongly about that; I left them in because I think they might be useful in triaging further crashes; I'm not at all convinced that this patch will fix all the cases of resume failures.] [[And, yes, this is ugly, really ugly.]] [[[Oh yeah - there's still one extreme case that will result in an oops: if a dependent driver is built as a module, and it is unloaded, and it happened that the preceding suspend/resume was aborted, and that abort happened between the dependent driver and the driver upon which it is dependent, then a list entry will be left behind referencing the unloaded module. There's just no good way to fix that given the way the resume dependency plumbing is connected up right now, so just avoid using modules for any of the drivers involved in the resume dependency stuff.]]] Regards, Mike (mwester) commit 905d2fc9c45f622418ce9ef4e67c23453aab7571 Author: Mike Westerhof <mwester@dls.net> Date: Mon Aug 11 11:11:25 2008 -0500 always-call-resume-dependencies.patch Ensure that a dependent resume handler is always executed, even if the resume handler for driver upon which it is dependent never suspends (and therefore never resumes either). Also make sure that we do not end up with duplicate dependencies registered, something that can happen if the suspend is aborted due to driver failure or an early resume (such as occurs when the GSM interrupts during suspend). Signed-off-by: Mike Westerhof <mwester@dls.net>
2008-11-19fix-build-with-no-CONFIG_MMCAndrzej Zaborowski
I hit this when updating to 2.6.26. Also if CONFIG_MMC is enabled this patch converts this horrible horrible hack into a horrible hack by using dev->resume() (untested). Signed-off-by: Andrzej Zaborowski <balrog@zabor.org>
2008-11-19fix-glamo-mci-slow-clock-until-first-bulk.patchAndy Green
This patch adds another module parameter to glamo-mci which sets the SD Card clock rate used inbetween powering the card and the completion of the first bulk transfer. You can set it from kernel commandline like this. glamo_mci.sd_post_power_clock=1000000 The period between changing the power state and the first bulk transfer completion is critical because larger SDHC cards take longer to initialize before they can service the bulk transfer, and the Glamo MMC unit has a fixed timeout length of a maximum of 4095 x 16 x SD Card clocks. Large cards like 8GB Sandisk SDHC are not ready before this timeout is used up at default 16MHz. Subsequently, the card can handle 16MHz SD Clock and timeout durations okay. By default this patch operates the SD Clock at only 1MHz until the first bulk transfer is completed after each powerup action from the MCI stack. It also keeps the SD Clock running during this time, and disables the SD Clock if the card is not present and the MCI stack removes power. Signed-off-by: Andy Green <andy@openmoko.com>