Commit Graph

888625 Commits

Author SHA1 Message Date
Andrey Zhizhikin
d33cc86dff This is the 5.4.75 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAl+j2NoACgkQONu9yGCS
 aT5J8RAAnGBQDsYW32cIwCnEMAAzderx88BD1LWUh3VUzYkUkR/BZVzfR9oBCNNo
 3JnCXiJGAmxQqNmM4U4oll1qtDKSnkEL0d3x0dzoPU0jAK2DneZZeUceGXrCsACD
 07UmEJ+pg8YwHIDWjPl/XzsOFNDZGIri2ioW5sw0UMg5oSgei+pJsnr999198KoI
 3xae/qnkBgWhD2pghHQKHHXJnQTe9+JD+g+cMEWFK36Uxgpc2bpPeZtEaQBRaZZY
 CdPPwWuzWY6fBPOYCvrYHG86oPGuR3n03AM0nXWwRPkK2fAxsodr6UpZhQ+tjxJD
 gHGsQH1PrgH+wmiAgyaASdl+kvP0B2sRykeLcGLHT1t9Z3OGU3Jo0hxW6pGb85Da
 loF+OzhrI7Jlpk9XBJq81GdDGyNvco43gLGID2gTrNpLQ/WMW0slrCYE1WvLQ0ZQ
 3u9iUXd3X330W7cZTQgap03MNFrvruwdHnQL6uO73TKCofX15QWX86Vn16GLLlna
 etA2le4GSm0yTC9G4Z5YnAIUZdvcrT6iYbmsQ/NoGhu4aJSiQe5O9j+Tb9LoCZYs
 V2fYpUYUCsWoq+6KsPHKM0wOAHQkxkCPWDjIrqzWwrRBLfjytVEnc6JQS/ZIdap6
 GejH8CeiAnvOpD5MyVGCCih+7slQadG//+z3h7WNugZkVGqFDWc=
 =2fiZ
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEdQaENiSDAlGTDEbB7G51OISzHs0FAl/8KR8ACgkQ7G51OISz
 Hs0Ueg//TTuawsdwer5cqGx5XnKNVnmU8TJRERi+wdK1LhjW3YK/4oSXKr+Pmf8m
 hS8xhbd2VXn68h3hEiWJCjJ6V+Jq4BOu/sCXzLu0nxroJlX02Bxe7kjIzkwI5NNS
 dp3c5Qe3PdfQU7JKSA9ZRJdaaaLUyuqw39niFp0YB6tLPp7Hd4eiylJXoGCrNvUP
 5eOrcnrXfKdXszG5TYoerzoZoLf3Z6pn5r2jD+WVOzM1SwrzOVBGvm/yFL/wcVJW
 n35dJS7aOV/PwmtMb7ZqWh5pGbJrRUu+pIn4DhiKt9WLlcSqvUYmBkG7/tsxyLwh
 NKds+j9aQ+kjN3pfMDOOU5fNswrfxp69fQkDuSJhOb73wlCkHuM2tmfkq0IlTO77
 mUJEiA+xkCDeHEib3MiYjsNh2Hg3fnq4U7kjJCmdkgXZ8p/IFS/k7effQgLJASK3
 1wQSBDa8vkWP6hzQYaB2C2Pvn6dtOSzRKo1rW7kFF7mkuOjGnApz33hai0gg9so4
 Mg8/xKLgcPlLCZBO/F53gm+Q32HxC413SORGh8sidqFWgySh9dxwVodXHyRfzMD+
 YHwnL2ttr7QafB5OTGACd/JqvuNgNpfTdk0EP7gbrOhb6RgjDMui2NKs0hkQc2Ca
 cKe98ZygamKcQYJ36OxuJcFy5Pkpy3xkMFdaSaOmTYqztTMNGoc=
 =B10D
 -----END PGP SIGNATURE-----

Merge tag 'v5.4.75' into 5.4-2.3.x-imx

This is the 5.4.75 stable release

Conflicts:
- drivers/i2c/busses/i2c-imx.c:
Drop NXP changes, which are covered by commit [2c58d5e0c7] from
upstream.

- drivers/net/can/flexcan.c:
Keep NXP implementation, patch [ca10989632] from upstream is
covered in the NXP tree.

- drivers/usb/host/xhci.h:
Fix merge fuzz for upstream commit [2600a131e1].

Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
2021-01-11 10:31:15 +00:00
Andrey Zhizhikin
3b4072dd51 This is the 5.4.74 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAl+elYEACgkQONu9yGCS
 aT4DfQ/+OoCvKzPm/gxmJejGNUvagBhMLXxNw62jvmLwHnagWNchXMQEoplmwpIz
 D3FeSnH6VjBj8QfXCzxZJVazuPNaiSfxrwvaboakvVnvJw66rC0LgiXUJ5MuMhmr
 YVBJ9YfA73Lpv96ySrXWdqEO6QIMgYnlR95Ep+33IBUb5x2QuQB+8ho+qQ3h6I4r
 uoVAzFLaliCpRF/Hz9pwjZjSo3zDbyYx29XVFXYkrHn8cJWE6oBZtNo+K1cyY3wH
 dNY9CXPRh4oC5G+w579m5GvnW5Ac5hTHKONNURCu9NgsEJgHfpuXXiK+ve1yS7xa
 LFj1qFuYW90scgvmcx/YSKIWkNdCGCsqLlp3OJwVDm573touy6NZOag5GW2S35iD
 GcPRvJjWHay8NJSwKteKN9YH92xBxaSWJalrIQcY4Q4VAgJpXizIxZskGieWRdYv
 2XrSAOyXfSPP3nEsRXANEC2RY38Vp6zQt5G4a5duvztNU8knRjuQijMU7vvUbjvU
 V7D+kpamoqSiEkKmPYi3ViH80BkBNaxVrh54AMW9BQiFxUum5X/8sD7PDnKg+p8R
 tPPFsFHKAyVSQQe/7VlAfDq1D9xCfgfzA4TiMYqseyBBFs4UZ1dkLBQTL7Xza9ma
 H4NrA6SQibzYXH5F8OPWFqLPye1hmzAvojhskLk6ijeCw+koLk4=
 =zfx+
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEdQaENiSDAlGTDEbB7G51OISzHs0FAl/8I+oACgkQ7G51OISz
 Hs0wwQ//TfFLCDI74fXraTgX8Uhcv4jelk05KVXA1cXTA4LJvoRHpDmEXXVg3dr0
 jZBpyyCO9GQZ3jJibY5hC112rttvSTCVky/Drefs9O0t5Z8VUdrYVtZ+GxBZGt2d
 ciooMYHh7aQmMoThyVqSd3rYC8KXNTwRSaAQblJqY0JnBChLjgEgIEXuJi1HJthG
 1tUy+sOI8DOs4mSDV+SFx9heC2qd0cFW2b3tnQwvT4FQ/dbEPXoi5ORkdLbrMU5Z
 iiT67i26FamT0uzGKH/RyRjpLndTF9p84IAJ/i0Qs9mnrA9/ldJKNxlGjN8Yxm+v
 k4pDBCgi1bBdPUc8ET5TnJyYSfZU654KfUpkXduOdGJb2/uOM7wh5lIUneOxHNcT
 4lwMuAj1598WYNiATLNubGmugevbfgcErut76XQ6AcA5T6Jx5BgawwFuL3G9x5h4
 J4ftWKroa432yFEt2t8MM58HNQCyE3M04iaXxFd9D9/l5pHnC5+IY+6Y1g5a3pkQ
 82kxmyTok9jjaURnWJp5q3xG4YBBOmzjVFdHb77LtuNn1wRAP2Rjh0Ux/CwVPiUr
 de8PSFvrTBcZ8KP24oGrdoFFGAYqVS06QT2lNcTYuD8vS8y/GNnIDL81gz3hdPGq
 irCoqKPD0ur6QWqNE3I1v6nCT8kReSSqjFCOF9sNTDe9Jyc7XFo=
 =3FEK
 -----END PGP SIGNATURE-----

Merge tag 'v5.4.74' into 5.4-2.3.x-imx

This is the 5.4.74 stable release

Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
2021-01-11 10:09:44 +00:00
Andrey Zhizhikin
b5636ee381 This is the 5.4.73 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAl+ahE8ACgkQONu9yGCS
 aT4j1A/9HzkKKoqZ2vXYQ1/uEnUqZech9ly1KxpNTBrSZYAtx3MaWY7tGDEx2BqD
 y6iw9x4MymhHEbpwLg6YmmdWuMQLNNYJGoyLiPJgWhkE4c7zHadhNz1DcPEI8F7z
 bSlUJ3Oebr8gzv0FvUmeVXw7Z2EuOqM1zGgTAZfnKY3DkYHbLnrzUJ4AiI8TNeba
 pPIhjfIJ1TvhF+s5ggf2m8OtSWLZ0doCWCPmCFe2WyERX2WYCzPgsm0yL7L7oXME
 ZqWpOcClBsiYekBNcZ4kxozhJtArCnv24n9VoXJ/YJIlWKvCA6uC8r527nGN/z08
 dfFelj1nDs7/VrCSP4+109EjxLQnSYGgIWP0g0OsC+9wOmrQsYJ1azP1eNjm+NuC
 hPa8uYVEZxwVyJuEfu4ZB4NMZBlD2qnHoskvBKbyZ8yaVnbvlMp552XMwsmJBpCs
 8wArzabrJEz396LUUIYG829D7NBDuRav1Miu+FTzlbn+xZ/Y/S8OmhoG2stWa4wV
 y5x0M0DWgrqiZ9rMkz9A03UNnCInQVTfIBoMl63xFitW4/0vLsln3+CjzlKm7H46
 rD/tKACUoCDjR5DN+JwQzmTdL9zBb4p1cXwWjWb6rON3BkXmO0JVAxzurxI9PfX0
 ZWDydZ3HNmrm0d3J12zf3kTX56PfPFAGWUsEc4Ntb5zdWXSQJsE=
 =fZ3T
 -----END PGP SIGNATURE-----

Merge tag 'v5.4.73' into 5.4-2.3.x-imx

This is the 5.4.73 stable release

Conflicts:
- arch/arm/boot/dts/imx6sl.dtsi:
Commit [a1767c9019] in NXP tree is now covered with commit [5c4c2f437c]
from upstream.

- drivers/gpu/drm/mxsfb/mxsfb_drv.c:
Resolve merge hunk for patch [ed8b90d303] from upstream

- drivers/media/i2c/ov5640.c:
Patch [aa4bb8b883] in NXP tree is now covered by patches [79ec0578c7]
and [b2f8546056] from upstream. Changes from NXP patch [99aa4c8c18] are
covered in upstream version as well.

- drivers/net/ethernet/freescale/fec_main.c:
Fix merge fuzz for patch [9e70485b40] from upstream.

- drivers/usb/cdns3/gadget.c:
Keep NXP version of the file, upstream version is not compatible.

- drivers/usb/dwc3/core.c:
- drivers/usb/dwc3/core.h:
Fix merge fuzz of patch [08045050c6] together wth NXP patch [b30e41dc1e]

- sound/soc/fsl/fsl_sai.c:
- sound/soc/fsl/fsl_sai.h:
Commit [2ea70e51eb72a] in NXP tree is now covered with commit [1ad7f52fe6]
from upstream.

Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
2021-01-11 10:09:27 +00:00
Andrey Zhizhikin
150519c67e This is the 5.4.72 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAl+Kp0MACgkQONu9yGCS
 aT6v1Q/9E81jBh9b3fqVcfnlF0ITxZ95gEotjKXm9xrMQDjUGQV86mKZkPlxNrIO
 Ks2/GyNeTYFILG5h9FMZrXZwEN2A2lBlDq0l7ZasuS5tba7+DBeBNO9rMIbxjJKA
 05rleaRJXhZM9AwMkZhvCVEw199YdsmhPysnsOXhZ4NSgWIIftLSn41SQVKrwBtd
 3uc2RBYjJhjCP5ESEuslUx8Au3dyO1Mtj4MPaU3w75M4uGa0ZdQBpVFaarom6ole
 O/tVoX67vIO1mK8NmFmNqO3/FvLHJsY5bYn2pHVIrkrCZgpGLdypyq8bGIl0xGiD
 gWfgTzW0O75VQ5UbniYZl9m7Sb3DM5yuP1j8aDO3+g5ZLNnfScyb9Ntc0y9/GCKy
 rvLrYH9ryh8wAJ+PUubZlxcGvZjhGgqx60duDPD7IeoG+GbHrBWBCXjJaNIV0VA7
 QD8nfeuS6dX3mmXEVQlV+/IOFa1e+9wb21HKCez/eZ2kL5gAq0tTnI5n5aaV45i7
 DmgN0OJsx7uXlUPsoWMd8IGeUH0oz8x3mRhI1oM1POiflBNoK152AIfBHsIciNEW
 9FqsHLtUk3/OyL5a8Dlz5zaRpYcUaYImFSmHZJTGAUGCfg2a4ptJMHyJ7DZBS9OI
 ZLK64JixFqi3H9i65aSWlzz2Z3b4Lzy8jk1i7rUkNjcUr5za77g=
 =38MW
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEdQaENiSDAlGTDEbB7G51OISzHs0FAl/8FcIACgkQ7G51OISz
 Hs3vag/+LmSAfhddbGr/sSuN2dw5yBmAWnLASNSpWnLV3nmrlCQuQD0/gwtE889C
 B9tXcHd4ygdIb+9UHm8jlxBySOmUBS1Puyk3DFT3g2xfYY+YLpVyKoljwdVa2xVl
 UIdEf1uCGLbT12kSsk2+yFr+PksD7IA2Ss1w8WhTeWOTC0G3aLswzbjCCffCVssR
 DY7jNx44lCxTs5gFjVaVuoMdMdqS0itgKDdLO7nX17PLctnaW4os6Uuc8rB9EVWt
 VN6iKFDueTQdXh43SrXsNMsAxcVt6sBDhCOimrytCJ1c4hTqTfSxg8JH2N9rJ+jz
 txcRTyTcovlvLS6zCNLOc4YCirMtyvPQbHrUBDpHg+p5MqZwQ+fOgHio3grRu2Qs
 xqlUDZBsjUR3K37DX482P7f7St5Sd3i6yXV2CraqNnFgo+oIkRoHp44ZEpv41SBZ
 sxzsFJ1TbId8owBHKEnQmZH5DOExCcN3jzBW3oGcpD6PJzS068/9Z/XCY1T4ERTF
 9KWjIvmnVKteLQcCZxyehCXWGIJv4ulehYFcs1R5LOMIaY4wxRKFZOW+ZWAae1mt
 pY0CTDgTwzWuKJLTzgaSwcMALOa01izT22Oq8elMIzkhONy+e7ROuOv0WCUk240H
 DmmtmS2K/dpObmqUZ7GTPwu8G9hqqX59MF3rYJAE0HISX6/56W8=
 =2SiK
 -----END PGP SIGNATURE-----

Merge tag 'v5.4.72' into 5.4-2.3.x-imx

This is the 5.4.72 stable release

Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
2021-01-11 09:09:19 +00:00
Andrey Zhizhikin
9e9365cbcf This is the 5.4.71 stable release
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAl+Gt9kACgkQONu9yGCS
 aT4qAg//ecjVetf6vClqaA6jNWoVHeyuSxJKNWdLWq0XkQgYInuya8irLXoGwY1j
 UTTOvbFT+UwJ1N9DWIB5cLaEkYNLcGA9YYExtcVA6YUfdlhWQw5zcyovIXcw4jHx
 Ma0O2usPE/7Rb9O2+3O8t4jr1YF9C7iRkY82FJJIbDa6GbFQA6hGZ4mHfnjh1l84
 owgSjZ1Yy2HU2uUzX8hA6dXZeIu+SQMk5E2nQSm/DAPhDwbIqPb5Rx9UYqCXafiA
 1c9Cj7RWKopPP9gxNSOzYfLVzOr0YHoFm5uMxtz4apzpNhl/j5CTGphFOnY6SuJs
 BWrRK9D47PGtds5IJ1MslVVb1i1tt0in0RJsNuYV35CXCoJDuaIzaQPJBlpyvix0
 ZialpH+nI3Z1yy7uzVSvrAK11AMwq+79VG/byHht02YVZycHOt7e4wRep3KjpQQq
 uJHapB5djGhPkZypgHOak9Tw1A/snwxC4yR2Xl+Cqn46igIJ8xlgnuey1AmT7pzi
 dSEiJoC7xzHUFildfzrNWkZwIffBFYVPJGfPFyRpyvNc2mOW3S9bwbX0NptE0qSQ
 YzOxQIfqa43TOBJNKZdgHGDrpnPHTESzO63BurQ3fpUI2ex7XjWq92zrIwp23reJ
 9Y/cpELW/paL/dg3ZFYp/wPoOoAh/84GICPXLZPREJkKf0WWey0=
 =1GCf
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEdQaENiSDAlGTDEbB7G51OISzHs0FAl/8FbcACgkQ7G51OISz
 Hs22Gw/9HbY9ScdN+FImTSgR+Hmjc+HShBhv3eAF3wvkZuGloh62OrjyDYhvo3mo
 TBTpLkklaSGBp68vXvkH5qpa+RNoM9FBn3iXqjjBY11czU5MKHJczAKPJp3YYfTv
 X+49Kc0vlT/msX8yWe+0kLOkQrRjOBRAAzAqhJwoZ7RZC3/Ikta/4/1xTxHeFb1j
 kuo/TJQWca2NEtzEf3oFuiHsh9CJYDUJIPSGl4yd6R8z/mNqEH9ytR4oyhpedcl/
 VZv/6npNZ8G8OqFLOc4tddsXgxMYj6yVpSDtysJdEM4Vbrf9hLPZvKXc5dsttl7Z
 +ah7afTYBT9entCYRdNxnR69R+gVu0SilMKrI9+DG3s16ADJyppG5qDSUkEvdwtR
 M9nBlxgpx7oxHV8WNicXfAz2+s3QYtcLUs6k5hMMv7WYg9Rplzd8MmDfqqbEHI/j
 wIgxRechQ9UB9efrmHk1tWTwx3tymV573Dpms7LXkeP3gwbNCcA6Hce9dasYnMhT
 nfiFr164bPV7kqsqFYVXl3i/8ibAN5X784mUq9qDAKBtI8kEd3z0R9a4Tk4pohwG
 U15jzSiZoHYnpcDTszzUlS50YAcvkLuYscwj+aCO/uXGBAxuAwKsfZ4KoFrtAFcl
 J0X9bmnJ2+eWAZqnUrXWDvbFp+OEoFAwxRGIoxxsPKsI1uR06PY=
 =fy0V
 -----END PGP SIGNATURE-----

Merge tag 'v5.4.71' into 5.4-2.3.x-imx

This is the 5.4.71 stable release

Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
2021-01-11 09:09:08 +00:00
Richard Zhu
4f2631b022 MLK-25089 phy: freescale: pcie: fix the imx8mp evk ep rc link speed issue
Fine tune the PHY parameters, let the PCIe link up to GEN3 between two
i.MX865 EVK boards in the i.MX EP RC validation system.

Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Reviewed-by: Peter Chen <peter.chen@nxp.com>
(cherry picked from commit 17db82300f80061a8568edf4585849add84cb6a6)
2020-12-16 13:31:24 +08:00
Xianzhong
13b3c46966 MGS-6108-3 [#imx-2416] fix gcdENABLE_VG logic issue
enable asynchronous unlock even if define gcdENABLE_VG

Signed-off-by: Xianzhong <xianzhong.li@nxp.com>
2020-12-06 18:11:52 +08:00
Xianzhong
ce27972ecb MGS-6108-2 [#imx-2416] fix vg kernel panic for command unlock
vg kernel does not suppport asynchronous event, uses sync unlock

Signed-off-by: Xianzhong <xianzhong.li@nxp.com>
2020-12-06 14:42:12 +08:00
Xianzhong
ea9340aac5 MGS-6108 [#imx-2416] fix GPU exception to access the freed MMU page
GPU hardware access cannot be guaranteed to complete after unlock memory,
Need perform asynchronous unlock to avoid GPU access the freed MMU page.

Signed-off-by: Xianzhong <xianzhong.li@nxp.com>
(cherry picked from commit f902173b8ece1f6367c30557498077c569db31ff)
2020-12-04 19:04:22 +08:00
Sandor Yu
8fb049834b MLK-25101: drm: imx: dw_hdmi: Keep hdmi phy in poweron status
The pixel clock of display controller lcdifv3 source from hdmi phy.
When hdmi cable plugout irq trigger,
hdmi phy will be poweroff immediately in hdmi controller driver.
But DRM and user app may still working until they received plugout event.
For such case, the kernel will dump.

[   89.707045] ------------[ cut here ]------------
[   89.711705] [CRTC:39:crtc-2] vblank wait timed out
[   89.716563] WARNING: CPU: 2 PID: 7 at drivers/gpu/drm/drm_atomic_helper.c:1467 drm_atomic_helper_wait_for_vblanks.part.0+0x274/0x290
[   89.728472] Modules linked in:
[   89.731533] CPU: 2 PID: 7 Comm: kworker/u8:0 Not tainted 5.4.70-00041-g631cb8d6e2b2-dirty #23
[   89.740055] Hardware name: NXP i.MX8MPlus EVK board (DT)
[Playing (No Repeated)][Vol=1.0][   89.745372] Workqueue: events_unbound commit_work
[00:00:04/00:02:18][   89.752939] pstate: 40000005 (nZcv daif -PAN -UAO)
[   89.759376] pc : drm_atomic_helper_wait_for_vblanks.part.0+0x274/0x290
[   89.765905] lr : drm_atomic_helper_wait_for_vblanks.part.0+0x274/0x290
[   89.772431] sp : ffff800011c43ca0
[   89.775744] x29: ffff800011c43ca0 x28: 0000000000000000
[   89.781054] x27: 000000000000055f x26: 0000000000000070
[   89.786363] x25: ffff00017786b800 x24: 0000000000000001
[   89.791674] x23: 0000000000000038 x22: 0000000000000004
[   89.796983] x21: ffff00016a375400 x20: ffff00017786b088
[   89.802293] x19: 0000000000000002 x18: 0000000000000010
[   89.807604] x17: 0000000000000000 x16: 0000000000000000
[   89.812913] x15: ffff0001760c5870 x14: ffffffffffffffff
[   89.818225] x13: ffff800091c439f7 x12: ffff800011c439ff
[   89.823537] x11: ffff800011a11000 x10: ffff800011b36328
[   89.828847] x9 : 0000000000000000 x8 : ffff800011b37000
[   89.834158] x7 : ffff80001069fc68 x6 : 0000000000000341
[   89.839469] x5 : 0000000000000000 x4 : ffff00017f3a0188
[   89.844778] x3 : ffff00017f3a6f20 x2 : ffff00017f3a0188
[   89.850088] x1 : 4d8823010d259700 x0 : 0000000000000000
[   89.855404] Call trace:
[   89.857854]  drm_atomic_helper_wait_for_vblanks.part.0+0x274/0x290
[   89.864033]  drm_atomic_helper_wait_for_vblanks+0x14/0x20
[   89.869433]  lcdifv3_drm_atomic_commit_tail+0x64/0x7c
[   89.874484]  commit_tail+0x9c/0x138
[   89.877970]  commit_work+0x10/0x18
[   89.881372]  process_one_work+0x198/0x320
[   89.885382]  worker_thread+0x48/0x420
[   89.889042]  kthread+0x138/0x158
[   89.892272]  ret_from_fork+0x10/0x1c
[   89.895847] ---[ end trace ed53d661901a6437 ]---

Keep hdmi phy in poweron status when cable plugout to workaround the issue.
HDMI phy power off function will be move to lcdifv3 or hdmi phy driver
later.

Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
Reviewed-by: Robby Cai <robby.cai@nxp.com>
2020-12-04 10:33:40 +08:00
Frank Li
33db0bad19 MLK-25021 arm64: dts: imx8dxl-evk: USB update current trimming value
According to board team signal measure result and update trim value as

For USB OTG1, setting 0x5b100010=0X10080802 (default 0X10080807).
For USB OTG2, setting 0x5b110010=0X10080803 (default 0X10080807).

Signed-off-by: Frank Li <Frank.Li@nxp.com>
Acked-by: Peter Chen <peter.chen@nxp.com>
2020-12-03 20:24:56 -06:00
Horia Geantă
c705bfcb03 LF-2943 crypto: caam - optimize RNG sample size
TRNG "sample size" (the total number of entropy samples that will be taken
during entropy generation) default / POR value is very conservatively
set to 2500.

Let's set it to 512, the same as the caam driver in U-boot
(drivers/crypto/fsl_caam.c) does.

This solves the issue of RNG performance dropping after a suspend/resume
cycle on parts where caam loses power, since the initial U-boot setttings
are lost and kernel does not restore them when resuming.

Note: when changing the sample size, the self-test parameters need to be
updated accordingly.

Signed-off-by: Horia Geantă <horia.geanta@nxp.com>
Reviewed-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2020-12-02 18:48:27 +02:00
Horia Geantă
5693782341 crypto: caam - remove unneeded read of rtmctl register
Remove read of rtmctl register, which is not needed after
commit 8439e94fce ("crypto: caam - fix sparse warnings").

Fixes: 8439e94fce ("crypto: caam - fix sparse warnings")
Signed-off-by: Horia Geantă <horia.geanta@nxp.com>
Reviewed-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2020-12-02 18:48:25 +02:00
Horia Geantă
a067df836f MLK-24912-2 crypto: caam - fix RNG vs. hwrng kthread race
The following stack trace is met when stress-testing suspend/resume:

[...]
PM: suspend devices took 1.972 seconds
[...]
SError Interrupt on CPU1, code 0xbf000002 -- SError
CPU: 1 PID: 213 Comm: hwrng Not tainted 5.4.70-2.3.0+g72209dedd129 #1
Hardware name: Freescale i.MX8DXL EVK (DT)
pstate: 60000005 (nZCv daif -PAN -UAO)
pc : _raw_spin_unlock_bh+0x0/0x28
lr : caam_jr_enqueue+0x24c/0x378
sp : ffff8000127dbd10
x29: ffff8000127dbd10 x28: ffff00003cac5940
x27: 00000000bcb5ef80 x26: 0000000000000010
x25: ffff800011c12000 x24: ffff8000127dbdb8
x23: ffff800010ca2298 x22: ffff00003c8aec10
x21: ffff00003cb5ef80 x20: 00000000ffffff8d
x19: 0000000000000010 x18: 000000000000000e
x17: 0000000000000001 x16: 0000000000000019
x15: 0000000000000033 x14: 000000000000004c
x13: 0000000000000068 x12: ffff800011188e90
x11: ffff00003c897210 x10: 0000000000000026
x9 : 00000000a4dcb313 x8 : 0000000000000000
x7 : 0000000000000001 x6 : ffff800011b59000
x5 : 0000000000000000 x4 : 0000000000000001
x3 : 0000000000000004 x2 : 0000000000000014
x1 : 00000000000001ec x0 : ffff00003cac5940
Kernel panic - not syncing: Asynchronous SError Interrupt
CPU: 1 PID: 213 Comm: hwrng Not tainted 5.4.70-2.3.0+g72209dedd129 #1
Hardware name: Freescale i.MX8DXL EVK (DT)
Call trace:
 dump_backtrace+0x0/0x140
 show_stack+0x14/0x20
 dump_stack+0xb4/0x114
 panic+0x158/0x324
 nmi_panic+0x84/0x88
 arm64_serror_panic+0x74/0x80
 do_serror+0x80/0x138
 el1_error+0x84/0xf8
 _raw_spin_unlock_bh+0x0/0x28
 caam_rng_read_one.isra.0+0x1c8/0x3a0
 caam_read+0x80/0xa8
 hwrng_fillfn+0x8c/0x140
 kthread+0x138/0x158
 ret_from_fork+0x10/0x1c
SMP: stopping secondary CPUs
Kernel Offset: disabled
CPU features: 0x0002,20002008
Memory Limit: none

This happens when:
-the generic "hwrng" kthread tries to draw entropy and
-the current rng is caam's rng and
-the job ring used for caam rng hasn't been resumed yet
(after a suspend)

The issue has been noticed also in upstream (for TPM device in ChromeOS)
and the fix proposed involved making the "hwrng" kthread freezable:
03a3bb7ae6 ("hwrng: core - Freeze khwrng thread during suspend")
ff296293b3 ("random: Support freezable kthreads in add_hwgenerator_randomness()")
59b569480d ("random: Use wait_event_freezable() in add_hwgenerator_randomness()")

However, because these commits introduced a regression in virtio-rng
(Link: https://lore.kernel.org/lkml/4a45b3e0-ed3a-61d3-bfc6-957c7ba631bb@maciej.szmigiero.name)
they were later reverted in commit
08e97aec70 ("Revert "hwrng: core - Freeze khwrng thread during suspend"")

Since there was no progress in upstream and fixing virtio-rng regression
is not trivial, the solution chosen is to unregister / re-register
caam rng driver from hwrng during suspend / resume.

Signed-off-by: Horia Geantă <horia.geanta@nxp.com>
Tested-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2020-12-02 11:22:34 +02:00
Horia Geantă
cca4e670e7 MLK-24912-1 crypto: caam/jr - update jr_list during suspend/resume
The global driver_data.jr_list contains the list of active job rings
at a given moment.

Picking a JR is done using caam_jr_alloc(), which goes through this list
and chooses the JR with the least number of users ("tfm_count").

During the JR suspend/resume, this list must be updated to reflect that
the JR is no longer available - otherwise caam_jr_alloc() could return
a JR that has been suspended.

While this is rather a theoretical issue (i.e. was not met in practice),
it is a prerequisite for fixing the RNG failure met during suspend/resume.

Signed-off-by: Horia Geantă <horia.geanta@nxp.com>
Tested-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2020-12-02 11:22:32 +02:00
Peng Fan
b2b1d3bdfe MLK-25090 arm64: dts: imx8: reserve space for new resource table
With MCU SDK 2.9, there are two copy resource tables published to Linux,
the 1st is vdev0vring0, the 2nd is in rsc-table address.

The 1st is for legacy compatible usage, it will be removed in future
releases. we will only use 2nd new address in future releases.

But at current stage, we still use the 1st one in linux, but we
also need to reserve area for the 2nd one, otherwise when using
linux to kick Mcore, Mcore might overwrite the data used by Linux.

The 2nd table address is as below:
8QXP/DX/DXL: [0x90000000 + 1M – 4KB, 0x90000000 + 1M)
8QM: CM40:  [0x90000000 + 1M – 4KB, 0x90000000 + 1M)
     CM41: [0x90100000 + 1M – 4KB, 0x90100000 + 1M)
8MQ/MM/MN-evk: [0xb8000000 + 1M – 4KB, 0xb8000000 + 1M)
8MP-evk: [0x55000000 + 1M – 4KB, 0x55000000 + 1M)

Currently only 8DXL and 8MP use MCU SDK 2.9 and others still use MCU
SDK 2.8, but for prepare future update, we update all SoC to reserve
the 2nd table address.

Reviewed-by: Ye Li <ye.li@nxp.com>
Reviewed-by: Richard Zhu <hongxing.zhu@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2020-12-02 16:10:51 +08:00
Peng Fan
84b86a513c MLK-25073 arm64: dts: imx8mn-ddr3l-evk-rpmsg: reserve space for Mcore
This is just a workaround for Linux 5.4 Q4 release
to avoid Linux use the memory.
This board only has 1GB memory, the 0xb8000000
exceeds the DRAM, and round back to 0x78000000,
since we not modify Mcore image, so we need to avoid
Linux touch 0x78000000 which might crash the system
and mark mcore ddr demo broken and only support booting mcore image
from U-Boot bootaux.

Reviewed-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2020-12-01 16:07:45 +08:00
Guoniu.zhou
985c60e556 MLK-25041: media: imx8: media-dev: return if media device has been registered
subdev_notifier_complete will be called multi times in some cases
due to workaround to support hotplugin-like mechanism, so add checking
media device register status before register new media device.

Signed-off-by: Guoniu.zhou <guoniu.zhou@nxp.com>
Reviewed-by: Robby Cai <robby.cai@nxp.com>
2020-11-27 17:02:08 +08:00
Guoniu.zhou
1800f6121f MLK-25039-02: uapi: videodev2.h: remove RGBA format in V4L2
Remove RGBA format extended before in V4L2 format list due to V4L2
framework support it now.

Signed-off-by: Guoniu.zhou <guoniu.zhou@nxp.com>
Reviewed-by: Robby Cai <robby.cai@nxp.com>
2020-11-27 17:01:32 +08:00
Guoniu.zhou
aae6e3f03e MLK-25039-01: media: isi: m2m: use V4L2 RGBA32 format define in V4L2 framework
There is no RGBA format in V4L2 framework when develop ISI mem2mem
driver, so we add V4L2_PIX_FMT_RGBA in V4L2 framework. But in the
latest kernel version, V4L2 framework add V4L2_PIX_FMT_RGBA32 for
RGBA format, so change use RGBA format define in latest framework.

Signed-off-by: Guoniu.zhou <guoniu.zhou@nxp.com>
Reviewed-by: Robby Cai <robby.cai@nxp.com>
2020-11-27 17:01:13 +08:00
Guoniu.zhou
bf8c4e34d0 MLK-25027-4: media: isi: remove 4K feature for ISI channel1
Remove 4K feature for ISI channel1 due to ISI line buffer limitation

Signed-off-by: Guoniu.zhou <guoniu.zhou@nxp.com>
Reviewed-by: Robby Cai <robby.cai@nxp.com>
2020-11-21 16:21:13 +08:00
Guoniu.zhou
b58a951963 MLK-25027-3: media: isi: remove "fsl,chain_buf" property parse
Remove "fsl,chain_buf" property parse because it's no longer used.

Signed-off-by: Guoniu.zhou <guoniu.zhou@nxp.com>
Reviewed-by: Robby Cai <robby.cai@nxp.com>
2020-11-21 16:21:09 +08:00
Guoniu.zhou
ca8e7409c7 MLK-25027-2: media: isi: add workaround for iMX865 ISI to support 4K
Add workaround for iMX865 ISI to support 4K because for the ISI line
buffer management, the other chips used a single clock for all the
memories, where as in iMX865, each channel has the corresponding clock
which is used, so need to enable channel1 clock when channel0 chain
buffer enabled.

Signed-off-by: Guoniu.zhou <guoniu.zhou@nxp.com>
Reviewed-by: Robby Cai <robby.cai@nxp.com>
2020-11-21 16:21:05 +08:00
Guoniu.zhou
4c9ea7ca0a MLK-25027-1: arm64: imx8mp.dtsi: add device node for isi chain buffer
When ISI output width more than 2048, it need to use adjacent channel
chain buffer to receive more data. For iMX865, clock for each channel
is independent, so need to enable the adjacent channel clock when the
channel0 chain buffer enabled. This is a workaround for IC issue.

Signed-off-by: Guoniu.zhou <guoniu.zhou@nxp.com>
Reviewed-by: Robby Cai <robby.cai@nxp.com>
2020-11-21 16:21:00 +08:00
Oliver Brown
a07f9868b5 MLK-24911-3: drm: imx: sec-dsim: Adjust the LDO trim value
Adjust the LDO trim value based upon the fuse trim value.

Signed-off-by: Oliver Brown <oliver.brown@nxp.com>
Reviewed-by: Laurentiu Palcu <laurentiu.palcu@oss.nxp.com>
2020-11-20 09:28:01 -06:00
Oliver Brown
11f3e25be5 MLK-24911-2 arm64: dtsi: imx8mp: Add blk-ctl to mipi dsi node
The blk-ctl register allow access to set the MIPI DSI LDO trim value.

Signed-off-by: Oliver Brown <oliver.brown@nxp.com>
Reviewed-by: Laurentiu Palcu <laurentiu.palcu@oss.nxp.com>
2020-11-20 09:28:01 -06:00
Oliver Brown
53ecae250d MLK-24911-1: soc: imx: Add support to get iMX8mp LDO trim fuse value
Add support for reading fuse to get iMX8mp LDO trim.

Signed-off-by: Oliver Brown <oliver.brown@nxp.com>
Reviewed-by: Laurentiu Palcu <laurentiu.palcu@oss.nxp.com>
2020-11-20 09:28:01 -06:00
Shengjiu Wang
7cdfb67042 MLK-22433: ARM: dts: imx6qdl-sabresd: Enable ADC monomix
Enable ADC monomix for fixing only one channel in recording

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
2020-11-20 16:27:02 +08:00
Adrian Alonso
f3c605ed45 MLK-24931-3: dts: arm64: freescale: imx8mm evk hifiberry dacplus
Enable support for Hifiberry dacplus audio hats on
iMX8MMini EVK.

Signed-off-by: Adrian Alonso <adrian.alonso@nxp.com>
Reviewed-by: Shengjiu Wang <shengjiu.wang@nxp.com>
(cherry picked from commit ec6d8970ba79fc7cef371eea888d24e5bd347f2a)
2020-11-19 13:29:48 -06:00
Adrian Alonso
70d86b05ac MLK-24931-2: dts: arm64: freescale: imx8mm evk iqaudio dacpro
Enable support for IQauidio dacpro audio hats on
iMX8MMini EVK.

Signed-off-by: Adrian Alonso <adrian.alonso@nxp.com>
Reviewed-by: Shengjiu Wang <shengjiu.wang@nxp.com>
(cherry picked from commit f4122d1b5c3e66c3fe731ea19e6e6e17c2000af6)
2020-11-19 13:29:07 -06:00
Adrian Alonso
c71bae8eef MLK-24931-1: dts: arm64: freescale: imx8mm evk iqaudio dacplus
Enable support for IQauidio dacplus audio hats on
iMX8MMini EVK.

Signed-off-by: Adrian Alonso <adrian.alonso@nxp.com>
Reviewed-by: Shengjiu Wang <shengjiu.wang@nxp.com>
(cherry picked from commit 95b3f81802fe52fbe66ce6fbb28ae43f78d85f04)
2020-11-19 13:28:36 -06:00
Adrian Alonso
a996534911 MLK-24932-3: dts: arm64: freescale: imx8mn evk hifiberry dacplus
Enable support for Hifiberry dacplus audio hats on
iMX8MNano EVK.

Signed-off-by: Adrian Alonso <adrian.alonso@nxp.com>
Reviewed-by: Shengjiu Wang <shengjiu.wang@nxp.com>
(cherry picked from commit c0bee3e1d91937b49e22e635f2bca53e8b25f57c)
2020-11-19 13:28:06 -06:00
Adrian Alonso
eb7f3995e9 MLK-24932-2: dts: arm64: freescale: imx8mn evk iqaudio dacpro
Enable support for IQauidio dacpro audio hats on
iMX8MNano EVK.

Signed-off-by: Adrian Alonso <adrian.alonso@nxp.com>
Reviewed-by: Shengjiu Wang <shengjiu.wang@nxp.com>
(cherry picked from commit 9ebf35bcd2ce93b3595dee2b3a3f662b70f10088)
2020-11-19 13:27:23 -06:00
Adrian Alonso
e50e707b70 MLK-24932-1: dts: arm64: freescale: imx8mn evk iqaudio dacplus
Enable support for IQauidio dacplus audio hats on
iMX8MNano EVK.

Signed-off-by: Adrian Alonso <adrian.alonso@nxp.com>
Reviewed-by: Shengjiu Wang <shengjiu.wang@nxp.com>
(cherry picked from commit 0fe19d3f2e949c65ffa636d4971b9f5f463497fd)
2020-11-19 13:26:39 -06:00
Adrian Alonso
a452c44357 MLK-25015: sound: soc: codecs: pcm512x: set input sclk
Add set_sysclk function to select preferred master input
clock on pcm512x codec, support multiple input system clocks
on SCLK master mode.

Signed-off-by: Adrian Alonso <adrian.alonso@nxp.com>
Reviewed-by: Shengjiu Wang <shengjiu.wang@nxp.com>
(cherry picked from commit 5ca64840578f9dad359d5c2e6821805df68a1608)
2020-11-19 13:25:49 -06:00
Adrian Alonso
90fa71978a MLK-24930-2: configs: arm64: enable imx sound pcm512x
Enable imx-pcm512x sound driver as built-in module
for iMX8M EVK support

Signed-off-by: Adrian Alonso <adrian.alonso@nxp.com>
Reviewed-by: Shengjiu Wang <shengjiu.wang@nxp.com>
(cherry picked from commit 84db7260f5a350f6e3d5418e7a90e8b352aaa183)
2020-11-19 13:25:01 -06:00
Adrian Alonso
8efc3af011 MLK-24930-1: sound: soc: fsl: imx pcm512x: iqaudio dac
ASoC machine sound driver for IQAudio PiDAC plus/pro
Rev3 for iMX SoC, high resolution codec supporting
upto 384khz sample rate on SAI; Include support for
Hifiberry audio hats that uses external oscillators for
dac system clock.

Signed-off-by: Adrian Alonso <adrian.alonso@nxp.com>
Reviewed-by: Shengjiu Wang <shengjiu.wang@nxp.com>
(cherry picked from commit b52d3587cba2b3db60cf316430478969918fed7a)
2020-11-19 13:24:25 -06:00
Ming Qian
21929af532 MLK-24960: [8QM_MEK/8QXP_MEK]mxc:vpu_malone: move timestamp manager to
firmware

move timestamp to firmware, it will make our driver more easy to
upstream

Signed-off-by: Ming Qian <ming.qian@nxp.com>
2020-11-19 17:34:13 +08:00
Ming Qian
bf67b06529 MLK-24959: [8QM_MEK/8QXP_MEK]mxc:vpu_windsor: move timestamp handler to
firmware

move timestamp to firmware, it will make our driver more easy to
upstream

Signed-off-by: Ming Qian <ming.qian@nxp.com>
2020-11-19 17:34:03 +08:00
Jun Li
77816ac1fa 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 for vbus session handling.

Signed-off-by: Jun Li <jun.li@nxp.com>
Signed-off-by: Peter Chen <peter.chen@nxp.com>
(cherry picked from commit 72dc8df7920fc24eba0f586c56e900a1643ff2b3)
(cherry picked from commit 0fe900249814f73ecb79c6fb2ae75d46ed9d3a3e)
2020-11-19 13:40:52 +08:00
Fancy Fang
1e63860850 MLK-25012 drm/imx: lcdif: move 'lcdif_crtc' alloc to probe()
The 'lcdif_crtc' allocated by devm_kzalloc() in bind() will
be freed automatically during unbind() stage if any other
component bind failed and this will cause use-after-free
issue in drm_mode_config_cleanup().

Kasan reports below error related with this issue:

[    2.188122] ==================================================================
[    2.195370] BUG: KASAN: use-after-free in drm_mode_config_cleanup+0x274/0x478
[    2.202524] Read of size 8 at addr ffff000069c1e098 by task swapper/0/1
[    2.209145]
[    2.210659] CPU: 1 PID: 1 Comm: swapper/0 Not tainted 5.4.70-00056-g8e43cd16c8bb-dirty #139
[    2.219020] Hardware name: FSL i.MX8MM EVK board (DT)
[    2.224080] Call trace:
[    2.226546]  dump_backtrace+0x0/0x1e8
[    2.230220]  show_stack+0x14/0x20
[    2.233554]  dump_stack+0xe0/0x14c
[    2.236981]  print_address_description.isra.0+0x68/0x34c
[    2.242311]  __kasan_report+0x118/0x220
[    2.246165]  kasan_report+0xc/0x18
[    2.249587]  __asan_load8+0x94/0xb8
[    2.253090]  drm_mode_config_cleanup+0x274/0x478
[    2.257728]  imx_drm_bind+0xd8/0x1b0
[    2.261324]  try_to_bring_up_master+0x24c/0x2c8
[    2.265870]  __component_add+0x110/0x258
[    2.269812]  component_add+0x10/0x18
[    2.273407]  imx_sec_dsim_probe+0x74/0xa0
[    2.277438]  platform_drv_probe+0x6c/0xc8
[    2.281462]  really_probe+0x148/0x440
[    2.285140]  driver_probe_device+0x74/0x130
[    2.289340]  device_driver_attach+0x94/0xa0
[    2.293537]  __driver_attach+0x70/0x110
[    2.297390]  bus_for_each_dev+0xe4/0x158
[    2.301329]  driver_attach+0x30/0x40
[    2.304918]  bus_add_driver+0x21c/0x2b8
[    2.308771]  driver_register+0xbc/0x1d0
[    2.312627]  __platform_driver_register+0x7c/0x88
[    2.317350]  imx_sec_dsim_driver_init+0x18/0x20
[    2.321897]  do_one_initcall+0xa4/0x24c
[    2.325751]  kernel_init_freeable+0x238/0x2e8
[    2.330128]  kernel_init+0x10/0x114
[    2.333635]  ret_from_fork+0x10/0x1c
[    2.337215]
[    2.338717] Allocated by task 1:
[    2.341963]  save_stack+0x24/0xb0
[    2.345296]  __kasan_kmalloc.isra.0+0xc0/0xe0
[    2.349671]  kasan_slab_alloc+0x14/0x20
[    2.353525]  __kmalloc_node_track_caller+0x118/0x2c8
[    2.358512]  devm_kmalloc+0x48/0xc8
[    2.362016]  lcdif_crtc_bind+0x38/0x278
[    2.365868]  component_bind_all+0x1c0/0x3c8
[    2.370070]  imx_drm_bind+0x104/0x1b0
[    2.373750]  try_to_bring_up_master+0x24c/0x2c8
[    2.378298]  __component_add+0x110/0x258
[    2.382235]  component_add+0x10/0x18
[    2.385827]  imx_sec_dsim_probe+0x74/0xa0
[    2.389854]  platform_drv_probe+0x6c/0xc8
[    2.393877]  really_probe+0x148/0x440
[    2.397555]  driver_probe_device+0x74/0x130
[    2.401757]  device_driver_attach+0x94/0xa0
[    2.405954]  __driver_attach+0x70/0x110
[    2.409803]  bus_for_each_dev+0xe4/0x158
[    2.413740]  driver_attach+0x30/0x40
[    2.417330]  bus_add_driver+0x21c/0x2b8
[    2.421180]  driver_register+0xbc/0x1d0
[    2.425035]  __platform_driver_register+0x7c/0x88
[    2.429754]  imx_sec_dsim_driver_init+0x18/0x20
[    2.434300]  do_one_initcall+0xa4/0x24c
[    2.438150]  kernel_init_freeable+0x238/0x2e8
[    2.442526]  kernel_init+0x10/0x114
[    2.446031]  ret_from_fork+0x10/0x1c
[    2.449612]
[    2.451112] Freed by task 1:
[    2.454010]  save_stack+0x24/0xb0
[    2.457343]  __kasan_slab_free+0x108/0x180
[    2.461456]  kasan_slab_free+0x10/0x18
[    2.465219]  kfree+0x80/0x298
[    2.468207]  release_nodes+0x358/0x3e8
[    2.471975]  devres_release_group+0xd0/0x140
[    2.476261]  component_unbind.isra.0+0x98/0xb8
[    2.480724]  component_bind_all+0x25c/0x3c8
[    2.484924]  imx_drm_bind+0x104/0x1b0
[    2.488605]  try_to_bring_up_master+0x24c/0x2c8
[    2.493153]  __component_add+0x110/0x258
[    2.497090]  component_add+0x10/0x18
[    2.500682]  imx_sec_dsim_probe+0x74/0xa0
[    2.504707]  platform_drv_probe+0x6c/0xc8
[    2.508732]  really_probe+0x148/0x440
[    2.512411]  driver_probe_device+0x74/0x130
[    2.516610]  device_driver_attach+0x94/0xa0
[    2.520807]  __driver_attach+0x70/0x110
[    2.524657]  bus_for_each_dev+0xe4/0x158
[    2.528594]  driver_attach+0x30/0x40
[    2.532183]  bus_add_driver+0x21c/0x2b8
[    2.536036]  driver_register+0xbc/0x1d0
[    2.539889]  __platform_driver_register+0x7c/0x88
[    2.544608]  imx_sec_dsim_driver_init+0x18/0x20
[    2.549152]  do_one_initcall+0xa4/0x24c
[    2.553006]  kernel_init_freeable+0x238/0x2e8
[    2.557380]  kernel_init+0x10/0x114
[    2.560884]  ret_from_fork+0x10/0x1c
[    2.564464]
[    2.565972] The buggy address belongs to the object at ffff000069c1e000
[    2.565972]  which belongs to the cache kmalloc-2k of size 2048
[    2.578510] The buggy address is located 152 bytes inside of
[    2.578510]  2048-byte region [ffff000069c1e000, ffff000069c1e800)
[    2.590343] The buggy address belongs to the page:
[    2.595154] page:fffffe0001870600 refcount:1 mapcount:0 mapping:ffff000068003400 index:0x0 compound_mapcount: 0
[    2.605260] flags: 0xffff00000010200(slab|head)
[    2.609820] raw: 0ffff00000010200 dead000000000100 dead000000000122 ffff000068003400
[    2.617583] raw: 0000000000000000 0000000080080008 00000001ffffffff 0000000000000000
[    2.625339] page dumped because: kasan: bad access detected
[    2.630917]
[    2.632417] Memory state around the buggy address:
[    2.637225]  ffff000069c1df80: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
[    2.644463]  ffff000069c1e000: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
[    2.651700] >ffff000069c1e080: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
[    2.658931]                             ^
[    2.662954]  ffff000069c1e100: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
[    2.670193]  ffff000069c1e180: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
[    2.677421] ==================================================================

Signed-off-by: Fancy Fang <chen.fang@nxp.com>
Reported-by: Bo Zhang <bo.zhang@nxp.com>
(cherry picked from commit 6c91a51df9425a93157409546feca7107baaf4dd)
2020-11-19 13:51:03 +08:00
Fancy Fang
ce8dea542e MLK-24998-9 arm64: dts: imx8mn: assign osc_24m to dsi PHY REF clock source
Due to commit b3a420c9cf3f (MLK-24998-4 drm/bridge: sec-dsim:
use 12MHz for default PHY REF clock), the dsi PHY reference
clock source need to be assigned to osc_24m clock.

Signed-off-by: Fancy Fang <chen.fang@nxp.com>
Reviewed-by: Jacky Bai <ping.bai@nxp.com>
(cherry picked from commit 8e43cd16c8bbfe5b7e3c0fc1e7c3ddf738d8db01)
2020-11-19 13:51:02 +08:00
Fancy Fang
b2afd6ee3f MLK-24998-8 arm64: dts: imx8mm: assign osc_24m to dsi PHY REF clock source
Due to commit b3a420c9cf3f (MLK-24998-4 drm/bridge: sec-dsim:
use 12MHz for default PHY REF clock), the dsi PHY reference
clock source need to be assigned to osc_24m clock.

Signed-off-by: Fancy Fang <chen.fang@nxp.com>
Reviewed-by: Jacky Bai <ping.bai@nxp.com>
(cherry picked from commit 2972241b831ed65f641ccdb80b504cadef0ba591)
2020-11-19 13:51:02 +08:00
Fancy Fang
d7e6489482 MLK-24998-7 drm/imx: lcdifv3: implement mode_valid() for CRTC
Add mode_valid() implementation for CRTC to filter out any
mode which cannot be supported by LCDIFv3. Only check the
CEA and DMT modes for pixel clock round rate is same with
the value from mode.

Signed-off-by: Fancy Fang <chen.fang@nxp.com>
Reviewed-by: Liu Ying <victor.liu@nxp.com>
(cherry picked from commit f252a44da9f90951614c0bf513df6bd4d145e76e)
2020-11-19 13:51:02 +08:00
Fancy Fang
76bc28934e MLK-24998-6 clk: imx: remove 2079M rate from imx_pll1443x_tbl
Due to commit 82586f0aa1c2 (arm64: dts: imx8mp: correct
assigned-clock-rates for video_pll1), so remove unused
2079M clock from imx_pll1443x_tbl.

Signed-off-by: Fancy Fang <chen.fang@nxp.com>
Reviewed-by: Jacky Bai <ping.bai@nxp.com>
(cherry picked from commit b96af227c28b1dfdbdf656de2a77bc4de99136e2)
2020-11-19 13:51:02 +08:00
Fancy Fang
6a759a0628 MLK-24998-5 arm64: dts: imx8mp: correct assigned-clock-rates for lcdif2
According to i.MX8MP Architecture Defition Document, the maximum
clock rate comes generated by 'ccm_media_disp2_pix_clk_root' is
160MHz, so 1039.5MHz clock rate is not supported. And besides,
this clock rate will be set to the matched rate with display mode
in lcdif driver, so it is not necessary to set its rate in its
assigned-clock-rates property, and just leave it to be 0.

Signed-off-by: Fancy Fang <chen.fang@nxp.com>
Reviewed-by: Liu Ying <victor.liu@nxp.com>
(cherry picked from commit 0e3556f282466e6b91def024afc815ef77733161)
2020-11-19 13:51:02 +08:00
Fancy Fang
1e1f957cda MLK-24998-4 drm/bridge: sec-dsim: use 12MHz for default PHY REF clock
After using osc_24m for MIPI PHY reference clock source,
the default PHY reference clock rate should be changed
also accordingly. Here choose 12MHz rate for this since
below usual DSI output DDR clock rates can be derived
from 12MHz reference:

	891000,
	810000,
	792000,
	648000,
	472500,
	445500,
	390000,
	297000,
	240000,
	189000,

Signed-off-by: Fancy Fang <chen.fang@nxp.com>
Reviewed-by: Liu Ying <victor.liu@nxp.com>
(cherry picked from commit b3a420c9cf3fe40c408d4eb58841a0d047c186a4)
2020-11-19 13:51:02 +08:00
Fancy Fang
5fb6a0554e MLK-24998-3 arm64: dts: imx8mp: assign osc_24m to dsi PHY REF clock source
Due to commit 26ef2488a2ef (MLK-24998-1 arm64: dts: imx8mp: correct
assigned-clock-rates for video_pll1), default 27MHz dsi PHY reference
clock cannot be derived from 'vide_pll1', so change to use osc_24m
for the clock source and use 12MHz for dsi reference clock rate, since
below usual DDR clock rates can be derived through 12MHz clock rate:

	891000,
	810000,
	792000,
	648000,
	472500,
	445500,
	390000,
	297000,
	240000,
	189000,

All these clock rates comes from ADV7535 bridge driver.

Signed-off-by: Fancy Fang <chen.fang@nxp.com>
Reviewed-by: Jacky Bai <ping.bai@nxp.com>
(cherry picked from commit f3915cb61639821fbdcdc9db3cf3a8e0880cbca3)
2020-11-19 13:51:02 +08:00
Fancy Fang
255751ef23 MLK-24998-2 arm64: dts: imx8mp-ddr4-evk: correct assigned-clock-rates for video_pll1
According to i.MX8MP Architecture Defition Document, the maximum
output frequency generated by video_pll1 is 1190MHz, so correct
its assigned-clock-rates to be 1039.5MHz to meet the spec.

Signed-off-by: Fancy Fang <chen.fang@nxp.com>
Reviewed-by: Jacky Bai <ping.bai@nxp.com>
(cherry picked from commit 1dff13053bf83c2d4fb818562a086ad834f2a0bf)
2020-11-19 13:51:02 +08:00
Fancy Fang
f144aafa9f MLK-24998-1 arm64: dts: imx8mp: correct assigned-clock-rates for video_pll1
According to i.MX8MP Architecture Defition Document, the maximum
output frequency generated by video_pll1 is 1190MHz, so correct
its assigned-clock-rates to be 1039.5MHz to meet the spec.

Signed-off-by: Fancy Fang <chen.fang@nxp.com>
Reviewed-by: Jacky Bai <ping.bai@nxp.com>
(cherry picked from commit b935595aa00859887a407dc6900763bfd41dfac2)
2020-11-19 13:51:02 +08:00