Age | Commit message (Collapse) | Author |
|
Openmoko had similar controls with "DAPM " prefixed to them - add that
back to maintain compatibility with existing ALSA state files.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
|
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
|
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
|
More code cleanup.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
|
Stops anyone wondering what they're needed for.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
|
It's patchy and we have git history.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
|
On some systems it is desirable for control for DAPM pins to be provided
to user space. This is the case with things like GSM modems which are
controlled primarily from user space, for example. Provide a helper which
exposes the state of a DAPM pin to user space for use in cases like this.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
|
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
|
X-Git-Url: http://git.openmoko.org/?p=kernel.git;a=commitdiff_plain;h=f4fd6631973dbc67a5f4708014e81ca6e610ca05
pcf50633_charger_detection_fix.patch
Fix PCF50633 charger detection code.
Signed-off-by: Balaji Rao <balajirrao@openmoko.org>
|
|
> |> on current andy-tracking / OM_3D7K build.
> |>
> |> I didn't see this before, it seems to related to SPI bitbang, did we
> |> break something?
Here is the patch. I've not tested it, but it's most likely the fix, as
I had seen a similar thing in spi_s3c24xx_gpio.
|
|
Hi,
git 1.6.0 in debian unstable does not put "git-branch" to a directory
that is in PATH anymore
> git-core (1:1.6.0.2-1) experimental; urgency=low
>
> * new upstream point release.
> * debian/git-core.NEWS.Debian: new; mention that most of the programs
> now are installed outside the default $PATH; the "git-xyzzy" form
> in scripts and on the command line is no longer supported in 1.6.0.
so the build script should probably be modified:
|
|
The PCF50633 stores a month value of 1-12, but the kernel wants 0-11.
Signed-off-by: Rask Ingemann Lambertsen <rask@sygehus.dk>
|
|
GTA03 project is dropped, long live Openmoko 3d7k project.
This name was literally generated by picking the first character
of the next four car license plates to pass by I am told.
The should catch all GTA03 instances except the machine name.
I registered a new machine name since the 3d7k is different
from original GTA03, the machine number is 2120.
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
pending-tracking-hist top was add-om_3d7k_machine-type-patch / e4e3848be23080f6ca6727d2a4353f09e53b9781 ... parent commitmessage:
From: Andy Green <andy@openmoko.com>
add-om_3d7k_machine-type.patch
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
Improve the comment on falling back to 100mA if ADC is missing.
Signed-off-by: Sven Rebhan <odinshorse@googlemail.com>
|
|
The GSM part of all MACH_NEO1973s require GPIO functions,
thus we should select PCF50633_GPIO for GTA02.
Signed-off-by: Sven Rebhan <odinshorse@googlemail.com>
|
|
The WM8753 driver now uses the standard I2C device registration model and
so requires the platform to register the device. Convert the OpenMoko
GTA0x series devices to do so.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
|
The base support for the only in-tree user, the GTA01, is out of tree
and will be updated separately.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
|
This patch should be pure code motion, separating that out from the
functional changes to move to new style device registration.
[Backported from upstream with some modifications for old code.]
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
|
pending-tracking-hist top was asoc-only-write-back-non-defau / 04f55b6c2392d4af2b8b2178c333c7f131d3cdc0 ... parent commitmessage:
From: Mark Brown <broonie@opensource.wolfsonmicro.com>
ASoC: Only write back non-default registers when resuming WM8753
This will reduce the number of writes done on resume, allowing that to
complete faster (especially on systems with very slow I2C like the
current Samsung driver).
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
|
The kernel can't load armv4t modules ("unknown relocation: 40"). This
patch fixes the ARM makefile accordingly to tell GCC to generate armv4 code
instead of armv4t code. The assembler still needs to allow armv4t
instructions for some object files which are linked into the kernel.
Signed-off-by: Rask Ingemann Lambertsen <rask@sygehus.dk>
|
|
Some registers where not set properly, or at the right time (thanks to Balaji
for his patch).
Weak locking could lead to corruption when using sysfs to switch state from
multiple threads or processes. The state transitions are now all atomic.
The driver attribute 'last_state' was used for same purpose of 'normal_state'.
Kept only 'normal_state' and used it in 'init_regs' instead of custom qvga
parameter.
This patch should fix bug #2235.
Signed-off-by: Nicolas Dufresne <nicolas.dufresne@gmail.com>
|
|
spigpio_info.
X-Git-Url: http://git.openmoko.org/?p=kernel.git;a=commitdiff_plain;h=740c6704e830829d8539a6cc34346ff1980cd9ee
Get rid of board_info information in glamo and s3c24xx_gpio spigpio_info.
The board info does not belong there and has been removed. In
spi_s3c24xx_gpio, board_info has been removed in mainline.
Signed-off-by: Balaji Rao <balajirrao@openmoko.org>
|
|
Select the relevant DMA implementation when the
sound driver is selected.
Signed-off-by: Ben Dooks <ben@simtec.co.uk>
--
Ben (ben@fluff.org, http://www.fluff.org/)
'a smiley only costs 4 bytes'
|
|
The I2S TX and RX channels where reversed. Also add
implicit numbers to the start of the two DMA controllers.
Signed-off-by: Ben Dooks <ben@simtec.co.uk>
|
|
Fix CONFIG_CPU_S3C64XX which should have been CONFIG_PLAT_S3C64XX.
Fix the merge problems that failed to properly set the master/slave
bits for S3C64XX.
Signed-off-by: Ben Dooks <ben@simtec.co.uk>
|
|
The GTA03 driver has a number of get and set calls that
can be easily be done by calling a pair of common helper
functions.
Signed-off-by: Ben Dooks <ben@simtec.co.uk>Index: linux.agit/sound/soc/s3c24xx/om_gta03_wm8753.c
===================================================================
--- linux.agit.orig/sound/soc/s3c24xx/om_gta03_wm8753.c 2009-02-26 17:58:18.000000000 +0000
+++ linux.agit/sound/soc/s3c24xx/om_gta03_wm8753.c 2009-02-26 17:59:46.000000000 +0000
@@ -228,8 +228,9 @@ static struct snd_soc_ops om_gta03_voice
.hw_free = om_gta03_voice_hw_free,
};
-static int om_gta03_set_stereo_out(struct snd_kcontrol *kcontrol,
- struct snd_ctl_elem_value *ucontrol)
+static int common_set_dapm(struct snd_kcontrol *kcontrol,
+ struct snd_ctl_elem_value *ucontrol,
+ char *epname)
{
struct snd_soc_codec *codec = snd_kcontrol_chip(kcontrol);
int val = ucontrol->value.integer.value[0];
@@ -240,133 +241,89 @@ static int om_gta03_set_stereo_out(struc
return 0;
}
-static int om_gta03_get_stereo_out(struct snd_kcontrol *kcontrol,
- struct snd_ctl_elem_value *ucontrol)
+static int common_get_dapm(struct snd_kcontrol *kcontrol,
+ struct snd_ctl_elem_value *ucontrol,
+ char *name)
{
struct snd_soc_codec *codec = snd_kcontrol_chip(kcontrol);
+ int val;
- ucontrol->value.integer.value[0] =
- snd_soc_dapm_get_endpoint(codec, "Stereo Out");
+ val = snd_soc_dapm_get_endpoint(codec, name);
+ ucontrol->value.integer.value[0] = val;
return 0;
}
+static int om_gta03_set_stereo_out(struct snd_kcontrol *kcontrol,
+ struct snd_ctl_elem_value *ucontrol)
+{
+ return common_set_dapm(kcontrol, ucontrol, "Stereo Out");
+}
+
+static int om_gta03_get_stereo_out(struct snd_kcontrol *kcontrol,
+ struct snd_ctl_elem_value *ucontrol)
+{
+ return common_get_dapm(kcontrol, ucontrol, "Stereo Out");
+}
static int om_gta03_set_gsm_out(struct snd_kcontrol *kcontrol,
struct snd_ctl_elem_value *ucontrol)
{
- struct snd_soc_codec *codec = snd_kcontrol_chip(kcontrol);
- int val = ucontrol->value.integer.value[0];
-
- snd_soc_dapm_set_endpoint(codec, "GSM Line Out", val);
- snd_soc_dapm_sync(codec);
-
- return 0;
+ return common_set_dapm(kcontrol, ucontrol, "GSM Line Out");
}
static int om_gta03_get_gsm_out(struct snd_kcontrol *kcontrol,
struct snd_ctl_elem_value *ucontrol)
{
- struct snd_soc_codec *codec = snd_kcontrol_chip(kcontrol);
-
- ucontrol->value.integer.value[0] =
- snd_soc_dapm_get_endpoint(codec, "GSM Line Out");
-
- return 0;
+ return common_get_dapm(kcontrol, ucontrol, "GSM Line Out");
}
static int om_gta03_set_gsm_in(struct snd_kcontrol *kcontrol,
struct snd_ctl_elem_value *ucontrol)
{
- struct snd_soc_codec *codec = snd_kcontrol_chip(kcontrol);
- int val = ucontrol->value.integer.value[0];
-
- snd_soc_dapm_set_endpoint(codec, "GSM Line In", val);
- snd_soc_dapm_sync(codec);
-
- return 0;
+ return common_set_dapm(kcontrol, ucontrol, "GSM Line In");
}
static int om_gta03_get_gsm_in(struct snd_kcontrol *kcontrol,
struct snd_ctl_elem_value *ucontrol)
{
- struct snd_soc_codec *codec = snd_kcontrol_chip(kcontrol);
-
- ucontrol->value.integer.value[0] =
- snd_soc_dapm_get_endpoint(codec, "GSM Line In");
-
- return 0;
+ return common_get_dapm(kcontrol, ucontrol, "GSM Line In");
}
static int om_gta03_set_headset_mic(struct snd_kcontrol *kcontrol,
struct snd_ctl_elem_value *ucontrol)
{
- struct snd_soc_codec *codec = snd_kcontrol_chip(kcontrol);
- int val = ucontrol->value.integer.value[0];
-
- snd_soc_dapm_set_endpoint(codec, "Headset Mic", val);
- snd_soc_dapm_sync(codec);
-
- return 0;
+ return common_set_dapm(kcontrol, ucontrol, "Headset Mic");
}
static int om_gta03_get_headset_mic(struct snd_kcontrol *kcontrol,
struct snd_ctl_elem_value *ucontrol)
{
- struct snd_soc_codec *codec = snd_kcontrol_chip(kcontrol);
-
- ucontrol->value.integer.value[0] =
- snd_soc_dapm_get_endpoint(codec, "Headset Mic");
-
- return 0;
+ return common_get_dapm(kcontrol, ucontrol, "Headset Mic");
}
static int om_gta03_set_handset_mic(struct snd_kcontrol *kcontrol,
struct snd_ctl_elem_value *ucontrol)
{
- struct snd_soc_codec *codec = snd_kcontrol_chip(kcontrol);
- int val = ucontrol->value.integer.value[0];
-
- snd_soc_dapm_set_endpoint(codec, "Handset Mic", val);
-
- snd_soc_dapm_sync(codec);
-
- return 0;
+ return common_set_dapm(kcontrol, ucontrol, "Handset Mic");
}
static int om_gta03_get_handset_mic(struct snd_kcontrol *kcontrol,
struct snd_ctl_elem_value *ucontrol)
{
- struct snd_soc_codec *codec = snd_kcontrol_chip(kcontrol);
-
- ucontrol->value.integer.value[0] =
- snd_soc_dapm_get_endpoint(codec, "Handset Mic");
-
- return 0;
+ return common_get_dapm(kcontrol, ucontrol, "Handset Mic");
}
static int om_gta03_set_handset_spk(struct snd_kcontrol *kcontrol,
struct snd_ctl_elem_value *ucontrol)
{
- struct snd_soc_codec *codec = snd_kcontrol_chip(kcontrol);
- int val = ucontrol->value.integer.value[0];
-
- snd_soc_dapm_set_endpoint(codec, "Handset Spk", val);
-
- snd_soc_dapm_sync(codec);
-
- return 0;
+ return common_set_dapm(kcontrol, ucontrol, "Handset Spk");
}
static int om_gta03_get_handset_spk(struct snd_kcontrol *kcontrol,
struct snd_ctl_elem_value *ucontrol)
{
- struct snd_soc_codec *codec = snd_kcontrol_chip(kcontrol);
-
- ucontrol->value.integer.value[0] =
- snd_soc_dapm_get_endpoint(codec, "Handset Spk");
-
- return 0;
+ return common_get_dapm(kcontrol, ucontrol, "Handset Spk");
}
static const struct snd_soc_dapm_widget wm8753_dapm_widgets[] = {
--
Ben (ben@fluff.org, http://www.fluff.org/)
'a smiley only costs 4 bytes'
|
|
Add common error exit for om_gta03_hifi_hw_params()
so that any error can easily be debugged.
Signed-off-by: Ben Dooks <ben@simtec.co.uk>
|
|
Tidy the driver formatting.
Signed-off-by: Ben Dooks <ben@simtec.co.uk>
|
|
Fix missing dma.o build if CONFIG_S3C_DMA
Signed-off-by: Ben Dooks <ben@simtec.co.uk>
|
|
The I2S codec is connected to I2S channel 1, not 0
as initially setup.
Also fix the divisors to produce 12MHz on MCLK (was
6MHz) to ensure that the PLL in the WM8753 is within
proper limits.
Signed-off-by: Ben Dooks <ben@simtec.co.uk>
|
|
Since GPI0, GPI1 and GPI8 are for hardware version control.
They would create current leaking if they are setup as output.
It's resloved by adding gta03 specific fb_gpio_setup function
in fb platform data.
Signed-off-by: Matt Hsu <matt_hsu@openmoko.org>
Reported-by: Dkay Chen <dkay_chen@openmoko.com>
|
|
This removes the unstable operation by increasing break timing from
170us to 230us, the datasheet minimum was 190us.
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
X-Git-Url: http://git.openmoko.org/?p=kernel.git;a=commitdiff_plain;h=c94ea3d685fa6e9b24d62adb11a7ad6087b9edf5
fix_gta03_fiq_stuff.patch
Signed-off-by: Balaji Rao <balajirrao@openmoko.org>
|
|
X-Git-Url: http://git.openmoko.org/?p=kernel.git;a=commitdiff_plain;h=5689ad9b0ded29adec4be64df53e488c648b9831
lis302dl_use_s3c24xx_gpio_spi_bitbang.patch
Change lis302dl driver to use generic spi code. This requires that we define a
s3c24xx_gpio spi bitbang based controller in mach-gta02.c.
Signed-off-by: Balaji Rao <balajirrao@openmoko.org>
|
|
X-Git-Url: http://git.openmoko.org/?p=kernel.git;a=commitdiff_plain;h=f8fbb07854e3aff64dce9fe6ef6a8dc0e0f762b5
spi_supoport_non_blocking_sync_transfers.patch
A mew option is added to spi_bitbang_info to specify if the
transfers off it will be non blocking.
A new function - spi_non_blocking_transfer is added to the SPI core.
Signed-off-by: Balaji Rao <balajirrao@openmoko.org>
|
|
Hi Andy,
Here's the fix for the qvga-normal bug we observed the other day
here - when the screen is powered up again after a blanking, in
qvga-normal mode, we see a WSOD(kind of!)
|
|
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
This adds in the TZIC support consts and also the VM mapping
for the TZIC units, and adds TZIC init into mach-om-gta03.c
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
Clean out more switch() on version that has no point given the
actual features that (don't) differ on supported GTA02 versions.
We take care about forcing GPS regulator off on neo1973-pm-gps probe,
but we don't take care about killing the UART GPIO so they don't
drive into the powered-down subsystem. We took care of doing that when
we turned off the thing already, but we cannot just call the OFF code
from the probe due to problems with regulator state init.
Reported-by: Rask Ingemann Lambersten <rask@sygehus.dk>
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
Drop the i2c0 bus max-frequency to 150kHz to avoid
problems with boards where this is too fast.
Signed-off-by: Ben Dooks <ben@simtec.co.uk>
--- linux.agit.orig/arch/arm/plat-s3c/dev-i2c0.c 2009-02-20 23:04:34.000000000 +0000
+++ linux.agit/arch/arm/plat-s3c/dev-i2c0.c 2009-02-20 23:04:37.000000000 +0000
@@ -51,7 +51,7 @@ static struct s3c2410_platform_i2c defau
.flags = 0,
.slave_addr = 0x10,
.bus_freq = 100*1000,
- .max_freq = 400*1000,
+ .max_freq = 150*1000,
.sda_delay = S3C2410_IICLC_SDA_DELAY5 | S3C2410_IICLC_FILTER_ON,
};
--
Ben (ben@fluff.org, http://www.fluff.org/)
'a smiley only costs 4 bytes'
|
|
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
Because i found the level of the "MODEM_RST" will return to "L" when it set to "Input".
GSM module sometimes can not turn on especially after emove the C9102.
Signed-off-by: DKAY_CHEN <dkay_chen@openmoko.com>
|
|
Ensure the DMA channels have the controller clock
enabled before they are used.
Signed-off-by: Ben Dooks <ben@simtec.co.uk>
|
|
Add the DMA channels as system devices to provide
suspend/resume and a presence in sysfs.
Signed-off-by: Ben Dooks <ben@simtec.co.uk>
|
|
Add the clock sources for the DMA and SDMA controllers
and ensure that they are shut down at startup. The DMA
engines are dma0 and dma1, whilst the SDMA are called
dma2 and dma3.
Signed-off-by: Ben Dooks <ben@simtec.co.uk>
|
|
Fix the definitions of HCLK_GATE bits, which
had SDMA0/1 named SDMA1/2 and the definitions
of bits 26..29 in the wrong order.
Signed-off-by: Ben Dooks <ben@simtec.co.uk>
|
|
Signed-off-by: Andy Green <andy@openmoko.com>
|
|
Signed-off-by: Andy Green <andy@openmoko.com>
|