- Apr 17, 2019
-
-
Mirela Rabulea authored
Do a soft reset before job run. Encoder now runs succesivelly without crash or stuck, but outputs 0. Signed-off-by:
Mirela Rabulea <mirela.rabulea@nxp.com>
-
Mirela Rabulea authored
Fixed decoder crasher by creating a structure to encompass the descriptors and associated it to the jpeg device, one for each slot. Removed mxc_jpeg_buf, as writing to its fields was causing memory corruption sometimes (depending on how src_buf & dst_buf got allocated, writing to one was overwriting the other). For now, only slot 0 is used (no regression here, just a TODO). Note that the decoded image looks ok only on QXP B0, not A0. The decoder_test application will be patched in linux-test, the old one should work too, but needed cleanup. Signed-off-by:
Mirela Rabulea <mirela.rabulea@nxp.com> Reviewed-by:
Laurentiu Palcu <laurentiu.palcu@nxp.com>
-
Mirela Rabulea authored
Fix proposed by Bing Song. Signed-off-by:
Mirela Rabulea <mirela.rabulea@nxp.com>
-
Mirela Rabulea authored
Image information can be extracted from the JPEG SOH marker: image format (YUV444/YUV420/YUV422/Gray), width & height, precision. Use that information and apply it to the JPEG-DEC_WRP control registers. Also fixed the decoder for non-square images. Replace pr_*() and printk() calls with dev_*(). Currently working image formats: YUV444, YUV422, Gray Not working formats: YUV420 Signed-off-by:
Mirela Rabulea <mirela.rabulea@nxp.com> Reviewed-by:
Robert Chiras <robert.chiras@nxp.com>, Sandor Yu <sandor.yu@nxp.com>
-
Frank Li authored
Support run time pm Signed-off-by:
Frank Li <Frank.Li@nxp.com> Acked-by:
Sandor Yu <sandor.yu@nxp.com>
-
Jason Liu authored
The patch fixes the following build warnnings by removing unused function: drivers/media/platform/imx8/mxc-jpeg.c:228:13: warning: ‘print_output’ defined but not used [-Wunused-function] static void print_output(void *addr) ^~~~~~~~~~~~ This patch also does the minor clean up by removing some commented-out code Signed-off-by:
Jason Liu <jason.hui.liu@nxp.com> Acked-by:
Fugang Duan <fugang.duan@nxp.com>
-
Frank Li authored
Signed-off-by:
Frank Li <Frank.Li@nxp.com> Acked-by:
Sandor Yu <sandor.yu@nxp.com>
-
Frank Li authored
move dma_free_coherence function to buf_cleanup Signed-off-by:
Frank Li <Frank.Li@nxp.com> Acked-by:
Sandor Yu <sandor.yu@nxp.com>
-
Zhengyu Shen authored
mxc-jpeg driver creates two v4l2 file handles in /dev/ which allows them to be used by v4l2 programs. Supports encode and decode of various formats. Note: Output data is not correct but matches validation result because IP Bug TKT340836 v2: Split patches, added copyright Signed-off-by:
Zhengyu Shen <zhengyu.shen_1@nxp.com> Reviewed-by:
Sandor Yu <sandor.yu@nxp.com>
-
Iuliana Prodan authored
Because MLK21112 was resolved, now CAAM can be enabled in defconfig. Also enable CAAM SECVIO driver. Signed-off-by:
Iuliana Prodan <iuliana.prodan@nxp.com> Reviewed-by:
Horia Geanta <horia.geanta@nxp.com>
-
Iuliana Prodan authored
Modify setkey callback for cbc des and 3des to check for weak keys. Signed-off-by:
Iuliana Prodan <iuliana.prodan@nxp.com> Reviewed-by:
Horia Geantă <horia.geanta@nxp.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au> (cherry picked from commit cf64e495) Reviewed-by:
Horia Geanta <horia.geanta@nxp.com>
-
Iuliana Prodan authored
Add ecb mode support for aes, des, 3des and arc4 ciphers. ecb(*) reuses existing skcipher implementation, updating it with support for no IV. Signed-off-by:
Iuliana Prodan <iuliana.prodan@nxp.com> Reviewed-by:
Horia Geantă <horia.geanta@nxp.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au> (cherry picked from commit eaed71a4) Kept the BSP compatibility by using the ablkcipher API instead of the upstream skcipher API. Signed-off-by:
Iuliana Prodan <iuliana.prodan@nxp.com> Reviewed-by:
Horia Geanta <horia.geanta@nxp.com>
-
Iuliana Prodan authored
Some arc4 cipher algorithm defines show up in two places: crypto/arc4.c and drivers/crypto/bcm/cipher.h. Let's export them in a common header and update their users. Signed-off-by:
Iuliana Prodan <iuliana.prodan@nxp.com> Reviewed-by:
Horia Geantă <horia.geanta@nxp.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au> (cherry picked from commit bd30cf53) Reviewed-by:
Horia Geanta <horia.geanta@nxp.com>
-
Iuliana Prodan authored
The mapped_{src,dst}_nents _returned_ from the dma_map_sg call (which could be less than src/dst_nents) have to be used to generate the aead, skcipher job descriptors. Signed-off-by:
Iuliana Prodan <iuliana.prodan@nxp.com> Reviewed-by:
Horia Geantă <horia.geanta@nxp.com> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au> (cherry picked from commit ba4cf71b) Reviewed-by:
Horia Geanta <horia.geanta@nxp.com>
-
Iuliana Prodan authored
This reverts commits: 825831cf1292 ("MLK-19365: drivers: crypto: caamalg: ecb(aes) does not use IV") 84f5e221 ("MA-9807: Fix ecb(aes) use without an IV") fbaedad3 ("MLK-14611 Add DES key complexity validation") 618df7f4 ("MLK-9769-19 Add ARC4-ECB support for CAAM in i.MX6 family") 70b88340 ("MLK-9769-18 Add 3DES-ECB-EDE support for CAAM in i.MX6 family") 10c402ef ("MLK-9769-17 Add AES-ECB support for CAAM in i.MX6 family") 10736b15 ("MLK-9769-16 Add DES-ECB support for CAAM in i.MX6 family") Signed-off-by:
Iuliana Prodan <iuliana.prodan@nxp.com> Reviewed-by:
Horia Geanta <horia.geanta@nxp.com>
-
Franck LENORMAND authored
When creating the job descriptor, it uses the size of the structure which is composed of dma_addr_t. On IMX8, this structrue is 64bit like the DMA however the CAAM only receives 32 bit addresses. It result in a job descriptor and more precisely the start index to point to invalid location when it should point to the "command operation". This patch changes the dma_addr_t to caam_dma_addr_t which is the correct one for the rsa_priv_f2_pdb and rsa_priv_f3_pdb types as rsa_pub_pdb and rsa_priv_f1_pdb already had this change. Signed-off-by:
Franck LENORMAND <franck.lenormand@nxp.com> Reviewed-by:
Horia Geanta <horia.geanta@nxp.com>
-
Horia Geantă authored
Commit 335ae6c8 ("MLK-18082: crypto: caam: Minimal fix for QX panic") has not been ported completely, add missing bits. Fixes: ebc02cc3be42 ("MLK-18082: crypto: caam: Minimal fix for QX panic") Signed-off-by:
Horia Geantă <horia.geanta@nxp.com>
-
Viorel Suman authored
Remove redundant includes keeping the code as close as possible to upstream version. Fixes commit 6d8b9d13605c ("MLK-19118-3: ASoC: AK5558: add regulators for ak5558") Signed-off-by:
Viorel Suman <viorel.suman@nxp.com>
-
Viorel Suman authored
Fix various issues keeping the code as close as possible to upstream version. Signed-off-by:
Viorel Suman <viorel.suman@nxp.com>
-
Viorel Suman authored
Fixes commit 1996407879b8 ("MLK-15033: ASoC: codecs: Add TDM support for AK4458") Signed-off-by:
Viorel Suman <viorel.suman@nxp.com>
-
Viorel Suman authored
Fixes commit 21e81dfed90c ("MLK-19573-2: ASoC: ak4458: enable DSD playback") Signed-off-by:
Viorel Suman <viorel.suman@nxp.com>
-
Shengjiu Wang authored
The channel num (9 - 15) should not be supported in tdm & daisy chain mode for there is two dataline, this channel number can't be symmetrically distributed on two dataline (the first one is fixed to be 8 channel) Fixes commit 8d298743 ("MLK-17817-2: ASoC: imx-ak4458: enable 16 channels in TDM mode") Signed-off-by:
Shengjiu Wang <shengjiu.wang@nxp.com> (cherry picked from commit 0bc47b31)
-
Fancy Fang authored
If enable CONFIG_DYNAMIC_DEBUG, below maybe-uninitialized build warnings happen: " In file included from ./include/linux/printk.h:336:0, from ./include/linux/kernel.h:14, from ./include/linux/unaligned/access_ok.h:5, from ./include/asm-generic/unaligned.h:13, from ./arch/arm64/include/generated/asm/unaligned.h:1, from drivers/gpu/drm/bridge/sec-dsim.c:17: drivers/gpu/drm/bridge/sec-dsim.c: In function ‘sec_mipi_dsim_calc_pmsk’: ./include/linux/dynamic_debug.h:135:3: warning: ‘best_s’ may be used uninitialized in this function [-Wmaybe-uninitialized] __dynamic_dev_dbg(&descriptor, dev, fmt, \ ^ drivers/gpu/drm/bridge/sec-dsim.c:1149:27: note: ‘best_s’ was declared here uint32_t best_p, best_m, best_s; ^ In file included from ./include/linux/printk.h:336:0, from ./include/linux/kernel.h:14, from ./include/linux/unaligned/access_ok.h:5, from ./include/asm-generic/unaligned.h:13, from ./arch/arm64/include/generated/asm/unaligned.h:1, from drivers/gpu/drm/bridge/sec-dsim.c:17: ./include/linux/dynamic_debug.h:135:3: warning: ‘best_m’ may be used uninitialized in this function [-Wmaybe-uninitialized] __dynamic_dev_dbg(&descriptor, dev, fmt, \ ^ drivers/gpu/drm/bridge/sec-dsim.c:1149:19: note: ‘best_m’ was declared here uint32_t best_p, best_m, best_s; ^ In file included from ./include/linux/printk.h:336:0, from ./include/linux/kernel.h:14, from ./include/linux/unaligned/access_ok.h:5, from ./include/asm-generic/unaligned.h:13, from ./arch/arm64/include/generated/asm/unaligned.h:1, from drivers/gpu/drm/bridge/sec-dsim.c:17: ./include/linux/dynamic_debug.h:135:3: warning: ‘best_p’ may be used uninitialized in this function [-Wmaybe-uninitialized] __dynamic_dev_dbg(&descriptor, dev, fmt, \ ^ drivers/gpu/drm/bridge/sec-dsim.c:1149:11: note: ‘best_p’ was declared here uint32_t best_p, best_m, best_s; ^ " Although this is a spurious warning according to the code logic, it is better to give 'best_p', 'best_m' and 'best_s' initial values to suppress the warnings. Reported-by:
Peter Chen <peter.chen@nxp.com> Signed-off-by:
Fancy Fang <chen.fang@nxp.com>
-
Liu Ying authored
This patch builds in some drivers to support i.MX8qm/qxp DPU KMS via IT6263 LVDS to HDMI transmitter. Signed-off-by:
Liu Ying <victor.liu@nxp.com>
-
Liu Ying authored
Add "fsl,imx7ulp-lpi2c" to the compatible strings, as the i2c driver has only got the compatible string for imx7ulp. Signed-off-by:
Liu Ying <victor.liu@nxp.com>
-
Liu Ying authored
Replace "fsl,imx8qm-lpi2c" with "fsl,imx7ulp-lpi2c", as the i2c driver has only got the compatible string for imx7ulp. Signed-off-by:
Liu Ying <victor.liu@nxp.com>
-
Clark Wang authored
For some chips may need long time to get the response from M4 sometimes, enlarge timeout to 500ms. Add a judgement to check if the received data is the current transfer wanted. Signed-off-by:
Clark Wang <xiaoning.wang@nxp.com> (cherry picked from commit 222e201b)
-
Clark Wang authored
I2c_lock_bus function in i2c-core-base will not stop the transfer to different devices on different buses at the same time. Since the multiple rpmsg i2c buses share one rpmsg channel, so it has to add mutex to protect rpmsg resource accessing. Signed-off-by:
Clark Wang <xiaoning.wang@nxp.com> (cherry picked from commit d592afe9)
-
Peng Fan authored
The alias ID must be defined in device tree, because that will be used as BUS ID to Cortex M4. If the alias ID not defined, linux kernel will automatically allocate one ID which might not be the same number used in Cortex M4 and Cortex M4 will not send msg to I2C controller. So let's add BUG_ON to catch issue as earlier as possible to avoid wasting efforts. Signed-off-by:
Peng Fan <peng.fan@nxp.com> Reviewed-by:
Clark Wang <xiaoning.wang@nxp.com> (cherry picked from commit b9ff2035)
-
Clark Wang authored
Add virtual i2c driver to send SRTM i2c messages to M4. Each virtual I2C bus has a specal bus id, which is abstracted by M4. Each SRTM message include a bus id for the bus which the device is on. Virtual i2c rpmsg bus will bind rpbus nodes with compatible string "fsl,i2c-rpbus". And "rpmsg-i2c-channel" will probe only one rpmsg channel for all rpbuses. This virtual i2c driver depends on CONFIG_I2C and CONFIG_RPMSG. Signed-off-by:
Clark Wang <xiaoning.wang@nxp.com> (cherry picked from commit 9feeac93)
-
Liu Ying authored
It is only used in this file, so staticize it. Signed-off-by:
Liu Ying <victor.liu@nxp.com> (cherry picked from commit e293f867)
-
Liu Ying authored
Unstable/low quality input video signal is likely to cause the transmitter to fail to wait for input video stable, and thus, no HDMI/DVI video output. It turns out resetting LVDS part logics may help prevent the issue from happening. Cc: Sandor Yu <Sandor.yu@nxp.com> Cc: Jason Liu <jason.hui.liu@nxp.com> Signed-off-by:
Liu Ying <victor.liu@nxp.com> (cherry picked from commit 5d09098e)
-
Liu Ying authored
The it6263 bridge contains two I2C devices on the same I2C bus to control HDMI and LVDS modules respectively. However, they have different I2C addresses. Thus, one of the two devices should be registered as dummy device and bound with dummy driver. This is what the helper i2c_new_dummy() is designed for. The HDMI I2C device is normally registered as a real I2C device and bound with a real driver, so the LVDS I2C device should be dummy. This patch fixes the issue to access the LVDS I2C device's sys nodes, like /sys/kernel/debug/regmap/2-0033/name. Signed-off-by:
Liu Ying <victor.liu@nxp.com> (cherry picked from commit f6b31315)
-
Liu Ying authored
It turns out the following display modes are not well supported by the bridge - 1600x900@60, 1280x1024@60, 1280x720@30/25/24 and 1152x864@75. Fortunately, they are not that widely used. So, list them as the known bad display modes and filter them out in ->mode_valid(). Signed-off-by:
Liu Ying <victor.liu@nxp.com> (cherry picked from commit c44ed03cf3b85d7f5bc8325ffeec9fd07f66aa87) (cherry picked from commit 20e29dd9)
-
Leonard Crestez authored
There are some issues with the HDMI connection on it6263 being slow to come up. There is a hack there which reads the register multiple times but it doesn't seem to be sufficient. This is particularly a problem when inside a xen guest. Improve this workaround by reading the status multiple times every few 5-10ms and returning connector_status_connected if any of those reads sees HPDETECT. Signed-off-by:
Leonard Crestez <leonard.crestez@nxp.com> Signed-off-by:
Peng Fan <peng.fan@nxp.com> (cherry picked from commit 699ccad2)
-
Robert Chiras authored
When CONFIG_OF_DYNAMIC is used, and this driver is enabled in devicetree, but fails to probe a physical i2c client, it should disable it's remote endpoint, so that the DRM master device won't fail to bind the other available devices. Usually, the remote endpoint of this device is a DRM encoder. If a DRM encoder fails to bind, the DRM master device will also fail to bind. This is why, we should disable the encoder node dynamically in devicetree. Signed-off-by:
Robert Chiras <robert.chiras@nxp.com> Reviewed-by:
Laurentiu Palcu <laurentiu.palcu@nxp.com> (cherry picked from commit de618474)
-
Oliver Brown authored
This addresses a problem with colors that are sometimes incorrect after startup. Now the AVI packet is initialized with RGB color space rather than relying on the default. Signed-off-by:
Oliver Brown <oliver.brown@nxp.com> (cherry picked from commit c1f73434)
-
Liu Ying authored
We call the helper drm_detect_hdmi_monitor() to check if the EDID blob read from a monitor indicates the monitor is connected via HDMI or not. We pass an edid structure to the helper. However, the structure has been freed before we use it. This patch moves the helper up before the structure is freed to fix the issue. Fixes: a5c01aa91842 ("MLK-15001-25 drm/bridge: Add ITE IT6263 LVDS to HDMI transmitter support") Signed-off-by:
Liu Ying <victor.liu@nxp.com> (cherry picked from commit 3522359b)
-
Liu Ying authored
There is cable detection failure issue on i.MX8qxp MEK platform at boot time when we use single LVDS to HDMI display. The workaround is to read the cable detection status for even more times. Based on experiments, it looks reading for 90 times works. Signed-off-by:
Liu Ying <victor.liu@nxp.com> (cherry picked from commit 5ac4dfb7)
-
Liu Ying authored
A low pulse whose width is at least 40ms on pin SYSRSTN may reset the bridge, according to the chip maker. This patch adds gpio reset support for the bridge. Signed-off-by:
Liu Ying <victor.liu@nxp.com> (cherry picked from commit 2e120abc)
-