Fugang Duan [Tue, 6 Jun 2017 07:14:42 +0000 (15:14 +0800)]
MLK-15031-04 tty: serial: fsl_lpuart: wait baud rate stable
After set the new baud rate, wait some time for the stable.
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
Reviewed-by: Robin Gong <yibin.gong@nxp.com>
Fugang Duan [Tue, 6 Jun 2017 05:57:13 +0000 (13:57 +0800)]
MLK-15031-03 tty: serial: fsl_lpuart: fix the typo in clock get failed path
Fix the typo in ipg clock get failed path.
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
Reviewed-by: Robin Gong <yibin.gong@nxp.com>
Fugang Duan [Tue, 6 Jun 2017 06:11:24 +0000 (14:11 +0800)]
MLK-15031-02 tty: serial: fsl_lpuart: free the rx dma buffer when port is closed
Free the rx dma buffer when the port is closed.
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
Reviewed-by: Robin Gong <yibin.gong@nxp.com>
Fugang Duan [Fri, 26 May 2017 06:09:27 +0000 (14:09 +0800)]
MLK-15031-01 tty: serial: fsl_lpuart: drop the error frame
Since the driver stats the error frames in port.icount.frame, it can
drop the error frame that no need to push it to the tty buffer.
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
Reviewed-by: Robin Gong <yibin.gong@nxp.com>
Adrian Hunter [Mon, 20 Mar 2017 17:50:37 +0000 (19:50 +0200)]
mmc: sdhci: Do not use spin lock in set_ios paths
The spin lock is not necessary in set_ios. Anything that is racing with
changes to the I/O state is already broken. The mmc core already provides
synchronization via "claiming" the host. So remove spin_lock and friends
from sdhci_set_ios and related callbacks.
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Tested-by: Ludovic Desroches <ludovic.desroches@microchip.com>
(cherry picked from commit
d1e4f74f911daee4d69b5fd0c81902f7d37de579)
Conflicts:
drivers/mmc/host/sdhci-msm.c
drivers/mmc/host/sdhci-of-at91.c
drivers/mmc/host/sdhci.c
Cristina Ciocan [Thu, 8 Jun 2017 13:47:38 +0000 (16:47 +0300)]
MLK-15027: arm: pxp: Fix uninitialized use of variables
This patch fixes build warning that 2 variables may be used uninitialized
in the pxp_fetch_config() function in drivers/dma/pxp/pxp_dma_v3.c .
The variables in_fmt and out_fmt are passed as parameters to
pxp_fetch_shift_calc() only if shift_bypass is false. This flag cannot be
false unless changed in a code block that also assigns in_fmt and out_fmt.
Since the compiler cannot detect this flow, it shows a warning that in_fmt
and out_fmt are not initialized. Fix this by changing the code flow such
that in_fmt and out_fmt are sent as parameters in the same code block where
they are assigned.
Signed-off-by: Cristina Ciocan <cristina-mihaela.ciocan@nxp.com>
Han Xu [Mon, 8 May 2017 21:12:59 +0000 (16:12 -0500)]
MLK-15052-6: ARM: config: Disable the setting CONFIG_MTD_SPI_NOR_USE_4K_SECTORS
Disable the SECT_4K setting for UBIFS test
Signed-off-by: Han Xu <han.xu@nxp.com>
Acked-by: Frank Li <frank.li@nxp.com>
Han Xu [Mon, 5 Jun 2017 21:23:48 +0000 (16:23 -0500)]
MLK-15052-5: ARM64: defconfig: add flexspi in default config
enable flexspi in default config file
Signed-off-by: Han Xu <han.xu@nxp.com>
Acked-by: Frank Li <frank.li@nxp.com>
Han Xu [Mon, 8 May 2017 20:12:33 +0000 (15:12 -0500)]
MLK-15052-4: mtd: spi-nor: fix the micron/st issue
Some MICRON related macros in spi-nor domain were ST, actually. We need
to add the REAL micron defination in header/source files for
mt35xu512aba Micron Octal Nor chip.
Signed-off-by: Han Xu <han.xu@nxp.com>
Acked-by: Frank Li <frank.li@nxp.com>
Han Xu [Mon, 5 Jun 2017 21:19:39 +0000 (16:19 -0500)]
MLK-15052-3: mtd: spi-nor: enable octal read mode in spi framework
Enhanced spi-nor framework to support octal read mode
Signed-off-by: Han Xu <han.xu@nxp.com>
Acked-by: Frank Li <frank.li@nxp.com>
Han Xu [Mon, 5 Jun 2017 21:20:52 +0000 (16:20 -0500)]
MLK-15052-2: mtd: flexspi-nor: support flexspi-nor driver on i.MX8
support the flexspi nor controller for i.MX8 platforms, read data
in octal ddr mode by default.
Signed-off-by: Han Xu <han.xu@nxp.com>
Acked-by: Frank Li <frank.li@nxp.com>
Han Xu [Thu, 18 May 2017 15:46:53 +0000 (10:46 -0500)]
MLK-15052-1: ARM64: dts: add flexspi in 8qxp device tree
add the flexspi device tree node for i.mx8qxp
Signed-off-by: Han Xu <han.xu@nxp.com>
Acked-by: Frank Li <frank.li@nxp.com>
Chanwoo Choi [Wed, 30 Nov 2016 05:57:33 +0000 (14:57 +0900)]
usb: chipdata: Replace the extcon API
This patch uses the resource-managed extcon API for extcon_register_notifier()
and replaces the deprecated extcon API as following:
- extcon_get_cable_state_() -> extcon_get_state()
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Signed-off-by: Peter Chen <peter.chen@nxp.com>
(cherry picked from commit
3f991aa0b665c8e9bb702421a4e5005c3588fb62)
Roger Quadros [Wed, 15 Feb 2017 12:31:28 +0000 (14:31 +0200)]
extcon: usb-gpio: Don't miss event during suspend/resume
We must check for ID/VBUS changes during resume irrespective
of whether our device wakeup is enabled or not.
Without this we seem to be missing ID/VBUS events after
system suspend/resume.
Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
(cherry picked from commit
8680b4d1933fbe3349d51a4e1fd4513b12abffed)
Peter Chen [Mon, 13 Feb 2017 09:21:52 +0000 (17:21 +0800)]
extcon: usb-gpio: Do not enable USB as wakeup source by default
Whether the USB port as a wakeup source should be determined by user,
but not enabled by default.
Signed-off-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
(cherry picked from commit
98fd079297dd274c15c926a337253675573c5832)
Peter Chen [Wed, 4 Jan 2017 07:19:51 +0000 (15:19 +0800)]
extcon: usb-gpio: Add pinctrl operation during system PM
At some systems, the pinctrl setting will be lost or needs to
set as "sleep" state to save power consumption. So, we need to
configure pinctrl as "sleep" state when system enters suspend,
and as "default" state after system resumes. In this way, the
pinctrl value can be recovered as "default" state after resuming.
Signed-off-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
(cherry picked from commit
bcb7440e76a96c8a244bd683142a38f7d5cecb93)
Roger Quadros [Tue, 20 Sep 2016 14:53:55 +0000 (17:53 +0300)]
extcon: usb-gpio: Add VBUS detection support
Driver can now work with both ID and VBUS pins or either one of
them.
There can be the following 3 cases
1) Both ID and VBUS GPIOs are available:
ID = LOW -> USB_HOST active, USB inactive
ID = HIGH -> USB_HOST inactive, USB state is same as VBUS.
2) Only ID GPIO is available:
ID = LOW -> USB_HOST active, USB inactive
ID = HIGH -> USB_HOST inactive, USB active
3) Only VBUS GPIO is available:
VBUS = LOW -> USB_HOST inactive, USB inactive
VBUS = HIGH -> USB_HOST inactive, USB active
Signed-off-by: Roger Quadros <rogerq@ti.com>
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
(cherry picked from commit
541332a13b1ded42097ba96c52c7bc70931e528c)
Li Jun [Fri, 9 Jun 2017 10:38:06 +0000 (18:38 +0800)]
MLK-15032-3 usb: chipidea: core: remove the extcon change for imx_4.1.y
commit
916e43e1d6fb ("MLK-13570-3 usb: chipidea: core: change extcon
usage for imx_4.1.y") is directly cherry-picked from 4.1.y, but which
is not valid anymore on 4.y kernel, so revert most part and only keep
the irq check after resume.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Fri, 9 Jun 2017 10:29:22 +0000 (18:29 +0800)]
MLK-15032-2 Revert "extcon: usb-gpio: add pinctrl operation during system PM"
This reverts commit
4c7d332e3316 ("MLK-13638-3 extcon: usb-gpio: add
pinctrl operation during system PM"). We will use the upstream version.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Li Jun [Fri, 9 Jun 2017 10:28:07 +0000 (18:28 +0800)]
MLK-15032-1 Revert "extcon: ext-usb-gpio: do not enable wakeup by default"
This reverts commit
358776f8c5d8 ("MLK-13912-1 extcon: ext-usb-gpio: do not
enable wakeup by default"), we will use the upstream patch version.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Mihai Serban [Thu, 8 Jun 2017 12:48:50 +0000 (15:48 +0300)]
MLK-15039: ASoC: fsl_esai: Fix channels swap when recording 3 channels audio
The change introduced by commit
00c174b3b28a
("MLK-14525: ASoC: fsl_esai: channel swap issue in 3 channels or 5 channels")
is no longer valid after improvements added with commit
c35bc6ae5c48
("MLK-14778: ASoC: fsl: imx-cs42888: Improve support for odd number of channels")
Because we use TDM instead of I2S for 3,5 and 7 channels we must
initialize ESAI with the actual number of channels. There is no need
to count the additional channel required when I2S was used.
Signed-off-by: Mihai Serban <mihai.serban@nxp.com>
Reviewed-by: Daniel Baluta <daniel.baluta@nxp.com>
Dong Aisheng [Thu, 8 Jun 2017 13:22:40 +0000 (21:22 +0800)]
MLK-15046 arm64: dts: fsl-imx8qxp: change CAN1 & 2 to use CAN0 clk and power domain
Per information from Ranjani:
"Looks like all three CANs are controlled by one DSC clock slice
(SLSLICE[4]). Currently the SCFW is only allocating this clock to CAN0,
which explains why CAN0 works. And once CAN0 is enabled, CAN1 and CAN2
access will also work."
This is a workaround patch to make CAN1 & CAN2 work temporarily.
Once SCFW supports shared clock management for all CAN, we can revert
this patch.
Cc: Ranjani Vaidyanathan <Ranjani.Vaidyanathan@nxp.com>
Reviewed-by: Frank Li <frank.li@nxp.com>
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Dong Aisheng [Wed, 7 Jun 2017 05:58:13 +0000 (13:58 +0800)]
MLK-15046-11 arm64: dts: fsl-imx8qxp-lpddr4-arm2: add flexcan support
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Dong Aisheng [Tue, 6 Jun 2017 07:32:44 +0000 (15:32 +0800)]
MLK-15046-10 arm64: defconfig: enable flexcan driver
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Dong Aisheng [Mon, 19 Sep 2016 08:27:31 +0000 (16:27 +0800)]
MLK-15046-9 arm64: dts: imx8qm: add flexcan support
Add flexcan 1, 2 ,3 support.
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Dong Aisheng [Wed, 17 May 2017 09:23:54 +0000 (17:23 +0800)]
MLK-15046-8 can: flexcan: enable flexcan support for arm64
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Dong Aisheng [Sat, 3 Jun 2017 14:33:25 +0000 (22:33 +0800)]
MLK-15046-7 can: flexcan: add imx8qm support
The flexcan on MX8QM supports CAN FD prototol.
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Dong Aisheng [Wed, 7 Jun 2017 03:19:27 +0000 (11:19 +0800)]
MLK-15046-6 can: flexcan: make MB mode store Remote frames
In MB transfer mode, the Remote Response Frame is generated by
default which will not store Remote Frames. That will cause MB
can't resceive Remote Frames. Let's make the Remote Request
Frame stored, then we can receive the Remote Frames and deliver
to userspaces.
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Dong Aisheng [Sat, 3 Jun 2017 14:14:29 +0000 (22:14 +0800)]
MLK-15046-5 can: flexcan: add can fd bitrate switch support
Add can fd bitrate switch support
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Dong Aisheng [Sat, 3 Jun 2017 07:34:23 +0000 (15:34 +0800)]
MLK-15046-4 can: flexcan: add can fd mode support
Add CAN FD protocol support which supports extended frames up to
64 bytes.
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Dong Aisheng [Sat, 3 Jun 2017 08:11:21 +0000 (16:11 +0800)]
MLK-15046-3 can: flexcan: make Message Buffer size and number dynamically
The Message Buffer size and number will change in new Flexcan IP
version supporting CAN FD protocol. Let's make them properties and
assigned dynamically.
And note that when CAN FD is enabled, the FlexCAN RAM is partitioned
in blocks of 512 bytes, there may be hole within the block.
Thus a help macro FLEXCAN_CANFD_MB_OFFSET is introduced to calculate
the internal MB address offset properly within the RAM block.
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Dong Aisheng [Thu, 1 Jun 2017 15:08:16 +0000 (23:08 +0800)]
MLK-15046-2 can: flexcan: add message buffer rx support
This patch adds the optional message buffer rx support which
is controlled by the flag FLEXCAN_QUIRK_DISABLE_RX_FIFO.
This can be used by the new Flexcan version support CAN FD which
can only work with message buffer mode.
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Dong Aisheng [Fri, 2 Jun 2017 08:16:20 +0000 (16:16 +0800)]
MLK-15046-1 can: flexcan: re-structure to decouple the dependency on fifo mode
Current driver is highly dependent on the struct flexcan_regs layout
which may vary once the Message Buffer is changed in the new flexcan
version supporting CAN FD protocol.
This patch tends to decouple the dependency on both register layout
and underlying transfer mechanism (FIFO mode or Message buffer).
The Message Buffer mode is still not supported which will be added
later.
To achieve this, struct flexcan_regs is removed and changed to use
reg offset instead and flexcan_{read|write} is then re-prototyped.
Besides that, two new designed API flexcan_mb_read/write are introduced
for raw message buffer read/write which is independent on underlying
transfer mechanism.
This patch has no function change but a preparation for the later
CAN FD support.
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Octavian Purdila [Wed, 7 Jun 2017 08:22:58 +0000 (11:22 +0300)]
MLK-15029 ARM: imx_v7_defconfig: remove CONFIG_MXC_GPU_VIV=y
Commit
827acb06eaf00b83 ("MGS-2947 enable gpu subsystem for imx8qm and
imx8qxp") sets MXC_GPU_VIV's default to yes so we should remove
CONFIG_MXC_GPU_VIV=y from the defconfig.
Signed-off-by: Octavian Purdila <octavian.purdila@nxp.com>
Philipp Zabel [Mon, 8 Aug 2016 13:56:39 +0000 (15:56 +0200)]
drm/imx: imx-ldb: remove unnecessary double disable check
Since the atomic modeset conversion, this should not be an issue
anymore.
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
(cherry picked from commit
cdda2df7e05d84fee0a8298076941928af036c73)
Frederic Weisbecker [Thu, 1 Jun 2017 14:47:09 +0000 (16:47 +0200)]
MLK-14859 nohz: Fix buggy tick delay on IRQ storms
When the tick is stopped and we reach the dynticks evaluation code on
IRQ exit, we perform a soft tick restart if we observe an expired timer
from there. It means we program the nearest possible tick but we stay in
dynticks mode (ts->tick_stopped = 1) because we may need to stop the tick
again after that expired timer is handled.
Now this solution works most of the time but if we suffer an IRQ storm
and those interrupts trigger faster than the hardware clockevents min
delay, our tick won't fire until that IRQ storm is finished.
Here is the problem: on IRQ exit we reprog the timer to at least
NOW() + min_clockevents_delay. Another IRQ fires before the tick so we
reschedule again to NOW() + min_clockevents_delay, etc... The tick
is eternally rescheduled min_clockevents_delay ahead.
A solution is to simply remove this soft tick restart. After all
the normal dynticks evaluation path can handle 0 delay just fine. And
by doing that we benefit from the optimization branch which avoids
clock reprogramming if the clockevents deadline hasn't changed since
the last reprog. This fixes our issue because we don't do repetitive
clock reprog that always add hardware min delay.
As a side effect it should even optimize the 0 delay path in general.
Reported-and-tested-by: Octavian Purdila <octavian.purdila@nxp.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Rik van Riel <riel@redhat.com>
Cc: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
Gao Pan [Fri, 2 Jun 2017 02:09:10 +0000 (10:09 +0800)]
MLK-14999 arm: dts: imx7ulp: add ipg clk for i2c device node
The lpi2c needs two clks, per clk and ipg clk. This patch adds ipg
clk for lpi2c device node.
Signed-off-by: Gao Pan <pandy.gao@nxp.com>
Frank Li [Tue, 6 Jun 2017 17:04:13 +0000 (12:04 -0500)]
MLK-15016-2: arm64: defconfig: added mfgtools defconfig
Added new config for mfgtools
Signed-off-by: Frank Li <Frank.Li@nxp.com>
Frank Li [Tue, 6 Jun 2017 16:56:54 +0000 (11:56 -0500)]
MLK-15016-1 arm64: dts: imx8qxp: enable chipidea otg port
Enable OTG port
Signed-off-by: Frank Li <Frank.Li@nxp.com>
Robin Gong [Tue, 6 Jun 2017 08:56:49 +0000 (16:56 +0800)]
MLK-15014 dma: fsl-edma-v3: clear DONE before E_SG enabled
Below described in RM, otherwise, channel error status(CHa_ES)
may be triggered:
The user must clear the CHa_CSR[DONE] bit before writing the
TCDa_CSR[MAJORELINK] or TCDa_CSR[ESG] bits.
Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Shenwei Wang [Mon, 24 Apr 2017 18:24:32 +0000 (13:24 -0500)]
MLK-14748 clocksource: imx-tpm: Increase the min_delta
The current min_delta for TPM clock event is 2 ticks which
is too small. As the TPM is running at 3MHz, 2 ticks equal
2/3 us. According to our testing, the interrupt latency will
be longer than this min_delta, especially when GPU is running.
This patch changed the min_delta to 300 which give the system
around 100us for interrupt handling in case the "set_next_event"
call is interrupted by other signals.
Also a simple validation code is added before the function returns.
Signed-off-by: Shenwei Wang <shenwei.wang@nxp.com>
Signed-off-by: Bai Ping <ping.bai@nxp.com>
(cherry picked from commit
4f882165cc31672f3c98de74ab02b757cb96ad26)
Anson Huang [Fri, 21 Apr 2017 22:47:55 +0000 (06:47 +0800)]
MGS-2842 ARM: imx: correct PFD setting rate flow
According to design, PFD needs to be gated before
setting rate, this patch adds warning for PFD when
there is any try to set PFD rate with gate open;
Since PFD may be enabled during kernel boot up,
here doing enable and disable before setting APLL_PFD2
rate is to make sure it is gated by clock framework
before setting rate.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
(cherry picked from commit
bc731e14dc8401efa55fee65948c3ec31c9e5483)
Bai Ping [Tue, 6 Jun 2017 06:02:21 +0000 (14:02 +0800)]
MLK-14972-04 dts: imx8: add thermal nodes for imx8qm/qxp
Add thermal device related dts node for i.MX8QM/QXP.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
Bai Ping [Tue, 6 Jun 2017 06:00:38 +0000 (14:00 +0800)]
MLK-14972-03 ARM64: cofnigs: Enable i.MX8QM/QXP thermal driver by default
Enable the i.MX8QM/QXP thermal driver support in defconfig.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
Bai Ping [Tue, 6 Jun 2017 05:53:24 +0000 (13:53 +0800)]
MLK-14972-02 driver: thermal: Add i.MX8QM/QXP thermal support
Add i.MX8QM/QXP thermal driver support.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
Bai Ping [Wed, 24 May 2017 07:38:45 +0000 (15:38 +0800)]
MLK-14972-01 doc: dt-bindings: add imx sc temp sensor binding doc
Add i.MX8QM/QXP temp sensor binding doc.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
Shengjiu Wang [Mon, 5 Jun 2017 03:29:57 +0000 (11:29 +0800)]
MLK-15006-2: ARM64: dts: enable esai and cs42888 in imx8qm dts
Enable ESAI, ASRC, CS42888 in imx8qxp validation board.
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Shengjiu Wang [Mon, 5 Jun 2017 03:12:03 +0000 (11:12 +0800)]
MLK-15006-1: clk: imx8qm: fix AUD_MLCKOUT0 and AUD_MLCKOUT1 parent issue
Correct these two audio clock's parent.
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Prabhu Sundararaj [Mon, 5 Jun 2017 23:55:18 +0000 (18:55 -0500)]
MGS-2954 arm64: dts: mx8: GPU: Update Frequencies to match with design
Update GPU frequencies for 8QM and 8QXP to match with design.
Signed-off-by: Prabhu Sundararaj <prabhu.sundararaj@nxp.com>
Shengjiu Wang [Tue, 6 Jun 2017 03:28:18 +0000 (11:28 +0800)]
MLK-15011: ARM64: dts: increase the cma size for imx8qxp
Current the CMA size is 128M, after GPU enabled, there is no
space left for other drivers. So increase it to 640M, which is
align with imx8qm
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Shengjiu Wang [Mon, 5 Jun 2017 03:06:56 +0000 (11:06 +0800)]
MLK-15004-8: ARM64: defconfig: built-in audio drivers
built-in the CS42888 sound card, SPDIF and MQS.
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Shengjiu Wang [Mon, 5 Jun 2017 03:30:11 +0000 (11:30 +0800)]
MLK-15004-7: ARM64: dts: enable esai and cs42888 in imx8qxp dts
Enable ESAI, ASRC, CS42888 in imx8qxp validation board.
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Shengjiu Wang [Mon, 5 Jun 2017 08:01:04 +0000 (16:01 +0800)]
MLK-15004-6: Document: sound: update document for audio
update compatible string for imx-audio-cs42888.txt and fsl,esai.txt
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Shengjiu Wang [Mon, 5 Jun 2017 03:12:29 +0000 (11:12 +0800)]
MLK-15004-5: clk: imx: fix AUD_MLCKOUT0 and AUD_MLCKOUT1 parent issue
Correct these two audio clock's parent.
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Shengjiu Wang [Mon, 5 Jun 2017 03:04:02 +0000 (11:04 +0800)]
MLK-15004-4: ASoC: fsl_esai: esai workaround for imx8qxp Rev1
In imx8qxp rev1, there is hardware issue (TKT331800). ESAI
dma request signal connection issue in SS_ADMA top level
integration, The ESAI dma request signal are active_low, the EDMA
input is high active, but there is no polarity convert logic
between them.
This patch is to add a workaround for this issue. It use the
GPT to convert dma request signal to EDMA, and use anther GPT
to clear the dma request.
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Shengjiu Wang [Mon, 5 Jun 2017 03:09:25 +0000 (11:09 +0800)]
MLK-15004-3: ASoC: fsl_esai: switch to use imx-pcm-dma-v2
The difference of imx-pcm-dma and imx-pcm-dma-v2 is that first
one will request dma channel in probe, the second one request
dma channel when substream is opened.
When the case is ASRC+ ESAI, the FE+BE is working, which need
to reconfigure the dma channel, so use the imx-pcm-dma-v2 is
more flexible
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Shengjiu Wang [Mon, 5 Jun 2017 07:16:29 +0000 (15:16 +0800)]
MLK-15004-2: ASoC: fsl_acm: add acm header file
This header file define the offset for control registers
and the GPT capture event.
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Shengjiu Wang [Thu, 23 Jun 2016 10:49:00 +0000 (18:49 +0800)]
MLK-15004-1: ASoC: codec: cs42xx8: Add reset gpio of codec
Need to set the reset pin high when running, otherwise the chip
will remain in reset state.
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Shengjiu Wang [Mon, 5 Jun 2017 03:17:05 +0000 (11:17 +0800)]
MLK-15003-3: ARM64: dts: add one more cell in edma note
Add one more cell in edma note, which is the property of
local/remote access. The default access is local.
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Shengjiu Wang [Mon, 5 Jun 2017 03:37:57 +0000 (11:37 +0800)]
MLK-15003-2: Document: fsl_edma_v3: update document
update fsl_edma_v3 document for #dma-cell is changed
one more cell is added, which is for local/remote access.
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Shengjiu Wang [Mon, 5 Jun 2017 03:05:52 +0000 (11:05 +0800)]
MLK-15003-1: DMA: fsl-edma-v3: add one more parameter for xlate
The parameter is "is_remote", which is to use remote access for
edma, the default access is local access.
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Peng Fan [Mon, 5 Jun 2017 11:47:17 +0000 (19:47 +0800)]
MLK-15009 irqchip: imx-irqsteer: correct type of irqstat
The type of irqstat in irqsteer_irqchip_data unsigned long, actually
it needs to be 32bits width, so use unsigned int.
And use sizeof(irqsteer_data->irqstat[0]), instead of 4 when alloc
memory for irqsteer_data.
for_each_set_bit needs the second param type is unsigned long *, so
cast the irqsteer_data->irqstat to unsigned long *, this is safe here.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Gao Pan [Thu, 1 Jun 2017 05:34:59 +0000 (13:34 +0800)]
MLK-15000 imx8qm: lpi2c: change i2c0_hdmi compatible
change i2c0_hdmi compatible to "fsl,imx8qm-lpi2c"
Signed-off-by: Gao Pan <pandy.gao@nxp.com>
Anson Huang [Mon, 5 Jun 2017 16:16:31 +0000 (00:16 +0800)]
MLK-15008-3 ARM64: dts: freescale: imx8: remove local-timer-stop flag
On i.MX8QM, as there is no SoC platform broadcast timer
available now, remove the local-timer-stop flag for
cpu-idle driver.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Anson Huang [Mon, 5 Jun 2017 16:15:41 +0000 (00:15 +0800)]
MLK-15008-2 ARM64: dts: freescale: imx8qm: update cpu-freq opp table
Update i.MX8QM cpu-freq opp table according to SCFW setting,
and move the cpu-freq opp table to soc dtsi instead of board
dtb, as it is SoC feature.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Anson Huang [Mon, 5 Jun 2017 16:13:23 +0000 (00:13 +0800)]
MLK-15008-1 ARM64: dts: freescale: imx8qxp: update cpu-freq opp table
Update i.MX8QXP cpu-freq opp table according to SCFW setting,
and move the cpu-freq opp table to soc dtsi instead of board
dtb, as it is SoC feature.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Prabhu Sundararaj [Tue, 16 May 2017 03:58:06 +0000 (22:58 -0500)]
MGS-2949 [#ccc] disable power management for imx8 gpu
disable gpu powermanagement as workaround until scfw fixed,
Re-enabling thc clocks causes exception in sc-firmware.
Signed-off-by: Prabhu Sundararaj <prabhu.sundararaj@nxp.com>
Xianzhong [Fri, 26 May 2017 07:50:07 +0000 (15:50 +0800)]
MGS-2947 enable gpu subsystem for imx8qm and imx8qxp
enable gpu subsystem device config for imx8qm and imx8qxp,
enable builtin GPU module in kernel image by default
Signed-off-by: Xianzhong <b07117@freescale.com>
Fugang Duan [Mon, 5 Jun 2017 03:31:10 +0000 (11:31 +0800)]
MLK-15005-03 irqchip: irqsteer: add ipg clock support
Some subsystems have lpcg sw_bit to control the ipg_clk to LIS,
so add the ipg clock for the module.
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
Fugang Duan [Mon, 5 Jun 2017 04:35:30 +0000 (12:35 +0800)]
MLK-15005-02 arm64: imx8qm: add lvds0/lvds1/hdmi LIS ipg clock
Add lvds0/lvds1/hdmi LIS ipg clock.
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
Fugang Duan [Mon, 5 Jun 2017 04:34:07 +0000 (12:34 +0800)]
MLK-15005-01 clk: imx8qm: add lvds LIS ipg clock
Add lvds subsystem LIS ipg clock.
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
Haibo Chen [Tue, 23 May 2017 11:46:06 +0000 (19:46 +0800)]
MLK-14968-2 ARM64: dts: fsl-imx8: add usdhc1 support HS400 mode
Add usdhc1 support for HS200/HS400 mode for imx8qm and imx8qxp.
Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
Haibo Chen [Tue, 23 May 2017 11:12:52 +0000 (19:12 +0800)]
MLK-14968-1 mmc: sdhci-esdhc-imx: add imx8qm esdhc_soc_data
Add imx8qm esdhc_soc_data for i.MX8QM and i.MX8QXP.
Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
Haibo Chen [Fri, 2 Jun 2017 11:09:37 +0000 (19:09 +0800)]
MLK-15002 mmc: sdhci-esdhc-imx: fix HS400 timing issue
commit
3f0191b80cf1 ("MLK-14381 mmc: sdhci-esdhc-imx: reset tuning
circuit when system resume") add tuning reset when the timing is
MMC_TIMING_LEGACY/MMC_TIMING_MMC_HS/MMC_TIMING_SD_HS. For timing
MMC_TIMING_MMC_HS, we can not do tuning reset, otherwise HS400
timing is not right.
Here is the process of config HS400, it do tuning in HS200 mode,
then switch to HS mode and 8 bit DDR mode, finally switch to HS400
mode. If we do tuning reset in HS mode, this will cause HS400 mode
lost the tuning setting, which will cause CRC error.
Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
Peng Fan [Wed, 31 May 2017 09:54:44 +0000 (17:54 +0800)]
MLK-14993 clk: imx: check pd before use
If we could not get a valid pd for gate/mux, print a warning log.
And use IS_ERR_OR_NULL to check the pd pointer.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Shengjiu Wang [Thu, 1 Jun 2017 07:19:31 +0000 (15:19 +0800)]
MLK-14997-6: ARM64: defconfig: built-in hifi driver
built-in hifi driver
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Shengjiu Wang [Thu, 1 Jun 2017 07:17:22 +0000 (15:17 +0800)]
MLK-14997-5: ARM64: dts: add hifi node in dts
add hifi node in dts
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Shengjiu Wang [Thu, 1 Jun 2017 07:17:01 +0000 (15:17 +0800)]
MLK-14997-4: ASoC: fsl: add hifi4 dsp driver
The function of driver is to communicate with hifi firmware.
The mu13 is dedicated for hifi communication, driver allocate
a share memory for message transfer between driver and firmware.
The calling sequence is that LOAD_CODEC,INIT_CODEC,CODEC_OPEN,
DECODE_ONE_FRAME, CODEC_CLOSE.
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Shengjiu Wang [Fri, 2 Jun 2017 02:35:35 +0000 (10:35 +0800)]
MLK-14997-3: Document: Add fsl,hifi4 compatibility document
add hifi4 document
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Shengjiu Wang [Thu, 1 Jun 2017 07:16:25 +0000 (15:16 +0800)]
MLK-14997-2: include: uapi: add hifi header file
add hifi header file, which is used by user space.
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Gao Pan [Wed, 31 May 2017 07:39:13 +0000 (15:39 +0800)]
MLK-14985-3 defconfig: add sensors support
fxas2100: CONFIG_SENSORS_FXAS2100X
fxos8700: CONFIG_SENSORS_FXOS8700
isl29023: CONFIG_INPUT_ISL29023
mpl3115 : CONFIG_INPUT_MPL3115
This patch also enable CONFIG_INPUT_POLLDEV, because sensor driver
depends on input-polldev.c
Signed-off-by: Gao Pan <pandy.gao@nxp.com>
Gao Pan [Fri, 26 May 2017 07:20:57 +0000 (15:20 +0800)]
MLK-14985-2 arm64: dts: imx8qm: add sensor support
sensors: fxas2100, fxos8700, isl29023, mpl3115
Signed-off-by: Gao Pan <pandy.gao@nxp.com>
Gao Pan [Wed, 31 May 2017 08:36:17 +0000 (16:36 +0800)]
MLK-14985-1 Documentation: i2c: add dt documentation for isl29023
Add dt documentation for intersil ISL29023 ambient light sensor.
Signed-off-by: Gao Pan <pandy.gao@nxp.com>
Gao Pan [Fri, 26 May 2017 06:19:45 +0000 (14:19 +0800)]
MLK-14984 arm64: dts: add irqsteer for lvds subsystem
add irqsteer for lvds subsystem
Signed-off-by: Gao Pan <pandy.gao@nxp.com>
Gao Pan [Fri, 26 May 2017 03:30:03 +0000 (11:30 +0800)]
MLK-14982-2 arm64: imx8qm: add ipg clk for lpi2c device node
add ipg clk for lpi2c device node
Signed-off-by: Gao Pan <pandy.gao@nxp.com>
Gao Pan [Thu, 25 May 2017 13:51:23 +0000 (21:51 +0800)]
MLK-14982-1 imx8: lpi2c: add ipg clk for lpi2c driver
The lpi2c IP needs two clks: ipg clk and per clk. The old lpi2c
driver missed ipg clk. This patch adds ipg clk for lpi2c driver.
V2: enable ipg clk before module clock
disable module clock before ipg clk
Signed-off-by: Gao Pan <pandy.gao@nxp.com>
Gao Pan [Thu, 25 May 2017 12:29:49 +0000 (20:29 +0800)]
MLK-14981-3 defconfig: enable CONFIG_I2C_IMX_LPI2C
enable CONFIG_I2C_IMX_LPI2C
Signed-off-by: Gao Pan <pandy.gao@nxp.com>
Gao Pan [Thu, 25 May 2017 12:27:16 +0000 (20:27 +0800)]
MLK-14981-2 Kconfig: add lpi2c driver dependency for ARM64
add lpi2c driver dependency for ARM64
Signed-off-by: Gao Pan <pandy.gao@nxp.com>
Gao Pan [Thu, 25 May 2017 09:41:44 +0000 (17:41 +0800)]
MLK-14981-1 arm64: dts: enable i2c for imx8qm
1. enable lpi2c of lvds, hdmi and DMA subsystem
2. change dts property assigned-clock-name to assigned-clocks
3. enable gpio expander pca9557
Signed-off-by: Gao Pan <pandy.gao@nxp.com>
Nitin Garg [Thu, 1 Jun 2017 17:40:33 +0000 (12:40 -0500)]
MLK-14998: Remove the dts change in last commit
made the commit by mistake. DTS change isnt required.
Signed-off-by: Nitin Garg <nitin.garg@nxp.com>
Ranjani Vaidyanathan [Fri, 26 May 2017 22:00:44 +0000 (17:00 -0500)]
MLK-14998: i.MX8: Update to the latest SCFW API
Signed-off-by: Ranjani Vaidyanathan <Ranjani.Vaidyanathan@nxp.com>
Yong Gan [Fri, 2 Jun 2017 01:20:55 +0000 (09:20 +0800)]
arm64: imx8dv: Fix drm_addmap_core fail for aarch64
Fix error on mapping fb in exa driver starting.
Signed-off-by: Yong Gan <yong.gan@nxp.com>
Han Xu [Thu, 1 Jun 2017 03:25:37 +0000 (22:25 -0500)]
MLK-14995: ARM: dts: nand-on-flash flag set in wrong device node
nand-on-flash-bbt flag for i.mx6sx sabreauto dtb was set in wrong device
node, move it back to gpmi node.
Signed-off-by: Han Xu <han.xu@nxp.com>
Bai Ping [Tue, 23 May 2017 01:34:51 +0000 (09:34 +0800)]
MLK-14965 driver: clk: Add dc dpr1 clocks on i.mx8qm
Add DC0 and DC1's DPR1 APB_CLK and B_CLK on i.MX8QM
Signed-off-by: Bai Ping <ping.bai@nxp.com>
Shengjiu Wang [Wed, 31 May 2017 03:04:52 +0000 (11:04 +0800)]
MLK-14989: ASoC: fsl_rpmsg_i2s: enable pm_qos for audio
with "echo 1 > /sys/class/graphics/fb0/blank", and there is no
usb connected on board, the system may enter low power mode,
then audio playback will be failed. use pm_qos to prevent A7
core enter low power mode during audio playback and recording.
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Leonard Crestez [Thu, 25 May 2017 13:51:57 +0000 (16:51 +0300)]
MLK-14874 ARM: imx7d: Ensure ARM clock only disabled if cpus in same state
GPC will stop ARM clock if both CPUs are in idle and CPU_CLK_ON_LPM is
set in GPC_LPCR_A7_BSC. Make sure that doesn't happen when cpu1 enters
state2 and cpu0 enters state0 because the default arm WFI state is not
marked with CPUIDLE_FLAG_TIMER_STOP and it can result in arch_sys_timer
being stopped unexpectedly.
It is possible to reproduce incorrect behavior by explicitly disabling
other idle states for cpu0/cpu1 and timing how much sleep calls take on
cpu0. Ocassionaly something like "sleep 1" will take 3-4 seconds to
complete.
Make sure that both CPUs are in the same idle state before entering
WAIT.
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Prabhu Sundararaj [Mon, 24 Apr 2017 19:47:25 +0000 (14:47 -0500)]
ARM64: DMA: Export dma operation APIs for arm64 platform
Some DMA operation APIs are not exported, so when load driver as module,
there will error saying some APIs can not be found.
This patch exported these DMA related APIs.
Signed-off-by: Shawn Xiao <b49994@freescale.com>
Fugang Duan [Fri, 26 May 2017 02:53:37 +0000 (10:53 +0800)]
MLK-14980 tty: serial: fsl_lpuart: remove unnecessary .async_tx_ack()
lpuart only use NXP/FSL eDMA dmaengine in i.MX/Vybrid/LS1021a platform,
and eDMA driver don't reuse descriptor then no need to check the
flag DMA_CTRL_ACK. And current eDMA driver use virt chan mechanism and
free tx_descriptor memory after .callback(), but .lpuart_timer_func()
first to terminate the chans that free the tx_descriptor memory, then
access the tx->flags, which cause kmem_cache_alloc() failed to allocate
the freed memory. So remove the unnecessary .async_tx_ack().
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
Fugang Duan [Sat, 13 May 2017 11:19:29 +0000 (19:19 +0800)]
MLK-14978 irqchip: irqsteer: add NXP imx8 irq steer controller support
The IrqSteer module redirects/steers the incoming interrupts to output
interrupts of a selected/designated channel as specified by a set of
configuration registers.
NXP i.MX8x chips integrate IrqSteer controller for some DSC to share irq
line for all modules in the subsystem which can reduce the IRQ lines
connected to the parent interrupt controller GIC, so IrqSteer irqchip
acts as the second irq domain in the system.
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
Richard Zhu [Fri, 26 May 2017 01:10:42 +0000 (09:10 +0800)]
PCI: imx6: Allow probe deferral by reset GPIO
Some designs implement reset GPIO via a GPIO expander connected to a
peripheral bus. One such example would be i.MX7 Sabre board where said
GPIO is provided by SPI shift register connected to a bitbanged SPI bus.
To support such designs, allow reset GPIO request to defer probing of the
driver.
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
Cc: yurovsky@gmail.com
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Cc: Dong Aisheng <dongas86@gmail.com>
Cc: linux-arm-kernel@lists.infradead.org
(cherry picked from commit
bde4a5a00e761f55be92f62378cf5024ced79ee3)