Age | Commit message (Collapse) | Author |
|
These fixes are required to build without MACH_NEO1973_GTA02
Signed-off-by: Jonas Bonn <jonas.bonn@gmail.com>
|
|
I2C devices should be registered with i2c_register_board_info in the machine
setup code. This allows the devices to be auto-probed when the requred driver
is loaded.
Signed-off-by: Jonas Bonn <jonas.bonn@gmail.com>
|
|
Mainly this concerns device registration. Registration should be handled
at the machine level and not in the driver itself. This patch drops
registration at the driver level.
As registration allows for specifying an i2c device address, the setup
data is not needed to be passed to the driver.
Signed-off-by: Jonas Bonn <jonas.bonn@gmail.com>
|
|
The function lm4857_write_regs requires that the i2c_client be available in
the local variable 'i2c'.
Signed-off-by: Jonas Bonn <jonas.bonn@gmail.com>
|
|
Device registration should be handled at the machine level and not
in the driver code itself. This patch removes the device registration
from the driver code in preparation for moving it to the machine
definition.
Signed-off-by: Jonas Bonn <jonas.bonn@gmail.com>
|
|
Fix a couple of thinkos introduced during the I2C API update.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
|
Convert the lm4857 driver in neo1973_wm8753 to the new (standard)
i2c device driver binding model. I assumed that the LM4857 was always
on the same I2C bus as the WM8753 codec.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Tim Niemeyer <reddog@mastersword.de>
Cc: Graeme Gregory <graeme@openmoko.org>
Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
|
The error handling in neo1973_init is incorrect:
* If platform_device_add fails, we go on with the rest of the
initialization instead of bailing out. Things will break when the
module is removed (platform_device_unregister called on a device
that wasn't registered.)
* If i2c_add_driver fails, we return an error so the module will not
load, but we don't unregister neo1973_snd_device, so we are leaking
resources.
Add the missing error handling.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Tim Niemeyer <reddog@mastersword.de>
Cc: Graeme Gregory <graeme@openmoko.org>
Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
|
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
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>
|
|
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>
|
|
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>
|
|
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
I needed the following two changes for g_ether to work with last
week's stable-tracking and no CONFIG_DEBUG_FS. I don't know if
they're related to moko patches, if not I can send them upstream
isntead.
BTW I need to boot off the SD card now because mtd only returns CRC
errors and doesn't mount. Does it work for other people?
Signed-off-by: Andrzej Zaborowski <balrog@zabor.org>
|
|
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
- pca9632 is a LED driver which will be adopted in gta03.
Signed-off-by: Matt Hsu <matt_hsu@openmoko.org>
|
|
This patch is a work-around solution to correct charging indication logic.
Signed-off-by: Matt Hsu <matt_hsu@openmoko.org>
|
|
This patch allows ESSID with length 1, which were rejected because the
stack assumed iwconfig used a different format in the ioctl's payload.
It also refuses ESSIDs longer than 31 bytes, because there is some
buffer overrun issue buried somewhere else in the stack. In principle,
32 bytes should be fine.
Open issue:
- where is the 32 bytes overrun ?
Signed-off-by: Werner Almesberger <werner@openmoko.org>
|
|
This is purely cosmetic, but annoying.
The ar6k wifi driver does not print a newline after the informational message when disconnecting from an AP. This leads to cluttered dmesg output like the following:
AR6000 disconnected from 00:02:cf:85:c6:08 AR6000 connected event on freq 2412 with bssid 00:02:cf:85:c6:08 listenInterval=100, beaconInterval = 100, beaconIeLen = 0 assocReqLen=27 assocRespLen =22
What is expected, is something like:
AR6000 disconnected from 00:02:cf:85:c6:08
AR6000 connected event on freq 2412 with bssid 00:02:cf:85:c6:08 listenInterval=100, beaconInterval = 100, beaconIeLen = 0 assocReqLen=27 assocRespLen =22
The upside of this is that it gives me a nice simple patch to send in as my first contribution to OpenMoko?.
Cheers
Signed-off-by: mattb <mattb@openmoko-trac.invalid>
|
|
Hi all.
I'm seeing a behavior in my freerunner where light taps on the
touchscreen are not registered as clicks by the kernel even though the
base hardware does report clicking events. I'm seeing the kernel
generate extra "unclick" events in these cases. It looks like in the
driver, an unclick event is processed before the click event, thus
suppressing the click from ever being generated. I'm attaching a patch
that addresses this. I'm now able to type much faster on the matchbox
keyboard, even when using my fingertips instead of fingernails.
Dima
Signed-off-by: Dima Kogan <dkogan@cds.caltech.edu>
|
|
Possible implementation of SD Card corruption workaround reported here
https://docs.openmoko.org/trac/ticket/1802#comment:5
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
Some boots from Qi trigger a symptom from this interesting race -->
[ 2.730000] Unable to handle kernel NULL pointer dereference at virtual address 00000248
[ 2.730000] pgd = c0004000
[ 2.735000] [00000248] *pgd=00000000
[ 2.735000] Internal error: Oops: 5 [#1] PREEMPT
[ 2.735000] Modules linked in:
[ 2.735000] CPU: 0 Not tainted (2.6.24-stable10_0c1587137aaf0ee3-mokodev #1071)
[ 2.735000] PC is at pcf50633_voltage_set+0x1c/0xfc
[ 2.735000] LR is at gta02_glamo_mmc_set_power+0xdc/0x128
[ 2.735000] pc : [<c01df570>] lr : [<c0034324>] psr: 60000013
[ 2.735000] sp : c7c57eb0 ip : c7c57ec8 fp : c7c57ec4
[ 2.735000] r10: c7cfca28 r9 : 00000000 r8 : c7c57f68
[ 2.735000] r7 : c7cfca68 r6 : c7cfcae0 r5 : 00000c80 r4 : 00000000
[ 2.735000] r3 : 00000000 r2 : 00000c80 r1 : 0000000a r0 : 00000c80
[ 2.735000] Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment kernel
[ 2.735000] Control: c000717f Table: 30004000 DAC: 00000017
[ 2.735000] Process kmmcd (pid: 102, stack limit = 0xc7c56268)
[ 2.735000] Stack: (0xc7c57eb0 to 0xc7c58000)
[ 2.735000] 7ea0: c0608c58 00000c80 c7c57edc c7c57ec8
[ 2.735000] 7ec0: c0034324 c01df564 c7cfca28 c7cfc800 c7c57f1c c7c57ee0 c0194de0 c0034258
[ 2.735000] 7ee0: c7c57f34 c7c57ef0 c01e6230 c005de5c 60000013 c7cfca28 c7cfc800 60000013
[ 2.735000] 7f00: c7cfca68 c7c57f68 00000000 c01e6778 c7c57f34 c7c57f20 c01e5d68 c0194da8
[ 2.735000] 7f20: c7cfc800 c7cfca08 c7c57f5c c7c57f38 c01e6810 c01e5cbc c0059278 c7c57f48
[ 2.735000] 7f40: c02d2ba0 00000002 c7c44420 c7c56000 c7c57f9c c7c57f60 c00592e0 c01e6788
[ 2.735000] 7f60: 00000002 c0059278 c0608d74 c04321cc c036e16c 00000000 c7c57fb0 c7c44420
[ 2.735000] 7f80: c7c56000 00000000 00000000 00000000 c7c57fd4 c7c57fa0 c005a068 c00591ec
[ 2.735000] 7fa0: c02d0624 00000000 c7c4c0e0 c005dc2c c7c57fb0 c7c57fb0 00000000 c7c56000
[ 2.735000] 7fc0: c7c44420 c0059f84 c7c57ff4 c7c57fd8 c005db28 c0059f94 00000000 00000000
[ 2.735000] 7fe0: 00000000 00000000 00000000 c7c57ff8 c004b170 c005dad8 ffffffff ffffffff
[ 2.735000] Backtrace:
[ 2.735000] [<c01df554>] (pcf50633_voltage_set+0x0/0xfc) from [<c0034324>] (gta02_glamo_mmc_set_power+0xdc/0x128)
[ 2.735000] r5:00000c80 r4:c0608c58
[ 2.735000] [<c0034248>] (gta02_glamo_mmc_set_power+0x0/0x128) from [<c0194de0>] (glamo_mci_set_ios+0x48/0x254)
[ 2.735000] r5:c7cfc800 r4:c7cfca28
[ 2.735000] [<c0194d98>] (glamo_mci_set_ios+0x0/0x254) from [<c01e5d68>] (mmc_power_up+0xbc/0x100)
[ 2.735000] [<c01e5cac>] (mmc_power_up+0x0/0x100) from [<c01e6810>] (mmc_rescan+0x98/0x1a8)
[ 2.735000] r5:c7cfca08 r4:c7cfc800
[ 2.735000] [<c01e6778>] (mmc_rescan+0x0/0x1a8) from [<c00592e0>] (run_workqueue+0x104/0x208)
[ 2.735000] r6:c7c56000 r5:c7c44420 r4:00000002
[ 2.735000] [<c00591dc>] (run_workqueue+0x0/0x208) from [<c005a068>] (worker_thread+0xe4/0xf8)
[ 2.735000] [<c0059f84>] (worker_thread+0x0/0xf8) from [<c005db28>] (kthread+0x60/0x94)
[ 2.735000] r6:c0059f84 r5:c7c44420 r4:c7c56000
[ 2.735000] [<c005dac8>] (kthread+0x0/0x94) from [<c004b170>] (do_exit+0x0/0x6f4)
[ 2.735000] r6:00000000 r5:00000000 r4:00000000
[ 2.735000] Code: e351000a e1a04000 e1a00002 8a000032 (e5943248)
[ 2.745000] ---[ end trace 123ec1d286354824 ]---
This problem was caused by insufficient timeout waiting for pcf50633 to resume
and broken code to detect timeout exhaustion.
Although I'd like to think it has something to do with mmc resume woes it should make a panic
and subsequent emergency spew on UART2 if that had been the case.
Took the opportunity to move the stuff to show completion of probe to later in the
pcf50633 probe and tighten readiness test.
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
Fix all of the mismatches Andrzej put us on to.
Found-by: Andrzej Zaborowski <balrogg@gmail.com>
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
fix-accel-irq-mismatch.patch
I just found a while to start doing something cool with the
accelerometers but I hit #1613 (both accelerometer nodes can't be read
concurrently for longer than a moment). Turns out to be very silly.
I'll continue the cool stuff another day,
Cheers
|
|
style cleanups for accel threshold setting patch
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
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>
|
|
Subject: [PATCH] [gta02] Disable hardware ECC unless we get instructed to enable it
This is restoring the old behavior in regard to ECC. Even if
hardware ECC was compiled in we didn't use it. Make this a runtime
option. If the bootloader passes hardware_ecc we will enable the
hardware ECC for real.
|
|
Subject: [PATCH] [gta02] Disable the NAND debugging as it would print every hardware ECC
|
|
Subject: [PATCH] Revert "s3c2440-nand-disable-hwecc.patch"
This reverts commit 1d89da736ed33d3f7c398fb9f8dfddecb7c7c7a9.
|
|
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>
|
|
This patch fixes module unloading for the accelerometer (actually module
loading failed before). The two problems were that the interrupt was not
unregistered, and that the device was left in a "strange" state.
Signed-off-by: Simon Kagstrom <simon.kagstrom@gmail.com>
|
|
Fix spelling error on function name
Signed-off-by: Simon Kagstrom <simon.kagstrom@gmail.com>
|
|
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
We failed to report status of "discharging", instead reporting
"not charging" even if we knew that the charger was not present.
This patch corrects it and reports "discharging" when charger
is absent.
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
This cleans out some random externs in C files that checkpatch does not like
and introduces a couple of .h files to contain them. Plus some other minor
checkpatch style complaints.
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
Set the UART FIFO to trigger earlier on the GTA01 device to minimize
UART overruns from the GSM.
Signed-off-by: Mike Westerhof <mwester@dls.net>
|
|
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>
|
|
This patch is the pcf50606 equivalent of the pcf50633 patch that
disables interrupts from the chip until after resume is complete.
In order to ensure no data is lost, the work function is called
post-resume to process any pending interrupts.
Most of the code was quite literally re-used from Andy Green's
original patch.
Signed-off-by: Mike Westerhof <mwester@dls.net>
|
|
This patch ensures that no console data will go the UART while
the GSM mux is switched to the GSM. This is necessary despite
the code that disables the console due to the fact that the
console resumes before the neo1973_pm_gsm driver, and consoles
always resume in the "on" state.
Signed-off-by: Mike Westerhof <mwester@dls.net>
|
|
gta0x-log-serial-rx-error.patch
This patch causes a KERN_DEBUG message to be printed each time an
error status is read from a UART. This is intended to facilitate
the reporting of more useful problem and bug reports from users
in the field.
Signed-off-by: Mike Westerhof <mwester@dls.net>
|
|
Add the basic GSM flowcontrol code.
Signed-off-by: Mike Westerhof <mwester@dls.net>
|
|
Timo noticed that his compound USB device wasn't getting recognized properly,
it was stuck on the CD-ROM class part of it. This was accepted by the GTA02
but no scsi device was spawned for it. He figured out in the end that it is
the lack of a UDF filesystem module that was the problem.
This patch adds UDF and CDROM as a built-in on defconfig-2.6.24, for the
modular configs it just adds it as a module.
Reported-by: Timo Drick <timo@drick.de>
Signed-off-by: Andy Green <andy@openmoko.com>
|