aboutsummaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
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-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-19gta03-pca9632.patchMatt Hsu
- pca9632 is a LED driver which will be adopted in gta03. Signed-off-by: Matt Hsu <matt_hsu@openmoko.org>
2008-11-19interface for configuring freefall/wakeup interrupts for the accelerometersSimon Kagstrom
Hi! First: Unfortunately, the freerunner currently wakes up immediately on suspend when the accelerometer IRQ is selected as a wakeup source. I'm posting this for comments and if someone else wants to have a look at this problem. The patch should be safe to apply even though the sleep portion doesn't work - as long as it's configured it will not disturb anything. // Simon -- lis302dl-configure-wakeup-interrupts.patch From: simon.kagstrom <simon.kagstrom@gmail.com> First: Unfortunately, the freerunner currently wakes up immediately on suspend when the accelerometer IRQ is selected as a wakeup source. Add configuration of wakeup/freefall interrupts through a sysfs interface. Configuration is done through echoing a value of the form X Y Z THRESHOLD DURATION SPEC to freefall_wakeup_1/2. X, Y and Z are threshold values, given as a value > 0, < 0 or 0 to specify if an interrupt should be generated for high or low thresholds or neither (off). THRESHOLD specifies the threshold that must be exceeded. DURATION specifies the time in milliseconds for which the acceleration should be measured. SPEC is either '1' or '0' and specifies if the thresholds should be taken all together or one at a time ('and' or 'or' mode). Echoing '0' to the file turns off the interrupts. Example: echo "1 1 1 60 60 0" > freefall_wakeup_1 # Turn on x,y,z, 60ms/60 threshold, or-mode echo "0" > freefall_wakeup_1 # Turn off interrupt The hardware supports two simulataneous wakeup sources to be configured, but the freerunner only connects one of the interrupt outputs. The patch exports both. Similarly, only the "top" accelerometer can be used as a wake-up source, and it's not possible to generate DATA_READY interrupts while the wakeup interrupts are active. Signed-off-by: Simon Kagstrom <simon.kagstrom@gmail.com>
2008-11-19lis302dl-add-wakeup-defs.patchSimon Kagstrom
Add definitions for the rest of the wakeup defs and also change FFWUSRC1 to FFWUSRC - there are two of these which are identical. Signed-off-by: Simon Kagstrom <simon.kagstrom@gmail.com>
2008-11-19tracking-2.6.27-rc2-fix-fiq.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19tracking-2.6.27-rc2-include-path-changes.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19add-includes-from-checkpatch-fixes.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-suspend-backlight-timing-gta01.patchMike Westerhof
This patch adds the gta01 backlight callback that defers the restoring of the backlight until after the jbt driver has resumed. This doesn't eliminate the flashing of the LCD on the gta01, but it reduces it considerably. Signed-off-by: Mike Westerhof <mwester@dls.net>
2008-11-19From fa269b44512a03523b164c3cebc20312748c524b Mon Sep 17 00:00:00 2001Holger Freyther
Subject: [PATCH] [ar6k] Build the wireless driver without DEBUG - Remove DEBUG from the Makefile - Do not send events through netlink to userspace. We might need to reevaluate this. But we seem to use wireless_send_event at the right places. (SEND_EVENT_TO_APP) - Do not report debug logs to apps (REPORT_DEBUG_LOGS_TO_APP) Signed-Off-By: Holger Freyther <zecke@openmoko.org>
2008-11-19device model: Allow the creation of symlinks on /sys/bus/*/devicesCesar Eduardo Barros
Allows the direct creation of symlinks on /sys/bus/*/devices. This is needed for a compat symlink from gta01-pm-gps.0 to neo1973-pm-gps.0 on the Openmoko Neo1973 GTA01. Signed-off-by: Cesar Eduardo Barros <cesarb@cesarb.net>
2008-11-19Signed-Off-Number: Holger Freyther <zecke@openmoko.org>Andy Green
2008-11-19tracking-2.6.27-rc1-gpio-redef.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19tracking-2.6.27-rc1-asm-semaphore-gone.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19tracking-2.6.27-gpio-redef-clean.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19add-glamo-mci-slower-clocking-dynamic-switching.patchAndy Green
This patch gives glamo-mci a concept of a platform-defined dynamic clock slowing callback. It means that platform code can associate some completely external state to decide if we run the SD clock at normal rate or a rate divided by a module parameter "sd_slow_ratio", which you can set on kernel commandline like this: glamo_mci.sd_slow_ratio=8 you can also change it at runtime by echo 8 > /sys/module/glamo_mci/parameters/sd_slow_ratio If no platform callback is defined, then no slow mode is used. If it is defined, then the default division action is / 8, eg, 16MHz normal -> 2MHz slow mode. Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-pcf50633-remove-charger-curlim-and-enable-apis-from-export.patchAndy Green
Setting the current limit directly and enabling the charger isn't anyone's business except pcf50633 driver itself, so these two functions should not be exported and become static. Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-bq27000-charger-state-tracking.patchAndy Green
Charger trigger stuff goes and asks for POWER_SUPPLY_PROP_STATUS to figure out what the charger state is. But until now, we only reported there what we found out from HDQ, and the HDQ registers are not updated very often in the coulomb counter, it can be 4 or more second lag before it tells us about what it experiences. When we react to USB insertion and only after 500ms debounce tell power_supply stuff that something changed, it most times will see old pre-USB-insertion state from bq27000 over HDQ at that time and will report it ain't charging, buggering up the LED trigger tracking. This patch maintains distance between bq27000 and pcf50633 by having platform callbacks in bq27000 that it can use to ask about definitive charger "online" presence and "activity", whether the charger says it is charging. If these callbacks are implemented (and we implement them in this patch up in mach_gta02.c) then this information is used in preference to what is found from HDQ. Result is if you set the LED trigger like this: echo bat-charging > /sys/devices/platform/gta02-led.0/leds/gta02-aux:red/trigger then it lights up properly on USB insertion now, goes away on removal properly, as as far as I saw, when charging stops too. Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19sdio: use interruptible sleep in kthread main loopsJason Uhlenkott
My FreeRunner's load average was leveling off at 2.00 as a result of these two kernel threads: SDIO Helper D c02b4500 0 255 2 [<c02b4298>] (schedule+0x0/0x2d4) from [<c02b4040>] (__down+0x100/0x158) [<c02b3f40>] (__down+0x0/0x158) from [<c02b3e2c>] (__down_failed+0xc/0x20) r7:00000000 r6:c01fbd64 r5:c7cb7134 r4:c7d58000 [<c01fa6fc>] (CardDetectHelperFunction+0x0/0x1ac) from [<c01fbd80>] (HelperLaunch+0x1c/0x28) r5:c7cb7134 r4:c7cb7134 [<c01fbd64>] (HelperLaunch+0x0/0x28) from [<c005bbd0>] (kthread+0x60/0x94) r4:c7d58000 [<c005bb70>] (kthread+0x0/0x94) from [<c0048f7c>] (do_exit+0x0/0x744) r6:00000000 r5:00000000 r4:00000000 SDIO Helper D c02b4500 0 259 2 [<c02b4298>] (schedule+0x0/0x2d4) from [<c02b4040>] (__down+0x100/0x158) [<c02b3f40>] (__down+0x0/0x158) from [<c02b3e2c>] (__down_failed+0xc/0x20) r7:c0382bb4 r6:c0382b34 r5:c7d5a000 r4:00000001 [<c01f9104>] (SDIOIrqHelperFunction+0x0/0x29c) from [<c01fbd80>] (HelperLaunch+0x1c/0x28) r8:00000000 r7:00000000 r6:c01fbd64 r5:c0382bb4 r4:c0382bb4 [<c01fbd64>] (HelperLaunch+0x0/0x28) from [<c005bbd0>] (kthread+0x60/0x94) r4:c7d5a000 [<c005bb70>] (kthread+0x0/0x94) from [<c0048f7c>] (do_exit+0x0/0x744) r6:00000000 r5:00000000 r4:00000000 This fixes them to use interruptible sleep primitives while waiting in their main loops, as is conventional for kernel threads. They can't actually be interrupted since kernel threads ignore all signals, but by sleeping this way they get classified as long term waiters, and don't get counted as running for purposes of load average calculation. This is intended as a minimal fix. In the longer term, it'd probably make sense to replace the semaphores with completions or something, and to do away with some of these StudlyCapped wrapper functions. Signed-off-by: Jason Uhlenkott <jasonuhl@jasonuhl.org> -- This is untested, but what could possibly go wrong? ;)
2008-11-19From c221bb27c8e22daa451e26353140777223d397d2 Mon Sep 17 00:00:00 2001Holger Freyther
Subject: [PATCH] [pcf50633] Report more events to userspace using the default callback Signed-Off-By: Holger Freyther <zecke@openmoko.org>
2008-11-19From 5718bde77ed1a75e0fd2cdf5e099e66121d10c0a Mon Sep 17 00:00:00 2001Holger Freyther
Subject: [PATCH] [battery] Make the bq27000 send an uevent when the charging state possible changed Remove the todo entries from the pcf50633, make the mach-gta02 call the bq27000 driver from the pmu callback.
2008-11-19From 683ef8067815f6ba0ede73fa71973823726213a3 Mon Sep 17 00:00:00 2001Holger Freyther
Subject: [PATCH] [janitor] Make checkpatch happy on the header files
2008-11-19introduce-resume-exception-capture.patchAndy Green
This patch introduces a new resume debugging concept: if we get an OOPS inbetween starting suspend and finishing resume, it uses a new "emergency spew" device similar to BUT NOT REQUIRING CONFIG_DEBUG_LL to dump the syslog buffer and then the OOPS on the debug device defined by the existing CONFIG_DEBUG_S3C_UART index. But neither CONFIG_DEBUG_LL nor the S3C low level configs are needed to use this feature. Another difference between this feature and CONFIG_DEBUG_LL is that it does not affect resume timing, ordering or UART traffic UNLESS there is an OOPS during resume. The patch adds three global exports, one to say if we are inside suspend / resume, and two callbacks for printk() to use to init and dump the emergency data. The callbacks are set in s3c serial device init, but the whole structure is arch independent. Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-lis302dl-resume-and-init-reload-boot-coefficients.patchAndy Green
Reported-by: John Lee <john_lee@openmoko.com> We don't reset the devices either at init or resume, where init means use the BOOT bit to reload device calibration coefficients from internal EEPROM. John Lee saw brain-damaged behaviour after resume and sometimes after boot (since it may not have lost power to force a BOOT itself that makes sense). This patch - adds a diagnostic dump feature down /sys - forces BOOT action on init and resume, and waits for completion - makes sure XYZ capture is enabled on resume - adds some constants in the .h and removes some magic numbers in the code by using them Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19touchscreen-meddling.patchAndy Green
Touchscreen on GTA01-02 experiences noise on the channel that serves the "tall axis" of the LCM. The sample quality of the other axis is good. The bad samples have a characteristic of one shot excursions that can reach +/- 20% or more of the sample average. Previously, we had a simple averaging scheme going in the touchscreen driver that summed up 32 x and ys and then divided it by 32. This patch first tidies up the existing code for style, then adds a new "running average" concept with a FIFO. The running average is separate from the summing average mentioned above, and is accurate for the last n samples sample-by-sample, where n is set by 1 << excursion_filter_len_bits in the machine / platform stuff. The heuristic the patch implements for the filtering is to accept all samples, but tag the *previous* sample with a flag if it differed from the running average by more than reject_threshold_vs_avg in either axis. The next sample time, a beauty contest is held if the flag was set to decide if we think the previous sample was a one-shot excursion (detected by the new sample being closer to the average than to the flagged previous sample), or if we believe we are moving (detected by the new sample being closer to the flagged previous sample than the average. In the case that we believe the previous sample was an excursion, we simply overwrite it with the new data and adjust the summing average to use the new data instead of the excursion data. I only tested this by eyeballing the output of ts_print_raw, but it seemed to be quite a bit better. Gross movement appeared to be tracked fine too. If folks want to try different heuristics on top of this patch, be my guest; either way feedback on what it looks like with a graphical app would be good. Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-pcf50633-migrate-gta02-peripherals-out.patchAndy Green
pcf50633.c shouldn't know GTAxx at all. Move to using a platform callback to allow definition of platform devices with pcf50633 as parent device (good for enforcing suspend / resume ordering). Remove all code references to GTAxx from the sources (one string left for compatability). Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-pcf50633-platform-backlight-resume-ramp-setting.patchAndy Green
Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-pcf50633-usb-curlim-workqueue-migration.patchAndy Green
pcf50633 needs to take responsibility for managing current limit changes asycnhrnously, ie, from USB stack enumeration. It's a feature of pcf50633 not mach-gta02.c, and we can do better with taking care about keeping it from firing at a bad time in there too. Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-glamo-mci-resume-dependency-on-pcf50633.patchAndy Green
Glamo MCI has a resume order dependncy on pcf50633, it has to be able to power the SD slot via it. Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-glamo-mci-relationship-with-pcf50633-suspend-resume.patchAndy Green
After protecting pcf50633 read and write primitives against operation after suspend or before resume (by blowing a stack_trace()) I saw glamo-mci was trying to use pcf50633 at these bad times on its own suspend and resume. Since that part was already done via platform callback, I added an export in pcf50633 that tells you if it is ready or busy, and used it to defer (resume power on case) or ignore (suspend power off case, since pcf50633 already did it) the mci power call. Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19add-use-pcf50633-resume-callback-jbt6k74.patchAndy Green
Adds the resume callback stuff to glamo, then changes jbt6k74 to no longer use a sleeping workqueue, but to make its resume actions dependent on pcf50633 and glamo resume (for backlight and communication to LCM respectively) Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19introduce-pcf50633-resume-dependency-list.patchAndy Green
Adds resume dependency support to pcf50633 Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19introduce-resume-dependency.patchAndy Green
Defines a way for drivers to defer execution of resume callbacks until one or more other driver they are dependent on has itself resumed. Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19introduce-charging-led-behaviour.patchAndy Green
Creates a new behaviour requested by Will that the red LED on GTA02 is lit during battery charging.and goes out when the battery is full. This is done by leveraging the PMU interrupts, but in one scenario there is no interrupt that occurs, when the battery is replaced after being removed with the USB power in all the while. So a sleepy work function is started under those circumstances to watch for battery reinsertion or USB cable pull. 100mA limit was not being observed under some conditions so this was fixed and tested with a USB cable with D+/D- disconnected. 1A charger behaviour was also tested. Showing the charging action exposes some inconsistency in pcf50633 charging action. If your battery is nearly full, it will keep charging it at decreasing current even after it thinks it is at 100% capacity for a long while. But if you pull that same battery and re-insert it, the charger state machine in pcf50633 believe it is full and won't charge it. Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19Subject: [PATCH] Hardware glamo-fb cursor, some clean-up.Andrzej Zaborowski
2008-11-19Subject: [PATCH] Build fixes.Andrzej Zaborowski
2008-11-19fix-reduce-wake-reasons-in-pcf50633.patchAndy Green
Currently we are willing to wake from sleep from pcf50633 interrupts we don't actually do anything about even when we wake (somewhat puzzled). Let's disable some of these wake sources. Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19add-resume-reason-sysfs.patchAndy Green
If you have U-Boot with uboot-add-find-wake-reason.patch, this patch will get you a wake reason report from cat /sys/devices/platform/neo1973-resume.0/resume_reason it looks like this: EINT00_ACCEL1 EINT01_GSM EINT02_BLUETOOTH EINT03_DEBUGBRD EINT04_JACK EINT05_WLAN EINT06_AUXKEY EINT07_HOLDKEY EINT08_ACCEL2 * EINT09_PMU adpins adprem usbins usbrem rtcalarm second onkeyr onkeyf exton1r exton1f exton2r exton2f exton3r exton3f * batfull chghalt thlimon thlimoff usblimon usblimoff adcrdy onkey1s lowsys lowbat hightmp autopwrfail dwn1pwrfail dwn2pwrfail ledpwrfail ledovp ldo1pwrfail ldo2pwrfail ldo3pwrfail ldo4pwrfail ldo5pwrfail ldo6pwrfail hcidopwrfail hcidoovl EINT10_NULL EINT11_NULL EINT12_GLAMO EINT13_NULL EINT14_NULL EINT15_NULL This shows a problem, false wake from suspend due to battery full Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-suspend-backlight-timing-pm-debug.patchAndy Green
This patch improves the smoothness of suspend and resume action. Taking out CONFIG_PM_DEBUG allows much more rapid resume (the low level serial traffic appears to be synchronous) Added a platform callback in jbt driver and support in pcf50633 so we can defer bringing up the backlight until the LCM is able to process video again (which must happen after the glamo is up and producing video beacuse the LCM is hooked to glamo SPI) GTA01 should not be affected by all this as the callback will default to null and it is on pcf50606 Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19tracking-2.6.25-upstream-s3c2410_gpio_irq2pin.patchAndy Green
Holger got beaten to it on mainline, they provide a s3c2410_gpio_irq2pin() instead of the name he used. Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19[neo] Every access to GPIO bank B has to go through the shadow codeHolger Freyther
- Any setting of any PIN on bank B will undo the LED setting. Introduce neo1973_gpb_set_pin to set the PIN in a way not losing the LED or any other shadowed setting. - Update users of GPBXY for gta01 and gta02. Signed-Off-By: Holger Freyther <zecke@openmoko.org>
2008-11-19fix-glamofb-cmd-mode-locking.patchAndy Green
Glamo "cmd mode" is modal, but nothing took care about locking. Also cmd mode was entered recursively in rotate_lcd(). Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19Add GPIO -> IRQ for the s3c2410 and add irq_to_gpio to the gpio.h of the ↵Holger Freyther
Samsung SoC Use this irq_to_gpio in the neo1973 keyboard driver
2008-11-19add-gta02-pcb-revision-detect.patchAndy Green
Add function int gta02_get_pcb_revision(void) which returns state of GTA02 PCB revision pins. It is also called and logged during boot with KERN_INFO. The results look like: b9 b8 b2 b1 b0 GPD4 GPD3 GPD0 GPC15 GPC13 GTA02 A5 and before: 0x000 GTA02 A6 : 0x001 Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-lis302dl-suspend-gpio.patchAndy Green
Add platform stuff to deal with going in and out of suspend so the motion sensor IO is not driving high into unpowered sensors Signed-off-by: Andy Green <andy@openmoko.com>
2008-11-19fix-lcm-reinit-post-resume.patchwarmcat
2008-11-19atheros_2_0_sdio_stack.patchmokopatches
2008-11-19bq27000-battery-driver.patchmokopatches