* [PATCH 1/2] ARM: mx27pdk: Add audio support
@ 2012-07-03 18:44 Fabio Estevam
2012-07-03 18:44 ` [PATCH 2/2] ASoC: imx-mc13783: Add audmux settings for mx27pdk Fabio Estevam
2012-07-25 12:21 ` [PATCH 1/2] ARM: mx27pdk: Add audio support Fabio Estevam
0 siblings, 2 replies; 11+ messages in thread
From: Fabio Estevam @ 2012-07-03 18:44 UTC (permalink / raw)
To: linux-arm-kernel
mx27pdk has a mc13783 audio codec.
Add support for it.
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
---
arch/arm/mach-imx/Kconfig | 1 +
arch/arm/mach-imx/mach-mx27_3ds.c | 21 ++++++++++++++++++++-
2 files changed, 21 insertions(+), 1 deletions(-)
diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig
index 0da882a..deb9f37 100644
--- a/arch/arm/mach-imx/Kconfig
+++ b/arch/arm/mach-imx/Kconfig
@@ -300,6 +300,7 @@ config MACH_MX27_3DS
select IMX_HAVE_PLATFORM_IMX_FB
select IMX_HAVE_PLATFORM_IMX_I2C
select IMX_HAVE_PLATFORM_IMX_KEYPAD
+ select IMX_HAVE_PLATFORM_IMX_SSI
select IMX_HAVE_PLATFORM_IMX_UART
select IMX_HAVE_PLATFORM_MX2_CAMERA
select IMX_HAVE_PLATFORM_MXC_EHCI
diff --git a/arch/arm/mach-imx/mach-mx27_3ds.c b/arch/arm/mach-imx/mach-mx27_3ds.c
index c6d385c..3dc944e 100644
--- a/arch/arm/mach-imx/mach-mx27_3ds.c
+++ b/arch/arm/mach-imx/mach-mx27_3ds.c
@@ -160,6 +160,11 @@ static const int mx27pdk_pins[] __initconst = {
PB21_PF_CSI_HSYNC,
CSI_PWRDWN | GPIO_GPIO | GPIO_OUT,
CSI_RESET | GPIO_GPIO | GPIO_OUT,
+ /* SSI4 */
+ PC16_PF_SSI4_FS,
+ PC17_PF_SSI4_RXD,
+ PC18_PF_SSI4_TXD,
+ PC19_PF_SSI4_CLK,
};
static struct gpio mx27_3ds_camera_gpios[] = {
@@ -331,13 +336,24 @@ static struct mc13xxx_regulator_init_data mx27_3ds_regulators[] = {
};
/* MC13783 */
+static struct mc13xxx_codec_platform_data mx27_3ds_codec = {
+ .dac_ssi_port = MC13783_SSI1_PORT,
+ .adc_ssi_port = MC13783_SSI1_PORT,
+};
+
static struct mc13xxx_platform_data mc13783_pdata = {
.regulators = {
.regulators = mx27_3ds_regulators,
.num_regulators = ARRAY_SIZE(mx27_3ds_regulators),
},
- .flags = MC13XXX_USE_TOUCHSCREEN | MC13XXX_USE_RTC,
+ .flags = MC13XXX_USE_TOUCHSCREEN | MC13XXX_USE_RTC |
+ MC13XXX_USE_CODEC,
+ .codec = &mx27_3ds_codec,
+};
+
+static struct imx_ssi_platform_data mx27_3ds_ssi_pdata = {
+ .flags = IMX_SSI_DMA | IMX_SSI_NET,
};
/* SPI */
@@ -513,6 +529,9 @@ static void __init mx27pdk_init(void)
}
imx27_add_mx2_camera(&mx27_3ds_cam_pdata);
+ imx27_add_imx_ssi(0, &mx27_3ds_ssi_pdata);
+
+ imx_add_platform_device("imx_mc13783", 0, NULL, 0, NULL, 0);
}
static void __init mx27pdk_timer_init(void)
--
1.7.1
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH 2/2] ASoC: imx-mc13783: Add audmux settings for mx27pdk
2012-07-03 18:44 [PATCH 1/2] ARM: mx27pdk: Add audio support Fabio Estevam
@ 2012-07-03 18:44 ` Fabio Estevam
2012-07-05 12:48 ` Mark Brown
2012-07-25 12:21 ` [PATCH 1/2] ARM: mx27pdk: Add audio support Fabio Estevam
1 sibling, 1 reply; 11+ messages in thread
From: Fabio Estevam @ 2012-07-03 18:44 UTC (permalink / raw)
To: linux-arm-kernel
mx27pdk board also has a mc13783 codec.
Add support for it and do a run-time machine type check to perform the correct
audiomux settings.
Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: <alsa-devel@alsa-project.org>
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
---
sound/soc/fsl/imx-mc13783.c | 49 +++++++++++++++++++++++++++++--------------
1 files changed, 33 insertions(+), 16 deletions(-)
diff --git a/sound/soc/fsl/imx-mc13783.c b/sound/soc/fsl/imx-mc13783.c
index f59c349..549b31f 100644
--- a/sound/soc/fsl/imx-mc13783.c
+++ b/sound/soc/fsl/imx-mc13783.c
@@ -111,22 +111,39 @@ static int __devinit imx_mc13783_probe(struct platform_device *pdev)
return ret;
}
- imx_audmux_v2_configure_port(MX31_AUDMUX_PORT4_SSI_PINS_4,
- IMX_AUDMUX_V2_PTCR_SYN,
- IMX_AUDMUX_V2_PDCR_RXDSEL(MX31_AUDMUX_PORT1_SSI0) |
- IMX_AUDMUX_V2_PDCR_MODE(1) |
- IMX_AUDMUX_V2_PDCR_INMMASK(0xfc));
- imx_audmux_v2_configure_port(MX31_AUDMUX_PORT1_SSI0,
- IMX_AUDMUX_V2_PTCR_SYN |
- IMX_AUDMUX_V2_PTCR_TFSDIR |
- IMX_AUDMUX_V2_PTCR_TFSEL(MX31_AUDMUX_PORT4_SSI_PINS_4) |
- IMX_AUDMUX_V2_PTCR_TCLKDIR |
- IMX_AUDMUX_V2_PTCR_TCSEL(MX31_AUDMUX_PORT4_SSI_PINS_4) |
- IMX_AUDMUX_V2_PTCR_RFSDIR |
- IMX_AUDMUX_V2_PTCR_RFSEL(MX31_AUDMUX_PORT4_SSI_PINS_4) |
- IMX_AUDMUX_V2_PTCR_RCLKDIR |
- IMX_AUDMUX_V2_PTCR_RCSEL(MX31_AUDMUX_PORT4_SSI_PINS_4),
- IMX_AUDMUX_V2_PDCR_RXDSEL(MX31_AUDMUX_PORT4_SSI_PINS_4));
+ if (machine_is_mx31_3ds()) {
+ imx_audmux_v2_configure_port(MX31_AUDMUX_PORT4_SSI_PINS_4,
+ IMX_AUDMUX_V2_PTCR_SYN,
+ IMX_AUDMUX_V2_PDCR_RXDSEL(MX31_AUDMUX_PORT1_SSI0) |
+ IMX_AUDMUX_V2_PDCR_MODE(1) |
+ IMX_AUDMUX_V2_PDCR_INMMASK(0xfc));
+ imx_audmux_v2_configure_port(MX31_AUDMUX_PORT1_SSI0,
+ IMX_AUDMUX_V2_PTCR_SYN |
+ IMX_AUDMUX_V2_PTCR_TFSDIR |
+ IMX_AUDMUX_V2_PTCR_TFSEL(MX31_AUDMUX_PORT4_SSI_PINS_4) |
+ IMX_AUDMUX_V2_PTCR_TCLKDIR |
+ IMX_AUDMUX_V2_PTCR_TCSEL(MX31_AUDMUX_PORT4_SSI_PINS_4) |
+ IMX_AUDMUX_V2_PTCR_RFSDIR |
+ IMX_AUDMUX_V2_PTCR_RFSEL(MX31_AUDMUX_PORT4_SSI_PINS_4) |
+ IMX_AUDMUX_V2_PTCR_RCLKDIR |
+ IMX_AUDMUX_V2_PTCR_RCSEL(MX31_AUDMUX_PORT4_SSI_PINS_4),
+ IMX_AUDMUX_V2_PDCR_RXDSEL(MX31_AUDMUX_PORT4_SSI_PINS_4));
+ } else if (machine_is_mx27_3ds()) {
+ imx_audmux_v1_configure_port(MX27_AUDMUX_HPCR1_SSI0,
+ IMX_AUDMUX_V1_PCR_SYN |
+ IMX_AUDMUX_V1_PCR_TFSDIR |
+ IMX_AUDMUX_V1_PCR_TCLKDIR |
+ IMX_AUDMUX_V1_PCR_RFSDIR |
+ IMX_AUDMUX_V1_PCR_RCLKDIR |
+ IMX_AUDMUX_V1_PCR_TFCSEL(MX27_AUDMUX_HPCR3_SSI_PINS_4) |
+ IMX_AUDMUX_V1_PCR_RFCSEL(MX27_AUDMUX_HPCR3_SSI_PINS_4) |
+ IMX_AUDMUX_V1_PCR_RXDSEL(MX27_AUDMUX_HPCR3_SSI_PINS_4)
+ );
+ imx_audmux_v1_configure_port(MX27_AUDMUX_HPCR3_SSI_PINS_4,
+ IMX_AUDMUX_V1_PCR_SYN |
+ IMX_AUDMUX_V1_PCR_RXDSEL(MX27_AUDMUX_HPCR1_SSI0)
+ );
+ }
return ret;
}
--
1.7.1
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH 1/2] ARM: mx27pdk: Add audio support
2012-07-03 18:44 [PATCH 1/2] ARM: mx27pdk: Add audio support Fabio Estevam
2012-07-03 18:44 ` [PATCH 2/2] ASoC: imx-mc13783: Add audmux settings for mx27pdk Fabio Estevam
@ 2012-07-25 12:21 ` Fabio Estevam
2012-07-31 12:49 ` Fabio Estevam
1 sibling, 1 reply; 11+ messages in thread
From: Fabio Estevam @ 2012-07-25 12:21 UTC (permalink / raw)
To: linux-arm-kernel
Hi Sascha,
On Tue, Jul 3, 2012 at 3:44 PM, Fabio Estevam
<fabio.estevam@freescale.com> wrote:
> mx27pdk has a mc13783 audio codec.
>
> Add support for it.
>
> Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Is this patch OK? Can it be applied?
Regards,
Fabio Estevam
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 1/2] ARM: mx27pdk: Add audio support
2012-07-25 12:21 ` [PATCH 1/2] ARM: mx27pdk: Add audio support Fabio Estevam
@ 2012-07-31 12:49 ` Fabio Estevam
2012-08-03 13:59 ` Sascha Hauer
0 siblings, 1 reply; 11+ messages in thread
From: Fabio Estevam @ 2012-07-31 12:49 UTC (permalink / raw)
To: linux-arm-kernel
Sascha,
On 7/25/12, Fabio Estevam <festevam@gmail.com> wrote:
> Hi Sascha,
>
> On Tue, Jul 3, 2012 at 3:44 PM, Fabio Estevam
> <fabio.estevam@freescale.com> wrote:
>> mx27pdk has a mc13783 audio codec.
>>
>> Add support for it.
>>
>> Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
>
> Is this patch OK? Can it be applied?
Could this get into 3.6?
Thanks,
Fabio Estevam
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 1/2] ARM: mx27pdk: Add audio support
2012-07-31 12:49 ` Fabio Estevam
@ 2012-08-03 13:59 ` Sascha Hauer
2012-08-08 15:53 ` Fabio Estevam
2012-08-13 11:19 ` Gaëtan Carlier
0 siblings, 2 replies; 11+ messages in thread
From: Sascha Hauer @ 2012-08-03 13:59 UTC (permalink / raw)
To: linux-arm-kernel
On Tue, Jul 31, 2012 at 09:49:13AM -0300, Fabio Estevam wrote:
> Sascha,
>
> On 7/25/12, Fabio Estevam <festevam@gmail.com> wrote:
> > Hi Sascha,
> >
> > On Tue, Jul 3, 2012 at 3:44 PM, Fabio Estevam
> > <fabio.estevam@freescale.com> wrote:
> >> mx27pdk has a mc13783 audio codec.
> >>
> >> Add support for it.
> >>
> >> Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
> >
> > Is this patch OK? Can it be applied?
>
> Could this get into 3.6?
Applied now. Sorry, missed this one.
Sascha
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 1/2] ARM: mx27pdk: Add audio support
2012-08-03 13:59 ` Sascha Hauer
@ 2012-08-08 15:53 ` Fabio Estevam
2012-08-13 11:19 ` Gaëtan Carlier
1 sibling, 0 replies; 11+ messages in thread
From: Fabio Estevam @ 2012-08-08 15:53 UTC (permalink / raw)
To: linux-arm-kernel
On Fri, Aug 3, 2012 at 10:59 AM, Sascha Hauer <s.hauer@pengutronix.de> wrote:
> Applied now. Sorry, missed this one.
Which git tree, please? I was not able to find it at
http://git.pengutronix.de/?p=imx/linux-2.6.git;a=summary
Regards,
Fabio Estevam
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 1/2] ARM: mx27pdk: Add audio support
2012-08-03 13:59 ` Sascha Hauer
2012-08-08 15:53 ` Fabio Estevam
@ 2012-08-13 11:19 ` Gaëtan Carlier
2012-08-13 18:58 ` Sascha Hauer
1 sibling, 1 reply; 11+ messages in thread
From: Gaëtan Carlier @ 2012-08-13 11:19 UTC (permalink / raw)
To: linux-arm-kernel
Hi,
On 08/03/2012 03:59 PM, Sascha Hauer wrote:
> On Tue, Jul 31, 2012 at 09:49:13AM -0300, Fabio Estevam wrote:
>> Sascha,
>>
>> On 7/25/12, Fabio Estevam <festevam@gmail.com> wrote:
>>> Hi Sascha,
>>>
>>> On Tue, Jul 3, 2012 at 3:44 PM, Fabio Estevam
>>> <fabio.estevam@freescale.com> wrote:
>>>> mx27pdk has a mc13783 audio codec.
>>>>
>>>> Add support for it.
>>>>
>>>> Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
>>>
>>> Is this patch OK? Can it be applied?
>>
>> Could this get into 3.6?
>
> Applied now. Sorry, missed this one.
>
> Sascha
>
Is this patch will be applied on linux-next tree ?
Newer patch "[PATCH v2] ASoC: imx-ssi: Remove mono support" is already
applied (I know that is not for the same branch) but not this one. Is
there a problem with this patch ?
Best regards,
Ga?tan Carlier
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 1/2] ARM: mx27pdk: Add audio support
2012-08-13 11:19 ` Gaëtan Carlier
@ 2012-08-13 18:58 ` Sascha Hauer
2012-08-13 19:13 ` Gaëtan Carlier
0 siblings, 1 reply; 11+ messages in thread
From: Sascha Hauer @ 2012-08-13 18:58 UTC (permalink / raw)
To: linux-arm-kernel
On Mon, Aug 13, 2012 at 01:19:59PM +0200, Ga?tan Carlier wrote:
> Hi,
> On 08/03/2012 03:59 PM, Sascha Hauer wrote:
> >On Tue, Jul 31, 2012 at 09:49:13AM -0300, Fabio Estevam wrote:
> >>Sascha,
> >>
> >>On 7/25/12, Fabio Estevam <festevam@gmail.com> wrote:
> >>>Hi Sascha,
> >>>
> >>>On Tue, Jul 3, 2012 at 3:44 PM, Fabio Estevam
> >>><fabio.estevam@freescale.com> wrote:
> >>>>mx27pdk has a mc13783 audio codec.
> >>>>
> >>>>Add support for it.
> >>>>
> >>>>Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
> >>>
> >>>Is this patch OK? Can it be applied?
> >>
> >>Could this get into 3.6?
> >
> >Applied now. Sorry, missed this one.
> >
> >Sascha
> >
> Is this patch will be applied on linux-next tree ?
This will be in linux-next once I send a pull request to Arnd. I do not
have a branch in linux-next.
Sascha
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 1/2] ARM: mx27pdk: Add audio support
2012-08-13 18:58 ` Sascha Hauer
@ 2012-08-13 19:13 ` Gaëtan Carlier
0 siblings, 0 replies; 11+ messages in thread
From: Gaëtan Carlier @ 2012-08-13 19:13 UTC (permalink / raw)
To: linux-arm-kernel
Hi,
On 08/13/2012 08:58 PM, Sascha Hauer wrote:
> On Mon, Aug 13, 2012 at 01:19:59PM +0200, Ga?tan Carlier wrote:
>> Hi,
>> On 08/03/2012 03:59 PM, Sascha Hauer wrote:
>>> On Tue, Jul 31, 2012 at 09:49:13AM -0300, Fabio Estevam wrote:
>>>> Sascha,
>>>>
>>>> On 7/25/12, Fabio Estevam <festevam@gmail.com> wrote:
>>>>> Hi Sascha,
>>>>>
>>>>> On Tue, Jul 3, 2012 at 3:44 PM, Fabio Estevam
>>>>> <fabio.estevam@freescale.com> wrote:
>>>>>> mx27pdk has a mc13783 audio codec.
>>>>>>
>>>>>> Add support for it.
>>>>>>
>>>>>> Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
>>>>>
>>>>> Is this patch OK? Can it be applied?
>>>>
>>>> Could this get into 3.6?
>>>
>>> Applied now. Sorry, missed this one.
>>>
>>> Sascha
>>>
>> Is this patch will be applied on linux-next tree ?
>
> This will be in linux-next once I send a pull request to Arnd. I do not
> have a branch in linux-next.
>
> Sascha
>
Ok, thanks a lot.
Ga?tan Carlier
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH] dma: imx-dma: Fix kernel crash due to missing clock conversion
@ 2012-07-03 18:44 Fabio Estevam
2012-07-03 18:44 ` [PATCH 2/2] ASoC: imx-mc13783: Add audmux settings for mx27pdk Fabio Estevam
0 siblings, 1 reply; 11+ messages in thread
From: Fabio Estevam @ 2012-07-03 18:44 UTC (permalink / raw)
To: linux-arm-kernel
From: Fabio Estevam <festevam@gmail.com>
With the new i.MX clock infrastructure we need to request the dma clocks
seperately: ahb and ipg clocks.
This fixes the following kernel crash and make audio to be functional again:
root at freescale /home$ aplay audio48k16S.wav
Playing WAVE 'audio48k16S.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Stereo
Unable to handle kernel NULL pointer dereference at virtual address 00000000
pgd = c7b74000
[00000000] *pgd=a7bb5831, *pte=00000000, *ppte=00000000
Internal error: Oops: 17 [#1] PREEMPT ARM
Modules linked in:
CPU: 0 Not tainted (3.5.0-rc5-next-20120702-00007-g3028b64 #1128)
PC is at snd_dmaengine_pcm_get_chan+0x8/0x10
LR is at snd_imx_pcm_hw_params+0x18/0xdc
pc : [<c02d3cf8>] lr : [<c02e95ec>] psr: a0000013
sp : c7b45e30 ip : ffffffff fp : c7ae58e0
r10: 00000000 r9 : c7ae981c r8 : c7b88800
r7 : c7ae5a60 r6 : c7ae5b20 r5 : c7ae9810 r4 : c7afa060
r3 : 00000000 r2 : 00000001 r1 : c7b88800 r0 : c7afa060
Flags: NzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user
Control: 0005317f Table: a7b74000 DAC: 00000015
Process aplay (pid: 701, stack limit = 0xc7b44270)
Stack: (0xc7b45e30 to 0xc7b46000)
5e20: 00100000 00000029 c7b88800 c02db870
5e40: c7ae5a60 c02d4594 00000010 01ae5a60 c7ae5a60 c7ae9810 c7ae9810 c7afa060
5e60: c7ae5b20 c7ae5a60 c7b88800 c02e3ef0 c02e3e08 c7b1e400 c7afa060 c7b88800
5e80: 00000000 c0014da8 c7b44000 00000000 bec566ac c02cd400 c7afa060 c7afa060
5ea0: bec56800 c7b88800 c0014da8 c02cdd7c c04ee710 c04ee7b8 00000003 c005fc74
5ec0: 00000000 7fffffff c7b45f00 c7afa060 c7b67420 c7ba3070 00000004 c0014da8
5ee0: c7b44000 00000000 bec566ac c02ced88 c04e95f8 b6f5ab04 c7b45fb0 0145a468
5f00: 0145a600 bec566bc bec56800 c7b67420 c7ba3070 c00d499c c7b45f18 c7b45f18
5f20: 0000001a 00000004 00000001 c7b44000 c0527f40 00000009 00000008 00000000
5f40: c7b44000 c002c9ec 00000001 c04f0ab0 c04ebec0 00000101 00000000 0000000a
5f60: 60000093 c7b67420 bec56800 c25c4111 00000004 c0014da8 c7b44000 00000000
5f80: bec566ac c00d4f38 b6ffb658 00000000 c0522d80 0145a468 b6fd5000 0145a418
5fa0: 00000036 c0014c00 0145a468 b6fd5000 00000004 c25c4111 bec56800 00020001
5fc0: 0145a468 b6fd5000 0145a418 00000036 0145a468 0145a600 bec566bc bec566ac
5fe0: 0145a468 bec56388 b6f65ce4 b6dcebec 20000010 00000004 00000000 00000000
[<c02d3cf8>] (snd_dmaengine_pcm_get_chan+0x8/0x10) from [<c02e95ec>] (snd_imx_pcm_hw_params+0x18/0xdc)
[<c02e95ec>] (snd_imx_pcm_hw_params+0x18/0xdc) from [<c02e3ef0>] (soc_pcm_hw_params+0xe8/0x1f0)
[<c02e3ef0>] (soc_pcm_hw_params+0xe8/0x1f0) from [<c02cd400>] (snd_pcm_hw_params+0x124/0x474)
[<c02cd400>] (snd_pcm_hw_params+0x124/0x474) from [<c02cdd7c>] (snd_pcm_common_ioctl1+0x4b4/0xf74)
[<c02cdd7c>] (snd_pcm_common_ioctl1+0x4b4/0xf74) from [<c02ced88>] (snd_pcm_playback_ioctl1+0x30/0x510)
[<c02ced88>] (snd_pcm_playback_ioctl1+0x30/0x510) from [<c00d499c>] (do_vfs_ioctl+0x80/0x5e4)
[<c00d499c>] (do_vfs_ioctl+0x80/0x5e4) from [<c00d4f38>] (sys_ioctl+0x38/0x60)
[<c00d4f38>] (sys_ioctl+0x38/0x60) from [<c0014c00>] (ret_fast_syscall+0x0/0x2c)
Code: e593000c e12fff1e e59030a0 e59330bc (e5930000)
---[ end trace fa518c8ba3a74e97 ]--
Reported-by: Javier Martin <javier.martin@vista-silicon.com>
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
---
drivers/dma/imx-dma.c | 36 +++++++++++++++++++++++++-----------
1 files changed, 25 insertions(+), 11 deletions(-)
diff --git a/drivers/dma/imx-dma.c b/drivers/dma/imx-dma.c
index fcfeb3c..5084975 100644
--- a/drivers/dma/imx-dma.c
+++ b/drivers/dma/imx-dma.c
@@ -172,7 +172,8 @@ struct imxdma_engine {
struct device_dma_parameters dma_parms;
struct dma_device dma_device;
void __iomem *base;
- struct clk *dma_clk;
+ struct clk *dma_ahb;
+ struct clk *dma_ipg;
spinlock_t lock;
struct imx_dma_2d_config slots_2d[IMX_DMA_2D_SLOTS];
struct imxdma_channel channel[IMX_DMA_CHANNELS];
@@ -976,10 +977,20 @@ static int __init imxdma_probe(struct platform_device *pdev)
return 0;
}
- imxdma->dma_clk = clk_get(NULL, "dma");
- if (IS_ERR(imxdma->dma_clk))
- return PTR_ERR(imxdma->dma_clk);
- clk_enable(imxdma->dma_clk);
+ imxdma->dma_ipg = devm_clk_get(&pdev->dev, "ipg");
+ if (IS_ERR(imxdma->dma_ipg)) {
+ ret = PTR_ERR(imxdma->dma_ipg);
+ goto err_clk;
+ }
+
+ imxdma->dma_ahb = devm_clk_get(&pdev->dev, "ahb");
+ if (IS_ERR(imxdma->dma_ahb)) {
+ ret = PTR_ERR(imxdma->dma_ahb);
+ goto err_clk;
+ }
+
+ clk_prepare_enable(imxdma->dma_ipg);
+ clk_prepare_enable(imxdma->dma_ahb);
/* reset DMA module */
imx_dmav1_writel(imxdma, DCR_DRST, DMA_DCR);
@@ -988,16 +999,14 @@ static int __init imxdma_probe(struct platform_device *pdev)
ret = request_irq(MX1_DMA_INT, dma_irq_handler, 0, "DMA", imxdma);
if (ret) {
dev_warn(imxdma->dev, "Can't register IRQ for DMA\n");
- kfree(imxdma);
- return ret;
+ goto err_enable;
}
ret = request_irq(MX1_DMA_ERR, imxdma_err_handler, 0, "DMA", imxdma);
if (ret) {
dev_warn(imxdma->dev, "Can't register ERRIRQ for DMA\n");
free_irq(MX1_DMA_INT, NULL);
- kfree(imxdma);
- return ret;
+ goto err_enable;
}
}
@@ -1094,7 +1103,10 @@ err_init:
free_irq(MX1_DMA_INT, NULL);
free_irq(MX1_DMA_ERR, NULL);
}
-
+err_enable:
+ clk_disable_unprepare(imxdma->dma_ipg);
+ clk_disable_unprepare(imxdma->dma_ahb);
+err_clk:
kfree(imxdma);
return ret;
}
@@ -1114,7 +1126,9 @@ static int __exit imxdma_remove(struct platform_device *pdev)
free_irq(MX1_DMA_ERR, NULL);
}
- kfree(imxdma);
+ clk_disable_unprepare(imxdma->dma_ipg);
+ clk_disable_unprepare(imxdma->dma_ahb);
+ kfree(imxdma);
return 0;
}
--
1.7.1
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH 2/2] ASoC: imx-mc13783: Add audmux settings for mx27pdk
2012-07-03 18:44 [PATCH] dma: imx-dma: Fix kernel crash due to missing clock conversion Fabio Estevam
@ 2012-07-03 18:44 ` Fabio Estevam
0 siblings, 0 replies; 11+ messages in thread
From: Fabio Estevam @ 2012-07-03 18:44 UTC (permalink / raw)
To: linux-arm-kernel
mx27pdk board also has a mc13783 codec.
Add support for it and do a run-time machine type check to perform the correct
audiomux settings.
Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: <alsa-devel@alsa-project.org>
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
---
sound/soc/fsl/imx-mc13783.c | 49 +++++++++++++++++++++++++++++--------------
1 files changed, 33 insertions(+), 16 deletions(-)
diff --git a/sound/soc/fsl/imx-mc13783.c b/sound/soc/fsl/imx-mc13783.c
index f59c349..549b31f 100644
--- a/sound/soc/fsl/imx-mc13783.c
+++ b/sound/soc/fsl/imx-mc13783.c
@@ -111,22 +111,39 @@ static int __devinit imx_mc13783_probe(struct platform_device *pdev)
return ret;
}
- imx_audmux_v2_configure_port(MX31_AUDMUX_PORT4_SSI_PINS_4,
- IMX_AUDMUX_V2_PTCR_SYN,
- IMX_AUDMUX_V2_PDCR_RXDSEL(MX31_AUDMUX_PORT1_SSI0) |
- IMX_AUDMUX_V2_PDCR_MODE(1) |
- IMX_AUDMUX_V2_PDCR_INMMASK(0xfc));
- imx_audmux_v2_configure_port(MX31_AUDMUX_PORT1_SSI0,
- IMX_AUDMUX_V2_PTCR_SYN |
- IMX_AUDMUX_V2_PTCR_TFSDIR |
- IMX_AUDMUX_V2_PTCR_TFSEL(MX31_AUDMUX_PORT4_SSI_PINS_4) |
- IMX_AUDMUX_V2_PTCR_TCLKDIR |
- IMX_AUDMUX_V2_PTCR_TCSEL(MX31_AUDMUX_PORT4_SSI_PINS_4) |
- IMX_AUDMUX_V2_PTCR_RFSDIR |
- IMX_AUDMUX_V2_PTCR_RFSEL(MX31_AUDMUX_PORT4_SSI_PINS_4) |
- IMX_AUDMUX_V2_PTCR_RCLKDIR |
- IMX_AUDMUX_V2_PTCR_RCSEL(MX31_AUDMUX_PORT4_SSI_PINS_4),
- IMX_AUDMUX_V2_PDCR_RXDSEL(MX31_AUDMUX_PORT4_SSI_PINS_4));
+ if (machine_is_mx31_3ds()) {
+ imx_audmux_v2_configure_port(MX31_AUDMUX_PORT4_SSI_PINS_4,
+ IMX_AUDMUX_V2_PTCR_SYN,
+ IMX_AUDMUX_V2_PDCR_RXDSEL(MX31_AUDMUX_PORT1_SSI0) |
+ IMX_AUDMUX_V2_PDCR_MODE(1) |
+ IMX_AUDMUX_V2_PDCR_INMMASK(0xfc));
+ imx_audmux_v2_configure_port(MX31_AUDMUX_PORT1_SSI0,
+ IMX_AUDMUX_V2_PTCR_SYN |
+ IMX_AUDMUX_V2_PTCR_TFSDIR |
+ IMX_AUDMUX_V2_PTCR_TFSEL(MX31_AUDMUX_PORT4_SSI_PINS_4) |
+ IMX_AUDMUX_V2_PTCR_TCLKDIR |
+ IMX_AUDMUX_V2_PTCR_TCSEL(MX31_AUDMUX_PORT4_SSI_PINS_4) |
+ IMX_AUDMUX_V2_PTCR_RFSDIR |
+ IMX_AUDMUX_V2_PTCR_RFSEL(MX31_AUDMUX_PORT4_SSI_PINS_4) |
+ IMX_AUDMUX_V2_PTCR_RCLKDIR |
+ IMX_AUDMUX_V2_PTCR_RCSEL(MX31_AUDMUX_PORT4_SSI_PINS_4),
+ IMX_AUDMUX_V2_PDCR_RXDSEL(MX31_AUDMUX_PORT4_SSI_PINS_4));
+ } else if (machine_is_mx27_3ds()) {
+ imx_audmux_v1_configure_port(MX27_AUDMUX_HPCR1_SSI0,
+ IMX_AUDMUX_V1_PCR_SYN |
+ IMX_AUDMUX_V1_PCR_TFSDIR |
+ IMX_AUDMUX_V1_PCR_TCLKDIR |
+ IMX_AUDMUX_V1_PCR_RFSDIR |
+ IMX_AUDMUX_V1_PCR_RCLKDIR |
+ IMX_AUDMUX_V1_PCR_TFCSEL(MX27_AUDMUX_HPCR3_SSI_PINS_4) |
+ IMX_AUDMUX_V1_PCR_RFCSEL(MX27_AUDMUX_HPCR3_SSI_PINS_4) |
+ IMX_AUDMUX_V1_PCR_RXDSEL(MX27_AUDMUX_HPCR3_SSI_PINS_4)
+ );
+ imx_audmux_v1_configure_port(MX27_AUDMUX_HPCR3_SSI_PINS_4,
+ IMX_AUDMUX_V1_PCR_SYN |
+ IMX_AUDMUX_V1_PCR_RXDSEL(MX27_AUDMUX_HPCR1_SSI0)
+ );
+ }
return ret;
}
--
1.7.1
^ permalink raw reply related [flat|nested] 11+ messages in thread
end of thread, other threads:[~2012-08-13 19:13 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-07-03 18:44 [PATCH 1/2] ARM: mx27pdk: Add audio support Fabio Estevam
2012-07-03 18:44 ` [PATCH 2/2] ASoC: imx-mc13783: Add audmux settings for mx27pdk Fabio Estevam
2012-07-05 12:48 ` Mark Brown
2012-07-25 12:21 ` [PATCH 1/2] ARM: mx27pdk: Add audio support Fabio Estevam
2012-07-31 12:49 ` Fabio Estevam
2012-08-03 13:59 ` Sascha Hauer
2012-08-08 15:53 ` Fabio Estevam
2012-08-13 11:19 ` Gaëtan Carlier
2012-08-13 18:58 ` Sascha Hauer
2012-08-13 19:13 ` Gaëtan Carlier
-- strict thread matches above, loose matches on Subject: below --
2012-07-03 18:44 [PATCH] dma: imx-dma: Fix kernel crash due to missing clock conversion Fabio Estevam
2012-07-03 18:44 ` [PATCH 2/2] ASoC: imx-mc13783: Add audmux settings for mx27pdk Fabio Estevam
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).