aboutsummaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)Author
2008-11-19S3C24xx NAND: allow for faster timingsHarald Welte
Tacls can actually be zero with some NAND flash devices, so we need to permit this. Also, the TACLS register actually specifies the actual number of HCLK clocks, where the TWRPH0 and TWRPH1 registers are auto-incremented by one HCLK clock in hardware. Signed-off-by: Harald Welte <laforge@openmoko.org>
2008-11-19hif-linux-sdio.patchWerner Almesberger
This is a replacement for Atheros' HIF layer that uses the Linux SDIO stack. Using GPLv2, like Atheros' code this is based on. Work in progress. Not-Yet-Signed-off-by: Werner Almesberger <werner@openmoko.org>
2008-11-19ar6k-without-sdio.patchWerner Almesberger
Make the AR6000 WLAN driver compile after moving it outside the Atheros SDIO stack. Note that the config option's name changes as well. The choice of a non-standard location (drivers/ar6000/) is intentional. The driver is still very far from being in shape for mainline inclusion, and the odd location should serve as an immediate warning. Not-Yet-Signed-off-by: Werner Almesberger <werner@openmoko.org>
2008-11-19prepare-ar6001-driver-linux-sdio.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19tracking-2.6.28-rc2-i2c-rebase-breakage.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19Re: [PATCH] fix root cause of NAND troubleWerner Almesberger
Ben Dooks wrote: > My only comment would be > that a slightly better solution would be to do: Oh, that's much better, thanks ! I hadn't realized at first that once could read the FIFO one byte at a time. The revised patch is below. - Werner ---------------------------------- cut here ----------------------------------- fix-s3c-nand-read-bytes.patch With the introduction of optimized OOB reads in nand_read_subpage, the length of the data requested may not be a multiple of four bytes. This caused a partial read on the 2440, leading to false ECC errors and, worse, attempts to "correct" them. Note that there is a similar issue in s3c2440_nand_write_buf, which doesn't seem to cause trouble yet. Signed-off-by: Werner Almesberger <werner@openmoko.org>
2008-11-19From a54bd9e2376337320c36965830fd3167c4063356 Mon Sep 17 00:00:00 2001Chia-I Wu
Subject: [PATCH] glamofb: Initialize only visible part of the memory. It takes lots of time (0.5 seconds) to initialize the whole memory. As only the visible part matters, we could just initialize that part. Signed-off-by: Chia-I Wu <olv@openmoko.com>
2008-11-19fix-mmc-busy-loop-on-bytes.patchWerner Almesberger
christer-mmc-byte-alignment.patch reduced the FIFO I/O granularity from words to bytes. This also includes the decision when the FIFO is empty or full. However, we sometimes only want to transfer full words, in which case do_pio_read/do_pio_write busy-loop until the FIFO has filled up or drained enough. In the case of do_pio_write, this can cause an endless loop if the amount of data exceeds the FIFO size, because do_pio_write runs before the transfer is initiated, so the FIFO never drains. Signed-off-by: Werner Almesberger <werner@openmoko.org>
2008-11-19fix-wlan-warn.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19meddle-wsod.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19revert-jbt6k74-resume-changes.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-glamo-suspend-remove-reg-dump-and-restore.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-glamo-resume-dont-restuff-regs-do-reinit-in-framebuffer-resume.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19workaround-6410-android-binder-VIPT-undefined.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19tracking-glamo-suspend-even-more-meddling.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-cycle-backlight-enable-in-resume.patchAndy Green
Without this the backlight remains stubbornly down on resume Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19tracking-fix-android-gpio-include.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19android-tracking.patchSean McNeil
Minimal set of kernel changes to support Android operation. Note arch/arm/configs/gta02-android-defconfig
2008-11-19tracking-fix-gta01-backlight-include.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19tracking-fix-bcd-api-name-change.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19clean-remove-gta02.h-from-printk-debug.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19cleanup-after-adding-andy-tracking-patchset.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-hdq-fiq-interface.patchSean McNeil
Try to make sure about no compiler malarky by volatile. Change hdq busy detect. Change error handling path in hdq interface to fiq. Signed-off-by: Sean McNeil <sean@mcneil.com>
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-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-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-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>