Age | Commit message (Collapse) | Author |
|
|
|
Conflicts:
drivers/power/Kconfig
drivers/power/Makefile
|
|
|
|
|
|
|
|
'glamo-2.6.34', 'om-misc-2.6.34' and 'om-s3c-2.6.34' into om-gta02-2.6.34
|
|
|
|
config used in SHR-U, KMS enabled
|
|
config used for qtmoko-v20. It has all freerunner hardware built in - so that
you can boot and your phone hardware is working even without /lib/modules. I
have (hopefully) all drivers from 2.6.29 as modules (usb keyboards etc).
|
|
This adds support for platform_battery driver which allows to specify a set
of power supply properties and callbacks to acquire them. It is needed to
support dumb batteries where all the information about their status can
only be obtained by platform-specific actions such as specific ADC
measurements, some guessimation etc.
Signed-off-by: Paul Fertser <fercerpav@gmail.com>
|
|
|
|
|
|
This driver can be used for dumb batteries when all knowledge about
their state belongs to the platform that does necessary ADC readings,
conversions, guessimations etc.
Signed-off-by: Paul Fertser <fercerpav@gmail.com>
|
|
|
|
|
|
This is the only user of the pcf50633 gpio api. Since the custom interface is
going to be replaced with gpiolib all users need to be remove or replaced.
It is safe to be remove it in this case since it is used used to turn a gpio
off which is never going to be turned on.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
On the gta02 we often have a child parent relationship between different
devices. The child devices can only be probed after their parant has been.
Instead of adding a probe completed handler to each device we handle this in a
generic way with a bus notifier.
|
|
|
|
Early verions off uboot used for the gta02 flashed the nand with ecc information
incompatible to s3c2440 hardware ecc. Disable hardware error correction by
default, unless the bootloader explicitly enables it.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
|
|
|
|
|
|
|
|
Select usb host and nand device.
|
|
On hardware revision 5 and earlier the leds found on the gta02 are missing a
resistor and reading their gpio pin status will always return 0. So we have to
shadow the led states in software. This is done by "hijacking" the gpio accessor
functions for bank B.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
|
|
The gta02 has three leds which are connected though gpio pins and thus can get
supported by using the generic leds-gpio driver.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
|
|
The gta02 has two buttons which are connected to gpio pins and thus can get
supported by using the generic gpio-keys driver.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
|
|
|
|
|
|
This reduces the code clutter a bit and will ease an the migration to genirq.
|
|
Use a threaded irq instead of normal irq and a workqueue.
|
|
|
|
|
|
This patch adds a backlight driver controling the pcf50633 led converter.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
|
|
Currently it's not guaranteed that request struct is not already freed when
reading from it. Fix this by moving synced request related fields from the
pcf50633_adc_request struct to its own struct and store it on the functions
stack.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
|
|
|
|
This patch adds a flag to the s3c2410_nand platform data, which configures
whether hardware ecc is used for that chip.
Currently hardware ecc is used if it was compiled into the kernel. But if you
want to build a kernel which runs on multiple devices you might have a
configuration where you have devices which require hw ecc as well as devices
which want software ecc.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
|
|
Although the external interrupts support level and edge triggered irqs their
handler is currently always set to handle_edge_irq().
While being technically wrong for a level triggered irq to be handled by
handle_edge_irq() it will cause serious problems in combination with a oneshot
irq. handle_edge_irq() will unmask the irq immediately and as a result the irq
will be triggered again before the threaded irq handler had a chance to run and
clear the irq source.
Thus level triggered irqs should be handled by handle_level_irq.
According to the specs the irq controller will remember if an irq has been
triggered while it had been masked and will issue it when the irq gets
unmasked. Thus it is sufficient to use handle_level_irq() for edge triggered
irqs as well. Hence handle_level_irq() can always be used for external
interrupts.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
|
|
In some cases it is desirable to completly disable low-level messages. For
example if you have no uart available for a serial console.
With this patch it is possible to disable low-level messages by setting
CONFIG_S3C_LOWLEVEL_UART_PORT to less then zero.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
|
|
This is nonportable and wastes a lot of memory and thus should be replaced with
a prober solution asap.
|
|
This is a patch that seems to make the USB hangs on the S3C2440 go away. At
least a good amount of ping torture didn't make them come back so far.
The issue is that, if there are several back-to-back packets,
sometimes no interrupt is generated for one of them. This
seems to be caused by the mysterious dual packet mode, which
the USB hardware enters automatically if the endpoint size is
half that of the FIFO. (On the 2440, this is the normal
situation for bulk data endpoints.)
There is also a timing factor in this. I think what happens is
that the USB hardware automatically sends an acknowledgement
if there is only one packet in the FIFO (the FIFO has space
for two). If another packet arrives before the host has
retrieved and acknowledged the previous one, no interrupt is
generated for that second one.
However, there may be an indication. There is one undocumented
bit (none of the 244x manuals document it), OUT_CRS1_REG[1],
that seems to be set suspiciously often when this condition
occurs. There is also CLR_DATA_TOGGLE, OUT_CRS1_REG[7], which
may have a function related to this. (The Samsung manual is
rather terse on that, as usual.)
This needs to be examined further. For now, the patch seems to do the
trick.
Note that this is not a clean solution by any means, because we
might potentially get stuck in that interrupt for quite a while.
|
|
The gta02 uses the glamo mfd driver which requires 9 board irqs and the pcf50633
mfd driver which requires 40 irqs.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
|
|
Some boards have a need for a set of extra IRQ numbers, for example some
multifunction devices which do irq demultiplexing require them.
This patch adds S3C2410_BOARD_NR_IRQS which specifies the number of extra board
IRQs. Board specific code would use S3C2410_BOARD_IRQ_START to get the number of
it's first irq.
Since it is possible to support a multiple boards with a single kernel and
there is no easy way to set a CONFIG option to multiple values and only use the
maximum each board which needs board IRQs has do be explicitly added to irqs.h
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
|
|
|