Mirela Rabulea [Tue, 28 May 2019 10:40:18 +0000 (13:40 +0300)]
MLK-21882: mxc-jpeg: Allow DMABUF for mxc-jpeg encoder/decoder
Proposed & requested by Bing Song, for performance measurement.
Signed-off-by: Mirela Rabulea <mirela.rabulea@nxp.com>
Reviewed-by: Laurentiu Palcu <laurentiu.palcu@nxp.com>
Silvano di Ninno [Thu, 23 May 2019 07:53:14 +0000 (09:53 +0200)]
MLK-21698: tee:optee: fix shared memory page attribute checks
When allocating pages for share memory with OP-TEE,
the driver checks the page attribute (pte).
The current checks only allow writealloc pages.
i.MX 6SLL sets the page attribute to writeback.
Relax this check to allow writealloc, writeback and writethrough.
Signed-off-by: Silvano di Ninno <silvano.dininno@nxp.com>
Reviewed-by: Franck Lenormand <franck.lenormand@nxp.com>
Reviewed-by: Horia Geanta <horia.geanta@nxp.com>
Acked-by: Leonard Crestez <leonard.crestez@nxp.com>
Li Jun [Mon, 27 May 2019 08:35:50 +0000 (16:35 +0800)]
MLK-21692 usb: chipidea: udc: protect usb interrupt enable
We hit the problem with below sequence:
- ci_udc_vbus_session() update vbus_active flag and ci->driver
is valid,
- before calling the ci_hdrc_gadget_connect(),
usb_gadget_udc_stop() is called by application remove gadget
driver,
- ci_udc_vbus_session() will contine do ci_hdrc_gadget_connect() as
gadget_ready is 1, so udc interrupt is enabled, but ci->driver is
NULL.
- USB connection irq generated but ci->driver is NULL.
As udc irq only should be enabled when gadget driver is binded, so
add spinlock to protect the usb irq enable&disable for vbus session
handling.
Acked-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
(cherry picked from commit
fe39b8fd45898a3efa054238219b03ff3b91cd42)
Mirela Rabulea [Fri, 24 May 2019 16:49:34 +0000 (19:49 +0300)]
MLK-21438: mxc-jpeg: Fix mxc-jpeg enc/dec for NV12 1080p
The CAST IP requires for NV12 that the resolution is aligned to 16, and
1080 is not a multiple of 16. On the other hand, gstreamer does not allow
to adjust the buffer size down, only up.
For decoding, just fool the CAST-IP the resolution is a bit bigger, but
keep the buffer size the same. Increasing the buffer size would result
in a few extra garbage lines, decreasing is not allowed by gst.
For encoding, just fool the CAST-IP to encode a little bit less,
if we would encode some extra lines, it would not be possible to
discard them from the resulting jpeg.
Add alignment restrictions to the format descriptions in mxc_formats[].
Signed-off-by: Mirela Rabulea <mirela.rabulea@nxp.com>
Reviewed-by: Robert Chiras <robert.chiras@nxp.com>
Clark Wang [Mon, 27 May 2019 07:48:52 +0000 (15:48 +0800)]
MLK-21870 spi: lpspi: remove initialization of cs-gpios in slave mode
Common code will do spi_set_cs() if cs-gpios has been initialized
whether controller is in master or slave mode. So remove allocating
memory for cs-gpios operation to avoid cs control in slave sending
sequence.
Signed-off-by: Clark Wang <xiaoning.wang@nxp.com>
Acked-by: Fugang Duan <fugang.duan@nxp.com>
Shijie Qin [Mon, 27 May 2019 04:03:42 +0000 (12:03 +0800)]
MLK-21859-2 VPU Decoder: modify sequence header for
SPK format
Inser frame header for first frame
Signed-off-by: Shijie Qin <shijie.qin@nxp.com>
Shijie Qin [Fri, 24 May 2019 11:57:09 +0000 (19:57 +0800)]
MLK-21859 VPU Decoder: VPU Decoder: modify sequence
header for SPK format
the payloadSize of SPK sequence header shall
be 0
Signed-off-by: Shijie Qin <shijie.qin@nxp.com>
Richard Zhu [Fri, 24 May 2019 07:58:51 +0000 (15:58 +0800)]
MLK-21824 PCI: imx: msi enable bit of rc should be set in resume
The MSI Enable bit controls delivery of MSI interrupts from components
below the Root Port.
This bit would be lost during the suspend, should be re-configured
during resume.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
ming_qian [Fri, 24 May 2019 08:05:58 +0000 (16:05 +0800)]
MLK-21811-2: VPU Decoder: fix typo and add some log
Signed-off-by: ming_qian <ming.qian@nxp.com>
Liu Ying [Thu, 23 May 2019 05:11:33 +0000 (13:11 +0800)]
MLK-21799 drm/imx: dpu: kms: Suppress build warning for variable 'm'
This patch initializes variable 'm' in function
dpu_atomic_assign_plane_source_per_crtc() to
suppress the below build warning:
drivers/gpu/drm/imx/dpu/dpu-kms.c: In function ‘dpu_drm_atomic_check’:
drivers/gpu/drm/imx/dpu/dpu-kms.c:217:18: warning: ‘m’ may be used uninitialized in this function [-Wmaybe-uninitialized]
int i, j, k, l, m;
^
Signed-off-by: Liu Ying <victor.liu@nxp.com>
Richard Zhu [Thu, 23 May 2019 07:43:56 +0000 (15:43 +0800)]
MLK-21812 PCI: imx: remove gpc related codes
iMX8M PCIe doesn't need to touch GPC, since they are contained in the
power domain operations already.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Acked-by: Fugang Duan <fugang.duan@nxp.com>
Shijie Qin [Fri, 24 May 2019 02:58:36 +0000 (10:58 +0800)]
MLK-21817 VPU Decoder: use getTSManagerPreBufferCnt
as a reference count of delay decode frames
Use getTSManagerPreBufferCnt from TSM to delay
frames, insead of the difference between input
buffer times and output.
Signed-off-by: Shijie Qin <shijie.qin@nxp.com>
Richard Zhu [Wed, 22 May 2019 08:32:21 +0000 (16:32 +0800)]
MLK-21807-3 use the bus dma mask refer to the 32 bit dma limitation
Refer to the 32bits DMA limitation on some iMX8 SOCs, use the
bus_dma_mask to specify the limitation.
Get the dma-ranges from the node at firstly, then the next parent.
Otherwise, the dma-ranges defined in the PCIe node, wouldn't be found.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Richard Zhu [Wed, 22 May 2019 08:38:53 +0000 (16:38 +0800)]
MLK-21807-2 arm64: dts: imx8: specify the imx pcie inbound memory region
Refer to the 32bits DMA limitation, specify the dma ranges memory region
of iMX8 PCIe in the 32bits address space.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Richard Zhu [Mon, 20 May 2019 08:22:09 +0000 (16:22 +0800)]
MLK-21807-1 Revert "MLK-15064-2 ARM64: DMA: limit the dma mask to be 32bit"
This reverts commit
1953b8289b51b1ebc42e8511a6b7b12de7142c1e.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Shijie Qin [Thu, 23 May 2019 11:40:53 +0000 (19:40 +0800)]
MLK-21816 VPU Decoder: modify insert_header to fix mosaic for VC1 format
extend 12 byte for load size about VC1 insert_header
Signed-off-by: Shijie Qin <shijie.qin@nxp.com>
Arulpandiyan Vadivel [Wed, 22 May 2019 13:15:12 +0000 (18:45 +0530)]
MLK-21621 clk: imx6sll / imx6ul: correct gpio flags
Adding CLK_IS_CRITICAL flags to all GPIO banks of imx6sll and imx6ul
boards, As gpio pins might be accessed during the suspend mode.
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
Reviewed-by: Leonard Crestez <leonard.crestez@nxp.com>
Mirela Rabulea [Wed, 22 May 2019 13:50:41 +0000 (16:50 +0300)]
MLK-21808: mxc-jpeg: Take resolution from jpeg when the user provides 0x0
The jpegparse gst plugin sets the resolution to 0x0 for progressive and
extended sequential jpegs, so use the resolution from the jpeg file
instead of returning error. This will allow extended sequential jpegs
to be decoded. Progressive jpegs are not supported.
Signed-off-by: Mirela Rabulea <mirela.rabulea@nxp.com>
Reviewed-by: Robert Chiras <robert.chiras@nxp.com>
Mirela Rabulea [Wed, 22 May 2019 08:58:28 +0000 (11:58 +0300)]
MLK-21804: mxc-jpeg: Report error for progressive jpegs
The mxc-jpeg decoder only supports baseline and extended
sequential jpegs. Progressive jpegs are not supported,
this is confirmed with Alma Technologies.
Signed-off-by: Mirela Rabulea <mirela.rabulea@nxp.com>
Reviewed-by: Robert Chiras <robert.chiras@nxp.com>
ming_qian [Thu, 23 May 2019 09:48:35 +0000 (17:48 +0800)]
MA-14498: respond eos immediately if firmware is not started
[Android_8QM/8QXP_MEK]RTSP: Play a RTSP streaming and turn off/on
screen, display of streaming will become black.(100%)
Signed-off-by: ming_qian <ming.qian@nxp.com>
Anson Huang [Thu, 23 May 2019 06:37:28 +0000 (14:37 +0800)]
MLK-21596 soc: imx: make sure MU irq can wake up system from freeze mode
Commit
b24e5c5fca92 ("MLK-21078-3 soc: imx: enable RX interrupt
for IPC response") adds IPC RX IRQ support and need to add
IRQF_NO_SUSPEND flag for MU IRQ to make IPC work during system
suspend phase, but with this flag set, IRQD_WAKEUP_ARMED flag will
NOT be set during suspend_device_irq() phase, then when MU IRQ
arrives, it will NOT wake up system from s2idle.
To fix this issue, pm_system_wakeup() is called in general MU IRQ
handler to make sure system can be waked up when MU IRQ arrives.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Acked-by: Robin Gong<yibin.gong@nxp.com>
ming_qian [Thu, 23 May 2019 05:49:41 +0000 (13:49 +0800)]
MLK-21811: VPU Decoder: allocate mbi buffer when requested
1. allocate mbi buffer when requested
2. don't block when receive request frame event
Signed-off-by: ming_qian <ming.qian@nxp.com>
Leonard Crestez [Tue, 21 May 2019 12:55:49 +0000 (15:55 +0300)]
MLK-21768-3 clk: imx6sll: Drop unused clks_init_on
All the clks in this array are already marked as critical so this unused
array is not required.
Fixes:
3b78a5b6263c ("MLK-13303-5 ARM: imx: add clock driver for i.mx6sll")
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Abel Vesa <abel.vesa@nxp.com>
Leonard Crestez [Tue, 21 May 2019 12:54:42 +0000 (15:54 +0300)]
MLK-21768-2 clk: imx6sll: Port extra clk flags from 4.14
These flags were not included in upstream and were missed during
porting.
Fixes:
3b78a5b6263c ("MLK-13303-5 ARM: imx: add clock driver for i.mx6sll")
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Abel Vesa <abel.vesa@nxp.com>
Leonard Crestez [Tue, 21 May 2019 19:30:16 +0000 (22:30 +0300)]
MLK-21768-1 arm: dts: imx6sll: Fix sram nodes
In upstream a single large area was pushed but in internal tree the sram
is partitioned into multiple blocks used for low power idle and busfreq.
Use definition from imx_4.14.y and prevent the generic mmio-sram from
overwriting low power code.
Fixes:
248bf3ba3b70 ("MLK-13344-03 ARM: dts: imx: add busfreq node on imx6sll")
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Abel Vesa <abel.vesa@nxp.com>
Leonard Crestez [Tue, 21 May 2019 11:32:41 +0000 (14:32 +0300)]
MLK-21800 arm: dts: imx6sll: Add extra cpufreq clocks
These extra clocks are used by NXP imx6q cpufreq driver.
They were not included when upstreaming imx6sll dtsi and were missed
during porting.
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Abel Vesa <abel.vesa@nxp.com>
Shijie Qin [Wed, 22 May 2019 06:17:32 +0000 (14:17 +0800)]
MLK-21248-2 VPU Decoder: support adaptive playback in driver
add mutex lock when send abort/stop cmd to firmware,
avoid twice abort cmd send at the same time in streamoff
and reset.
Signed-off-by: Shijie Qin <shijie.qin@nxp.com>
Shijie Qin [Tue, 21 May 2019 05:42:10 +0000 (13:42 +0800)]
MLK-21794 VPU Decoder: add new v4l2 dec event for report HW decode error
1. add new v4l2 dec event for report HW decode error
#define V4L2_EVENT_DECODE_ERROR (V4L2_EVENT_PRIVATE_START + 1)
2. refine define of V4L2_EVENT_SKIP and IMX_V4L2_DEC_CMD_RESET
#define V4L2_EVENT_SKIP (V4L2_EVENT_PRIVATE_START + 2)
#define IMX_V4L2_DEC_CMD_START (0x09000000)
#define IMX_V4L2_DEC_CMD_RESET (IMX_V4L2_DEC_CMD_START +1)
Signed-off-by: Shijie Qin <shijie.qin@nxp.com>
Peng Fan [Tue, 21 May 2019 04:40:55 +0000 (12:40 +0800)]
MLK-21795 clk: imx: imx8mm: correct audio_pll2_clk to audio_pll2_out
There is no audio_pll2_clk registered, it should be audio_pll2_out.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Jacky Bai <ping.bai@nxp.com>
Richard Zhu [Tue, 21 May 2019 09:00:11 +0000 (17:00 +0800)]
MLK-21765-3 clk: imx: remove the redundant codes
Remove the M4 enabled check codes, since the uart clocks is not related
to M4 at all after the commit "
3a2c36e6" MLK-21432 clk: imx: only enable
clocks for earlycon/earlyprintk port.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Richard Zhu [Tue, 21 May 2019 08:06:51 +0000 (16:06 +0800)]
MLK-21765-2 clk: imx7d: enable uart2 clock when m4 is enabled
iMX7D has the similar potential issue, that the UART clock used by M4
maybe turned off by Linux side, after the initialization of the clocks.
Enable the UART2 clock when M4 is enabled to fix it.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Richard Zhu [Tue, 21 May 2019 07:57:46 +0000 (15:57 +0800)]
MLK-21765-1 arm64: dts: imx8m: define the init-on-array clocks
The UART clock used by M4 maybe turned off by Linux side, after the
initialization of the clocks.
Re-define the init-on-array clocks in the dts, Add the UART clock used
by M4 into the init_on clock array to fix this issue.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Richard Zhu [Tue, 14 May 2019 09:43:45 +0000 (17:43 +0800)]
MLK-21695-3: PCI: imx: set up the hsio regmap itself
Setup PCI its own HSIO regmap to fix the kernel dump, when the HSIO
regmap is set as system syscon.
/sys/kernel/debug/regmap# cat dummy-hsio@
5f080000/register
NOTE: devm_ioremap is used to get the virtual address, because that the
devm_ioremap_resource would return -EBUSY when there is a resource
overlap between different HSIO consumers.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Richard Zhu [Tue, 14 May 2019 09:42:30 +0000 (17:42 +0800)]
MLK-21695-2: ata: imx: set up the hsio regmap itself
Setup SATA its own HSIO regmap to fix the kernel dump,
when the HSIO regmap is set as system syscon.
/sys/kernel/debug/regmap# cat dummy-hsio@
5f080000/register
NOTE: devm_ioremap is used to get the virtual address, because that the
devm_ioremap_resource would return -EBUSY when there is a resource
overlap between different HSIO consumers.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Richard Zhu [Thu, 9 May 2019 10:50:18 +0000 (18:50 +0800)]
MLK-21695-1 arm64: dts: add the peripheral clocks for hsio
In order to resolve the HSIO regmap dump issue.
- Add the requrired HSIO peripheral clocks for different consumers.
- Remove the global syscon HSIO. And setup the separated regmap
by each device itself.
- Remove the HSIO node to fix the dtb build errors.
- Correct the HSIO power domain name on iMX8QXP, otherwise, the
IMX8QXP_HSIO_MISC_PER_CLK clock clock wouldn't be enabled.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Signed-off-by: Ranjani Vaidyanathan <ranjani.vaidyanathan@nxp.com>
ming_qian [Tue, 21 May 2019 08:55:26 +0000 (16:55 +0800)]
MLK-21798: VPU Decoder: dump firmware log using debugfs instead of sysfs
The size of sysfs is limited to PAGE_SIZE.
But there is no limit if using debugfs.
Signed-off-by: ming_qian <ming.qian@nxp.com>
Leonard Crestez [Mon, 20 May 2019 13:20:13 +0000 (16:20 +0300)]
MLK-21782 cpufreq: imx6q: Fetch additional clocks not used in upstream
Unlike upstream we use additional clks and we need to fetch them all.
Those additional clocks are present on all platforms, not just 6ul.
This additional manipulation is relied-upon by busfreq.
Fixes:
eac2948ba4c8 ("MLK-11343-02 cpufreq: imx: add more clk used by cpufreq")
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
Leonard Crestez [Mon, 20 May 2019 15:36:40 +0000 (18:36 +0300)]
MLK-21781 cpufreq: imx6q: Assume no speed grading if nothing found
The imx6q-cpufreq driver currently fails to probe on imx6sl because no
speed grading info is found.
For imx6sl there is no reference of speed grading in data sheet or
reference manual, apparently all parts go up to 1ghz. Fix this by using
the entire OPP table if no speed grading information is available.
This is similar to behavior in older releases.
Fixes:
b7655355f521 ("cpufreq: imx6sx/imx6q: read OCOTP through nvmem for imx6sx/imx6q")
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
Haibo Chen [Fri, 17 May 2019 07:27:44 +0000 (15:27 +0800)]
MLK-20420 ARM: dts: imx7ulp-evk: add delay cell for DDR50/DDR52 mode
We find some imx7ulp evk board, SD card work in DDR50 mode will meet
data CRC error. Only some board has this issue. And eMMC DDR50 mode
also has this issue on these boards. For DDR50, do tuning can fix
this issue, but eMMC DDR52 do not support tuning. So this patch
manually add the delay cell on the fixed clock (FBCLK_SEL = 0).
Currently, add 15 delay cell, which can make DDR50/DDR52 works stable
on all imx7ulp evk board.
Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
Reviewed-by: Dong Aisheng <aisheng.dong@nxp.com>
(cherry picked from commit
ef369313de747251ff11c108e7fd5bf2b92df603)
ming_qian [Mon, 20 May 2019 09:30:33 +0000 (17:30 +0800)]
MLK-21778: VPU Decoder: check vb2 buffer is changed
1. check vb2 buffer is changed
2. avoid duplicate qbuf with same index
3. add some debug log
Signed-off-by: ming_qian <ming.qian@nxp.com>
Richard Zhu [Mon, 13 May 2019 08:11:56 +0000 (16:11 +0800)]
MLK-21694 ata: imx: fix can't find ahb clk issue and enable imx8qm sata
- The ahb clock is not mandatory required by iMX8QM SATA, fetch it only
when there is "ahb" clock.
- Specify the 32-bit dma limitation and the softreset for iMX8QM SATA.
- Use the standard ahci_error_handler on iMX8QM SATA.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Mirela Rabulea [Fri, 17 May 2019 15:35:54 +0000 (18:35 +0300)]
MLK-21770: mxc-jpeg: Add packed YUV444 24bpp pixel format for mxc-jpeg
Previously, the mxc-jpeg decoder was using V4L2_PIX_FMT_YUV32(AYUV,
32 bpp), but this format was not exactly suited for what the CAST-IP
supports (1 Plannar in YUVYUV sequence, see Chapter 14.4.4.5.1.13,
STM_CTRL description for JPEG Decoder Wrapper in iMX8DQXP_RM), so decided
to add a new format: V4L2_PIX_FMT_YUV24.
This will also be used by the gst plugins(MMFMWK-8504) and ISI.
Signed-off-by: Mirela Rabulea <mirela.rabulea@nxp.com>
Reviewd-by: Laurentiu Palcu <laurentiu.palcu@nxp.com>
Mirela Rabulea [Fri, 17 May 2019 15:27:34 +0000 (18:27 +0300)]
MLK-21770: media: v4l: Add packed YUV444 24bpp pixel format
The added format is V4L2_PIX_FMT_YUV24, this is a packed
YUV 4:4:4 format, with 8 bits for each component, 24 bits
per sample.
Signed-off-by: Mirela Rabulea <mirela.rabulea@nxp.com>
Reviewed-by: Laurentiu Palcu <laurentiu.palcu@nxp.com>
Acked-by: Leonard Crestez <leonard.crestez@nxp.com>
Leonard Crestez [Sun, 19 May 2019 10:28:26 +0000 (13:28 +0300)]
MLK-21750 mfd: bd718x7: Remove hardcoded config for button press duration
The reset button on imx8mm-evk is tied to PWRON_B pin of
bd71847 and the
long press duration is set to zero from OTP. The linux driver overrides
those values and breaks reset from button.
Overwriting OTP or bootloader configuration with some hardcoded defaults
is not desirable, keep already programmed values instead.
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Acked-By: Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com>
Fugang Duan [Fri, 17 May 2019 09:18:04 +0000 (17:18 +0800)]
MLK-21756 brcmfmac: bcmsdh: attach device only func1 compatible string match
brcmfamc driver attach mmc func devices only when func1 device's
node exist, and whose compatible string match "brcm,bcm4329-fmac".
Reviewed-by: Richard Zhu <hongxing.zhu@nxp.com>
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
Leonard Crestez [Sun, 19 May 2019 13:39:27 +0000 (16:39 +0300)]
MLK-21650 clk: imx6sx: Fix reparenting perclk
Remove the CLK_IS_CRITICAL flag because this breaks the reparenting of
perclk_sel to osc. Replace this with an explicit clk_prepare_enable
instead.
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
Peng Fan [Mon, 20 May 2019 06:53:16 +0000 (14:53 +0800)]
MLK-21776 iommu: arm: pgtable: fix pagetable allocation
ZONE_DMA is removed by commit
ad67f5a6545("arm64: replace ZONE_DMA with ZONE_DMA32").
So need use __GFP_DMA32, otherwise meet
"
[ 2.560837] arm-smmu
51400000.iommu: Cannot accommodate DMA translation for IOMMU page tables
[ 2.569456] iommu: Failed to add device
5f020000.sata to group 0: -12
[ 2.623471] arm-smmu
51400000.iommu: Cannot accommodate DMA translation for IOMMU page tables
[ 2.632022] iommu: Failed to add device
5b040000.ethernet to group 0: -12
[ 2.703749] arm-smmu
51400000.iommu: Cannot accommodate DMA translation for IOMMU page tables
[ 2.712294] iommu: Failed to add device
5b050000.ethernet to group 0: -12
[ 3.294966] arm-smmu
51400000.iommu: Cannot accommodate DMA translation for IOMMU page tables
[ 3.303514] iommu: Failed to add device
5b010000.usdhc to group 0: -12
[ 3.358298] arm-smmu
51400000.iommu: Cannot accommodate DMA translation for IOMMU page tables
[ 3.366858] iommu: Failed to add device
5b020000.usdhc to group 0: -12
[ 4.184750] arm-smmu
51400000.iommu: Cannot accommodate DMA translation for IOMMU page tables
[ 4.193311] iommu: Failed to add device
5b050000.ethernet to group 0: -12
[ 4.205606] arm-smmu
51400000.iommu: Cannot accommodate DMA translation for IOMMU page tables
[ 4.214175] iommu: Failed to add device
5b050000.ethernet to group 0: -12
[ 4.224358] arm-smmu
51400000.iommu: Cannot accommodate DMA translation for IOMMU page tables
[ 4.232938] iommu: Failed to add device
5b050000.ethernet to group 0: -12
"
Fixes:
90d512cf0ab ("MLK-15007-1 iommu: arm: pgtable: alloc pagetable in DMA area")
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Richard Zhu <hongxing.zhu@nxp.com>
Shijie Qin [Mon, 20 May 2019 04:30:23 +0000 (12:30 +0800)]
MMFMWK-8516 VPU decoder: memory leak issue when playing
RV format video
Memory leak issue when playing RV format video. Hence, will
consume all available cmd size and cause kernel panic if repeatedly
playing.
Free arv_frame memory before return.
Signed-off-by: Shijie Qin <shijie.qin@nxp.com>
Xianzhong [Thu, 16 May 2019 17:03:55 +0000 (01:03 +0800)]
MGS-4716-2 [#imx-1412] set contiguous 4GB flag for CMA limit
CMA limit shall not allocate non-contiguous 4GB memory
Signed-off-by: Xianzhong <xianzhong.li@nxp.com>
Xianzhong [Fri, 17 May 2019 15:23:33 +0000 (23:23 +0800)]
MGS-4861 [#imx-1482] fix AXI bus error for g2d compositor
dpu g2d does not support non-contiguous system memory,
fix video memory block to avoid wrong MMU mapping.
Signed-off-by: Xianzhong <xianzhong.li@nxp.com>
ming_qian [Mon, 20 May 2019 02:16:51 +0000 (10:16 +0800)]
MLK-21774: VPU Decoder: avoid request frame buffer after abort
firmware may restart request frame buffer after
send event STR_BUF_RST to driver.
So frame buffer may be requested before driver clear queue.
It's not safe.
Signed-off-by: ming_qian <ming.qian@nxp.com>
Guoniu.Zhou [Wed, 15 May 2019 06:01:16 +0000 (14:01 +0800)]
MLK-21743: dma: pxp_v3: the crop height need to be even when input format is YUV420/YVU420
YVU420/YUV420 has three components which are separated into three
sub-images or planes and the Cr plane is half the width and half
the height of the Y plane (and of the image). So the crop width
and height need to be even in order to meet the format requirements.
Signed-off-by: Guoniu.Zhou <guoniu.zhou@nxp.com>
Signed-off-by: Richard Liu <xuegang.liu@nxp.com>
Tested-by: Richard Liu <xuegang.liu@nxp.com>
(cherry picked from commit
f2edfadf34c31cfa8b53fa60a88ccc90d4d6667d)
Leonard Crestez [Thu, 16 May 2019 12:16:16 +0000 (15:16 +0300)]
MLK-21554-4 clk: imx: Relax CLK_SET_RATE_GATE for imx6/7 busfreq
This fixes busfreq work on various 6s/6u/7d chips and realigns us with
upstream.
The clk framework in new versions rejects clk_set_parent if any child
has CLK_SET_RATE_GATE set. However doing glitchless muxing upstream
shouldn't cause problems for dividers lower down.
All the CLK_SET_RATE_GATE flag ever did is reject certain invalid
clk_set_rate calls however at this point our imx6/7 driver are
reasonably stable anyway. Perhaps this flag could be maintained in some
form but that should be done directly upstream.
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Acked-by: Nitin Garg <nitin.garg@nxp.com>
Anson Huang [Wed, 17 Apr 2019 05:39:28 +0000 (13:39 +0800)]
MLK-21554-3 clk: imx6sx: keep OCRAM_S always ON
OCRAM_S is used as iram tlb table for low power modes, clock
needs to be always ON.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Leonard Crestez <leonard.crestez@nxp.com>
Mirela Rabulea [Wed, 15 May 2019 11:04:52 +0000 (14:04 +0300)]
MLK-21742: mxc-jpeg: Fix extended sequential jpeg decoding
For extended sequential jpegs, the frame definition is
in the SOF1 marker, so use that, also keep using SOF0 for
baseline sequential and SOF1 for progressive jpegs.
Signed-off-by: Mirela Rabulea <mirela.rabulea@nxp.com>
Reviewed-by: Robert Chiras <robert.chiras@nxp.com>
Shijie Qin [Fri, 17 May 2019 06:16:59 +0000 (14:16 +0800)]
MLK-21757 VPU Decoder: move send abort cmd to firmware
from output port to capture port
move send abort cmd to firmware from output port
to capture port
Signed-off-by: Shijie Qin <shijie.qin@nxp.com>
ming_qian [Fri, 17 May 2019 05:30:17 +0000 (13:30 +0800)]
MLK-21763:VPU Decoder: fix frame buffer status may be incorrect after
reqbufs
if driver didn't receive the frame release event.
and user execute streamoff and reqbufs,
all of frames are new, and should set status to alloc.
Signed-off-by: ming_qian <ming.qian@nxp.com>
ming_qian [Fri, 17 May 2019 02:21:03 +0000 (10:21 +0800)]
MLK-21760: VPU Encoder: increase resolution limitation
increate the resolution limitation from 1920x1080 to 1920x1920
Signed-off-by: ming_qian <ming.qian@nxp.com>
Anson Huang [Wed, 17 Apr 2019 01:59:34 +0000 (01:59 +0000)]
i2c: imx: correct the method of getting private data in notifier_call
The way of getting private imx_i2c_struct in i2c_imx_clk_notifier_call()
is incorrect, should use clk_change_nb element to get correct address
and avoid below kernel dump during POST_RATE_CHANGE notify by clk
framework:
Unable to handle kernel paging request at virtual address
03ef1488
pgd = (ptrval)
[
03ef1488] *pgd=
00000000
Internal error: Oops: 5 [#1] PREEMPT SMP ARM
Hardware name: Freescale i.MX6 Quad/DualLite (Device Tree)
Workqueue: events reduce_bus_freq_handler
PC is at i2c_imx_set_clk+0x10/0xb8
LR is at i2c_imx_clk_notifier_call+0x20/0x28
pc : [<
806a893c>] lr : [<
806a8a04>] psr:
a0080013
sp :
bf399dd8 ip :
bf3432ac fp :
bf7c1dc0
r10:
00000002 r9 :
00000000 r8 :
00000000
r7 :
03ef1480 r6 :
bf399e50 r5 :
ffffffff r4 :
00000000
r3 :
bf025300 r2 :
bf399e50 r1 :
00b71b00 r0 :
bf399be8
Flags: NzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment none
Control:
10c5387d Table:
4e03004a DAC:
00000051
Process kworker/2:1 (pid: 38, stack limit = 0x(ptrval))
Stack: (0xbf399dd8 to 0xbf39a000)
9dc0:
806a89e4 00000000
9de0:
ffffffff bf399e50 00000002 806a8a04 806a89e4 80142900 ffffffff 00000000
9e00:
bf34ef18 bf34ef04 00000000 ffffffff bf399e50 80142d84 00000000 bf399e6c
9e20:
bf34ef00 80f214c4 bf025300 00000002 80f08d08 bf017480 00000000 80142df0
9e40:
00000000 80166ed8 80c27638 8045de58 bf352340 03ef1480 00b71b00 0f82e242
9e60:
bf025300 00000002 03ef1480 80f60e5c 00000001 8045edf0 00000002 8045eb08
9e80:
bf025300 00000002 03ef1480 8045ee10 03ef1480 8045eb08 bf01be40 00000002
9ea0:
03ef1480 8045ee10 07de2900 8045eb08 bf01b780 00000002 07de2900 8045ee10
9ec0:
80c27898 bf399ee4 bf020a80 00000002 1f78a400 8045ee10 80f60e5c 80460514
9ee0:
80f60e5c bf01b600 bf01b480 80460460 0f82e242 bf383a80 bf383a00 80f60e5c
9f00:
00000000 bf7c1dc0 80f60e70 80460564 80f60df0 80f60d24 80f60df0 8011e72c
9f20:
00000000 80f60df0 80f60e6c bf7c4f00 00000000 8011e7ac bf274000 8013bd84
9f40:
bf7c1dd8 80f03d00 bf274000 bf7c1dc0 bf274014 bf7c1dd8 80f03d00 bf398000
9f60:
00000008 8013bfb4 00000000 bf25d100 bf25d0c0 00000000 bf274000 8013bf88
9f80:
bf25d11c bf0cfebc 00000000 8014140c bf25d0c0 801412ec 00000000 00000000
9fa0:
00000000 00000000 00000000 801010e8 00000000 00000000 00000000 00000000
9fc0:
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
9fe0:
00000000 00000000 00000000 00000000 00000013 00000000 00000000 00000000
[<
806a893c>] (i2c_imx_set_clk) from [<
806a8a04>] (i2c_imx_clk_notifier_call+0x20/0x28)
[<
806a8a04>] (i2c_imx_clk_notifier_call) from [<
80142900>] (notifier_call_chain+0x44/0x84)
[<
80142900>] (notifier_call_chain) from [<
80142d84>] (__srcu_notifier_call_chain+0x44/0x98)
[<
80142d84>] (__srcu_notifier_call_chain) from [<
80142df0>] (srcu_notifier_call_chain+0x18/0x20)
[<
80142df0>] (srcu_notifier_call_chain) from [<
8045de58>] (__clk_notify+0x78/0xa4)
[<
8045de58>] (__clk_notify) from [<
8045edf0>] (__clk_recalc_rates+0x60/0xb4)
[<
8045edf0>] (__clk_recalc_rates) from [<
8045ee10>] (__clk_recalc_rates+0x80/0xb4)
Code:
e92d40f8 e5903298 e59072a0 e1530001 (
e5975008)
---[ end trace
fc7f5514b97b6cbb ]---
Fixes:
90ad2cbe88c2 ("i2c: imx: use clk notifier for rate changes")
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Dong Aisheng <aisheng.dong@nxp.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
Cc: stable@kernel.org
(cherry picked from commit
d386bb9042f4629bf62cdc5952ea8aab225f24a7)
Arulpandiyan Vadivel [Mon, 13 May 2019 12:11:24 +0000 (17:41 +0530)]
MLK-21758-7 ARM: dts: imx6qpdl: Remove all leading zeros in node names
Remove all leading zeros from imx6qpdl and dependent device tree files.
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
Signed-off-by: Shrikant Bobade <Shrikant_Bobade@mentor.com>
Arulpandiyan Vadivel [Mon, 13 May 2019 12:10:19 +0000 (17:40 +0530)]
MLK-21758-6 ARM: dts: imx6sl: Remove all leading zeros in node names
Remove all leading zeros from imx6sl and dependent device tree files.
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
Signed-off-by: Shrikant Bobade <Shrikant_Bobade@mentor.com>
Arulpandiyan Vadivel [Mon, 13 May 2019 12:09:00 +0000 (17:39 +0530)]
MLK-21758-5 ARM: dts: imx6sx: Remove all leading zeros in node names
Remove all leading zeros from imx6sx and dependent device tree files.
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
Signed-off-by: Shrikant Bobade <Shrikant_Bobade@mentor.com>
Arulpandiyan Vadivel [Mon, 13 May 2019 08:00:23 +0000 (13:30 +0530)]
MLK-21758-4 ARM: dts: imx6ul: Remove all leading zeros in node names
Remove all leading zeros from imx6ul and dependent device tree files.
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
Signed-off-by: Shrikant Bobade <Shrikant_Bobade@mentor.com>
Arulpandiyan Vadivel [Fri, 10 May 2019 09:55:41 +0000 (15:25 +0530)]
MLK-21758-3 ARM: dts: imx7: Remove all leading zeros in node names
Remove all leading zeros from imx7d/imx7s and dependent device tree files.
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
Signed-off-by: Shrikant Bobade <Shrikant_Bobade@mentor.com>
Arulpandiyan Vadivel [Tue, 30 Apr 2019 06:24:36 +0000 (11:54 +0530)]
MLK-21758-2 ARM: imx6/imx7: PM: Remove all leading zeros in node names
Remove all leading zeros from the power domain drivers to align with
device tree.
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
Signed-off-by: Shrikant Bobade <Shrikant_Bobade@mentor.com>
Arulpandiyan Vadivel [Mon, 29 Apr 2019 12:53:47 +0000 (18:23 +0530)]
MLK-21758-1 ARM: dts: imx6ull: Remove all leading zeros in node names
Remove all leading zeros from imx6ull and dependent device tree files.
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
Signed-off-by: Shrikant Bobade <Shrikant_Bobade@mentor.com>
Vipul Kumar [Thu, 16 May 2019 12:18:38 +0000 (17:48 +0530)]
MLK-21667: ARM: dts: imx6sx: Added lcdif display timings
This patch added lcdif display timings and removed DRM panel support.
Signed-off-by: Vipul Kumar <vipul_kumar@mentor.com>
Tested-by: Leonard Crestez <leonard.crestez@nxp.com>
Arulpandiyan Vadivel [Wed, 15 May 2019 15:27:10 +0000 (20:57 +0530)]
MLK-21518: ARM: dts: imx6qp-sdb: Added ipu nodes
Added ipu1 and ipu2 nodes to fix lvds display issue.
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
Signed-off-by: Shrikant Bobade <Shrikant_Bobade@mentor.com>
Anson Huang [Thu, 16 May 2019 06:48:40 +0000 (14:48 +0800)]
MLK-21749 clk: imx: remove CLK_SET_RATE_GATE for some APIs
Recent kernel's clock framework will prevent clock from changing
rate if its protect count is NOT 0, the protect count is increased
if a clock node with CLK_SET_RATE_GATE flag set when it is prepared.
And it will propagates up the clock tree and cause ahb rate change
failed when entering low bus mode.
This patch removes CLK_SET_RATE_GATE flag for imx_clk_divider2()
and imx_clk_gate4() which are for i.MX7D's CCM and also for i.MX8M
series SoCs, since we use target mode, the HW can guarantee no
glitch generated during clock divider/gate change, so no need to
have CLK_SET_RATE_GATE flag set.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
Reviewed-by: Leonard Crestez <leonard.crestez@nxp.com>
Shijie Qin [Thu, 16 May 2019 07:45:06 +0000 (15:45 +0800)]
MLK-21248 VPU Decoder: support adaptive playback in driver
--add a new v4l2 dec cmd
add a new v4l2 dec cmd support reconfig setting
#define IMX_V4L2_DEC_CMD_RESET (5)
extract independent function for send ABORT/STOP cmd
to firmware
Signed-off-by: Shijie Qin <shijie.qin@nxp.com>
Peng Fan [Thu, 16 May 2019 08:01:01 +0000 (16:01 +0800)]
MLK-21751 clk: imx8mm: fix int pll clk gate
To Frac pll, the gate shift is 13, however to Int PLL the gate shift
is 11.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Jacky Bai <ping.bai@nxp.com>
Leonard Crestez [Tue, 14 May 2019 17:48:36 +0000 (20:48 +0300)]
MLK-21699 arm64: dts: imx8mm Stop using GPC as interrupt-controller
We don't need to use GPC as interrupt controller on imx8mm, and with
recent ATF commit we no longer can. This brings imx_4.19.y in sync with
ATF commit
45d3f217b484 ("plat: imx8mm: remove the unnecessary gpc code")
The GPC code in ATF imx_2.0.y now ignores FSL_SIP_CONFIG_GPC_SET_WAKE
and instead just configures GPC_IMR based on GIC_ISENAB, like upstream
ATF.
Tested that uart irq wakeup can be selected by writing to
/sys/devices/platform/
30890000.serial/tty/ttymxc1/power/wakeup
In theory the GPC node could be kept in order to "describe hardware" but
on 8mm we currently handle power domains through SMC calls anyway.
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
Leonard Crestez [Wed, 15 May 2019 10:59:57 +0000 (13:59 +0300)]
MLK-21700-4 arm64: dts: imx8mm: Consolidate composite assigned-clocks
After consolidating 8mm composite clks we no longer have to list the mux
and div inside assigned-clocks separately for assigning rate and parent.
Separate change for easier review.
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Abel Vesa <abel.vesa@nxp.com>
Leonard Crestez [Fri, 3 May 2019 15:52:00 +0000 (18:52 +0300)]
MLK-21700-3 imx8mm: Switch to imx8m_clk_composite
This is a large change but realigns us with upstream is useful and make
git diff useful.
This was already done on imx8mq after that SOC was upstreamed.
Mixing dts and driver changes is intentional because changes only
compile together.
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Abel Vesa <abel.vesa@nxp.com>
Leonard Crestez [Fri, 3 May 2019 15:51:25 +0000 (18:51 +0300)]
MLK-21700-2 clk: imx8mm: Move imx8mm_clko1_sels higher like upstream
No functional changes
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Abel Vesa <abel.vesa@nxp.com>
Leonard Crestez [Fri, 3 May 2019 15:47:01 +0000 (18:47 +0300)]
MLK-21700-1 clk: imx8mm: Rename int_pll to pll14xx for upstream alignment
Only cosmetic changes in this patch
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Abel Vesa <abel.vesa@nxp.com>
Richard Zhu [Tue, 30 Oct 2018 07:20:50 +0000 (15:20 +0800)]
MLK-20125 ata: imx: add one ext_osc parameter for imx8qm ahci
Add one parameter to distinguish the different ref_clk
source, internal pll or the external osc.
NOTE: The value of the ext_osc should be aligned to the one
of the pcie's, since both of them share one ref_clk source.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Richard Zhu [Tue, 14 May 2019 08:28:15 +0000 (16:28 +0800)]
MLK-15064-2 ARM64: DMA: limit the dma mask to be 32bit
Limit the dma mask to be 32bit, because that
the imx8 doesn't have the 64bit dma capapbility
although it is 64bit soc.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Reviewed-by: Frank Li <frank.li@nxp.com>
Ranjani Vaidyanathan [Thu, 9 May 2019 21:10:39 +0000 (16:10 -0500)]
MLK-21690 clk: imx8qm/imx8qxp: Store clock rate in SCU clock driver
Linux clock framework does not work correctly when the SCFW API returns
the rate of the clock based on the HW power mode (LP vs ON).
This causes issues in two ways:
1. Linux clock framework always calls clk_recalc() after set_rate() as
a mechanism to get the actual rate set by the HW. This does not work on
iMX8QM/iMX8QXP when the resource is in LP mode, as clocks are sourced
from 24MHz when resource is in LP mode.
2. On iMX8QM/iMX8QXP multiple resources share the same power domain.
As resources enter runtime idle, the iMXQM/QXP power domain driver in
Linux sets the resources in LP mode which can result in the entire power
domain entering LP mode. If a clock get_rate()/recalc_rate() is executed
as part of probing a new driver, the rate returned by SCFW API will not
match the rate requested by the driver.
To fix the above two problems, store the clock rate in SCU driver and
return the stored clock rate if the resource is in LP mode.
Signed-off-by: Ranjani Vaidyanathan <ranjani.vaidyanathan@nxp.com>
ming_qian [Tue, 14 May 2019 08:21:02 +0000 (16:21 +0800)]
MLK-21693: VPU Decoder: don't steal any frame buffer when abort stream
Now driver may steal 3 frame buffers when abort.
It's a high risk behavior. And it has caused some bug.
But in firmware, there is no concept of stealing buffers.
So it is possible that driver don't steal any frame buffer
when abort stream
Signed-off-by: ming_qian <ming.qian@nxp.com>
Joakim Zhang [Tue, 7 May 2019 05:11:14 +0000 (13:11 +0800)]
MLK-21289 perf: ddr-perf: calculate ddr bandwidth via virtual event read-bytes/write-bytes
We can calculate ddr bandwidth via virtual event read-bytes/write-bytes based
on ddr burst width, which actually share event read-cycles/write-cycles. Burst
width is 32bit on i.MX8 board till now.
The ddr interface will generate 2 up edges and 2 down edges in an internal
clock cycle, so it can pass 4 beats of data. 4 bytes of each beat if ddr
burst width is 32 bit.
Cmd bellow:
perf stat -a -e ddr0/read-bytes/ ls
perf stat -a -e ddr0/write-bytes/ ls
Signed-off-by: Joakim Zhang <qiangqing.zhang@nxp.com>
Joakim Zhang [Wed, 13 Mar 2019 06:56:56 +0000 (14:56 +0800)]
MLK-21137 perf: ddr-perf: correct the range of the For loop
The variable "total_event" should be 4 when we open 4 perf event, then
active_events[4] will out of range.
Acked-by: Fugang Duan <fugang.duan@nxp.com>
Signed-off-by: Joakim Zhang <qiangqing.zhang@nxp.com>
Arulpandiyan Vadivel [Thu, 9 May 2019 12:17:36 +0000 (17:47 +0530)]
MLK-21603 rpmsg: imx_rpmsg: Fix to stop autoload modules
This change stops autoloading imx_rpmsg_tty and imx_rpmsg_pingpong
modules, as it is only meant for testing / demo purposes.
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
Reviewed-by: Leonard Crestez <leonard.crestez@nxp.com>
Leonard Crestez [Thu, 2 May 2019 14:00:07 +0000 (17:00 +0300)]
MLK-21528-3 arm64: dts: imx8: Remove leading 0x from unit names
This fixes dtc warnings when building at W=1
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Acked-by: Dong Aisheng <aisheng.dong@nxp.com>
Leonard Crestez [Thu, 2 May 2019 16:51:40 +0000 (19:51 +0300)]
MLK-21528-2 arm64: dts: imx8: Fix dpu DT warnings at W=1
Add reg and address/size-cells where appropriate
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Acked-by: Liu Ying <victor.liu@nxp.com>
Leonard Crestez [Thu, 2 May 2019 10:24:24 +0000 (13:24 +0300)]
MLK-21528-1 arm64: dts: fsl-imx8qm-mek-domu-car: Fix endpoint name warning
Rename to endpoint@0 and endpoint@1 to fix default DT warning.
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Acked-by: Liu Ying <victor.liu@nxp.com>
Leonard Crestez [Wed, 8 May 2019 22:19:04 +0000 (01:19 +0300)]
MLK-21682-4 arm64: dts: imx8m: Remove domain-id from gpc-psci
We can rely on the reg property instead and be more compliant with DT
rules.
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Acked-by: Jacky Bai <ping.bai@nxp.com>
Leonard Crestez [Wed, 8 May 2019 22:16:37 +0000 (01:16 +0300)]
MLK-21682-3 soc: imx: gpc-psci: Use reg property instead of domain-id
We can use the standard DT "reg" property instead of defining our
own "domain-id"
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Acked-by: Jacky Bai <ping.bai@nxp.com>
Leonard Crestez [Thu, 2 May 2019 13:58:34 +0000 (16:58 +0300)]
MLK-21682-2 arm64: dts: imx8mq: Fix DT warnings from power domains
Move under a power-domains node, add reg properties and rename
everything to power-domain@X
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Acked-by: Jacky Bai <ping.bai@nxp.com>
Leonard Crestez [Thu, 2 May 2019 13:57:40 +0000 (16:57 +0300)]
MLK-21682-1 arm64: dts: imx8mm: Add reg properties to power-domain nodes
This fixes DT warnings at W=1
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Acked-by: Jacky Bai <ping.bai@nxp.com>
Xianzhong [Wed, 8 May 2019 15:27:20 +0000 (23:27 +0800)]
MGS-4796 [#imx-1263] fix false hang for device cooling
GPU frequency will be set as 1/64 of original clock,
update timeout with freq-scaler to avoid false hang.
Signed-off-by: Xianzhong <xianzhong.li@nxp.com>
Iuliana Prodan [Thu, 9 May 2019 12:20:50 +0000 (15:20 +0300)]
crypto: caam - fix pkcs1pad(rsa-caam, sha256) failure because of invalid input
The problem is with the input data size sent to CAAM for encrypt/decrypt.
Pkcs1pad is failing due to pkcs1 padding done in SW starting with0x01
instead of 0x00 0x01.
CAAM expects an input of modulus size. For this we strip the leading
zeros in case the size is more than modulus or pad the input with zeros
until the modulus size is reached.
Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
Robby Cai [Thu, 9 May 2019 13:50:58 +0000 (21:50 +0800)]
MLK-21687 media: camera: ov5640: add device tree support
add ov5640 (parallel and mipi interface) device tree support to help load module
at booting time when it's compiled as module.
Signed-off-by: Robby Cai <robby.cai@nxp.com>
Reviewed-by: Guoniu.Zhou <guoniu.zhou@nxp.com>
ming_qian [Fri, 10 May 2019 01:12:26 +0000 (09:12 +0800)]
MMFMWK-8489: VPU Decoder: make sure the output timestamp is increasing
If there are some repetitive timestamp,
the output timestamp may be not increasing.
In such case, the gstreamer avsync will not work.
So keep the output timestamp increasing will fix it.
Signed-off-by: ming_qian <ming.qian@nxp.com>
Liu Ying [Tue, 7 May 2019 03:02:18 +0000 (11:02 +0800)]
MLK-21656-2 drm/imx: dpu: crtc: Tune enablement sequence to correctly switch Tcon mode
As suggested by the design team, there is rigorous timing requirement
to address TKT320590, that is, we need to turn Tcon(s) from bypass mode
into operation mode as soon as the first dumb frame is generated by DPU.
When dual stream is used, we should look at the first dumb frame generated
by the master FrameGen. If we cannot ensure the timing requirement, say
the Tcon mode switching takes place after the second frame is generated
by DPU, the hardware could run into malfunction sometimes. Based on
stress tests, the content shadow load done event for the first time we call
->atomic_flush() may not come after the CRTC enablement in the single
stream case and it looks like display data is not generated to the
down-stream encoder(hence, black screen). This patch tunes enablement
sequence to correctly switch Tcon mode, according to the design team's
suggestions. During the switching, we don't relinquish CPU to ensure the
sequence is straightforward to meet the timing requirement. As we cannot
sleep during the switching, we take the pixel link enablement/disablement
operations(wrapped by a mutex in RPC call) out of framegen_enable/disable()
functions and put them at appropriate place. This introduces additional
sequence modifications but should be safe.
Signed-off-by: Liu Ying <victor.liu@nxp.com>
Liu Ying [Tue, 7 May 2019 02:35:55 +0000 (10:35 +0800)]
MLK-21656-1 gpu: imx: dpu: Access regs in display engine units wo holding mutex
We don't need holding mutex when accessing registers in display engine
units, because KMS is the only relevant client driver and it has ww mutex
mechansim to ensure there is no race condition on the CRTC resources.
Also, we are naturally safe when the driver initializes the units at the
probe and system power management stages.
Signed-off-by: Liu Ying <victor.liu@nxp.com>
Shijie Qin [Thu, 9 May 2019 10:23:16 +0000 (18:23 +0800)]
MLK-21684 VPU Decoder: add new v4l2_g_ctrl to supply
color aspect info
#define V4L2_CID_USER_FRAME_COLORDESC (V4L2_CID_USER_BASE + 0x1104)
#define V4L2_CID_USER_FRAME_TRANSFERCHARS (V4L2_CID_USER_BASE + 0x1105)
#define V4L2_CID_USER_FRAME_MATRIXCOEFFS (V4L2_CID_USER_BASE + 0x1106)
#define V4L2_CID_USER_FRAME_FULLRANGE (V4L2_CID_USER_BASE + 0x1107)
#define V4L2_CID_USER_FRAME_VUIPRESENT (V4L2_CID_USER_BASE + 0x1108)
refine code of v4l2 contrl function
Signed-off-by: Shijie Qin <shijie.qin@nxp.com>
Shengjiu Wang [Thu, 9 May 2019 10:37:52 +0000 (18:37 +0800)]
MLK-21480: ASoC: wm8962: add constrain for configure bclk
There is error log when suspend & resume
wm8962 3-001a: Failed to read DSPCLK: -1
when suspend the pm_runtime_suspend is called before the
set_bias_level. so in the wm8962_configure_bclk there is
failure when trying to read a volatile register for we have
enabled regcache_cache_only.
To avoid such issue, we can avoid to call set_bias_level
when the level change from SND_SOC_BIAS_ON to
SND_SOC_BIAS_PREPARE, for this flow is for disabling the codec.
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Xianzhong [Thu, 9 May 2019 14:36:14 +0000 (22:36 +0800)]
MGS-4735 [#imx-1439] fix gpu suspend/resume stuck
L4.19 SCFW introduced LP mode, clk_set requires power-on,
fixed GPU govern to conform with the latest SCFW change.
remove redundant clk_set_rate in probe to fix LP clock.
Signed-off-by: Xianzhong <xianzhong.li@nxp.com>
Shengjiu Wang [Wed, 6 Dec 2017 02:48:20 +0000 (10:48 +0800)]
MLK-17089-6: ASoC: wm8962: support suspend & resume for imx8
Base on latest power management design in MLK-17074, every driver
need to enter runtime suspend state in suspend, so the driver should
call the pm_runtime_force_suspend in suspend.
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
(cherry picked from commit
b1003fc0341910b3e5fc94e5e04bed9ecfdb786d)