> On 28 Aug 2024, at 7:07 PM, Maxime Ripard wrote:
>
> On Tue, Aug 27, 2024 at 06:28:21PM GMT, Neil Armstrong wrote:
>>> Thanks both for the further feedback, agreed logical to use the
>>> device vendor and panel serial number, ie "anbernic,wl-355608-a8".
>>> Will post a V2 with a comment to
On Fri, 30 Aug 2024, at 7:56 PM, Neil Armstrong wrote:
Thanks Neil,
>
> The only valid compatible with anbernic would be to use the exact
> device in use and not a wildcard,
> so you said the 3 devices using this panel are:
> anbernic,rg35xx-2024
> anbernic,rg35xx-plus
> anbernic,rg35xx-h
NV3052C panel
driver with the new compatible.
Ryan Walklin (2):
dt-bindings: display: panel: Rename WL-355608-A8 panel to
rg35xx-*-panel
drm: panel: nv3052c: Correct WL-355608-A8 panel compatible
...08-a8.yaml => anbernic,rg35xx-plus-panel.yaml} | 15 +++
drivers/gpu/
e and compatible string to reflect the convention.
Fixes: f08aac40639c ("drm: panel: nv3052c: Add WL-355608-A8 panel")
Signed-off-by: Ryan Walklin
--
Changelog v1..v2:
- Use known panel serial for compatible name rather than referencing
integrating devices as per feedback [1] from DT maintaine
As per the previous dt-binding commit, update the WL-355608-A8 panel
compatible to reflect the the integrating device vendor and name as the
panel OEM is unknown.
Signed-off-by: Ryan Walklin
--
Changelog v2..v3:
- Use integrating device name with vendor prefix instead of OEM serial
-chipselects and sck-gpios to the DT binding
example, identified by make dt_bindings_check as required for bit-banged SPI
over GPIO lines.
Ryan Walklin (3):
dt-bindings: display: panel: Rename WL-355608-A8 panel
drm: panel: nv3052c: Correct WL-355608-A8 panel compatible
dt-bindings: display
evice vendor and name where the OEM is unknown.
Alter the filename and compatible string to reflect the convention.
Fixes: f08aac40639c ("drm: panel: nv3052c: Add WL-355608-A8 panel")
Signed-off-by: Ryan Walklin
--
Changelog v1..v2:
- Use known panel serial for compatible name rather t
As per the previous dt-binding commit, update the WL-355608-A8 panel
compatible to reflect the the integrating device vendor.
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/panel/panel-newvision-nv3052c.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/panel
make dt_bindings_check reports that sck-gpios and num-chipselects are
required for spi nodes, therefore add these to the example.
Signed-off-by: Ryan Walklin
---
.../bindings/display/panel/anbernic,wl-355608-a8.yaml | 3 +++
1 file changed, 3 insertions(+)
diff --git
a/Documentation
3.3 (DE33) support
drm: sun4i: de33: vi_scaler: add Display Engine 3.3 (DE33) support
drm: sun4i: de33: fmt: add Display Engine 3.3 (DE33) support
drm: sun4i: de33: csc: add Display Engine 3.3 (DE33) support
Ryan Walklin (3):
drm: sun4i: de2/de3: refactor mixer initialisation
dt-bindings
esn't make any functional change.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
Reviewed-by: Andre Przywara
---
drivers/gpu/drm/sun4i/sun8i_csc.c | 22 +++---
drivers/gpu/drm/sun4i/sun8i_csc.h | 10 +-
drivers/gpu/drm/sun4i/sun8i_vi_la
ll be supported in
later commits.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_csc.c | 89 ++
drivers/gpu/drm/sun4i/sun8i_csc.h | 9 ++-
drivers/gpu/drm/sun4i/sun8i_vi_layer.c | 11 +---
3 files changed, 40 insertions(+
h use cases, add
a call to CSC setup function also in UI layer code. For DE2, this will
be a no-op, but it will allow DE3 to output signal in multiple formats.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_csc.c | 8 +---
drivers/gpu/drm/
From: Jernej Skrabec
drm_universal_plane_init() can already call some callbacks, like
format_mod_supported, during initialization. Because of that, fields
should be initialized beforehand.
Signed-off-by: Jernej Skrabec
Co-developed-by: Ryan Walklin
Signed-off-by: Ryan Walklin
---
drivers
From: Jernej Skrabec
The display engine formatter (FMT) module is present in the DE3 engine
and provides YUV444 to YUV422/YUV420 conversion, format re-mapping and
color depth conversion.
Add support for this module.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu
From: Jernej Skrabec
The DE3 display engine supports YUV formats in addition to RGB.
Add an optional format enumeration function to the engine.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sunxi_engine.h | 29
1 file
-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_mixer.c | 1 +
drivers/gpu/drm/sun4i/sun8i_mixer.h | 2 ++
2 files changed, 3 insertions(+)
diff --git a/drivers/gpu/drm/sun4i/sun8i_mixer.c
b/drivers/gpu/drm/sun4i/sun8i_mixer.c
index 01382860aaeea
variables.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_mixer.c | 55 ++--
drivers/gpu/drm/sun4i/sunxi_engine.h | 5 +++
2 files changed, 56 insertions(+), 4 deletions(-)
diff --git a/drivers/gpu/drm/sun4i/sun8i_mixer.c
b
.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_csc.c | 6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/sun4i/sun8i_csc.c
b/drivers/gpu/drm/sun4i/sun8i_csc.c
index 68d955c63b05b..8a336ccb27d33 100644
--- a/drivers/gpu
From: Jernej Skrabec
Add coefficients and support for YUV formats to the display engine
colorspace and dynamic range correction submodule.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_csc.c | 164 +-
1 file changed, 162
From: Jernej Skrabec
Account for U/V channel subsampling by reducing the dot clock and
resolution with a divider in the DE3 timing controller if a YUV format
is selected.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun4i_tcon.c | 26
From: Jernej Skrabec
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_vi_scaler.c | 85 +
1 file changed, 58 insertions(+), 27 deletions(-)
diff --git a/drivers/gpu/drm/sun4i/sun8i_vi_scaler.c
b/drivers/gpu/drm/sun4i
From: Jernej Skrabec
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
Signed-off-by: Ryan Walklin
Reviewed-by: Andre
Now that the DE variant can be selected by enum, take the oppportunity
to factor out some common initialisation code to a separate function.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
Reviewed-by: Andre Przywara
--
Changelog v1..v2:
- Combine base register allocation and
vi_scaler_disable() function.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_vi_layer.c | 3 +--
drivers/gpu/drm/sun4i/sun8i_vi_scaler.c | 21 +++--
drivers/gpu/drm/sun4i/sun8i_vi_scaler.h | 2 +-
3 files changed, 13 insertions(+), 13 deletions
From: Jernej Skrabec
The DE2 and DE3 engines have a single register range, whereas the DE33
separates these out into top and display groups.
Prepare for this by adding a function to look these up based on the DE
type.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu
er, I haven't
observed any SoC with such feature.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/Makefile | 2 +-
drivers/gpu/drm/sun4i/sun50i_afbc.c| 250 +
drivers/gpu/drm/sun4i/sun50i_afbc.h| 87 +
d
engine bus, clock and mixer bindings for the DE33.
Signed-off-by: Ryan Walklin
--
Changelog v1..v2:
- Correct DE2 bus enum to reflect fallback devices accurately.
---
.../devicetree/bindings/bus/allwinner,sun50i-a64-de2.yaml | 4 +++-
.../bindings/clock/allwinner,sun8i-a83t-de2-clk.yaml
ARM Frame Buffer Compression support
- YUV420 input support
Extend the mixer to support the DE33.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_mixer.c | 110
drivers/gpu/drm/sun4i/sun8i_mixer.h | 16 +++-
2 files changed
From: Jernej Skrabec
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
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_ui_layer.c | 19
.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun50i_fmt.c | 21 +++--
drivers/gpu/drm/sun4i/sun50i_fmt.h | 1 +
2 files changed, 20 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/sun4i/sun50i_fmt.c
b/drivers/gpu/drm/sun4i
From: Jernej Skrabec
Like earlier DE versions, the DE33 has a CSC (Color Space Correction)
module. which provides color space conversion between BT2020/BT709, and
dynamic range conversion between SDR/ST2084/HLG.
Add support for the DE33.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan
out-of-tree driver.
Add the required clock description struct and compatible string to the
DE2 driver.
Signed-off-by: Ryan Walklin
---
drivers/clk/sunxi-ng/ccu-sun8i-de2.c | 25 +
1 file changed, 25 insertions(+)
diff --git a/drivers/clk/sunxi-ng/ccu-sun8i-de2.c
b
Hi Stephen, thanks for reviewing.
On Thu, 4 Jul 2024, at 11:02 AM, Stephen Boyd wrote:
> Quoting Ryan Walklin (2024-07-03 03:51:09)
>> +#include
>
> What is this include for?
>
for writel, however have confirmed this should instead be #include ,
will correct for
On Thu, 4 Jul 2024, at 3:38 AM, Conor Dooley wrote:
> I forgot to reply to, or somehow didn't notice your reply to my comments
> on this patch. I would just drop this change as I think it's a tooling
> issue. I checked the version of dt-schema etc that I have here locally
> and there were no compla
On Thu, 4 Jul 2024, at 3:28 AM, Conor Dooley wrote:
>> Add display engine bus, clock and mixer bindings for the DE33.
>>
>> Signed-off-by: Ryan Walklin
>
> Probably this should be 3 patches given 3 subsystems, but the content is
> Acked-by: Conor Dooley
>
> Chee
esn't make any functional change.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
Reviewed-by: Andre Przywara
---
drivers/gpu/drm/sun4i/sun8i_csc.c | 22 +++---
drivers/gpu/drm/sun4i/sun8i_csc.h | 10 +-
drivers/gpu/drm/sun4i/sun8i_vi_la
(DE33) support
drm: sun4i: de33: vi_scaler: add Display Engine 3.3 (DE33) support
drm: sun4i: de33: fmt: add Display Engine 3.3 (DE33) support
drm: sun4i: de33: csc: add Display Engine 3.3 (DE33) support
Ryan Walklin (3):
dt-bindings: allwinner: add H616 DE33 bus binding
dt-bindings
h use cases, add
a call to CSC setup function also in UI layer code. For DE2, this will
be a no-op, but it will allow DE3 to output signal in multiple formats.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_csc.c | 8 +---
drivers/gpu/drm/
-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
Reviewed-by: Andre Przywara
---
drivers/gpu/drm/sun4i/sun8i_csc.c | 89 ++
drivers/gpu/drm/sun4i/sun8i_csc.h | 9 ++-
drivers/gpu/drm/sun4i/sun8i_vi_layer.c | 11 +---
3 files changed, 40 insertions(+), 69
From: Jernej Skrabec
drm_universal_plane_init() can already call some callbacks, like
format_mod_supported, during initialization. Because of that, fields
should be initialized beforehand.
Signed-off-by: Jernej Skrabec
Co-developed-by: Ryan Walklin
Signed-off-by: Ryan Walklin
---
drivers
The Allwinner H616 and variants have a new display engine revision
(DE33).
Add a display engine bus binding for the DE33.
Signed-off-by: Ryan Walklin
Acked-by: Conor Dooley
--
Changelog v1..v2:
- Correct DE2 bus enum to reflect fallback devices accurately.
Changelog v2..v3:
- Separate
engine mixer binding for the DE33.
Signed-off-by: Ryan Walklin
Acked-by: Conor Dooley
--
Changelog v2..v3:
- Separate content into three patches for three separate subsystems
---
.../bindings/display/allwinner,sun8i-a83t-de2-mixer.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git
a
conditional based on the DE type.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_mixer.h | 6 ++
1 file changed, 6 insertions(+)
diff --git a/drivers/gpu/drm/sun4i/sun8i_mixer.h
b/drivers/gpu/drm/sun4i/sun8i_mixer.h
index 82956cb97cfd9..75facc7d1fa66 100644
From: Jernej Skrabec
The display engine formatter (FMT) module is present in the DE3 engine
and provides YUV444 to YUV422/YUV420 conversion, format re-mapping and
color depth conversion.
Add support for this module.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu
taken from the out-of-tree driver.
Add the required clock description struct and compatible string to the
DE2 driver.
Signed-off-by: Ryan Walklin
--
Changelog v2..v3:
- Lowercase hex value
- Correct #include for writel()
---
drivers/clk/sunxi-ng/ccu-sun8i-de2.c | 25
From: Jernej Skrabec
Account for U/V channel subsampling by reducing the dot clock and
resolution with a divider in the DE3 timing controller if a YUV format
is selected.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun4i_tcon.c | 26
.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun50i_fmt.c | 21 +++--
drivers/gpu/drm/sun4i/sun50i_fmt.h | 1 +
2 files changed, 20 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/sun4i/sun50i_fmt.c
b/drivers/gpu/drm/sun4i
-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_mixer.c | 1 +
drivers/gpu/drm/sun4i/sun8i_mixer.h | 2 ++
2 files changed, 3 insertions(+)
diff --git a/drivers/gpu/drm/sun4i/sun8i_mixer.c
b/drivers/gpu/drm/sun4i/sun8i_mixer.c
index bd0fe2c6624e6
From: Jernej Skrabec
Now that the DE variant can be selected by enum, take the oppportunity
to factor out some common initialisation code to a separate function.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
Reviewed-by: Andre Przywara
--
Changelog v1..v2:
- Combine base
From: Jernej Skrabec
Like earlier DE versions, the DE33 has a CSC (Color Space Correction)
module. which provides color space conversion between BT2020/BT709, and
dynamic range conversion between SDR/ST2084/HLG.
Add support for the DE33.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan
From: Jernej Skrabec
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
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_ui_layer.c | 19
From: Jernej Skrabec
The DE3 display engine supports YUV formats in addition to RGB.
Add an optional format enumeration function to the engine.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sunxi_engine.h | 29
1 file
The Allwinner H616 and variants have a new display engine revision
(DE33).
Add a clock binding for the DE33.
Signed-off-by: Ryan Walklin
Acked-by: Conor Dooley
--
Changelog v2..v3:
- Separate content into three patches for three separate subsystems
---
.../devicetree/bindings/clock/allwinner
er, I haven't
observed any SoC with such feature.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/Makefile | 2 +-
drivers/gpu/drm/sun4i/sun50i_afbc.c| 250 +
drivers/gpu/drm/sun4i/sun50i_afbc.h| 87 +
d
.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_csc.c | 6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/sun4i/sun8i_csc.c
b/drivers/gpu/drm/sun4i/sun8i_csc.c
index 68d955c63b05b..8a336ccb27d33 100644
--- a/drivers/gpu
-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_mixer.c | 108
drivers/gpu/drm/sun4i/sun8i_mixer.h | 16 -
2 files changed, 107 insertions(+), 17 deletions(-)
diff --git a/drivers/gpu/drm/sun4i/sun8i_mixer.c
b/drivers/gpu/drm
From: Jernej Skrabec
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_vi_scaler.c | 85 +
1 file changed, 58 insertions(+), 27 deletions(-)
diff --git a/drivers/gpu/drm/sun4i/sun8i_vi_scaler.c
b/drivers/gpu/drm/sun4i
From: Jernej Skrabec
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
Signed-off-by: Ryan Walklin
Reviewed-by: Andre
From: Jernej Skrabec
Use the new blender register lookup function where required in the layer
commit and update code.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
--
Changelog v2..v3:
- Refactor for 6.11 layer init/modesetting changes
---
drivers/gpu/drm/sun4i/sun8i_mixer.c
vi_scaler_disable() function.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_vi_layer.c | 3 +--
drivers/gpu/drm/sun4i/sun8i_vi_scaler.c | 21 +++--
drivers/gpu/drm/sun4i/sun8i_vi_scaler.h | 2 +-
3 files changed, 13 insertions(+), 13 deletions
variables.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_mixer.c | 55 ++--
drivers/gpu/drm/sun4i/sunxi_engine.h | 5 +++
2 files changed, 56 insertions(+), 4 deletions(-)
diff --git a/drivers/gpu/drm/sun4i/sun8i_mixer.c
b
From: Jernej Skrabec
Add coefficients and support for YUV formats to the display engine
colorspace and dynamic range correction submodule.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_csc.c | 164 +-
1 file changed, 162
On Mon, 19 Aug 2024, at 1:40 AM, Chen-Yu Tsai wrote:
Hi Chen-Yu, thanks for the reviews!
>> +#include
> Still incorrect.
Whoops, only fixed the changelog it seems. Will correct.
Ryan
Hello,
The WL_355608_A8 panel is a VGA LCD display with an NV3052C-compatible driver
IC, used in a number of Anbernic handheld gaming devices. This patch adds a
device tree binding, and support for the display timings and init sequence to
the NV3052C SPI/RGB driver.
Regards,
Ryan
Ryan
The WL-355608-A8 is a 3.5" 640x480@60Hz RGB LCD display from an unknown
OEM, used in a number of handheld gaming devices made by Anbernic.
Add a device tree binding for the panel.
Signed-off-by: Ryan Walklin
---
.../bindings/display/panel/wl-355608-a8.yaml | 68 +++
1
added.
Timings:
| Active | FP | Sync | BP | Total
---||--|--|--|---
Horizontal | 640 | 64 | 20 | 46 | 770
Vertical | 480 | 21 | 4 | 15 | 520
Signed-off-by: Ryan Walklin
Co-developed-by: Hironori KIKUCHI
---
.../gpu/drm/panel/
On Sat, 25 May 2024, at 7:10 AM, Conor Dooley wrote:
Thanks for the review!
>> +
>> +properties:
>> + compatible:
>> +const: wl-355608-a8
>
> You're missing a vendor prefix here. And when you add it, update the
> filename to match.
Thanks, I don't actually know the vendor, would it be accep
On Sun, 26 May 2024, at 3:22 AM, Conor Dooley wrote:
>>
>> Thanks, I don't actually know the vendor, would it be acceptable to just use
>> "wl"?
>
> You mean, "wl,355608-a8"? I did a wee bit of googling of the thing, and
> yeah, there's nothing that a surface level search turns up for it -
> othe
On Sun, 26 May 2024, at 10:49 AM, きくちゃんさん wrote:
> Hi Ryan,
>
> How about to use "anbernic,rg35xx-panel" ?
> It's not generic though, some other drivers use similar strings already.
Could do, although I think it is used for more than one of the Anbernic
devices, so "anbernic,wl-355608-a8" might b
On Tue, 28 May 2024, at 10:16 AM, John Watts wrote:
> This all looks good to me, though I understand you may need to change the
> compatible. Please CC me if this happens so I can re-review.
I think the consensus is to accept an absent vendor-prefix rather than use the
device manufacturer, so I
esn't make any functional change.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_csc.c | 22 +++---
drivers/gpu/drm/sun4i/sun8i_csc.h | 10 +-
drivers/gpu/drm/sun4i/sun8i_vi_layer.c | 16
3 files c
ll be supported in
later commits.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_csc.c | 89 ++
drivers/gpu/drm/sun4i/sun8i_csc.h | 9 ++-
drivers/gpu/drm/sun4i/sun8i_vi_layer.c | 11 +---
3 files changed, 40 insertions(+
h use cases, add
a call to CSC setup function also in UI layer code. For DE2, this will
be a no-op, but it will allow DE3 to output signal in multiple formats.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_csc.c | 8 +---
drivers/gpu/drm/
From: Jernej Skrabec
drm_universal_plane_init() can already call some callbacks, like
format_mod_supported, during initialization. Because of that, fields
should be initialized beforehand.
Signed-off-by: Jernej Skrabec
Co-developed-by: Ryan Walklin
Signed-off-by: Ryan Walklin
---
drivers
From: Jernej Skrabec
The display engine formatter (FMT) module is present in the DE3 engine
and provides YUV444 to YUV422/YUV420 conversion, format re-mapping and
color depth conversion.
Add support for this module.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu
From: Jernej Skrabec
The DE3 display engine supports YUV formats in addition to RGB.
Add an optional format enumeration function to the engine.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sunxi_engine.h | 29
1 file
: de33: csc: add Display Engine 3.3 (DE33) support
Ryan Walklin (2):
dt-bindings: allwinner: add H616 DE33 bus, clock and display bindings
clk: sunxi-ng: ccu: add Display Engine 3.3 (DE33) support
.../bus/allwinner,sun50i-a64-de2.yaml | 7 +-
.../clock/allwinner,sun8i-a83t-de2
variables.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_mixer.c | 55 ++--
drivers/gpu/drm/sun4i/sunxi_engine.h | 5 +++
2 files changed, 56 insertions(+), 4 deletions(-)
diff --git a/drivers/gpu/drm/sun4i/sun8i_mixer.c
b
-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_mixer.c | 1 +
drivers/gpu/drm/sun4i/sun8i_mixer.h | 2 ++
2 files changed, 3 insertions(+)
diff --git a/drivers/gpu/drm/sun4i/sun8i_mixer.c
b/drivers/gpu/drm/sun4i/sun8i_mixer.c
index 01382860aaeea
.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_csc.c | 6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/sun4i/sun8i_csc.c
b/drivers/gpu/drm/sun4i/sun8i_csc.c
index 68d955c63b05b..8a336ccb27d33 100644
--- a/drivers/gpu
From: Jernej Skrabec
Add coefficients and support for YUV formats to the display engine
colorspace and dynamic range correction submodule.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_csc.c | 164 +-
1 file changed, 162
From: Jernej Skrabec
Account for U/V channel subsampling by reducing the dot clock and
resolution with a divider in the DE3 timing controller if a YUV format
is selected.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun4i_tcon.c | 26
-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_csc.c | 2 +-
drivers/gpu/drm/sun4i/sun8i_mixer.c | 14 --
drivers/gpu/drm/sun4i/sun8i_mixer.h | 11 ---
drivers/gpu/drm/sun4i/sun8i_ui_scaler.c | 2 +-
drivers/gpu/drm/sun4i
From: Jernej Skrabec
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_vi_scaler.c | 85 +
1 file changed, 58 insertions(+), 27 deletions(-)
diff --git a/drivers/gpu/drm/sun4i/sun8i_vi_scaler.c
b/drivers/gpu/drm/sun4i
From: Jernej Skrabec
Now that the DE variant can be selected by enum, take the oppportunity
to factor out some common initialisation code to a separate function.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_mixer.c | 69
vi_scaler_disable() function.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_vi_layer.c | 3 +--
drivers/gpu/drm/sun4i/sun8i_vi_scaler.c | 21 +++--
drivers/gpu/drm/sun4i/sun8i_vi_scaler.h | 2 +-
3 files changed, 13 insertions(+), 13 deletions
From: Jernej Skrabec
The DE2 and DE3 engines have a single register range, whereas the DE33
separates these out into top and display groups.
Prepare for this by adding a function to look these up based on the DE
type.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu
er, I haven't
observed any SoC with such feature.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/Makefile | 2 +-
drivers/gpu/drm/sun4i/sun50i_afbc.c| 250 +
drivers/gpu/drm/sun4i/sun50i_afbc.h| 87 +
d
The Allwinner H616 and variants have a new display engine revision
(DE33).
Add display engine bus, clock and mixer bindings for the DE33.
Signed-off-by: Ryan Walklin
---
.../devicetree/bindings/bus/allwinner,sun50i-a64-de2.yaml | 7 ---
.../bindings/clock/allwinner,sun8i-a83t-de2-clk.yaml
out-of-tree driver.
Add the required clock description struct and compatible string to the
DE2 driver.
Signed-off-by: Ryan Walklin
---
drivers/clk/sunxi-ng/ccu-sun8i-de2.c | 25 +
1 file changed, 25 insertions(+)
diff --git a/drivers/clk/sunxi-ng/ccu-sun8i-de2.c
b
ARM Frame Buffer Compression support
- YUV420 input support
Extend the mixer to support the DE33.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_mixer.c | 109
drivers/gpu/drm/sun4i/sun8i_mixer.h | 16 +++-
2 files changed
From: Jernej Skrabec
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
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun8i_ui_layer.c | 19
.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan Walklin
---
drivers/gpu/drm/sun4i/sun50i_fmt.c | 21 +++--
drivers/gpu/drm/sun4i/sun50i_fmt.h | 1 +
2 files changed, 20 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/sun4i/sun50i_fmt.c
b/drivers/gpu/drm/sun4i
From: Jernej Skrabec
Like earlier DE versions, the DE33 has a CSC (Color Space Correction)
module. which provides color space conversion between BT2020/BT709, and
dynamic range conversion between SDR/ST2084/HLG.
Add support for the DE33.
Signed-off-by: Jernej Skrabec
Signed-off-by: Ryan
Hi Andre,
On Tue, 25 Jun 2024, at 12:28 PM, Andre Przywara wrote:
Thanks for the review!
>> regmap_write(mixer->engine.regs, SUN50I_MIXER_CDC1_EN, 0);
>> -} else {
>> +
>
> That seems to add an extra line, which shouldn't be here.
This was intentional to add some whitespace be
Hi,
On Tue, 25 Jun 2024, at 12:37 PM, Andre Przywara wrote:
> That doesn't look right, that would allow:
> - h6-de
> - h616-de33
> - a64-de2
>
> which is not what we want, right? It's more:
> - h6-de, a64-de2
> - h616-de, a64-de2
> - a64-de2
Ah right, have got my head round how the fallback work
Hi Maxime,
On Wed, 26 Jun 2024, at 8:56 PM, Maxime Ripard wrote:
> We're getting fairly late into the release cycle and I'd like to get it
> fixed before the release. Can you send a patch to address it please?
Sure, happy to. So to confirm add 'anbernic' to the vendor binding list and
'anbernic
On Wed, 26 Jun 2024, at 9:16 PM, Neil Armstrong wrote:
> Well anbernic is not the wl-355608-a8 panel manufaturer, so as Maxime
> is suggesting to use the
> name of the device where the panel is found like
> anbernic,rg353v-panel-v2 as submitted
> in
> https://lore.kernel.org/all/20230426143213.4
://lore.kernel.org/dri-devel/20240530211415.44201-1-r...@testtoast.com/
Ryan Walklin (3):
dt-bindings: display: panel: Rename WL-355608-A8 panel
drm: panel: nv3052c: Correct WL-355608-A8 panel compatible
dt-bindings: display: panel: correct Anbernic RG35XX panel example
.../{wl-355608-a8.yaml
1 - 100 of 304 matches
Mail list logo