<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/drivers/gpu/drm/mxsfb, branch v5.19</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=v5.19</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=v5.19'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2022-05-04T23:03:49+00:00</updated>
<entry>
<title>drm: mxsfb: Implement LCDIF scanout CRC32 support</title>
<updated>2022-05-04T23:03:49+00:00</updated>
<author>
<name>Marek Vasut</name>
<email>marex@denx.de</email>
</author>
<published>2022-04-29T21:23:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=05ecc678357ae0929835b24f40a9ea8a1fcb105a'/>
<id>urn:sha1:05ecc678357ae0929835b24f40a9ea8a1fcb105a</id>
<content type='text'>
The LCDIF controller as present in i.MX28/i.MX6SX/i.MX8M Mini/Nano has
CRC_STAT register, which contains CRC32 of the frame as it was clocked
out of the DPI interface of the LCDIF. This is most likely meant as a
functional safety feature.

Unfortunately, there is zero documentation on how the CRC32 is calculated,
there is no documentation of the polynomial, the init value, nor on which
data is the checksum applied.

By applying brute-force on 8 pixel / 2 line frame, which is the minimum
size LCDIF would work with, it turns out the polynomial is CRC32_POLY_LE
0xedb88320 , init value is 0xffffffff , the input data are bitrev32()
of the entire frame and the resulting CRC has to be also bitrev32()ed.

Doing this calculation in kernel for each frame is unrealistic due to the
CPU demand, so attach the CRC collected from hardware to a frame instead.
The DRM subsystem already has an interface for this purpose and the CRC
can be accessed e.g. via debugfs:
"
$ echo auto &gt; /sys/kernel/debug/dri/1/crtc-0/crc/control
$ cat /sys/kernel/debug/dri/1/crtc-0/crc/data
0x0000408c 0xa4e5cdd8
0x0000408d 0x72f537b4
"
The per-frame CRC can be used by userspace e.g. during automated testing,
to verify that whatever buffer was sent to be scanned out was actually
scanned out of the LCDIF correctly.

Acked-by: Lucas Stach &lt;l.stach@pengutronix.de&gt;
Acked-by: Stefan Agner &lt;stefan@agner.ch&gt;
Signed-off-by: Marek Vasut &lt;marex@denx.de&gt;
Cc: Alexander Stein &lt;alexander.stein@ew.tq-group.com&gt;
Cc: Laurent Pinchart &lt;laurent.pinchart@ideasonboard.com&gt;
Cc: Lucas Stach &lt;l.stach@pengutronix.de&gt;
Cc: Peng Fan &lt;peng.fan@nxp.com&gt;
Cc: Robby Cai &lt;robby.cai@nxp.com&gt;
Cc: Sam Ravnborg &lt;sam@ravnborg.org&gt;
Cc: Stefan Agner &lt;stefan@agner.ch&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20220429212313.305556-1-marex@denx.de
</content>
</entry>
<entry>
<title>drm: mxsfb: Obtain bus flags from bridge state</title>
<updated>2022-04-25T22:03:21+00:00</updated>
<author>
<name>Marek Vasut</name>
<email>marex@denx.de</email>
</author>
<published>2022-04-17T02:10:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=57e6f0562cb40d54dbe030f94c6307665b69a594'/>
<id>urn:sha1:57e6f0562cb40d54dbe030f94c6307665b69a594</id>
<content type='text'>
In case the MXSFB is connected to a bridge, attempt to obtain bus flags
from that bridge state too. The bus flags may specify e.g. the DE signal
polarity.

Acked-by: Alexander Stein &lt;alexander.stein@ew.tq-group.com&gt;
Signed-off-by: Marek Vasut &lt;marex@denx.de&gt;
Cc: Alexander Stein &lt;alexander.stein@ew.tq-group.com&gt;
Cc: Laurent Pinchart &lt;laurent.pinchart@ideasonboard.com&gt;
Cc: Lucas Stach &lt;l.stach@pengutronix.de&gt;
Cc: Peng Fan &lt;peng.fan@nxp.com&gt;
Cc: Robby Cai &lt;robby.cai@nxp.com&gt;
Cc: Sam Ravnborg &lt;sam@ravnborg.org&gt;
Cc: Stefan Agner &lt;stefan@agner.ch&gt;
Reviewed-by: Lucas Stach &lt;l.stach@pengutronix.de&gt;
Reviewed-by: Laurent Pinchart &lt;laurent.pinchart@ideasonboard.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20220417021011.337066-1-marex@denx.de
</content>
</entry>
<entry>
<title>drm: mxsfb: Reorder mxsfb_crtc_mode_set_nofb()</title>
<updated>2022-04-25T22:01:56+00:00</updated>
<author>
<name>Marek Vasut</name>
<email>marex@denx.de</email>
</author>
<published>2022-04-17T02:08:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=3604f1e5319bb1a284cc8d600d89dc0cc3bc8ed8'/>
<id>urn:sha1:3604f1e5319bb1a284cc8d600d89dc0cc3bc8ed8</id>
<content type='text'>
Reorder mxsfb_crtc_mode_set_nofb() such that all functions which perform
register IO are called from one single location in this function. This is
a clean up. No functional change.

Reviewed-by: Lucas Stach &lt;l.stach@pengutronix.de&gt;
Signed-off-by: Marek Vasut &lt;marex@denx.de&gt;
Cc: Alexander Stein &lt;alexander.stein@ew.tq-group.com&gt;
Cc: Laurent Pinchart &lt;laurent.pinchart@ideasonboard.com&gt;
Cc: Lucas Stach &lt;l.stach@pengutronix.de&gt;
Cc: Peng Fan &lt;peng.fan@nxp.com&gt;
Cc: Robby Cai &lt;robby.cai@nxp.com&gt;
Cc: Sam Ravnborg &lt;sam@ravnborg.org&gt;
Cc: Stefan Agner &lt;stefan@agner.ch&gt;
Acked-by: Sam Ravnborg &lt;sam@ravnborg.org&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20220417020800.336675-4-marex@denx.de
</content>
</entry>
<entry>
<title>drm: mxsfb: Factor out mxsfb_set_mode()</title>
<updated>2022-04-25T22:01:55+00:00</updated>
<author>
<name>Marek Vasut</name>
<email>marex@denx.de</email>
</author>
<published>2022-04-17T02:07:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=268a06e1dc82ef8de2251690cb84bacbbb58b376'/>
<id>urn:sha1:268a06e1dc82ef8de2251690cb84bacbbb58b376</id>
<content type='text'>
Pull mode registers programming from mxsfb_enable_controller() into
dedicated function mxsfb_set_mode(). This is a clean up. No functional
change.

Signed-off-by: Marek Vasut &lt;marex@denx.de&gt;
Cc: Alexander Stein &lt;alexander.stein@ew.tq-group.com&gt;
Cc: Laurent Pinchart &lt;laurent.pinchart@ideasonboard.com&gt;
Cc: Lucas Stach &lt;l.stach@pengutronix.de&gt;
Cc: Peng Fan &lt;peng.fan@nxp.com&gt;
Cc: Robby Cai &lt;robby.cai@nxp.com&gt;
Cc: Sam Ravnborg &lt;sam@ravnborg.org&gt;
Cc: Stefan Agner &lt;stefan@agner.ch&gt;
Acked-by: Sam Ravnborg &lt;sam@ravnborg.org&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20220417020800.336675-3-marex@denx.de
</content>
</entry>
<entry>
<title>drm: mxsfb: Replace mxsfb_get_fb_paddr() with drm_fb_cma_get_gem_addr()</title>
<updated>2022-04-25T22:01:55+00:00</updated>
<author>
<name>Marek Vasut</name>
<email>marex@denx.de</email>
</author>
<published>2022-04-17T02:07:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=cb285a5348e768dbc8edfe28cc2be5ec0c7e1a33'/>
<id>urn:sha1:cb285a5348e768dbc8edfe28cc2be5ec0c7e1a33</id>
<content type='text'>
Replace mxsfb_get_fb_paddr() with drm_fb_cma_get_gem_addr() to correctly handle
FB offset.

Signed-off-by: Marek Vasut &lt;marex@denx.de&gt;
Cc: Alexander Stein &lt;alexander.stein@ew.tq-group.com&gt;
Cc: Laurent Pinchart &lt;laurent.pinchart@ideasonboard.com&gt;
Cc: Lucas Stach &lt;l.stach@pengutronix.de&gt;
Cc: Peng Fan &lt;peng.fan@nxp.com&gt;
Cc: Robby Cai &lt;robby.cai@nxp.com&gt;
Cc: Sam Ravnborg &lt;sam@ravnborg.org&gt;
Cc: Stefan Agner &lt;stefan@agner.ch&gt;
Acked-by: Sam Ravnborg &lt;sam@ravnborg.org&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20220417020800.336675-2-marex@denx.de
</content>
</entry>
<entry>
<title>drm: mxsfb: Wrap FIFO reset and comments into mxsfb_reset_block()</title>
<updated>2022-04-25T22:01:54+00:00</updated>
<author>
<name>Marek Vasut</name>
<email>marex@denx.de</email>
</author>
<published>2022-04-17T02:07:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=e518a9dc81d3de494640ba0ae2677d3d43a3709b'/>
<id>urn:sha1:e518a9dc81d3de494640ba0ae2677d3d43a3709b</id>
<content type='text'>
Wrap FIFO reset and comments into mxsfb_reset_block(), this is a clean up.
No functional change.

Reviewed-by: Lucas Stach &lt;l.stach@pengutronix.de&gt;
Signed-off-by: Marek Vasut &lt;marex@denx.de&gt;
Cc: Alexander Stein &lt;alexander.stein@ew.tq-group.com&gt;
Cc: Laurent Pinchart &lt;laurent.pinchart@ideasonboard.com&gt;
Cc: Lucas Stach &lt;l.stach@pengutronix.de&gt;
Cc: Peng Fan &lt;peng.fan@nxp.com&gt;
Cc: Robby Cai &lt;robby.cai@nxp.com&gt;
Cc: Sam Ravnborg &lt;sam@ravnborg.org&gt;
Cc: Stefan Agner &lt;stefan@agner.ch&gt;
Acked-by: Sam Ravnborg &lt;sam@ravnborg.org&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20220417020800.336675-1-marex@denx.de
</content>
</entry>
<entry>
<title>Merge tag 'drm-misc-next-2022-02-23' of git://anongit.freedesktop.org/drm/drm-misc into drm-next</title>
<updated>2022-02-24T19:50:18+00:00</updated>
<author>
<name>Dave Airlie</name>
<email>airlied@redhat.com</email>
</author>
<published>2022-02-24T19:30:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=54f43c17d681f6d9523fcfaeefc9df77993802e1'/>
<id>urn:sha1:54f43c17d681f6d9523fcfaeefc9df77993802e1</id>
<content type='text'>
drm-misc-next for v5.18:

UAPI Changes:

Cross-subsystem Changes:
- Split out panel-lvds and lvds dt bindings .
- Put yes/no on/off disabled/enabled strings in linux/string_helpers.h
  and use it in drivers and tomoyo.
- Clarify dma_fence_chain and dma_fence_array should never include eachother.
- Flatten chains in syncobj's.
- Don't double add in fbdev/defio when page is already enlisted.
- Don't sort deferred-I/O pages by default in fbdev.

Core Changes:
- Fix missing pm_runtime_put_sync in bridge.
- Set modifier support to only linear fb modifier if drivers don't
  advertise support.
- As a result, we remove allow_fb_modifiers.
- Add missing clear for EDID Deep Color Modes in drm_reset_display_info.
- Assorted documentation updates.
- Warn once in drm_clflush if there is no arch support.
- Add missing select for dp helper in drm_panel_edp.
- Assorted small fixes.
- Improve fb-helper's clipping handling.
- Don't dump shmem mmaps in a core dump.
- Add accounting to ttm resource manager, and use it in amdgpu.
- Allow querying the detected eDP panel through debugfs.
- Add helpers for xrgb8888 to 8 and 1 bits gray.
- Improve drm's buddy allocator.
- Add selftests for the buddy allocator.

Driver Changes:
- Add support for nomodeset to a lot of drm drivers.
- Use drm_module_*_driver in a lot of drm drivers.
- Assorted small fixes to bridge/lt9611, v3d, vc4, vmwgfx, mxsfb, nouveau,
  bridge/dw-hdmi, panfrost, lima, ingenic, sprd, bridge/anx7625, ti-sn65dsi86.
- Add bridge/it6505.
- Create DP and DVI-I connectors in ast.
- Assorted nouveau backlight fixes.
- Rework amdgpu reset handling.
- Add dt bindings for ingenic,jz4780-dw-hdmi.
- Support reading edid through aux channel in ingenic.
- Add a drm driver for Solomon SSD130x OLED displays.
- Add simple support for sharp LQ140M1JW46.
- Add more panels to nt35560.

Signed-off-by: Dave Airlie &lt;airlied@redhat.com&gt;

From: Maarten Lankhorst &lt;maarten.lankhorst@linux.intel.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/686ec871-e77f-c230-22e5-9e3bb80f064a@linux.intel.com
</content>
</entry>
<entry>
<title>Backmerge tag 'v5.17-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux into drm-next</title>
<updated>2022-02-14T00:52:27+00:00</updated>
<author>
<name>Dave Airlie</name>
<email>airlied@redhat.com</email>
</author>
<published>2022-02-14T00:52:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=b9c7babe2c2e37a50aa42401b38d597ea78f506e'/>
<id>urn:sha1:b9c7babe2c2e37a50aa42401b38d597ea78f506e</id>
<content type='text'>
Daniel asked for this for some intel deps, so let's do it now.

Signed-off-by: Dave Airlie &lt;airlied@redhat.com&gt;
</content>
</entry>
<entry>
<title>drm: mxsfb: Use dev_err_probe() helper</title>
<updated>2022-02-03T08:50:15+00:00</updated>
<author>
<name>Alexander Stein</name>
<email>alexander.stein@ew.tq-group.com</email>
</author>
<published>2022-02-02T08:17:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=c5e804ba38b5a3aa230e2a0ae9ed8058235f52d4'/>
<id>urn:sha1:c5e804ba38b5a3aa230e2a0ae9ed8058235f52d4</id>
<content type='text'>
Use the dev_err_probe() helper, instead of open-coding the same
operation. This also adds a nice hint in
/sys/kernel/debug/devices_deferred.

Reviewed-by: Marek Vasut &lt;marex@denx.de&gt;
Signed-off-by: Alexander Stein &lt;alexander.stein@ew.tq-group.com&gt;
Signed-off-by: Marek Vasut &lt;marex@denx.de&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20220202081755.145716-2-alexander.stein@ew.tq-group.com
</content>
</entry>
<entry>
<title>drm: mxsfb: Fix NULL pointer dereference</title>
<updated>2022-02-03T08:31:16+00:00</updated>
<author>
<name>Alexander Stein</name>
<email>alexander.stein@ew.tq-group.com</email>
</author>
<published>2022-02-02T08:17:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=622c9a3a7868e1eeca39c55305ca3ebec4742b64'/>
<id>urn:sha1:622c9a3a7868e1eeca39c55305ca3ebec4742b64</id>
<content type='text'>
mxsfb should not ever dereference the NULL pointer which
drm_atomic_get_new_bridge_state is allowed to return.
Assume a fixed format instead.

Fixes: b776b0f00f24 ("drm: mxsfb: Use bus_format from the nearest bridge if present")
Signed-off-by: Alexander Stein &lt;alexander.stein@ew.tq-group.com&gt;
Signed-off-by: Marek Vasut &lt;marex@denx.de&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20220202081755.145716-3-alexander.stein@ew.tq-group.com
</content>
</entry>
</feed>
