aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2008-11-19fix-glamo-mci-ignore-command-properly.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-lid302dl-bitbang-all-the-way-baby.patchAndy Green
This large patch removes motion sensor from Linux SPI bitbang driver. Previously, some access was done through Linux SPI protected by a mutex, and the ISR access was done by platform bitbang code due to inability of Linux SPI driver to work in the interrupt context. Now all access is done by bitbang callbacks in mach_gta02.c and are protected by single scheme of interrupt lockout for the duration -- I line-by-line'd the driver to confirm that best I could, adding protection and taking more care on several /sys related paths. Because this is no longer a Linux SPI bus driver, the path for various /sys things have changed. They can now be found down, eg, /sys/devices/platform/lis302dl.1/sample_rate lis302dl.1 is the top sensor and .2 the bottom. The names of the input susbsytem paths remain the same as before. Not working in interrupt context made trouble using interrupt lockout as locking [21474615.495000] BUG: sleeping function called from invalid context at kernel/sched.c:4684 [21474615.495000] in_atomic():0, irqs_disabled():128 [21474615.495000] 2 locks held by bash/779: [21474615.495000] #0: (&buffer->mutex){....}, at: [<c00ec1b0>] sysfs_write_file+0x30/0x80 [21474615.495000] #1: (pm_mutex){....}, at: [<c007a34c>] enter_state+0xd4/0x10c [21474615.495000] [<c0032a14>] (dump_stack+0x0/0x14) from [<c0049410>] (__might_sleep+0xdc/0xf8) [21474615.495000] [<c0049334>] (__might_sleep+0x0/0xf8) from [<c0316c38>] (wait_for_common+0x28/0x190) [21474615.495000] r5:c79ffd00 r4:c79ffd4c [21474615.495000] [<c0316c10>] (wait_for_common+0x0/0x190) from [<c0316e30>] (wait_for_completion+0x18/0x1c) [21474615.495000] r8:c79ffd84 r7:c79c4800 r6:c79ffd00 r5:c79ffd20 r4:c79ffd4c [21474615.495000] [<c0316e18>] (wait_for_completion+0x0/0x1c) from [<c01d28ec>] (spi_sync+0xa0/0xb8) [21474615.495000] [<c01d284c>] (spi_sync+0x0/0xb8) from [<c020ca10>] (__reg_write+0x88/0x94) [21474615.495000] [<c020c988>] (__reg_write+0x0/0x94) from [<c020cc30>] (lis302dl_resume+0x54/0x198) [21474615.495000] r6:60000013 r5:c79c4800 r4:c79bc9c0 [21474615.495000] [<c020cbdc>] (lis302dl_resume+0x0/0x198) from [<c01d2fb0>] (spi_resume+0x38/0x44) [21474615.495000] r6:00000010 r5:c79c4800 r4:c79c4974 [21474615.495000] [<c01d2f78>] (spi_resume+0x0/0x44) from [<c0198f34>] (resume_device+0x8c/0x1b0) [21474615.495000] [<c0198ea8>] (resume_device+0x0/0x1b0) from [<c01990c0>] (dpm_resume+0x68/0x134) [21474615.495000] r7:00000003 r6:00000010 r5:c79c4800 r4:c79c4974 [21474615.495000] [<c0199058>] (dpm_resume+0x0/0x134) from [<c01991b4>] (device_resume+0x28/0x38) [21474615.495000] r6:00000003 r5:c08b7188 r4:00000010 [21474615.495000] [<c019918c>] (device_resume+0x0/0x38) from [<c007a0f8>] (suspend_devices_and_enter+0x110/0x180) [21474615.495000] r4:00000000 [21474615.495000] [<c0079fe8>] (suspend_devices_and_enter+0x0/0x180) from [<c007a320>] (enter_state+0xa8/0x10c) [21474615.495000] r6:00000003 r5:c03aa414 r4:00000000 [21474615.495000] [<c007a278>] (enter_state+0x0/0x10c) from [<c007a430>] (state_store+0xac/0xc0) [21474615.495000] r6:c7b80000 r5:00000003 r4:c03aa414 [21474615.495000] [<c007a384>] (state_store+0x0/0xc0) from [<c014dfb4>] (kobj_attr_store+0x24/0x30) [21474615.495000] [<c014df90>] (kobj_attr_store+0x0/0x30) from [<c00ebe58>] (flush_write_buffer+0x54/0x68) [21474615.495000] [<c00ebe04>] (flush_write_buffer+0x0/0x68) from [<c00ec1d8>] (sysfs_write_file+0x58/0x80) [21474615.495000] r8:c7acca80 r7:c79fff78 r6:000be408 r5:00000004 r4:c7a19ea0 [21474615.495000] [<c00ec180>] (sysfs_write_file+0x0/0x80) from [<c00a91b8>] (vfs_write+0xbc/0x14c) [21474615.495000] [<c00a90fc>] (vfs_write+0x0/0x14c) from [<c00a9774>] (sys_write+0x4c/0x7c) [21474615.495000] r7:00000004 r6:00000000 r5:00000000 r4:c7acca80 [21474615.495000] [<c00a9728>] (sys_write+0x0/0x7c) from [<c002dc20>] (ret_fast_syscall+0x0/0x2c) Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-lis302dl-use-__reg_read-in-suspend.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-rebase-dust.patchAndy Green
Last rebase to stable-2.6.26 left some trash from rebasing the patches on top of this, clean it back out Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-remote-install-for-ext3-only-sd.patchAndy Green
We're using /boot for kernel now Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-s3c2410-usb-controller-mode-change-always-EINVAL.patchAndy Green
We always return -EINVAL when changing s3c2410 USB host and device modes due to lack of { }. Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19debug-glamo-syslog-dumps.patchAndy Green
More effort to refine power code that does the suspend and resume actions Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19debug-resume-hang.patchAndy Green
Weeks of frantic effort to control Glamo, traced the issue to two outcomes: nWAIT is forced down and the device is hard locked, or we survive immediate Glamo resume and die again with nWAIT forced down when the framebuffer driver tries to flash the soft cursor. Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19glamo-resume-meddling.patchAndy Green
Big chunk of trying to own Glamo resume and not really succeeding Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-pcf50633-disable-debug-msg.patchAndy Green
Stop the debugging stuff, see if that impacts resume error (not really, it was actually Glamo) Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19debug-move-led-around.patchAndy Green
Light an LED in the dark crashing hell of dead resume... the problems come from Glamo it turns out Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-remove-resume-dependencies-on-pmu-for-pmu-children.patchAndy Green
All that stuff should be enforced by device tree now, out with it Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-device-tree-pcf50633-parents-more-things.patchAndy Green
Oooh it's a lot cleaner now and explained in the comments Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-glamo-suspend-cant-use-pll-host-bus-clock-during-suspend.patchAndy Green
Hum well that's the idea, Glamo did not play ball Signed-off-by: Andy Green <andy@openmoko.com>
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-19clean-mmc-power-deps-and-timing.patchAndy Green
Simplify it now we have Glamo as child of pcf50633 Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19clean-device-registration-to-array.patchAndy Green
Well dependencies of pcf50633 are getting a bit much, let's break them out into an array Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-vib-parentage-to-fiq.patchAndy Green
Vibrator relies on FIQ, represent that in device tree Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19add-pwm-child-attach-callback.patchAndy Green
Things can depend on PWM being up, allow device tree to show that Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-gps-power-child-of-pcf50633.patchAndy Green
GPS power control device is obviously a child of pcf50633 since it wants to meddle with regulators. Define it to be so in the device tree. 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-19debug-make-glamo-child-of-pcf50633-for-sd-card-logical-suspend.patchAndy Green
This is an early start on populating pcf50633 device tree callback, later we convert the guys here and some additional ones to an array. 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-19add-gta02-fiq-begets-hdq-begets-bq27000.patchAndy Green
HDQ secretly depends on FIQ, bq27000 depends on HDQ, this patch uses the new callbacks to make that explicit in both cases for our device Here's what can happen without it: [ 2.680000] Bad mode in data abort handler detected [ 2.680000] Internal error: Oops - bad mode: 0 [#1] PREEMPT [ 2.680000] Modules linked in: [ 2.680000] CPU: 0 Not tainted (2.6.24 #791) [ 2.680000] PC is at trace_hardirqs_off+0x28/0xfc [ 2.680000] LR is at fiq_kick+0x90/0xa8 [ 2.680000] pc : [<c006759c>] lr : [<c0035000>] psr: 200000d1 [ 2.680000] sp : c7c2dd98 ip : c7c2dde0 fp : c7c2ddf4 [ 2.680000] r10: 00000008 r9 : c7d70e00 r8 : 00000002 [ 2.680000] r7 : 00000009 r6 : 200000d1 r5 : 00000000 r4 : 0000006e [ 2.680000] r3 : c03ec000 r2 : 00000000 r1 : 00000000 r0 : 0000006e [ 2.680000] Flags: nzCv IRQs off FIQs off Mode FIQ_32 ISA ARM Segment kernel [ 2.680000] Control: c000717f Table: 30004000 DAC: 00000017 [ 2.680000] Process events/0 (pid: 5, stack limit = 0xc7c2c268) [ 2.680000] Stack: (0xc7c2dd98 to 0xc7c2e000) [ 2.680000] dd80: 0000006e 00000000 [ 2.680000] dda0: 00000000 c03ec000 0000006e 00000000 200000d1 00000009 00000002 c7d70e00 [ 2.680000] ddc0: 00000008 c7c2ddf4 c7c2dde0 c7c2dd98 c0035000 c006759c 200000d1 ffffffff [ 2.680000] dde0: 00000009 00000004 c7c2de0c c7c2ddf8 c01f87d0 c0034f80 c7d49260 c7d49260 [ 2.680000] de00: c7c2de34 c7c2de10 c01f80dc c01f87a8 c7d49260 00000007 c7c2de5c c7d8e000 [ 2.680000] de20: c03e2908 c7d6b000 c7c2de54 c7c2de38 c01f82d0 c01f80c0 c7c2de64 00000000 [ 2.680000] de40: 00000007 c7d70e00 c7c2de84 c7c2de58 c01f79d4 c01f8154 c7c2de84 c7c2de68 [ 2.680000] de60: c0098c28 00000000 0000008c c7d8e000 c7d49264 00000001 c7c2deb4 c7c2de88 [ 2.680000] de80: c01f7d4c c01f799c c038c450 c7d70e00 c7d6b000 00000000 c7d6b000 c03da064 [ 2.680000] dea0: c038c450 c7d70ee8 c7c2decc c7c2deb8 c01aa924 c01f7c6c 00000002 c03d9fe0 [ 2.680000] dec0: c7c2df24 c7c2ded0 c016c828 c01aa864 c7c2def4 c7c2dee0 c02eb438 00000000 [ 2.680000] dee0: c0380680 c7d867e0 c7c2df14 c7c2def8 c0227888 c02eb414 c7d49264 00000002 [ 2.680000] df00: c7c03d40 c7d49264 00000000 c7c2df68 00000000 c01f7844 c7c2df34 c7c2df28 [ 2.680000] df20: c016caa8 c016c6b8 c7c2df5c c7c2df38 c01f794c c016caa4 c7c03d40 00000002 [ 2.680000] df40: c7c03d40 c7c2c000 c7d4928c c7c2df68 c7c2df9c c7c2df60 c005a30c c01f7854 [ 2.680000] df60: 00000002 c005a2a4 c0664458 c044c148 c038c460 00000000 c7c2dfb0 c7c03d40 [ 2.680000] df80: c7c2c000 00000000 00000000 00000000 c7c2dfd4 c7c2dfa0 c005b094 c005a218 [ 2.680000] dfa0: c02e8e68 00000000 c7c2ab60 c005ecb0 c7c2dfb0 c7c2dfb0 00000000 c7c2c000 [ 2.680000] dfc0: c7c03d40 c005afb0 c7c2dff4 c7c2dfd8 c005ebac c005afc0 00000000 00000000 [ 2.680000] dfe0: 00000000 00000000 00000000 c7c2dff8 c004c138 c005eb5c 00000000 00000000 [ 2.680000] Backtrace: [ 2.680000] [<c0034f70>] (fiq_kick+0x0/0xa8) from [<c01f87d0>] (gta02hdq_read+0x38/0x90) [ 2.680000] r5:00000004 r4:00000009 [ 2.680000] [<c01f8798>] (gta02hdq_read+0x0/0x90) from [<c01f80dc>] (hdq_read16+0x2c/0x84) [ 2.680000] r5:c7d49260 r4:c7d49260 [ 2.680000] [<c01f80b0>] (hdq_read16+0x0/0x84) from [<c01f82d0>] (bq27000_battery_get_property+0x18c/0x304) [ 2.680000] [<c01f8144>] (bq27000_battery_get_property+0x0/0x304) from [<c01f79d4>] (power_supply_show_property+0x48/0x124) [ 2.680000] r6:c7d70e00 r5:00000007 r4:00000000 [ 2.680000] [<c01f798c>] (power_supply_show_property+0x0/0x124) from [<c01f7d4c>] (power_supply_uevent+0xf0/0x1a4) [ 2.680000] r8:00000001 r7:c7d49264 r6:c7d8e000 r5:0000008c r4:00000000 [ 2.680000] [<c01f7c5c>] (power_supply_uevent+0x0/0x1a4) from [<c01aa924>] (dev_uevent+0xd0/0x10c) [ 2.680000] [<c01aa854>] (dev_uevent+0x0/0x10c) from [<c016c828>] (kobject_uevent_env+0x180/0x3ec) [ 2.680000] r5:c03d9fe0 r4:00000002 [ 2.680000] [<c016c6a8>] (kobject_uevent_env+0x0/0x3ec) from [<c016caa8>] (kobject_uevent+0x14/0x18) [ 2.680000] [<c016ca94>] (kobject_uevent+0x0/0x18) from [<c01f794c>] (power_supply_changed_work+0x108/0x114) [ 2.680000] [<c01f7844>] (power_supply_changed_work+0x0/0x114) from [<c005a30c>] (run_workqueue+0x104/0x208) [ 2.680000] r8:c7c2df68 r7:c7d4928c r6:c7c2c000 r5:c7c03d40 r4:00000002 [ 2.680000] [<c005a208>] (run_workqueue+0x0/0x208) from [<c005b094>] (worker_thread+0xe4/0xf8) [ 2.680000] [<c005afb0>] (worker_thread+0x0/0xf8) from [<c005ebac>] (kthread+0x60/0x94) [ 2.680000] r6:c005afb0 r5:c7c03d40 r4:c7c2c000 [ 2.680000] [<c005eb4c>] (kthread+0x0/0x94) from [<c004c138>] (do_exit+0x0/0x6f0) [ 2.680000] r6:00000000 r5:00000000 r4:00000000 [ 2.680000] Code: e3c3303f e3520000 e593200c 089da800 (e5923a68) 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-19fix-fiq-child-attach-callback.patchAndy Green
As part of the device tree stuff, some things are basically children of FIQ. Allow a callback in the machine-specific code to attach the children when the FIQ device has been instantiated 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-19fix-reote-install-for-ext3-only-sd.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-touchscreen-driver-gta01-missing-includes.patchMike Westerhof
Add missing initialization for the touchscreen driver for the gta01 platform. Signed-off-by: Mike Westerhof <mwester@dls.net>
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-19tracking-2.6.28-timer-blowup.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19tracking-2.6.28-add-codec_dev-to-gta02-soc-mach-stuff.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-19config-tracking-2.6.28-up.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19[Resend] Fix trivial warningNelson Castillo
By adding missing #include <linux/module.h> we fix 6 warnings that we care about (in our patchset). Signed-off-by: Nelson Castillo <nelsoneci@gmail.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-19Add missing function definitionsJonas Bonn
These functions are undefined at first use which causes the build to fail. Just push the definitions forward, for now. This file needs to be cleaned up a good bit, in general, so we'll put in a better fix at that time. For now, this builds, at least... Signed-off-by: Jonas Bonn <jonas.bonn@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>