<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/drivers/gpu/drm/sun4i/sun8i_vi_scaler.c, branch v6.19.11</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=v6.19.11</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=v6.19.11'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2025-11-12T09:18:25+00:00</updated>
<entry>
<title>drm/sun4i: layer: replace mixer with layer struct</title>
<updated>2025-11-12T09:18:25+00:00</updated>
<author>
<name>Jernej Skrabec</name>
<email>jernej.skrabec@gmail.com</email>
</author>
<published>2025-11-04T18:09:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=bb1d2ddee5c45017e6b6e50c9eda02cb2bd600b6'/>
<id>urn:sha1:bb1d2ddee5c45017e6b6e50c9eda02cb2bd600b6</id>
<content type='text'>
This allows to almost completely decouple layer code from mixer. This is
important for DE33.

Reviewed-by: Chen-Yu Tsai &lt;wens@kernel.org&gt;
Tested-by: Ryan Walklin &lt;ryan@testtoast.com&gt;
Signed-off-by: Jernej Skrabec &lt;jernej.skrabec@gmail.com&gt;
Link: https://patch.msgid.link/20251104180942.61538-29-jernej.skrabec@gmail.com
Signed-off-by: Chen-Yu Tsai &lt;wens@kernel.org&gt;
</content>
</entry>
<entry>
<title>drm/sun4i: vi_scaler: Update DE33 base calculation</title>
<updated>2025-11-12T09:18:24+00:00</updated>
<author>
<name>Jernej Skrabec</name>
<email>jernej.skrabec@gmail.com</email>
</author>
<published>2025-11-04T18:09:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=c0cbdda9abd957c2392fb7b77bb3af16fb7f760a'/>
<id>urn:sha1:c0cbdda9abd957c2392fb7b77bb3af16fb7f760a</id>
<content type='text'>
Now that channel base calculation is straightforward, let's update VI
scaler base calculation to be simpler. At the same time, also introduce
macro to avoid magic numbers.

Note, reason why current magic value and new macro value isn't the same
is because sun8i_channel_base() already introduces offset to channel
registers. Previous value is just the difference to VI scaler registers.
However, new code calculates scaler base from channel base. This is also
easier to understand when looking into BSP driver. Macro value can be
easily found whereas old diff value was not.

Reviewed-by: Chen-Yu Tsai &lt;wens@kernel.org&gt;
Tested-by: Ryan Walklin &lt;ryan@testtoast.com&gt;
Signed-off-by: Jernej Skrabec &lt;jernej.skrabec@gmail.com&gt;
Link: https://patch.msgid.link/20251104180942.61538-24-jernej.skrabec@gmail.com
Signed-off-by: Chen-Yu Tsai &lt;wens@kernel.org&gt;
</content>
</entry>
<entry>
<title>drm/sun4i: layers: Make regmap for layers configurable</title>
<updated>2025-11-12T09:18:23+00:00</updated>
<author>
<name>Jernej Skrabec</name>
<email>jernej.skrabec@gmail.com</email>
</author>
<published>2025-11-04T18:09:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=37aba59f5fd4389bac39fcff40baafa672a238c8'/>
<id>urn:sha1:37aba59f5fd4389bac39fcff40baafa672a238c8</id>
<content type='text'>
Till DE33, there were no reason to decouple registers from mixer.
However, with future new plane driver, this will be necessary.

Reviewed-by: Chen-Yu Tsai &lt;wens@kernel.org&gt;
Tested-by: Ryan Walklin &lt;ryan@testtoast.com&gt;
Signed-off-by: Jernej Skrabec &lt;jernej.skrabec@gmail.com&gt;
Link: https://patch.msgid.link/20251104180942.61538-21-jernej.skrabec@gmail.com
Signed-off-by: Chen-Yu Tsai &lt;wens@kernel.org&gt;
</content>
</entry>
<entry>
<title>drm/sun4i: vi_scaler: use layer instead of mixer for args</title>
<updated>2025-11-12T09:18:23+00:00</updated>
<author>
<name>Jernej Skrabec</name>
<email>jernej.skrabec@gmail.com</email>
</author>
<published>2025-11-04T18:09:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=f54c353cffa4997f67103cb9b045594755f204b0'/>
<id>urn:sha1:f54c353cffa4997f67103cb9b045594755f204b0</id>
<content type='text'>
Layer related peripherals should take layer struct as a input. This
looks cleaner and also necessary for proper DE33 support later.

Reviewed-by: Chen-Yu Tsai &lt;wens@kernel.org&gt;
Tested-by: Ryan Walklin &lt;ryan@testtoast.com&gt;
Signed-off-by: Jernej Skrabec &lt;jernej.skrabec@gmail.com&gt;
Link: https://patch.msgid.link/20251104180942.61538-20-jernej.skrabec@gmail.com
Signed-off-by: Chen-Yu Tsai &lt;wens@kernel.org&gt;
</content>
</entry>
<entry>
<title>drm: sun4i: de33: vi_scaler: add Display Engine 3.3 (DE33) support</title>
<updated>2025-06-02T07:59:10+00:00</updated>
<author>
<name>Jernej Skrabec</name>
<email>jernej.skrabec@gmail.com</email>
</author>
<published>2025-05-28T09:22:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=9e623068f177187091ded170713f8dee3dcc1019'/>
<id>urn:sha1:9e623068f177187091ded170713f8dee3dcc1019</id>
<content type='text'>
The vi_scaler appears to be used in preference to the ui_scaler module
for hardware video scaling in the DE33.

Enable support for this scaler.

Signed-off-by: Jernej Skrabec &lt;jernej.skrabec@gmail.com&gt;
Signed-off-by: Ryan Walklin &lt;ryan@testtoast.com&gt;
Acked-by: Maxime Ripard &lt;mripard@kernel.org&gt;
Reviewed-by: Chen-Yu Tsai &lt;wens@csie.org&gt;
Link: https://lore.kernel.org/r/20250528092431.28825-8-ryan@testtoast.com
Signed-off-by: Maxime Ripard &lt;mripard@kernel.org&gt;
</content>
</entry>
<entry>
<title>drm: sun4i: de2/de3: add mixer version enum</title>
<updated>2025-06-02T07:57:17+00:00</updated>
<author>
<name>Jernej Skrabec</name>
<email>jernej.skrabec@gmail.com</email>
</author>
<published>2025-05-28T09:22:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=81cf7c68794c4733fd9f8f2889c7596aa813e55d'/>
<id>urn:sha1:81cf7c68794c4733fd9f8f2889c7596aa813e55d</id>
<content type='text'>
The Allwinner DE2 and DE3 display engine mixers are currently identified
by a simple boolean flag. This will not scale to support additional DE
variants.

Convert the boolean flag to an enum.

Signed-off-by: Jernej Skrabec &lt;jernej.skrabec@gmail.com&gt;
Signed-off-by: Ryan Walklin &lt;ryan@testtoast.com&gt;
Reviewed-by: Andre Przywara &lt;andre.przywara@arm.com&gt;
Acked-by: Maxime Ripard &lt;mripard@kernel.org&gt;
Reviewed-by: Chen-Yu Tsai &lt;wens@csie.org&gt;
Link: https://lore.kernel.org/r/20250528092431.28825-2-ryan@testtoast.com
Signed-off-by: Maxime Ripard &lt;mripard@kernel.org&gt;
</content>
</entry>
<entry>
<title>drm/sun4i: Add basic support for DE3</title>
<updated>2018-11-05T10:48:23+00:00</updated>
<author>
<name>Jernej Skrabec</name>
<email>jernej.skrabec@siol.net</email>
</author>
<published>2018-11-04T18:26:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=c50519e6db4d6425538cdc1a6df5f3cec35997fd'/>
<id>urn:sha1:c50519e6db4d6425538cdc1a6df5f3cec35997fd</id>
<content type='text'>
Display Engine 3 is an upgrade of DE2 with new features like support for
10 bit color formats and support for AFBC.

Most of DE2 code works with DE3, except some small details.

Implement basic support for DE3. Support for 10 bit colort formats and
AFBC, among others missing features, will be added later.

Signed-off-by: Jernej Skrabec &lt;jernej.skrabec@siol.net&gt;
Signed-off-by: Maxime Ripard &lt;maxime.ripard@bootlin.com&gt;
Link: https://patchwork.freedesktop.org/patch/260238/
</content>
</entry>
<entry>
<title>drm/sun4i: Rework DE2 register defines</title>
<updated>2018-11-05T09:34:43+00:00</updated>
<author>
<name>Jernej Skrabec</name>
<email>jernej.skrabec@siol.net</email>
</author>
<published>2018-11-04T18:26:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=4b09c07383132d67e4e297d4eb35dbae596ea74e'/>
<id>urn:sha1:4b09c07383132d67e4e297d4eb35dbae596ea74e</id>
<content type='text'>
Most, if not all, registers found in DE2 still exists in DE3. However,
units are on different base addresses.

To prepare for addition of DE3 support, registers macros are reworked so
they take base address as parameter.

Signed-off-by: Jernej Skrabec &lt;jernej.skrabec@siol.net&gt;
[rebased]
Signed-off-by: Icenowy Zheng &lt;icenowy@aosc.io&gt;
Signed-off-by: Maxime Ripard &lt;maxime.ripard@bootlin.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20181104182705.18047-10-jernej.skrabec@siol.net
</content>
</entry>
<entry>
<title>drm/sun4i: Expand DE2 scaler lib with YUV support</title>
<updated>2017-12-05T12:22:44+00:00</updated>
<author>
<name>Jernej Skrabec</name>
<email>jernej.skrabec@siol.net</email>
</author>
<published>2017-12-01T06:05:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=1343bd6c23dc6b159e0f349e0656d838b0dff645'/>
<id>urn:sha1:1343bd6c23dc6b159e0f349e0656d838b0dff645</id>
<content type='text'>
Basic principle of operation when using YUV framebuffer is that chroma
planes have to be upscaled to same size as luma.

Because of that, expand DE2 scaler library to support that.

BSP driver uses another set of FIR filter coefficients for YUV planes.

Signed-off-by: Jernej Skrabec &lt;jernej.skrabec@siol.net&gt;
Signed-off-by: Maxime Ripard &lt;maxime.ripard@free-electrons.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20171201060550.10392-26-jernej.skrabec@siol.net
</content>
</entry>
<entry>
<title>drm/sun4i: Add support for HW scaling to DE2</title>
<updated>2017-12-05T12:22:44+00:00</updated>
<author>
<name>Jernej Skrabec</name>
<email>jernej.skrabec@siol.net</email>
</author>
<published>2017-12-01T06:05:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=b862a648de3b9ddaad772e11f0db4046d469e88e'/>
<id>urn:sha1:b862a648de3b9ddaad772e11f0db4046d469e88e</id>
<content type='text'>
Scaling is currently supported only for RGB framebuffers

Coefficients and algorithm which coefficients to select are taken
from BSP driver.

Signed-off-by: Jernej Skrabec &lt;jernej.skrabec@siol.net&gt;
Signed-off-by: Maxime Ripard &lt;maxime.ripard@free-electrons.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20171201060550.10392-22-jernej.skrabec@siol.net
</content>
</entry>
</feed>
