linux.git
7 years agoMLK-10055-1: ASoC: imx-cs42888: when codec probe failed, alsa return RETRY error.
Shengjiu Wang [Wed, 24 Dec 2014 08:08:45 +0000 (16:08 +0800)]
MLK-10055-1: ASoC: imx-cs42888: when codec probe failed, alsa return RETRY error.

If there is no codec device, the machine driver will not register the
card. then alsa will not return RETRY error. update the error handling
for machine driver.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit 01ffd8e5e828d20214a196e64b981c9fd94c913e)

7 years agoMLK-10038-1: mfd: si476x-i2c: Add support of si476x-rev4.0 board
Zidan Wang [Fri, 19 Dec 2014 03:13:01 +0000 (11:13 +0800)]
MLK-10038-1: mfd: si476x-i2c: Add support of si476x-rev4.0 board

Currently, si476x-rev1.0 and si476x-rev4.0 board just support A10 compatible
command set. For si476x-rev1.0 board, its firmware revision is unsupported and
will revert to A10 compatible function. For si476x-rev4.0 board, its firmware
revision is two and will use A30 function, but A30 command set function can't
work for the rev4.0 board.
So make the command set configurable in dts. If "revision-a10" is present,
set the revision to SI476X_REVISION_A10 to use A10 compatible commit set.
Otherwise, get the revision from si476x register.

Signed-off-by: Zidan Wang <b50113@freescale.com>
(cherry picked from commit b648714c3b71ee084188ae04b1e6a6f2554fe2cb)

7 years agoMLK-9684-3: ASoC: imx-si476x: SRCK and SRFS is used for fm in imx6sx
Shengjiu Wang [Mon, 13 Oct 2014 03:27:12 +0000 (11:27 +0800)]
MLK-9684-3: ASoC: imx-si476x: SRCK and SRFS is used for fm in imx6sx

Configure the aumux port to output SRCK and SRFS from STCK and STFS
of internal port when use the SYN mode.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit f4428f5617916863b5410afea5614cc52190f1a8)
(cherry picked from commit 5335e2a2d5f0f2e1b96aa920425203912b1e34d9)

7 years agoMLK-9684-2: ASoC: imx-si476x: remove the codec_name, use the codec_of_node
Shengjiu Wang [Mon, 13 Oct 2014 03:26:02 +0000 (11:26 +0800)]
MLK-9684-2: ASoC: imx-si476x: remove the codec_name, use the codec_of_node

As the codec_name has a suffix, which is a index and is different
for different platform or different kernel. So here change machine driver
to use codec_of_node, which can be same for different platform/kernel,
then we can maintain a same machine driver for fm.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit e87b135f34cba5cfcd0614b045d4035118fb6d77)
(cherry picked from commit b1dc86a327d96e431c2a55cc6744c6c3bc6b84af)

7 years agoMLK-9684-1: mfd: si476x-i2c: add of_compatible for si476x-codec
Shengjiu Wang [Mon, 13 Oct 2014 03:10:27 +0000 (11:10 +0800)]
MLK-9684-1: mfd: si476x-i2c: add of_compatible for si476x-codec

Add of_compatible for si476x-codec, then si476x-codec driver will have
codec_of_node, So machine driver can use the codec_of_node.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit e2ec44f91a21b127e155e8317d06e8ead7fd2678)
(cherry picked from commit ac6decaf5414e784ae81a524edc2f32060061b59)

7 years agoMLK-9866: mfd: si476x: FM will fail to open sometimes.
Shengjiu Wang [Tue, 18 Nov 2014 06:20:55 +0000 (14:20 +0800)]
MLK-9866: mfd: si476x: FM will fail to open sometimes.

In commit e856a0ebc23dcd2c933e3f902317652cc50f0067, we disabled
wait_event_timeout for CMD_POWER_DOWN, which will cause power down
failed sometimes, then FM will fail to reopen.
In this patch enable the wait_event_timeout for power down.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit 30aa7f1a3580d0a5bc866c624d1da441fd5502c1)
(cherry picked from commit 2b1990fee264d805fcdc0005dcf8b5b63b261d51)

7 years agoMLK-11429-23: mfd: si476x: Use default configuration when no platform data
Nicolin Chen [Thu, 29 Aug 2013 06:35:44 +0000 (14:35 +0800)]
MLK-11429-23: mfd: si476x: Use default configuration when no platform data

cherry-pick below patch from imx_3.14.y
ENGR00276567-6 mfd: si476x: Use default configuration when no platform data

This would allow the driver to work normally without specific platform data,
when using devicetree for example.

Signed-off-by: Nicolin Chen <b42378@freescale.com>
(cherry picked from commit 23e369b88b546d7b699ca9ec46e195a05c61b717)
(cherry picked from commit a2449e1d303e341f32556fb7f4ebc7dcbdd9ead1)

7 years agoMLK-11429-22: mfd: si476x: Fix power up failure
Nicolin Chen [Thu, 29 Aug 2013 06:25:22 +0000 (14:25 +0800)]
MLK-11429-22: mfd: si476x: Fix power up failure

cherry-pick below patch from imx_3.14.y
ENGR00276567-4 mfd: si476x: Fix power up failure

This's some logical error in power-up code, thus fix it.

Signed-off-by: Nicolin Chen <b42378@freescale.com>
(cherry picked from commit 77d97ad1bb77c0e3c60b9781a06b61d4b4667de1)
(cherry picked from commit b656522da2685ef9a4da2229b6786d5cd0c12189)

7 years agoMLK-11429-21: ASoC: fsl: port si476x machine driver from imx_3.10.y
Shengjiu Wang [Fri, 5 Sep 2014 06:55:04 +0000 (14:55 +0800)]
MLK-11429-21: ASoC: fsl: port si476x machine driver from imx_3.10.y

cherry-pick below patch from imx_3.14.y
ENGR00330403-3: ASoC: fsl: port si476x machine driver from imx_3.10.y

Port si476x machine dirver for i.MX series SoC and binding doc from imx_3.10.y

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit 05a68db09806fe5b0aa927dd94cf69b1b0c0fa5a)

7 years agoMLK-10161-3: ARM: imx6sx: Add SPDIF_GCLK clock in clock tree
Shengjiu Wang [Tue, 27 Jan 2015 08:44:34 +0000 (16:44 +0800)]
MLK-10161-3: ARM: imx6sx: Add SPDIF_GCLK clock in clock tree

As spdif driver will register SPDIF clock to regmap, regmap will do
clk_prepare in init function, so SPDIF clock is prepared in probe, then its
root clock (pll clock) is prepared also, which cause the arm can't enter
low power mode.
Add SPDIF_GCLK in clock tree which share same gate bits with SPDIF clock.
Its root clock is ipg clock, and register it to regmap, then the issue can be
fixed.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit 3f8999cdb4fabed4f720c6ee23947e19c8fff83f)

7 years agoMLK-10161-1: ARM: imx6q: Add SPDIF_GCLK clock in clock tree
Shengjiu Wang [Tue, 27 Jan 2015 08:24:53 +0000 (16:24 +0800)]
MLK-10161-1: ARM: imx6q: Add SPDIF_GCLK clock in clock tree

As spdif driver will register SPDIF clock to regmap, regmap will do
clk_prepare in init function, so SPDIF clock is prepared in probe, then its
root clock (pll clock) is prepared also, which cause the arm can't enter
low power mode.
Add SPDIF_GCLK in clock tree which share same gate bits with SPDIF clock.
Its root clock is ipg clock, and register it to regmap, then the issue can be
fixed.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit 90d3a7c5da7b17f5bd88a906b54473468fa08991)

7 years agoMLK-11429-21: ASoC: imx-cs42888: port cs42888 machine driver from imx_3.10.y
Shengjiu Wang [Mon, 4 Aug 2014 08:46:01 +0000 (16:46 +0800)]
MLK-11429-21: ASoC: imx-cs42888: port cs42888 machine driver from imx_3.10.y

cherry-pick below patch from imx_3.14.y
ENGR00330403-1: ASoC: imx-cs42888: port cs42888 machine driver from imx_3.10.y

Port the cs42888 machine driver from imx_3.10.y and do update according to
new esai driver and asrc driver.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit 7ed3aac83630a38eb397ed92f815a28e07198748)

7 years agoMLK-11301: ASoC: cs42xx8: can't set volume 255 in idle mode
Shengjiu Wang [Fri, 31 Jul 2015 09:48:53 +0000 (17:48 +0800)]
MLK-11301: ASoC: cs42xx8: can't set volume 255 in idle mode

Volume 255 corresponding to register value 0, the value 0 is default
value. In regcache_sync(), when the cache value is equal to default
value, this register will be skipped. So volume 255 isn't set to
register successfully.

The correct fix is to add software reset in runtime_resume, but cs42xx8
has no software reset, the hardware reset gpio pin is used by all the
perpherial device in ARD base board. So need to use another method.

In order to fix it, need to cherry-pick two patch from master branch.
Which will sync all the registers include the register which cache value
equal the default value, And remove regcache_mark_dirty().

Add update value of one register to make the cache_dirty if user press
the hardware reset pin on the board, then need to regcache_sync.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit 5c0cae19928f99ebc8adf0013df850ba5b41d6a8)

7 years agoMLK-11004-3: ASoC: cs42888: enable PWR in probe for fix pop noise
Shengjiu Wang [Wed, 27 May 2015 09:13:54 +0000 (17:13 +0800)]
MLK-11004-3: ASoC: cs42888: enable PWR in probe for fix pop noise

Delete PWR widget, enable it in probe to fix pop noise

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit 4fdb40165706bba3de6aa47e6328136d1eb597fc)

7 years agoMLK-11004-1: ASoC: cs42888: Add regcache mask dirty in suspend
Shengjiu Wang [Wed, 20 May 2015 10:01:00 +0000 (18:01 +0800)]
MLK-11004-1: ASoC: cs42888: Add regcache mask dirty in suspend

Add regcache mask dirty in suspend, otherwise the register is not
synced with cache in resume.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit 9687aa5bbf5dd91b57f6e8b4b8ce69bf20e29c43)

7 years agoMLK-11429-20: ASoC: cs4xx8: fix the setting of Functional mode
Shengjiu Wang [Wed, 2 Jul 2014 09:24:45 +0000 (17:24 +0800)]
MLK-11429-20: ASoC: cs4xx8: fix the setting of Functional mode

cherry-pick below patch from imx_3.14.y
ENGR00320849-1 ASoC: cs4xx8: fix the setting of Functional mode

Failed case:
arecord -Dhw:0,1 -f S16_LE -r 96000 -c 2 -traw | aplay -Dhw:0,0 -f
S16_LE -r 96000 -c 2 -traw.
There is no sound when use this case.The reason is that the setting
of Functional mode is not correct.

Signed-off-by: Shengjiu Wang <b02247@freescale.com>
(cherry picked from commit be1ef3bb8da5c263345ebdad4a7c218a095d0f48)
(cherry picked from commit c2dfac6c09bc1fcb044022bcdaea450707feda4c)

7 years agoMLK-11429-19: ARM: dts: imx6qdl: refine spdif support in devicetree
Shengjiu Wang [Mon, 22 Sep 2014 08:54:45 +0000 (16:54 +0800)]
MLK-11429-19: ARM: dts: imx6qdl: refine spdif support in devicetree

cherry-pick below patch from imx_3.14.y
ENGR00332688: ARM: dts: imx6qdl: refine spdif support in devicetree

Add sysclk and spba clock, and assigned-clocks

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
7 years agoMLK-10903-2: ASoC: imx_spdif: add snd_soc_pm_ops
Shengjiu Wang [Tue, 19 May 2015 05:34:51 +0000 (13:34 +0800)]
MLK-10903-2: ASoC: imx_spdif: add snd_soc_pm_ops

Add snd_soc_pm_ops in machine driver to make the trigger suspend/resume
be called in suspend/resume. Remove platform_set_drvdata for redundance,
When register card, it has been called.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit fe21119eed18804b2bc7c47216b6f4478de0268d)

7 years agoMLK-10903-1: ASoC: fsl_spdif: remove cache only in suspend/resume
Shengjiu Wang [Tue, 19 May 2015 05:34:32 +0000 (13:34 +0800)]
MLK-10903-1: ASoC: fsl_spdif: remove cache only in suspend/resume

In imx6qp, there is no mega fast. After suspend, but before resume,
there will be spdif interrupt, if set cache only in suspend, then we
can't clear the interrupt, because regmap_write only write to cache.
So the system will hang for the interrupt can't be cleared.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit 2a6a522c86d6c0fe80023c4327ca7ce4792035c8)

7 years agoMLK-10048-5: ASoC: fsl_asrc: underrun for playback 192k, 6ch p2p case.
Shengjiu Wang [Mon, 8 Dec 2014 07:20:41 +0000 (15:20 +0800)]
MLK-10048-5: ASoC: fsl_asrc: underrun for playback 192k, 6ch p2p case.

For p2p output, the output divider should align with the output sample
rate, if use the Ideal sample rate, there will be a lot of overload, which
will cause underrun.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit 5ab043f1a020ae8c3aeb3d91f6894bbd6a6ec147)

7 years agoMLK-10048-1: ASoC: fsl_asrc: add protection the old version asrc
Shengjiu Wang [Mon, 8 Dec 2014 05:03:17 +0000 (13:03 +0800)]
MLK-10048-1: ASoC: fsl_asrc: add protection the old version asrc

The latest asrc's channel bits is 4, bit the old asrc's channel bits is 3.
So here add protection for when using the old version asrc.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit e282d8825217c6f4ece4f9dcc2efa3421ea22b4b)

7 years agoMLK-11429-16: ASoC: fsl_asrc: Add delay after enabling ASRC p2p
Nicolin Chen [Wed, 9 Apr 2014 03:24:51 +0000 (11:24 +0800)]
MLK-11429-16: ASoC: fsl_asrc: Add delay after enabling ASRC p2p

cherry-pick below patch from imx_3.14.y
ENGR00307592 ASoC: fsl_asrc: Add delay after enabling ASRC p2p

When using ASRC p2p as a for-end with other back-end modules like ESAI,
it'd be safer to add 1ms delay, less might be futile for extreme cases,
after enabling ASRC so as to keep ASRC output FIFO with enough data to
content the DMA burstsize of back-ends and accordingly prevent underrun
that might happen to them.

Acked-by: Wang Shengjiu <b02247@freescale.com>
Signed-off-by: Nicolin Chen <Guangyu.Chen@freescale.com>
(cherry picked from commit c68c1874c07c30a3483eed70fb2abe82e19d1d20)

7 years agoMLK-9782: ASoC: fsl_esai: fix the channel swap issue in low possibility
Shengjiu Wang [Mon, 3 Nov 2014 08:47:17 +0000 (16:47 +0800)]
MLK-9782: ASoC: fsl_esai: fix the channel swap issue in low possibility

There is very low possibility that channel swap happened in beginning when
multi output/input pin is enabled. The issue is that hardware can't send data
to correct pin in the begginning with the normal enable flow.
Here use TSMA/TSMB as the trigger for sending data to workaround this issue.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit 859b0fc4544bef30e269b4f6a81999db1d07a42d)
(cherry picked from commit 576df2aafc1b5a5b9c596a54bb276b2472e72ff5)

7 years agoMLK-9760: ASoC: fsl_esai: fix NULL pointer issue in reset handler
Shengjiu Wang [Wed, 29 Oct 2014 07:47:35 +0000 (15:47 +0800)]
MLK-9760: ASoC: fsl_esai: fix NULL pointer issue in reset handler

When test with case arecord -Dhw:0,1 | aplay -Dhw:0,0, xrun happened,
the reset handler will be called, but for BE(backend) stream, the
substream->ops is null.
This patch is to fix this null pointer issue.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit 4db112a8cd3caf5a553afea88cf7fe8d9781f459)
(cherry picked from commit cf060b0f735d0fadadda2dc03d0b38e96ca7ffe2)

7 years agoMLK-11429-15: ASoC: imx-audmux: Add driver suspend and resume to support MEGA Fast
Nicolin Chen [Thu, 15 May 2014 10:53:25 +0000 (18:53 +0800)]
MLK-11429-15: ASoC: imx-audmux: Add driver suspend and resume to support MEGA Fast

cherry-pick below patch from imx_3.14.y
ENGR00318773-10 ASoC: imx-audmux: Add driver suspend and resume to support MEGA Fast

For i.MX6 SoloX, there is a mode of the SoC to shutdown all power source of
modules during system suspend and resume procedure. Thus, AUDMUX needs to
save all the values of registers before the system suspend and restore them
after the system resume.

Acked-by: Wang Shengjiu <b02247@freescale.com>
Signed-off-by: Nicolin Chen <Guangyu.Chen@freescale.com>
(cherry picked from commit 3f3781143ba2800f7e3e46dbecc0c7a76d22a146)

7 years agoMLK-11429-11: ASoC: change error message to debug message
Shengjiu Wang [Fri, 9 Aug 2013 06:45:51 +0000 (14:45 +0800)]
MLK-11429-11: ASoC: change error message to debug message

cherry-pick below patch from imx_3.14.y
ENGR00274585-9 ASoC: change error message to debug message

This error message is not actual error, which is a warning. When using
FE/BE, if there is widget which is used by playback and capture route, then
this message will be printed.

Signed-off-by: Shengjiu Wang <b02247@freescale.com>
(cherry picked from commit ad60b0e03d058b57f2fd9538e1158da8eefcea1f)

7 years agoMLK-11429-10: ASoC: fsl: implement ASRC P2P xrun handler
Shengjiu Wang [Thu, 10 Apr 2014 02:11:00 +0000 (10:11 +0800)]
MLK-11429-10: ASoC: fsl: implement ASRC P2P xrun handler

cherry-pick below patch from imx_3.14.y
ENGR00307835-4 ASoC: fsl: implement ASRC P2P xrun handler

When ASRC P2P is working, it will check the xrun status of cpu dai
in the back end bistream. then will do Whole route stop and restart.

Signed-off-by: Shengjiu Wang <b02247@freescale.com>
(cherry picked from commit 28d18f23fe7577f613ad8cfb4699bba26178304b)

7 years agoMLK-11429-9: ASoC: fsl: implement the ESAI xrun handler.
Shengjiu Wang [Mon, 14 Apr 2014 07:19:54 +0000 (15:19 +0800)]
MLK-11429-9: ASoC: fsl: implement the ESAI xrun handler.

cherry-pick below patch from imx_3.14.y
ENGR00307835-3 ASoC: fsl: implement the ESAI xrun handler.

When esai xrun happened, there is possibility of channel swap. So ESAI
need to be reset.

Signed-off-by: Shengjiu Wang <b02247@freescale.com>
(cherry picked from commit 440fbeee5bba4d4356a392ff35fe262774c48ea1)

7 years agoMLK-11429-8: ASoC: dmaengine: Add two function for dmaengine_pcm
Shengjiu Wang [Mon, 14 Apr 2014 06:58:05 +0000 (14:58 +0800)]
MLK-11429-8: ASoC: dmaengine: Add two function for dmaengine_pcm

cherry-pick below patch from imx_3.14.y
ENGR00307835-2 ASoC: dmaengine: Add two function for dmaengine_pcm

Add check_xrun and device_reset for dmaengine_pcm

Signed-off-by: Shengjiu Wang <b02247@freescale.com>
(cherry picked from commit 405588f31e432e5c6634a0817e4d804ead87882b)

7 years agoMLK-11429-7: ASoC: fsl_spdif: add pm runtime for spdif
Shengjiu Wang [Tue, 3 Sep 2013 10:01:52 +0000 (18:01 +0800)]
MLK-11429-7: ASoC: fsl_spdif: add pm runtime for spdif

cherry-pick below patch from imx_3.14.y
ENGR00331799-8: ASoC: fsl_spdif: add pm runtime for spdif

Add pm runtime for spdif.

Signed-off-by: Shengjiu Wang <b02247@freescale.com>
(cherry picked from commit 91136d03edf45355b6b0075a486f78f573c97c52)

7 years agoMLK-11429-6: ASoC: fsl_ssi: pm_runtime for ssi
Shengjiu Wang [Fri, 19 Sep 2014 06:09:46 +0000 (14:09 +0800)]
MLK-11429-6: ASoC: fsl_ssi: pm_runtime for ssi

cherry-pick below patch from imx_3.14.y
ENGR00331799-7: ASoC: fsl_ssi: pm_runtime for ssi

ADD pm runtime for ssi.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit 09f7a8aa7e417aaf837a4b9b8b15874ad95765c2)

7 years agoMLK-11429-2: ARM: dts: imx6sx: update dts for asrc
Shengjiu Wang [Wed, 17 Sep 2014 08:41:39 +0000 (16:41 +0800)]
MLK-11429-2: ARM: dts: imx6sx: update dts for asrc

cherry-pick below patch from imx_3.14.y
ENGR00331799-3: ARM: dts: imx6sx: update dts for asrc

As we use the upstreamed asrc driver in imx_3.14, the device tree need
to be updated.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit cb4b6694dfd9c6ad996fba09c2250b11cf46c555)

7 years agoMLK-11429-1: ASoC: fsl_spdif: don't change the root clock rate of spdif in driver
Shengjiu Wang [Tue, 16 Sep 2014 11:18:49 +0000 (19:18 +0800)]
MLK-11429-1: ASoC: fsl_spdif: don't change the root clock rate of spdif in driver

cherry-pick below patch from imx_3.14.y
ENGR00331799-2 ASoC: fsl_spdif: don't change the root clock rate of spdif in driver

The spdif root clock may be used by other module or defined with
CLK_SET_RATE_GATE, so we can't change the clock rate in driver.
In this patch remove the clk_set_rate and clk_round_rate to protect the
clock.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit c77170b2c9a9737f6fd61a5ea85a43b90e8ef02b)

7 years agoMLK-11424: dmaengine: imx-sdma: slave_sg can't work after running cyclic
Shengjiu Wang [Wed, 26 Aug 2015 08:54:23 +0000 (16:54 +0800)]
MLK-11424: dmaengine: imx-sdma: slave_sg can't work after running cyclic

After running asrc p2p, then asrc m2m can't work. It is caused by the
sdmac->flags isn't reset after running. then sdma_int_handler go to
wrong branch.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
7 years agoMLK-11422 ARM: dts: imx7d-12x12-lpddr3-arm2: add mqs sound card support
Zidan Wang [Wed, 26 Aug 2015 08:16:38 +0000 (16:16 +0800)]
MLK-11422 ARM: dts: imx7d-12x12-lpddr3-arm2: add mqs sound card support

add mqs sound card support

Signed-off-by: Zidan Wang <zidan.wang@freescale.com>
7 years agoMLK-11053: ASoC: imx_mqs: Remove 96k and 192k support for mqs
Shengjiu Wang [Mon, 8 Jun 2015 07:55:04 +0000 (15:55 +0800)]
MLK-11053: ASoC: imx_mqs: Remove 96k and 192k support for mqs

If the mclk is 24.576MHz, mqs can't support 96k and 192kHz, because
the we can't get a proper clock divider for mqs.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
7 years agoMLK-10775-2: ASoC: imx-mqs: add asrc p2p support in sai->mqs
Shengjiu Wang [Wed, 29 Apr 2015 05:21:37 +0000 (13:21 +0800)]
MLK-10775-2: ASoC: imx-mqs: add asrc p2p support in sai->mqs

add asrc p2p support in sai->mqs

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
7 years agoMLK-10108-2: ASoC: imx-mqs: set tdm slot in hw_params() for sai master mode
Zidan Wang [Thu, 2 Apr 2015 09:48:48 +0000 (17:48 +0800)]
MLK-10108-2: ASoC: imx-mqs: set tdm slot in hw_params() for sai master mode

Set tdm slot in hw_params() for sai master mode.

Signed-off-by: Zidan Wang <zidan.wang@freescale.com>
7 years agoMLK-10515-2: ASoC: fsl_mqs: Move clk get_rate to hw_param
Shengjiu Wang [Tue, 31 Mar 2015 10:17:35 +0000 (18:17 +0800)]
MLK-10515-2: ASoC: fsl_mqs: Move clk get_rate to hw_param

It is too early to put clk get rate in probe, because the rate for
the clock may not be ready.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
7 years agoMLK-9723-7: ARM: imx_v7_defconfig: build in mqs
Shengjiu Wang [Tue, 21 Oct 2014 07:15:16 +0000 (15:15 +0800)]
MLK-9723-7: ARM: imx_v7_defconfig: build in mqs

enable mqs sound card.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit 21cf6e439bdf9a0cf287b1dd04ceb56d0486167d)

7 years agoMLK-9723-5: ASoC: imx-mqs: add mqs machine driver
Shengjiu Wang [Tue, 21 Oct 2014 06:28:14 +0000 (14:28 +0800)]
MLK-9723-5: ASoC: imx-mqs: add mqs machine driver

Implement machine driver for mqs, which use the sai as cpu dai.
sai work on master mode.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit cac9eb41debc6444d753dc936cdf76874260b9e4)

7 years agoMLK-9723-4: ASoC: fsl_mqs: add mqs codec driver
Shengjiu Wang [Mon, 29 Sep 2014 02:56:03 +0000 (10:56 +0800)]
MLK-9723-4: ASoC: fsl_mqs: add mqs codec driver

Implement codec driver for mqs. mqs is a very simple IP. which support:

Word length: 16bit.
DAI format: Left-Justified, slave mode.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit 9da6bdd2072b850e9bb910512123eff7d80a0e2f)

7 years agoMLK-9723-3: include: imx6q-iomuxc-gpr: add bit description for MQS
Shengjiu Wang [Mon, 29 Sep 2014 02:56:56 +0000 (10:56 +0800)]
MLK-9723-3: include: imx6q-iomuxc-gpr: add bit description for MQS

Add MQS's bit description in gpr header file.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit 1e576de4b46a0fadd1c8df7f08229ac759e765f5)

7 years agoMLK-11420 ARM: dts: imx7d-12x12-lpddr3-arm2: add sai<->WM8958 sound card support
Zidan Wang [Wed, 26 Aug 2015 07:42:39 +0000 (15:42 +0800)]
MLK-11420 ARM: dts: imx7d-12x12-lpddr3-arm2: add sai<->WM8958 sound card support

add sai<->WM8958 sound card support

Signed-off-by: Zidan Wang <zidan.wang@freescale.com>
7 years agoMLK-11421 video: mipi_dsi_samsung: add hx8369 wvga panel
Fancy Fang [Wed, 26 Aug 2015 06:41:10 +0000 (14:41 +0800)]
MLK-11421 video: mipi_dsi_samsung: add hx8369 wvga panel

Add hx8369 wvga panel driver for mipi dsi.

Signed-off-by: Fancy Fang <chen.fang@freescale.com>
7 years agoMLK-11418 misc: sram: Set default alignment to 4Kbytes
Nicolin Chen [Tue, 5 Nov 2013 11:23:58 +0000 (19:23 +0800)]
MLK-11418 misc: sram: Set default alignment to 4Kbytes

cherry-pick below patch from v3.14.y:
ENGR00286273-2 misc: sram: Set default alignment to 4Kbytes

As Kernel 3.0.35 does, we set the default iram alignment to 4Kbytes,
although it would waste few memory space.

We here try to do this as an expediency because currently we couldn't
find a perfect solution for 4Kbytes alignment requirement from SDMA.

Signed-off-by: Nicolin Chen <b42378@freescale.com>
(cherry picked from commit cc35bf5bd3472efca29a0858c0ad468a63c60950)

7 years agoMLK-11392-1 ASoC: fsl_sai: Move pm runtime enable/disable out trigger function
Shengjiu Wang [Fri, 21 Aug 2015 05:01:17 +0000 (13:01 +0800)]
MLK-11392-1 ASoC: fsl_sai: Move pm runtime enable/disable out trigger function

When building kernel with CONFIG_DEBUG_ATOMIC_SLEEP=y, there will be
kernel dump.

BUG: sleeping function called from invalid context at drivers/base/power/runtime.c:954
in_atomic(): 1, irqs_disabled(): 128, pid: 705, name: aplay
CPU: 0 PID: 705 Comm: aplay Not tainted 3.10.53-02755-gbee6071 #1472
[<80013f4c>] (unwind_backtrace+0x0/0xf8) from [<800119c0>] (show_stack+0x10/0x14)
[<800119c0>] (show_stack+0x10/0x14) from [<8031fd68>] (__pm_runtime_resume+0x88/0x90)
[<8031fd68>] (__pm_runtime_resume+0x88/0x90) from [<80509ba8>] (fsl_sai_trigger+0x98/0x300)
[<80509ba8>] (fsl_sai_trigger+0x98/0x300) from [<804fef9c>] (soc_pcm_trigger+0x90/0xa0)
[<804fef9c>] (soc_pcm_trigger+0x90/0xa0) from [<804eae60>] (snd_pcm_do_start+0x2c/0x30)
[<804eae60>] (snd_pcm_do_start+0x2c/0x30) from [<804eaad8>] (snd_pcm_action_single+0x38/0x78)
[<804eaad8>] (snd_pcm_action_single+0x38/0x78) from [<804eada8>] (snd_pcm_action_lock_irq+0x84/0xa4)
[<804eada8>] (snd_pcm_action_lock_irq+0x84/0xa4) from [<804eba58>] (snd_pcm_common_ioctl1+0x16c/0xd68)
[<804eba58>] (snd_pcm_common_ioctl1+0x16c/0xd68) from [<804ecc8c>] (snd_pcm_playback_ioctl1+0x158/0x4d0)
[<804ecc8c>] (snd_pcm_playback_ioctl1+0x158/0x4d0) from [<800d5bb8>] (do_vfs_ioctl+0x80/0x624)
[<800d5bb8>] (do_vfs_ioctl+0x80/0x624) from [<800d6198>] (SyS_ioctl+0x3c/0x5c)
[<800d6198>] (SyS_ioctl+0x3c/0x5c) from [<8000e200>] (ret_fast_syscall+0x0/0x30)

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit 99095f3362bc53eb414dabbbe7da5778f3d54f25)

7 years agoMLK-10337: ASoC: fsl_sai: Enable PM runtime support
Fabio Estevam [Thu, 26 Feb 2015 06:28:20 +0000 (14:28 +0800)]
MLK-10337: ASoC: fsl_sai: Enable PM runtime support

request BUS_FREQ_AUDIO for SAI.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit 2b869e1b16162d752c1345082d5d76b9bf720e88)

7 years agoMLK-11369-5 ARM: imx_v7_defconfig: enable WM8960 and WM8958 sound card, and ASRC
Zidan Wang [Mon, 17 Aug 2015 07:33:10 +0000 (15:33 +0800)]
MLK-11369-5 ARM: imx_v7_defconfig: enable WM8960 and WM8958 sound card, and ASRC

enable WM8960 and WM8958 sound card, and ASRC

Signed-off-by: Zidan Wang <zidan.wang@freescale.com>
7 years agoMLK-11369-4 ASoC: imx-wm8958: port wm8958 machine driver from imx_3.14.y
Zidan Wang [Tue, 10 Feb 2015 03:26:58 +0000 (11:26 +0800)]
MLK-11369-4 ASoC: imx-wm8958: port wm8958 machine driver from imx_3.14.y

port wm8958 machine driver from imx_3.14.y.

Signed-off-by: Zidan Wang <zidan.wang@freescale.com>
7 years agoMLK-11369-2 ARM: dts: add sai<->wm8960 sound card support for imx7d-sdb
Zidan Wang [Mon, 17 Aug 2015 07:13:17 +0000 (15:13 +0800)]
MLK-11369-2 ARM: dts: add sai<->wm8960 sound card support for imx7d-sdb

add sai<->wm8960 sound card support for imx7d-sdb.

Signed-off-by: Zidan Wang <zidan.wang@freescale.com>
7 years agoMLK-11369-1 ASoC: imx-wm8960: port wm8960 machine driver from imx_3.14.y branch
Zidan Wang [Mon, 3 Aug 2015 05:21:12 +0000 (13:21 +0800)]
MLK-11369-1 ASoC: imx-wm8960: port wm8960 machine driver from imx_3.14.y branch

port wm8960 machine driver from imx_3.14.y branch

Signed-off-by: Zidan Wang <zidan.wang@freescale.com>
7 years agoMLK-11179 ASoC: fsl: implement specify audio DMA buffer size from devicetree
Zidan Wang [Fri, 26 Jun 2015 08:06:45 +0000 (16:06 +0800)]
MLK-11179 ASoC: fsl: implement specify audio DMA buffer size from devicetree

If the property "fsl,dma-buffer-size" is present, using the specified buffer size.
Otherwise, using the default audio buffer size.

Signed-off-by: Zidan Wang <zidan.wang@freescale.com>
(cherry picked from commit bba153dd92a4f58b81c4c26fb3a95c45445c65e0)

7 years agoMLK-10611-1 ASoC: fsl-sai: Just one device can playback(captrue) when using the same SAI
Zidan Wang [Fri, 10 Apr 2015 01:52:36 +0000 (09:52 +0800)]
MLK-10611-1 ASoC: fsl-sai: Just one device can playback(captrue) when using the same SAI

Just one device can playback(captrue) when using the same SAI.

Signed-off-by: Zidan Wang <zidan.wang@freescale.com>
(cherry picked from commit 7981a488c4da440db21f0544b519b44636a0cabb)

7 years agoMLK-9974: ASoC: fsl_sai: There is underrun detected in the beginning sometimes
Shengjiu Wang [Mon, 29 Dec 2014 05:40:08 +0000 (13:40 +0800)]
MLK-9974: ASoC: fsl_sai: There is underrun detected in the beginning sometimes

Write initial words to SAI FIFO to reduce underrun error

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit 7ba8ae883d84540fac5ed4147d124399537bc0b3)
(cherry picked from commit f4435f35aa2a97551d2c4a12ca316c354a880f85)

7 years agoMLK-11401-1 ARM: imx: correct mipi PGC power up/down flow
Anson Huang [Mon, 24 Aug 2015 16:24:20 +0000 (00:24 +0800)]
MLK-11401-1 ARM: imx: correct mipi PGC power up/down flow

For SW power up/down mipi phy in GPC, below flow should
be executed:

1. map mipi phy to A7 domain;
2. enable mipi phy PGC bit if it is a disable operation;
3. do software power up/down request in GPC;
4. wait for the software request bit clear.

Previous flow is incorrect, as it miss #4 step, correct it.

Signed-off-by: Anson Huang <b20788@freescale.com>
(cherry picked from commit 707ed61de83e7cc1c7d7b15cc8a1c00bea0bc8d1)

Conflicts:
arch/arm/mach-imx/gpcv2.c

7 years agoMLK-11162 video: mipi_dsi_samsung: add runtime pm for mipi phy
Fancy Fang [Wed, 24 Jun 2015 05:28:11 +0000 (13:28 +0800)]
MLK-11162 video: mipi_dsi_samsung: add runtime pm for mipi phy

Using runtime pm framework to control the mipi
phy on/off dynamically.

Signed-off-by: Fancy Fang <chen.fang@freescale.com>
(cherry picked from commit 0dcb155067e95d8cdb0030584a2157034cae4701)

Conflicts:
drivers/video/mxc/mipi_dsi_samsung.c

7 years agoMLK-11113 video: mipi_dsi_samsung: add fastmix support when suspend
Fancy Fang [Mon, 15 Jun 2015 08:52:55 +0000 (16:52 +0800)]
MLK-11113 video: mipi_dsi_samsung: add fastmix support when suspend

In 7D platform, the fastmix will power down MIPI DSI when
system doing suspend. So when system resume, the MIPI DSI
will be in the 'reset' state and all the registers should
be configured again.

Signed-off-by: Fancy Fang <chen.fang@freescale.com>
(cherry picked from commit 25ad2d6142962455ac0e515c1118b9c42bd13ffa)

Conflicts:
drivers/video/mxc/mipi_dsi_samsung.c

7 years agoMLK-11395-9 video: mipi_dsi_samsung: the initial code for samsung's mipi dsi
Fancy Fang [Tue, 25 Aug 2015 02:34:06 +0000 (10:34 +0800)]
MLK-11395-9 video: mipi_dsi_samsung: the initial code for samsung's mipi dsi

The initial source code for the new mipi dsi module which can
support the basic necessary functions(blank/unblank, set brightness
and etc). New functions can be added if required later.

Signed-off-by: Fancy Fang <chen.fang@freescale.com>
7 years agoMLK-11395-8 video: mipi_dsi_samsung: add build support
Fancy Fang [Fri, 21 Aug 2015 09:10:23 +0000 (17:10 +0800)]
MLK-11395-8 video: mipi_dsi_samsung: add build support

Add build support for this new samsung's mipi dsi.
The old mipi dsi build option is removed from the
kernel default config. Instead, add the new mipi
dsi build option to the default config.

Signed-off-by: Fancy Fang <chen.fang@freescale.com>
7 years agoMLK-11395-7 ARM: dts: imx7d-12x12-lpddr3-arm2: create an new dts for mipi dsi
Fancy Fang [Fri, 21 Aug 2015 08:08:31 +0000 (16:08 +0800)]
MLK-11395-7 ARM: dts: imx7d-12x12-lpddr3-arm2: create an new dts for mipi dsi

Since mipi display and normal lcd display cannot exsit
together, an new dts should be created for the mipi
display.

Signed-off-by: Fancy Fang <chen.fang@freescale.com>
7 years agoMLK-11395-6 ARM: dts: imx7d-12x12-lpddr3-arm2: add dts support for mipi dsi
Fancy Fang [Fri, 21 Aug 2015 07:57:16 +0000 (15:57 +0800)]
MLK-11395-6 ARM: dts: imx7d-12x12-lpddr3-arm2: add dts support for mipi dsi

Add mipi dsi dts support for imx7d-12x12-lpddr3-arm2 board.

Signed-off-by: Fancy Fang <chen.fang@freescale.com>
7 years agoMLK-11395-5 video: mxsfb: add modelist empty check before using it
Fancy Fang [Tue, 25 Aug 2015 08:13:55 +0000 (16:13 +0800)]
MLK-11395-5 video: mxsfb: add modelist empty check before using it

Signed-off-by: Fancy Fang <chen.fang@freescale.com>
7 years agoMLK-11395-4 ARM: imx: add mipi phy regulator handling to gpcv2
Signed-off-by: Fancy Fang [Tue, 1 Nov 2016 14:33:19 +0000 (16:33 +0200)]
MLK-11395-4 ARM: imx: add mipi phy regulator handling to gpcv2

Add mipi phy regulator notify callback to power on or power off this
phy along with the regulator enable/disable called. This will be used
by mipi dsi/csi later.

Signed-off-by: Fancy Fang <chen.fang@freescale.com>
7 years agoMLK-11395-3 regulator: consumer: add new event macros
Fancy Fang [Fri, 21 Aug 2015 06:19:27 +0000 (14:19 +0800)]
MLK-11395-3 regulator: consumer: add new event macros

Add two new regulator events macro 'REGULATOR_EVENT_PRE_DO_ENABLE'
and 'REGULATOR_EVENT_PRE_DO_DISABLE', since some gpc operations
should be required when MIPI PHY is powered on/off.

Signed-off-by: Fancy Fang <chen.fang@freescale.com>
7 years agoMLK-11395-2: reset: build in CONFIG_RESET_GPIO by default
Shawn Guo [Sun, 14 Jul 2013 13:10:37 +0000 (21:10 +0800)]
MLK-11395-2: reset: build in CONFIG_RESET_GPIO by default

GPIO is widely used as the reset control for various devices.  Let's
build the support in by default.

[shawn.guo: cherry-pick commit 795fcb3bc5bb from imx_3.10.y]
Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
(cherry picked from commit 0cbf78b5b02c57e6fd0e57e811cfe56509c4fd24)

7 years agoMLK-11395-1: reset: register gpio-reset driver in arch_initcall
Shawn Guo [Sun, 14 Jul 2013 12:41:00 +0000 (20:41 +0800)]
MLK-11395-1: reset: register gpio-reset driver in arch_initcall

It's a little bit late to register gpio-reset driver at module_init
time, because gpio-reset provides reset control via gpio for other
devices which are mostly probed at module_init time too.  And it
becomes even worse, when the gpio comes from IO expander on I2C bus,
e.g. pca953x.  In that case, gpio-reset needs to be ready before I2C
bus driver which is generally ready at subsys_initcall time.  Let's
register gpio-reset driver in arch_initcall() to have it ready early
enough.

The defer probe mechanism is not used here, because a reset controller
driver should be reasonably registered early than other devices.  More
importantly, defer probe doe not help in some nasty cases, e.g. the
gpio-pca953x device itself needs a reset from gpio-reset driver start
working.

[shawn.guo: cherry-pick commit 7153f05108ef from imx_3.10.y]
Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
(cherry picked from commit 11e3543010d4ed50db78a5fc809f24c89e8c6e30)

7 years agoreset: Add driver for gpio-controlled reset pins
Philipp Zabel [Thu, 30 May 2013 09:09:00 +0000 (11:09 +0200)]
reset: Add driver for gpio-controlled reset pins

This driver implements a reset controller device that toggle a gpio
connected to a reset pin of a peripheral IC. The delay between assertion
and de-assertion of the reset signal can be configured via device tree.

Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Reviewed-by: Stephen Warren <swarren@nvidia.com>
Reviewed-by: Pavel Machek <pavel@ucw.cz>
[shawn.guo: cherry-pick commit 27e3604c82cb from imx_3.10.y]
Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
Conflicts:
drivers/reset/Makefile

(cherry picked from commit 2c8ba990ad6b33bd28f72384fbd238e0aca6c886)

Conflicts:
drivers/reset/Kconfig
drivers/reset/Makefile

7 years agoMLK-9708 arm: imx: add low power idle support for i.mx6sx
Anson Huang [Mon, 20 Oct 2014 08:16:20 +0000 (16:16 +0800)]
MLK-9708 arm: imx: add low power idle support for i.mx6sx

Enable low power idle for i.MX6SX:

   WFI            -> first level idle;
   WAIT mode      -> second level idle;
   Low power idle -> third level idle, only when system is in low bus mode.

In low powe idle mode, below operations will be done:

   ARM power off;
   AHB freq lower to 3MHz;
   PERCLK freq lower to 6MHz;
   MMDC freq lower to 1MHz;

Anatop will be put into low power mode, and regular band-gap will
be off and low power band-gap will be enabled instead.

Also, in low power idle mode, 24MHz XTAL power will be off and 24MHz clk
source will be switched to RC-OSC to save power, this feature is only
enabled on i.MX6SX TO1.2.

This patch is cherry-picked from L3.14.y, it is the latest version, below
conflicts are fixed.

Signed-off-by: Anson Huang <b20788@freescale.com>
Conflicts:
arch/arm/mach-imx/Makefile
arch/arm/mach-imx/common.h
arch/arm/mach-imx/cpuidle-imx6sx.c
arch/arm/mach-imx/cpuidle.h
arch/arm/mach-imx/mach-imx6sx.c
arch/arm/mach-imx/pm-imx6.c

7 years agoMLK-11396-2 ARM: imx: add suspend/resume for imx6sx lpddr2
Anson Huang [Fri, 21 Aug 2015 16:23:11 +0000 (00:23 +0800)]
MLK-11396-2 ARM: imx: add suspend/resume for imx6sx lpddr2

This patch adds suspend/resume with Mega/Fast mix off support
for i.MX6SX LPDDR2, tested on i.MX6SX-14x14-LPDDR2-ARM2 board.

Signed-off-by: Anson Huang <b20788@freescale.com>
7 years agoMLK-11396-1 ARM: dts: add imx6sx-14x14-lpddr2-arm2 board
Anson Huang [Fri, 21 Aug 2015 16:21:58 +0000 (00:21 +0800)]
MLK-11396-1 ARM: dts: add imx6sx-14x14-lpddr2-arm2 board

Add i.MX6SX-14x14-LPDDR2-ARM2 board support.

Signed-off-by: Anson Huang <b20788@freescale.com>
7 years agoMLK-11390-6 ARM: imx: add busfreq support for imx6sx LPDDR2
Anson Huang [Thu, 20 Aug 2015 04:17:49 +0000 (12:17 +0800)]
MLK-11390-6 ARM: imx: add busfreq support for imx6sx LPDDR2

This patch adds busfreq support for i.MX6SX LPDDR2, tested
on i.MX6SX 19x19 LPDDR2 ARM2 board.

Signed-off-by: Anson Huang <b20788@freescale.com>
7 years agoMLK-11390-5 ARM: imx: add busfreq support for imx6sx DDR3
Anson Huang [Thu, 20 Aug 2015 04:10:27 +0000 (12:10 +0800)]
MLK-11390-5 ARM: imx: add busfreq support for imx6sx DDR3

Add busfreq support for i.MX6SX DDR3 board, tested on
i.MX6SX SDB board, busfreq support below 3 setpoints:

high  -> 400MHz
audio -> 50MHz
low   -> 24MHz

Signed-off-by: Anson Huang <b20788@freescale.com>
7 years agoMLK-11390-4 ARM: imx: remove CLK_SET_PARENT_GATE for bus mux
Anson Huang [Thu, 20 Aug 2015 04:05:18 +0000 (12:05 +0800)]
MLK-11390-4 ARM: imx: remove CLK_SET_PARENT_GATE for bus mux

For some bus mux, need to remove CLK_SET_PARENT_GATE
flag as they can NOT be disabled, and they are only
used by bus-freq and the asm code already follow the
correct sequence of changing parent, so we can remove
CLK_SET_PARENT_GATE flag to avoid set parent fail
after bus-freq transition done.

Signed-off-by: Anson Huang <b20788@freescale.com>
7 years agoMLK-11390-3 ARM: dts: add busfreq support for imx6sx
Anson Huang [Thu, 20 Aug 2015 04:04:34 +0000 (12:04 +0800)]
MLK-11390-3 ARM: dts: add busfreq support for imx6sx

Add busfreq support for i.MX6SX.

Signed-off-by: Anson Huang <b20788@freescale.com>
7 years agoMLK-11390-2 ARM: dts: add imx6sx 19x19 arm2 board
Anson Huang [Thu, 20 Aug 2015 04:02:26 +0000 (12:02 +0800)]
MLK-11390-2 ARM: dts: add imx6sx 19x19 arm2 board

Add i.MX6SX-19x19-ARM2 board support.

Signed-off-by: Anson Huang <b20788@freescale.com>
7 years agoMLK-11390-1 ARM: dts: update imx6sx pinfunc header
Anson Huang [Thu, 20 Aug 2015 04:51:03 +0000 (12:51 +0800)]
MLK-11390-1 ARM: dts: update imx6sx pinfunc header

Update i.MX6SX pinfunc header, add uart mux function.

Signed-off-by: Anson Huang <b20788@freescale.com>
7 years agoMLK-10174-2 usb: chipidea: host: keep controller power if host has dev connected
Li Jun [Thu, 29 Jan 2015 02:32:32 +0000 (10:32 +0800)]
MLK-10174-2 usb: chipidea: host: keep controller power if host has dev connected

This patch is to keep usb controller power on while system suspend if there
is usb device connected by telling GPC to keep mega fast domain power.

Signed-off-by: Li Jun <jun.li@freescale.com>
(cherry picked from commit 74d1524208bfa052f9adac28c8f7d8fb8ed78499)

7 years agoMLK-10174-1 arm: imx: gpc: export an interface to keep mega fast power
Li Jun [Thu, 29 Jan 2015 02:26:52 +0000 (10:26 +0800)]
MLK-10174-1 arm: imx: gpc: export an interface to keep mega fast power

Add an interface for GPC used by drivers to keep mega fast mix domain
power.

Signed-off-by: Li Jun <jun.li@freescale.com>
(cherry picked from commit f40b0d57803b26a889d12cb70f128801ef75055a)

7 years agoMLK-10048-4: ASoC: fsl_asrc: fix dma task timeout issue when use 3 instance
Shengjiu Wang [Mon, 15 Dec 2014 09:28:00 +0000 (17:28 +0800)]
MLK-10048-4: ASoC: fsl_asrc: fix dma task timeout issue when use 3 instance

Merged from 49108fcf7b79ed77d34be33b53a3964b2ac27204
1. Watermark level in sdma use byte as its unit. but asrc driver use
word, there is mismatch between them. Here fix this issue and sdma can
work more efficiency.
2. Enlarge the larst_period_size, when use small size, for some case,
the dma task will timeout, because sdma has no much data for output.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit 8a96e09e265294f396bd3af29b429e4b7bdff461)

7 years agoMLK-10048-3: ASoC: fsl_asrc: fix asrc crach when suspend/resume
Shengjiu Wang [Mon, 8 Dec 2014 07:08:27 +0000 (15:08 +0800)]
MLK-10048-3: ASoC: fsl_asrc: fix asrc crach when suspend/resume

merge 7e1a620a030d17f93fdd97d076f1cdd042e79337

The reason of crach is that some variables are not protected in
function mxc_asrc_suspend(), when suspend, there is possibility to
access one NULL pointer.
Refine the spin lock usage, add protecting for pair_hold.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit e90c73f8170bc929cff54b0478da0573e4e26c23)

7 years agoMLK-10048-2: ASoC: fsl_asrc: change the return value
Shengjiu Wang [Mon, 8 Dec 2014 05:04:58 +0000 (13:04 +0800)]
MLK-10048-2: ASoC: fsl_asrc: change the return value

Merge from c086d0151ee3e131b52bef96c5096d1ee603c852

Return value -ERESTARTSYS is not visible for user space according
to include/linux/errno.h. So use -EBUSY replace it.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit 69d529646a610d8d1360bd116ceec1341aef4211)

7 years agoMLK-11398: ASoC: fsl_asrc: Add Memory to Memory support
Shengjiu Wang [Tue, 9 Sep 2014 09:21:25 +0000 (17:21 +0800)]
MLK-11398: ASoC: fsl_asrc: Add Memory to Memory support

cherry-pick below patch from v3.14.y:
ENGR00330403-4: ASoC: fsl_asrc: Add Memory to Memory support

ASRC M2M function is not able to put upstream due to its self-designed
ioctl protocol. So I just make a single patch for it and make it merge
into P2P driver as simply as possible.

The patch can only be maintained internally unless some one designs a
new protocol or implement the originally protocol by using some common
approach provided by Linux Kernel.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit b5a7a98da076b0202334db01ecc3833342a7ca11)

7 years agoMLK-10973 ARM: imx6: correct the soc_id on imx6qp
Bai Ping [Tue, 26 May 2015 15:41:13 +0000 (23:41 +0800)]
MLK-10973 ARM: imx6: correct the soc_id on imx6qp

On i.MX6QP, the soc_id exported to the /sys/devices/soc0/soc_id
should be 'i.MX6QP'.

Signed-off-by: Bai Ping <b51503@freescale.com>
(cherry picked from commit 5b478870b0b936a6c89574e6fe62f5537e31ecf0)

7 years agoMLK-11389-03 ARM: imx: enable M/F mix support on imx6sx
Bai Ping [Thu, 20 Aug 2015 13:50:07 +0000 (21:50 +0800)]
MLK-11389-03 ARM: imx: enable M/F mix support on imx6sx

Enable the M/F funtion support on i.MX6SX. The M4 M/F off
support is not added at present, will be enabled after the M4
funtion is ready.

Signed-off-by: Bai Ping <b51503@freescale.com>
7 years agoMLK-11389-02 ARM: dts: imx: add M/F mix property for imx6sx
Bai Ping [Thu, 20 Aug 2015 13:45:58 +0000 (21:45 +0800)]
MLK-11389-02 ARM: dts: imx: add M/F mix property for imx6sx

Add 'fsl,mf-mix-wakeup-irq' property used for M/F mix in gpc node
on i.MX6SX.

Signed-off-by: Bai Ping <b51503@freescale.com>
7 years agoMLK-11389-01 ARM: imx: keep M/F power domain on after suspend
Bai Ping [Wed, 19 Aug 2015 14:02:58 +0000 (22:02 +0800)]
MLK-11389-01 ARM: imx: keep M/F power domain on after suspend

After the system resume back from suspend, the M/F mix domain
power down bit should be cleared to make sure this domain's power
is on in other low power mode.

Signed-off-by: Bai Ping <b51503@freescale.com>
7 years agoMLK-11376-02 ARM: imx: add MSL code for imx6qp
Bai Ping [Tue, 18 Aug 2015 17:17:16 +0000 (01:17 +0800)]
MLK-11376-02 ARM: imx: add MSL code for imx6qp

Add MSL code for i.MX6QP.

Signed-off-by: Bai Ping <b51503@freescale.com>
7 years agoMLK-11376-01 ARM: dts: add dts file for imx6qp
Bai Ping [Tue, 18 Aug 2015 17:13:20 +0000 (01:13 +0800)]
MLK-11376-01 ARM: dts: add dts file for imx6qp

Add dtsi and dts file for i.MX6QP

Signed-off-by: Bai Ping <b51503@freescale.com>
7 years agoMLK-11385 dma: imx-sdma: enable clock before context restored
Robin Gong [Wed, 19 Aug 2015 07:32:44 +0000 (15:32 +0800)]
MLK-11385 dma: imx-sdma: enable clock before context restored

fix sdma driver resume back failed if SDMA clock disabled before suspend:

PM: noirq resume of devices complete after 0.802 msecs
imx-sdma 30bd0000.sdma: Timeout waiting for CH0 ready
imx-sdma 30bd0000.sdma: loaded firmware 4.1
imx-sdma 30bd0000.sdma: restore context error!
dpm_run_callback(): sdma_resume+0x0/0x1c8 returns -110
PM: Device 30bd0000.sdma failed to resume early: error -110

Signed-off-by: Robin Gong <b38343@freescale.com>
7 years agoMLK-11290-02 ARM: dts: imx7d-12x12-lpddr3-arm2: add enet dts file to makefile
Fugang Duan [Wed, 19 Aug 2015 07:24:24 +0000 (15:24 +0800)]
MLK-11290-02 ARM: dts: imx7d-12x12-lpddr3-arm2: add enet dts file to makefile

Add enet dts file to makefile.

Signed-off-by: Fugang Duan <B38611@freescale.com>
7 years agoMLK-11374: ARM: dts: add NAND support for i.MX6UL ddr3 arm2 board
Fugang Duan [Tue, 18 Aug 2015 07:55:26 +0000 (15:55 +0800)]
MLK-11374: ARM: dts: add NAND support for i.MX6UL ddr3 arm2 board

Add GPMI NAND support for i.MX6UL 14x14 ddr3 arm2 board.

Signed-off-by: Han Xu <b45815@freescale.com>
Signed-off-by: Fugang Duan <B38611@freescale.com>
7 years agoMLK-11373: ARM: dts: i.MX7d: add gpmi nand support for 7d-sdb board
Fugang Duan [Tue, 18 Aug 2015 05:41:51 +0000 (13:41 +0800)]
MLK-11373: ARM: dts: i.MX7d: add gpmi nand support for 7d-sdb board

Add gpmi nand support on i.MX7D sdb board.

Signed-off-by: Han Xu <b45815@freescale.com>
Signed-off-by: Fugang Duan <B38611@freescale.com>
7 years agoMLK-11381: arm: imx: dts: imx7d-12x12-lpddr3-arm2 iomuxc_lpsr pad settings
Adrian Alonso [Tue, 18 Aug 2015 18:19:20 +0000 (13:19 -0500)]
MLK-11381: arm: imx: dts: imx7d-12x12-lpddr3-arm2 iomuxc_lpsr pad settings

- Add iomuxc lpsr pad settings, move pinctrl_usbotg1_vbus and
  pinctrl_usbotg2_vbus to iomuxc lpsr domain.

Signed-off-by: Adrian Alonso <aalonso@freescale.com>
7 years agoMLK-11380: arm: imx: dts: imx7d-sdb: add iomuxc_lspr pad settings
Adrian Alonso [Tue, 18 Aug 2015 16:18:14 +0000 (11:18 -0500)]
MLK-11380: arm: imx: dts: imx7d-sdb: add iomuxc_lspr pad settings

- Add additional pad settiongs for iomuxc_lspr controller
- Move pinctrl_pwm1 to iomuxc_lspr domain

Signed-off-by: Adrian Alonso <aalonso@freescale.com>
7 years agoMLK-11358-4: dma: imx-sdma: save and restore context on i.mx6sx/i.mx7d
Robin Gong [Mon, 17 Aug 2015 08:40:07 +0000 (16:40 +0800)]
MLK-11358-4: dma: imx-sdma: save and restore context on i.mx6sx/i.mx7d

Because load context code has been removed in prepare DMA transfer everytime.
Need restore them back once mega/fast powered off.

Signed-off-by: Robin Gong <b38343@freescale.com>
7 years agoMLK-11358-2: ARM: configs: imx_v7_defconfig: enable dmatest module
Robin Gong [Fri, 14 Aug 2015 05:15:49 +0000 (13:15 +0800)]
MLK-11358-2: ARM: configs: imx_v7_defconfig: enable dmatest module

enable dmatest module by default.

Signed-off-by: Robin Gong <b38343@freescale.com>
7 years agoMLK-11358-1: dma: imx-sdma: support dmatest module
Robin Gong [Fri, 14 Aug 2015 04:51:45 +0000 (12:51 +0800)]
MLK-11358-1: dma: imx-sdma: support dmatest module

dmatest is a common dma test module for dma driver which support mem_2_mem copy
.Since  SDMA driver has the mem_2_mem interface, make little code change to
support this feature rather than our internal  mxc_sdma_memcopy_test test
module.

Signed-off-by: Robin Gong <b38343@freescale.com>
7 years agoMLK-11375-2 ARM: imx: disable cpuidle for imx6sx
Anson Huang [Tue, 18 Aug 2015 07:53:54 +0000 (15:53 +0800)]
MLK-11375-2 ARM: imx: disable cpuidle for imx6sx

i.MX6SX CPUIdle with ARM core power down has issue
and cause system hang during kernel boot up, disable
it for now and will enable it when busfreq driver
is ready.

Signed-off-by: Anson Huang <b20788@freescale.com>
7 years agoMLK-11375-1 ARM: imx: bypass pmic ready for imx6sx
Anson Huang [Tue, 18 Aug 2015 07:52:13 +0000 (15:52 +0800)]
MLK-11375-1 ARM: imx: bypass pmic ready for imx6sx

i.MX6SX has same design as i.MX6SL which has bypass
pmic ready signal, as we do NOT enable this function,
so need to bypass it during suspend/resume.

Signed-off-by: Anson Huang <b20788@freescale.com>