Re: [PATCH v10 00/11] drm: sun4i: add Display Engine 3.3 (DE33) support

2025-05-12 Thread Chris Morgan
On Sun, May 11, 2025 at 10:31:09PM +1200, Ryan Walklin wrote: > Hi all, > > v10 of this patch series adding support for the Allwinner DE33 display > engine. This version is largely based on the previous v8 patch, with Chris's > changes to the mixer bindings in particular from v9 to add names for

Re: [PATCH V9 02/24] clk: sunxi-ng: h616: Add LVDS reset for LCD TCON

2025-05-09 Thread Chris Morgan
On Fri, May 09, 2025 at 05:31:40PM +0100, Andre Przywara wrote: > On Fri, 9 May 2025 23:29:50 +0900 > Chen-Yu Tsai wrote: > > > On Fri, May 9, 2025 at 11:14 PM Andre Przywara > > wrote: > > > > > > On Wed, 7 May 2025 15:19:21 -0500 &g

Re: [PATCH V9 23/24] arm64: dts: allwinner: rg35xx: Add GPIO backlight control

2025-05-09 Thread Chris Morgan
On Fri, May 09, 2025 at 03:32:04PM +0100, Andre Przywara wrote: > On Wed, 7 May 2025 15:19:42 -0500 > Chris Morgan wrote: > > Hi Chris, > > > From: Chris Morgan > > > > The LCD backlight for this device can be exposed as a simple GPIO- > > control

Re: [PATCH V9 00/24] drm: sun4i: add Display Engine 3.3 (DE33) support

2025-05-09 Thread Chris Morgan
On Thu, May 08, 2025 at 09:26:24AM +0200, Krzysztof Kozlowski wrote: > On Wed, May 07, 2025 at 03:19:19PM GMT, Chris Morgan wrote: > > From: Chris Morgan > > > > I've spoken with Ryan and he agreed to let me take over this series to > > get the display engine wor

[PATCH V9 15/24] dt-bindings: display: sun4i: Add compatible strings for H616 DE

2025-05-07 Thread Chris Morgan
From: Chris Morgan Add compatible strings for allwinner,sun50i-h616-display-engine. The device is functionally identical to the allwinner,sun50i-h6-display-engine. Signed-off-by: Chris Morgan --- .../allwinner,sun4i-a10-display-engine.yaml | 39 +++ 1 file changed, 22

[PATCH V9 10/24] clk: sunxi-ng: ccu: add Display Engine 3.3 (DE33) support

2025-05-07 Thread Chris Morgan
From: Chris Morgan The DE33 is a newer version of the Allwinner Display Engine IP block, found in the H616, H618, H700 and T507 SoCs. DE2 and DE3 are already supported by the mainline driver. The DE33 in the H616 has mixer0 and writeback units. The clocks and resets required are identical to

[PATCH V9 06/24] drm: sun4i: de2/de3: use generic register reference function for layer configuration

2025-05-07 Thread Chris Morgan
From: Chris Morgan 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 Signed-off-by: Chris Morgan --- Changelog v2..v3: - Refactor for 6.11 layer init/modesetting changes --- drivers/gpu

[PATCH V9 14/24] dt-bindings: allwinner: Add TCON_TOP and TCON_LCD clock/reset defines

2025-05-07 Thread Chris Morgan
From: Chris Morgan The Allwinner H700 exposes RGB and LVDS pins as well as a HDMI connector. This requires additional clocks for the TCON_TOP and clock and resets for the TCON_LCD LCD controllers to be defined as per the T507 datasheet (which shares the same die). Signed-off-by: Ryan Walklin

[PATCH V9 24/24] arm64: dts: allwinner: rg35xx: Enable LCD output

2025-05-07 Thread Chris Morgan
From: Chris Morgan The RG35XX has a 640x480 RGB/SPI LCD panel, supported by the SoC display pipeline and an NV3052C controller. The H616 SOC's GPIO bank D contains the muxed display pins for RGB and LVDS output support. Enable the display engine and LCD timing controller, configure the

[PATCH V9 23/24] arm64: dts: allwinner: rg35xx: Add GPIO backlight control

2025-05-07 Thread Chris Morgan
From: Chris Morgan The LCD backlight for this device can be exposed as a simple GPIO- controlled device. It would be more accurately modelled using PWM to enable brightness control, however the PWM driver design for the H616 is not yet upstreamed. Add a GPIO backlight node to the DTS. Signed

[PATCH V9 09/24] dt-bindings: allwinner: add H616 DE33 mixer binding

2025-05-07 Thread Chris Morgan
From: Chris Morgan The Allwinner H616 and variants have a new display engine revision (DE33). The mixer configuration registers are significantly different to the DE3 and DE2 revisions, being split into separate top and display blocks, therefore a fallback for the mixer compatible is not

[PATCH V9 13/24] drm: sun4i: de33: mixer: add mixer configuration for the H616

2025-05-07 Thread Chris Morgan
From: Chris Morgan The H616 (and related SoC packages sharing the same die) carry the new DE33 display engine. Add the mixer configuration and a compatible string for the H616 to the mixer. Signed-off-by: Jernej Skrabec Signed-off-by: Ryan Walklin Signed-off-by: Chris Morgan --- Changelog

[PATCH V9 11/24] drm: sun4i: de33: vi_scaler: add Display Engine 3.3 (DE33) support

2025-05-07 Thread Chris Morgan
From: Chris Morgan 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 Signed-off-by: Chris Morgan --- drivers/gpu/drm/sun4i/sun8i_ui_layer.c

[PATCH V9 21/24] arm64: dts: allwinner: h616: Add TCON nodes to H616 DTSI

2025-05-07 Thread Chris Morgan
From: Chris Morgan The Allwinner H616 has a display pipeline similar to other Allwinner devices, specifically the A10, but using a newer display engine revision (DE33). Not all output pins are exposed on all package variants, for example only the H700 and T507 have LCD pins exposed, but all

[PATCH V9 00/24] drm: sun4i: add Display Engine 3.3 (DE33) support

2025-05-07 Thread Chris Morgan
From: Chris Morgan I've spoken with Ryan and he agreed to let me take over this series to get the display engine working on the Allwinner H616. I've taken his previous patch series for Display Engine 3.3 and combined it with the LCD controller patch series. I've also fixed a few

[PATCH V9 22/24] arm64: dts: allwinner: h616: add LCD and LVDS pins

2025-05-07 Thread Chris Morgan
From: Chris Morgan The Allwinner H616 (and its H618, H700 and T507 package variants with the same die) have 28 video output pins for RGB/SPI and LVDS display. These are in GPIO Bank D and are multiplexed. In RGB mode, pins PD0-PD23 are for 24-bit RGB pixel output, pins PD24-PD27 are for clock

[PATCH V9 17/24] dt-bindings: sram: sunxi-sram: Add H616 SRAM C compatible

2025-05-07 Thread Chris Morgan
From: Chris Morgan Add a compatible string for the H616 SRAM C region which is functionally similar to the A64 SRAM C region. Signed-off-by: Chris Morgan --- .../bindings/sram/allwinner,sun4i-a10-system-control.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a

[PATCH V9 20/24] arm64: dts: allwinner: h616: add display engine, bus and mixer nodes

2025-05-07 Thread Chris Morgan
From: Chris Morgan The Allwinner H616 and variants (H618, H700 and T507) have a new display engine variant (DE33). Support has been added to the existing DE2/DE3 sun4i driver in a previous patch series (x). The variant is selected via the appropriate mixer device tree compatible string. Add the

[PATCH V9 12/24] drm: sun4i: de33: mixer: add Display Engine 3.3 (DE33) support

2025-05-07 Thread Chris Morgan
From: Chris Morgan The DE33 is a newer version of the Allwinner Display Engine IP block, found in the H616, H618, H700 and T507 SoCs. DE2 and DE3 are already supported by the mainline driver. Notable features (from the H616 datasheet and implemented): - 4096 x 2048 (4K) output support Other

[PATCH V9 18/24] dt-bindings: display: Add R40 and H616 display engine compatibles

2025-05-07 Thread Chris Morgan
From: Chris Morgan Add display engine compatible for the R40 LCD controller, and for the H616 TV and LCD controller which is functionally identical to the R40. Signed-off-by: Chris Morgan --- .../bindings/display/allwinner,sun4i-a10-tcon.yaml | 10 ++ 1 file changed, 10 insertions

[PATCH V9 07/24] dt-bindings: allwinner: add H616 DE33 bus binding

2025-05-07 Thread Chris Morgan
From: Chris Morgan The Allwinner H616 and variants have a new display engine revision (DE33). Add a display engine bus binding for the DE33. Note that the DE33 requires 3 register blocks instead of 1. To keep things simple remove the maxItems value for registers for the child nodes and instead

[PATCH V9 19/24] drm/sun4i: tcon: Add support for R40 LCD

2025-05-07 Thread Chris Morgan
From: Chris Morgan The Allwinner H616 and related SOCs have an LCD timing controller (TCON) which is compatible with the R40 SOC's controller and existing sun4i driver. The H616 does not expose this controller but the H700 and T507 (based on the same die) do. The controller supports LVDS an

[PATCH V9 16/24] dt-bindings: display: sun4i: Add compatible strings for H616 TCON TOP

2025-05-07 Thread Chris Morgan
From: Chris Morgan Add compatible string for allwinner,sun50i-h616-tcon-top with a fallback string of allwinner,sun50i-h6-tcon-top. Signed-off-by: Chris Morgan --- .../display/allwinner,sun8i-r40-tcon-top.yaml | 13 + 1 file changed, 9 insertions(+), 4 deletions(-) diff

[PATCH V9 05/24] drm: sun4i: de2/de3: add generic blender register reference function

2025-05-07 Thread Chris Morgan
From: Chris Morgan The DE2 and DE3 engines have a blender register range within the mixer engine register map, whereas the DE33 separates this out into a separate display group. Prepare for this by adding a function to look the blender reference up, with a subsequent patch to add a conditional

[PATCH V9 08/24] dt-bindings: allwinner: add H616 DE33 clock binding

2025-05-07 Thread Chris Morgan
From: Chris Morgan The Allwinner H616 and variants have a new display engine revision (DE33). Add a clock binding for the DE33. Signed-off-by: Ryan Walklin Signed-off-by: Chris Morgan Acked-by: Conor Dooley Reviewed-by: Chen-Yu Tsai --- Changelog v2..v3: - Separate content into three

[PATCH V9 01/24] dt-bindings: clock: sun50i-h616-ccu: Add LVDS reset

2025-05-07 Thread Chris Morgan
From: Chris Morgan Add the required LVDS reset binding for the LCD TCON. Signed-off-by: Chris Morgan Signed-off-by: Ryan Walklin --- include/dt-bindings/reset/sun50i-h616-ccu.h | 1 + 1 file changed, 1 insertion(+) diff --git a/include/dt-bindings/reset/sun50i-h616-ccu.h b/include/dt

[PATCH V9 02/24] clk: sunxi-ng: h616: Add LVDS reset for LCD TCON

2025-05-07 Thread Chris Morgan
From: Chris Morgan Add the required LVDS reset for the LCD TCON. Note that while this reset is exposed for the T507, H616, and H700 only the H700 has an LCD controller. Signed-off-by: Chris Morgan Signed-off-by: Ryan Walklin --- drivers/clk/sunxi-ng/ccu-sun50i-h616.c | 1 + 1 file changed, 1

[PATCH V9 03/24] drm: sun4i: de2/de3: add mixer version enum

2025-05-07 Thread Chris Morgan
From: Chris Morgan 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 Signed-off-by: Chris

[PATCH V9 04/24] drm: sun4i: de2/de3: refactor mixer initialisation

2025-05-07 Thread Chris Morgan
From: Chris Morgan 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 Signed-off-by: Chris Morgan Reviewed-by: Andre Przywara --- Changelog v1

Re: [PATCH v5 00/26] drm: sun4i: add Display Engine 3.3 (DE33) support

2025-02-12 Thread Chris Morgan
drivers/gpu/drm/sun4i/sun50i_afbc.c > > create mode 100644 drivers/gpu/drm/sun4i/sun50i_afbc.h > > create mode 100644 drivers/gpu/drm/sun4i/sun50i_fmt.c > > create mode 100644 drivers/gpu/drm/sun4i/sun50i_fmt.h > > I just wanted to add my Tested-By to this patch series. That said, I can confirm that we also need to add support for the clock and reset before we activate the display engine. I'll submit patches for that in a different series (it's a pre-requisite of this but can be done independently). Additionally, I do have a few comments on the yaml documentation. Tested-by: Chris Morgan Thank you, Chris

Re: [PATCH v5 21/26] dt-bindings: allwinner: add H616 DE33 mixer binding

2025-02-12 Thread Chris Morgan
On Sun, Sep 29, 2024 at 10:04:53PM +1300, Ryan Walklin wrote: > The Allwinner H616 and variants have a new display engine revision > (DE33). > > The mixer configuration registers are significantly different to the DE3 > and DE2 revisions, being split into separate top and display blocks, > therefo

Re: [PATCH v5 19/26] dt-bindings: allwinner: add H616 DE33 bus binding

2025-02-12 Thread Chris Morgan
On Sun, Sep 29, 2024 at 10:04:51PM +1300, Ryan Walklin wrote: > 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 > Reviewed-by: Chen-Yu Tsai > > --- > Change

Re: [PATCH 1/6] dt-bindings: display: panel: Add another panel for RG35XX Plus (Rev6)

2025-01-22 Thread Chris Morgan
On Sun, Nov 24, 2024 at 05:02:12PM +0900, Hironori KIKUCHI wrote: > This is a display panel used in the recent revision of the Anbernic > RG35XX Plus, a handheld gaming device from Anbernic. > It is 3.45 inches in size (diagonally) with a resolution of 640x480. > > It has the same interface (pins

Re: [PATCH v2 0/3] Add initial support for the Rockchip RK3588 HDMI TX Controller

2024-08-05 Thread Chris Morgan
On Sat, Aug 03, 2024 at 03:24:06PM +0200, Piotr Oniszczuk wrote: > Hi Cristian, > > Will you find some time and motivation to add CEC support to Quad-Pixel (QP) > TX controller ? > > Probably you recall - I added initial CEC support to yours v1 series and i’m > stuck with timing issue (cec puls

[PATCH 4/5] dt-bindings: arm: rockchip: Add GameForce Chi

2024-03-25 Thread Chris Morgan
From: Chris Morgan The GameForce Chi is a handheld gaming device from GameForce powered by the Rockchip RK3326 SoC. Signed-off-by: Chris Morgan --- Documentation/devicetree/bindings/arm/rockchip.yaml | 5 + 1 file changed, 5 insertions(+) diff --git a/Documentation/devicetree/bindings

[PATCH 5/5] arm64: dts: rockchip: Add GameForce Chi

2024-03-25 Thread Chris Morgan
From: Chris Morgan Add support for the GameForce Chi, which is a handheld gaming console from GameForce with a Rockchip RK3326 SoC. The device has a 640x480 3.5" dual-lane DSI display, one analog joystick connected to the SoC SARADC controller and a second analog joystick connected to an un

[PATCH 1/5] dt-bindings: vendor-prefix: Add prefix for GameForce

2024-03-25 Thread Chris Morgan
From: Chris Morgan GameForce is a company that produces handheld game consoles. https://gameforce.fun/ Signed-off-by: Chris Morgan --- Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Documentation/devicetree/bindings/vendor

[PATCH 3/5] drm/panel: st7703: Add GameForce Chi Panel Support

2024-03-25 Thread Chris Morgan
From: Chris Morgan The GameForce Chi is a handheld device with a 3.5" 640x480 ST7703 based display panel. Signed-off-by: Chris Morgan --- drivers/gpu/drm/panel/panel-sitronix-st7703.c | 87 +++ 1 file changed, 87 insertions(+) diff --git a/drivers/gpu/drm/panel/panel-sit

[PATCH 2/5] dt-bindings: display: Add GameForce Chi Panel

2024-03-25 Thread Chris Morgan
From: Chris Morgan The GameForce Chi panel is a panel specific to the GameForce Chi handheld device that measures 3.5" diagonally with a resolution of 640x480. Signed-off-by: Chris Morgan --- .../devicetree/bindings/display/panel/rocktech,jh057n00900.yaml | 2 ++ 1 file changed, 2 inser

[PATCH 0/5] Add Support for RK3326 GameForce Chi

2024-03-25 Thread Chris Morgan
From: Chris Morgan Add support for the GameForce Chi [1]. The GameForce Chi has the following hardware: Tested: - 3.5" dual lane 640x480 DSI display. - 15 GPIO based face buttons. - 2 ADC based face buttons. - 1 ADC joystick (left) connected to internal SARADC. - RGB LED arrays fo

[PATCH 2/7] drm/panel: st7703: Add Powkiddy RGB10MAX3 Panel Support

2024-02-12 Thread Chris Morgan
From: Chris Morgan The Powkiddy RGB10MAX3 is a handheld device with a 5 inch 720x1280 display panel with a Sitronix ST7703 display controller. The panel is installed rotated 270 degrees. Signed-off-by: Chris Morgan --- drivers/gpu/drm/panel/panel-sitronix-st7703.c | 91 +++ 1

[PATCH 4/7] drm/panel: st7703: Add Panel Rotation Support

2024-02-12 Thread Chris Morgan
From: Chris Morgan Add support for panel rotation to ST7703 based devices. Signed-off-by: Chris Morgan --- drivers/gpu/drm/panel/panel-sitronix-st7703.c | 13 + 1 file changed, 13 insertions(+) diff --git a/drivers/gpu/drm/panel/panel-sitronix-st7703.c b/drivers/gpu/drm/panel

[PATCH 5/7] arm64: dts: rockchip: Update powkiddy rk2023 dtsi for RGB10MAX3

2024-02-12 Thread Chris Morgan
From: Chris Morgan Move the vdd_cpu regulator to the device specific dts. This is in preparation of adding the Powkiddy RGB10MAX3 device, which uses a different vendor for the CPU regulator at a different i2c address. Also add an alias to the bluetooth device so that we can change the

[PATCH 1/7] dt-bindings: display: st7703: Add Powkiddy RGB10MAX3 panel

2024-02-12 Thread Chris Morgan
From: Chris Morgan The RGB10MAX3 panel is a panel specific to the Powkiddy RGB10MAX3 handheld device that measures 5 inches diagonally with a resolution of 720x1280. Signed-off-by: Chris Morgan --- .../devicetree/bindings/display/panel/rocktech,jh057n00900.yaml | 2 ++ 1 file changed, 2

[PATCH 0/7] Add Support for RK3566 Powkiddy RGB10MAX3

2024-02-12 Thread Chris Morgan
From: Chris Morgan Add support for the Powkiddy RGB10MAX3 handheld gaming console. [1] https://powkiddy.com/products/pre-sale-powkiddy-rgb10max3-handheld-game-console Chris Morgan (7): dt-bindings: display: st7703: Add Powkiddy RGB10MAX3 panel drm/panel: st7703: Add Powkiddy RGB10MAX3

[PATCH 3/7] dt-bindings: display: Document ST7703 panel rotation

2024-02-12 Thread Chris Morgan
From: Chris Morgan Document the rotation property for ST7703 based panels. Signed-off-by: Chris Morgan --- .../devicetree/bindings/display/panel/rocktech,jh057n00900.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Documentation/devicetree/bindings/display/panel/rocktech

[PATCH 7/7] arm64: dts: rockchip: Add Powkiddy RGB10MAX3

2024-02-12 Thread Chris Morgan
From: Chris Morgan Add support for the Powkiddy RGB10MAX3. The Powkiddy RGB10MAX3 is a handheld gaming device with a 720p 5.0 inch screen powered by the Rockchip RK3566 SoC. It includes a Realtek 8723ds WiFi/BT module, 2 ADC joysticks powered by a 4-way muxed ADC channel, and several GPIO face

[PATCH 6/7] dt-bindings: arm: rockchip: Add Powkiddy RGB10MAX3

2024-02-12 Thread Chris Morgan
From: Chris Morgan The Powkiddy RGB10MAX3 is a handheld gaming device made by Powkiddy and powered by the Rockchip RK3566 SoC. Signed-off-by: Chris Morgan --- Documentation/devicetree/bindings/arm/rockchip.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/devicetree

Re: [PATCH v3] drm/panel: st7703: Fix Panel Initialization for Anbernic RG353V-V2

2024-02-09 Thread Chris Morgan
justing the parameters to match those specified in the BSP kernel's > device tree allow the panel to initialize correctly. > > Signed-off-by: Ao Zhong Tested-by: Chris Morgan > --- > drivers/gpu/drm/panel/panel-sitronix-st7703.c | 4 ++-- > 1 file changed, 2 insertions(+

Re: [PATCH RESEND 1/1] drm/panel: st7703: Fix Panel Initialization for Anbernic RG353V-V2

2024-02-09 Thread Chris Morgan
se changes appear to be needed for existing devices, and I'm not sure what could have caused the regression... Note the previous settings did still appear to work, the panel just took much longer to start working after the init sequence (as much as 20 seconds on cold boot, clearly indica

[PATCH 2/3] dt-bindings: display: st7701: Add Anbernic RG-ARC panel

2023-12-08 Thread Chris Morgan
From: Chris Morgan The RG-ARC panel is a panel specific to the Anbernic RG-ARC. It is 4 inches in size (diagonally) with a resolution of 480x640. Signed-off-by: Chris Morgan --- .../devicetree/bindings/display/panel/sitronix,st7701.yaml | 1 + 1 file changed, 1 insertion(+) diff --git

[PATCH 3/3] drm/panel: st7701: Add Anbernic RG-ARC Panel Support

2023-12-08 Thread Chris Morgan
From: Chris Morgan The Powkiddy RG-ARC is a series of 2 handheld devices, each with a 4 inch 480x640 display. Add support for the display. Signed-off-by: Chris Morgan --- drivers/gpu/drm/panel/panel-sitronix-st7701.c | 136 ++ 1 file changed, 136 insertions(+) diff --git a

[PATCH 0/3] Add Support for RG-ARC Panel

2023-12-08 Thread Chris Morgan
From: Chris Morgan Add support for the Anbernic RG-ARC display panel as used in the RG-ARC S and RG-ARC D handheld gaming devices from Anbernic. Chris Morgan (3): drm/panel: st7701: Fix AVCL calculation dt-bindings: display: st7701: Add Anbernic RG-ARC panel drm/panel: st7701: Add

[PATCH 1/3] drm/panel: st7701: Fix AVCL calculation

2023-12-08 Thread Chris Morgan
From: Chris Morgan The AVCL register, according to the datasheet, comes in increments of -0.2v between -4.4v (represented by 0x0) to -5.0v (represented by 0x3). The current calculation is done by adding the defined AVCL value in mV to -4400 and then dividing by 200 to get the register value

[PATCH V2 07/10] clk: rockchip: Mark pclk_usb as critical on rk3568

2023-12-04 Thread Chris Morgan
From: Chris Morgan In the reference manual under "2.8.6 NIU Clock gating reliance" it is stated that pclk_usb_niu has a dependency on hclk_usb_niu. While the manual does not state that this is a bi-directional relationship it was noted that the sdmmc2 failed to operate for me in mmc m

[PATCH V2 10/10] arm64: dts: rockchip: Add Powkiddy X55

2023-12-04 Thread Chris Morgan
From: Chris Morgan Add support for the Powkiddy X55. The Powkiddy RK2023 is a handheld gaming device with a 720p 5.5 inch screen powered by the Rockchip RK3566 SoC. It includes a Realtek 8821cs WiFi/BT module, 2 ADC joysticks powered by 4 dedicated ADC channels, and several GPIO face buttons

[PATCH V2 09/10] dt-bindings: arm: rockchip: Add Powkiddy X55

2023-12-04 Thread Chris Morgan
From: Chris Morgan The Powkiddy RK2023 is a handheld gaming device made by Powkiddy and powered by the Rockchip RK3566 SoC. This device is somewhat similar to the existing Powkiddy RK3566 devices, which have been grouped together with a previous commit[1]. [1] https://lore.kernel.org/linux

[PATCH V2 05/10] dt-bindings: display: himax-hx8394: Add Powkiddy X55 panel

2023-12-04 Thread Chris Morgan
From: Chris Morgan Add compatible string for the Powkiddy X55 panel. Signed-off-by: Chris Morgan Acked-by: Krzysztof Kozlowski --- .../devicetree/bindings/display/panel/himax,hx8394.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/devicetree/bindings/display

[PATCH V2 04/10] drm/panel: himax-hx8394: Add Panel Rotation Support

2023-12-04 Thread Chris Morgan
From: Chris Morgan Add support for setting the rotation property for the Himax HX8394 panel. Signed-off-by: Chris Morgan --- drivers/gpu/drm/panel/panel-himax-hx8394.c | 15 +++ 1 file changed, 15 insertions(+) diff --git a/drivers/gpu/drm/panel/panel-himax-hx8394.c b/drivers

[PATCH V2 02/10] drm/panel: himax-hx8394: Drop shutdown logic

2023-12-04 Thread Chris Morgan
From: Chris Morgan The driver shutdown is duplicate as it calls drm_unprepare and drm_disable which are called anyway when associated drivers are shutdown/removed. Signed-off-by: Chris Morgan --- drivers/gpu/drm/panel/panel-himax-hx8394.c | 17 - 1 file changed, 17 deletions

[PATCH V2 06/10] drm/panel: himax-hx8394: Add Support for Powkiddy X55 panel

2023-12-04 Thread Chris Morgan
From: Chris Morgan Add support for the Powkiddy X55 panel as used on the Powkiddy X55 handheld gaming console. This panel uses a Himax HX8394 display controller and requires a vendor provided init sequence. The display resolution is 720x1280 and is 67mm by 121mm as measured with calipers

[PATCH V2 08/10] clk: rockchip: rk3568: Add PLL rate for 126.4MHz

2023-12-04 Thread Chris Morgan
From: Chris Morgan Add support for a PLL rate of 126.4MHz so that the Powkiddy X55 panel can run at a requested 60hz. I have confirmed this rate fits with all the constraints listed in the TRM for the VPLL (as an integer PLL) in Part 1 "Chapter 2 Clock & Reset Unit (CRU)." Signed

[PATCH V2 03/10] dt-bindings: display: Document Himax HX8394 panel rotation

2023-12-04 Thread Chris Morgan
From: Chris Morgan Document panel rotation for Himax HX8394 display panel. Signed-off-by: Chris Morgan Acked-by: Krzysztof Kozlowski --- .../devicetree/bindings/display/panel/himax,hx8394.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Documentation/devicetree/bindings

[PATCH V2 01/10] drm/panel: himax-hx8394: Drop prepare/unprepare tracking

2023-12-04 Thread Chris Morgan
From: Chris Morgan Drop the panel specific prepare/unprepare logic. This is now tracked by the DRM stack [1]. [1] commit d2aacaf07395 ("drm/panel: Check for already prepared/enabled in drm_panel") Signed-off-by: Chris Morgan --- drivers/gpu/drm/panel/panel-himax-hx8394.c | 11

[PATCH V2 00/10] rockchip: Add Powkiddy X55

2023-12-04 Thread Chris Morgan
From: Chris Morgan Add support for the Rockchip RK3566 based Powkiddy X55 handheld gaming console. Changes since V1: - Corrected a bug with the DRM mode flags for the video driver. - Adjusted panel front and back porch and pixel clock to fix issues with display that occurred after

Re: [PATCH 6/9] drm/panel: himax-hx8394: Add Support for Powkiddy X55 panel

2023-12-01 Thread Chris Morgan
On Thu, Nov 30, 2023 at 09:19:40PM -0600, Kendrick Curry wrote: > On Thu, Nov 30, 2023 at 09:56:21AM -0600, Chris Morgan wrote: > > From: Chris Morgan > > > > Add support for the Powkiddy X55 panel as used on the Powkiddy X55 > > handheld gaming console. This panel

[PATCH 7/9] clk: rockchip: Mark pclk_usb as critical on rk3568

2023-11-30 Thread Chris Morgan
From: Chris Morgan In the reference manual under "2.8.6 NIU Clock gating reliance" it is stated that pclk_usb_niu has a dependency on hclk_usb_niu. While the manual does not state that this is a bi-directional relationship it was noted that the sdmmc2 failed to operate for me in mmc m

[PATCH 9/9] arm64: dts: rockchip: Add Powkiddy X55

2023-11-30 Thread Chris Morgan
From: Chris Morgan Add support for the Powkiddy X55. The Powkiddy RK2023 is a handheld gaming device with a 720p 5.5 inch screen powered by the Rockchip RK3566 SoC. It includes a Realtek 8821cs WiFi/BT module, 2 ADC joysticks powered by 4 dedicated ADC channels, and several GPIO face buttons

[PATCH 8/9] dt-bindings: arm: rockchip: Add Powkiddy X55

2023-11-30 Thread Chris Morgan
From: Chris Morgan The Powkiddy RK2023 is a handheld gaming device made by Powkiddy and powered by the Rockchip RK3566 SoC. This device is somewhat similar to the existing Powkiddy RK3566 devices, which have been grouped together with a previous commit[1]. [1] https://lore.kernel.org/linux

[PATCH 4/9] drm/panel: himax-hx8394: Add Panel Rotation Support

2023-11-30 Thread Chris Morgan
From: Chris Morgan Add support for setting the rotation property for the Himax HX8394 panel. Signed-off-by: Chris Morgan --- drivers/gpu/drm/panel/panel-himax-hx8394.c | 15 +++ 1 file changed, 15 insertions(+) diff --git a/drivers/gpu/drm/panel/panel-himax-hx8394.c b/drivers

[PATCH 6/9] drm/panel: himax-hx8394: Add Support for Powkiddy X55 panel

2023-11-30 Thread Chris Morgan
From: Chris Morgan Add support for the Powkiddy X55 panel as used on the Powkiddy X55 handheld gaming console. This panel uses a Himax HX8394 display controller and requires a vendor provided init sequence. The display resolution is 720x1280 and is 67mm by 121mm as measured with calipers

[PATCH 5/9] dt-bindings: display: himax-hx8394: Add Powkiddy X55 panel

2023-11-30 Thread Chris Morgan
From: Chris Morgan Add compatible string for the Powkiddy X55 panel. Signed-off-by: Chris Morgan --- .../devicetree/bindings/display/panel/himax,hx8394.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/devicetree/bindings/display/panel/himax,hx8394.yaml b

[PATCH 3/9] dt-bindings: display: Document Himax HX8394 panel rotation

2023-11-30 Thread Chris Morgan
From: Chris Morgan Document panel rotation for Himax HX8394 display panel. Signed-off-by: Chris Morgan --- .../devicetree/bindings/display/panel/himax,hx8394.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Documentation/devicetree/bindings/display/panel/himax,hx8394.yaml b

[PATCH 2/9] drm/panel: himax-hx8394: Drop shutdown logic

2023-11-30 Thread Chris Morgan
From: Chris Morgan The driver shutdown is duplicate as it calls drm_unprepare and drm_disable which are called anyway when associated drivers are shutdown/removed. Signed-off-by: Chris Morgan --- drivers/gpu/drm/panel/panel-himax-hx8394.c | 17 - 1 file changed, 17 deletions

[PATCH 0/9] rockchip: Add Powkiddy X55

2023-11-30 Thread Chris Morgan
From: Chris Morgan Add support for the Rockchip RK3566 based Powkiddy X55 handheld gaming console. Chris Morgan (9): drm/panel: himax-hx8394: Drop prepare/unprepare tracking drm/panel: himax-hx8394: Drop shutdown logic dt-bindings: display: Document Himax HX8394 panel rotation drm/panel

[PATCH 1/9] drm/panel: himax-hx8394: Drop prepare/unprepare tracking

2023-11-30 Thread Chris Morgan
From: Chris Morgan Drop the panel specific prepare/unprepare logic. This is now tracked by the DRM stack [1]. [1] commit d2aacaf07395 ("drm/panel: Check for already prepared/enabled in drm_panel") Signed-off-by: Chris Morgan --- drivers/gpu/drm/panel/panel-himax-hx8394.c | 11

Re: [PATCH V4 2/6] drm/panel: nv3051d: Hold panel in reset for unprepare

2023-11-25 Thread Chris Morgan
On Fri, Nov 17, 2023 at 02:25:32PM -0600, Chris Morgan wrote: > From: Chris Morgan > > Improve the panel's ability to restore from suspend by holding the > panel in suspend after unprepare. Now I have confirmation this does fix a bug for some users, and a somewhat serious bu

[PATCH V4 3/6] drm/panel: nv3051d: Add Powkiddy RK2023 Panel Support

2023-11-17 Thread Chris Morgan
From: Chris Morgan Refactor the driver to add support for the powkiddy,rk2023-panel panel. This panel is extremely similar to the rg353p-panel but requires a smaller vertical back porch and isn't as tolerant of higher speeds. Note that while all of these panels are identical in size (70x5

[PATCH V4 6/6] arm64: dts: rockchip: Add Powkiddy RK2023

2023-11-17 Thread Chris Morgan
From: Chris Morgan Add support for the Powkiddy RK2023. The Powkiddy RK2023 is a handheld gaming device with a 3.5 inch screen powered by the Rockchip RK3566 SoC. The device looks physically different from the Powkiddy RGB30, but is functionally identical except for the panel. Signed-off-by

[PATCH V4 1/6] dt-bindings: display: nv3051d: Update NewVision NV3051D compatibles

2023-11-17 Thread Chris Morgan
From: Chris Morgan Update the NewVision NV3051D compatible strings by adding a new panel, the powkiddy,rk2023-panel, and removing another entry, the anbernic,rg353v-panel. The rk2023-panel is similar to the rg353p-panel but has slightly different timings so it needs a new string. The rg353v

[PATCH V4 4/6] dt-bindings: arm: rockchip: Add Powkiddy RK2023

2023-11-17 Thread Chris Morgan
From: Chris Morgan The Powkiddy RK2023 is a handheld gaming device made by Powkiddy and powered by the Rockchip RK3566 SoC. Group the Powkiddy RK3566 based devices together as they are both extremely similar. Signed-off-by: Chris Morgan Acked-by: Krzysztof Kozlowski --- Documentation

[PATCH V4 0/6] rockchip: Add Powkiddy RK2023

2023-11-17 Thread Chris Morgan
From: Chris Morgan Add support for the Powkiddy RK2023, which is extremely similar to existing Powkiddy RGB30 device. Changes since V3: - Corrected commit subject lines. Changes since V2: - Split "hold panel in reset" to a separate patch for the NV3051D. - Changed replaced common

[PATCH V4 5/6] arm64: dts: rockchip: Update powkiddy, rgb30 include to rk2023 DTSI

2023-11-17 Thread Chris Morgan
From: Chris Morgan The Powkiddy RGB30 device is similar to the Anbernic RGxx3 series, however there are several differences which require deleting nodes in order to properly define the hardware. This was deemed unacceptable for the RK2023, so instead create a common include file for the Powkiddy

[PATCH V4 2/6] drm/panel: nv3051d: Hold panel in reset for unprepare

2023-11-17 Thread Chris Morgan
From: Chris Morgan Improve the panel's ability to restore from suspend by holding the panel in suspend after unprepare. Fixes: b1d39f0f4264 ("drm/panel: Add NewVision NV3051D MIPI-DSI LCD panel") Signed-off-by: Chris Morgan Reviewed-by: Jessica Zhang --- drivers/gpu/drm/panel/

[PATCH V2 1/5] drm/panel-elida-kd35t133: trival: update panel size from 5.5 to 3.5

2023-11-17 Thread Chris Morgan
From: Chris Morgan The comments at the top of the driver state the panel size incorrectly as 5.5" instead of 3.5". Signed-off-by: Chris Morgan Reviewed-by: Jessica Zhang --- drivers/gpu/drm/panel/panel-elida-kd35t133.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) di

[PATCH V2 3/5] drm/panel-elida-kd35t133: drop drm_connector_set_orientation_from_panel

2023-11-17 Thread Chris Morgan
From: Chris Morgan Stop calling drm_connector_set_orientation_from_panel() as its now called by the panel bridge directly when it is initialized. Signed-off-by: Chris Morgan Reviewed-by: Jessica Zhang --- drivers/gpu/drm/panel/panel-elida-kd35t133.c | 5 - 1 file changed, 5 deletions

[PATCH V2 2/5] drm/panel-elida-kd35t133: hold panel in reset for unprepare

2023-11-17 Thread Chris Morgan
From: Chris Morgan For devices like the Anbernic RG351M and RG351P the panel is wired to an always on regulator. When the device suspends and wakes up, there are some slight artifacts on the screen that go away over time. If instead we hold the panel in reset status after it is unprepared, this

[PATCH V2 5/5] drm/panel-elida-kd35t133: Drop prepare/unprepare logic

2023-11-17 Thread Chris Morgan
From: Chris Morgan Drop the prepare/unprepare logic, as this is now tracked elsewhere since this commit [1]. [1] commit d2aacaf07395 ("drm/panel: Check for already prepared/enabled in drm_panel") Signed-off-by: Chris Morgan --- drivers/gpu/drm/panel/panel-elida-kd35t

[PATCH V2 4/5] drm/panel-elida-kd35t133: Drop shutdown logic

2023-11-17 Thread Chris Morgan
From: Chris Morgan The driver shutdown is duplicate as it calls drm_unprepare and drm_disable which are called anyway when associated drivers are shutdown/removed. Signed-off-by: Chris Morgan --- drivers/gpu/drm/panel/panel-elida-kd35t133.c | 17 - 1 file changed, 17 deletions

[PATCH V2 0/5] Elida KD35T133 Panel Improvements

2023-11-17 Thread Chris Morgan
From: Chris Morgan Fix a few bugs and clean up no longer needed code on the Elida KD35T133 DSI panel, as used in devices such as the Odroid Go Advance and the Anbernic RG351M. Changes since V1: - Split removal of shutdown logic into a new patch independent of dropping of prepared tracking

Re: [PATCH 2/4] drm/panel-elida-kd35t133: hold panel in reset for unprepare

2023-11-16 Thread Chris Morgan
On Wed, Nov 15, 2023 at 01:38:11PM -0800, Jessica Zhang wrote: > > > On 11/15/2023 7:26 AM, Chris Morgan wrote: > > From: Chris Morgan > > > > For devices like the Anbernic RG351M and RG351P the panel is wired to > > an always on regulator. When the device sus

[PATCH V3 2/6] drm/panel: nv3051d: Hold panel in reset for unprepare

2023-11-15 Thread Chris Morgan
From: Chris Morgan Improve the panel's ability to restore from suspend by holding the panel in suspend after unprepare. Fixes: b1d39f0f4264 ("drm/panel: Add NewVision NV3051D MIPI-DSI LCD panel") Signed-off-by: Chris Morgan --- drivers/gpu/drm/panel/panel-newvision-nv3051d.c

[PATCH V3 5/6] arm64: dts: rockchip: Update powkiddy, rgb30 include to rk2023 DTSI

2023-11-15 Thread Chris Morgan
From: Chris Morgan The Powkiddy RGB30 device is similar to the Anbernic RGxx3 series, however there are several differences which require deleting nodes in order to properly define the hardware. This was deemed unacceptable for the RK2023, so instead create a common include file for the Powkiddy

[PATCH V3 6/6] dt-bindings: arm: rockchip: Add Powkiddy RK2023

2023-11-15 Thread Chris Morgan
From: Chris Morgan Add support for the Powkiddy RK2023. The Powkiddy RK2023 is a handheld gaming device with a 3.5 inch screen powered by the Rockchip RK3566 SoC. The device looks physically different from the Powkiddy RGB30, but is functionally identical except for the panel. Signed-off-by

[PATCH V3 4/6] dt-bindings: arm: rockchip: Add Powkiddy RK2023

2023-11-15 Thread Chris Morgan
From: Chris Morgan The Powkiddy RK2023 is a handheld gaming device made by Powkiddy and powered by the Rockchip RK3566 SoC. Group the Powkiddy RK3566 based devices together as they are both extremely similar. Signed-off-by: Chris Morgan Acked-by: Krzysztof Kozlowski --- Documentation

[PATCH V3 3/6] nv3051d: Add Powkiddy RK2023 Panel Support

2023-11-15 Thread Chris Morgan
From: Chris Morgan Refactor the driver to add support for the powkiddy,rk2023-panel panel. This panel is extremely similar to the rg353p-panel but requires a smaller vertical back porch and isn't as tolerant of higher speeds. Note that while all of these panels are identical in size (70x5

[PATCH V3 1/6] dt-bindings: display: panel: Update NewVision NV3051D compatibles

2023-11-15 Thread Chris Morgan
From: Chris Morgan Update the NewVision NV3051D compatible strings by adding a new panel, the powkiddy,rk2023-panel, and removing another entry, the anbernic,rg353v-panel. The rk2023-panel is similar to the rg353p-panel but has slightly different timings so it needs a new string. The rg353v

[PATCH V3 0/6] rockchip: Add Powkiddy RK2023

2023-11-15 Thread Chris Morgan
From: Chris Morgan Add support for the Powkiddy RK2023, which is extremely similar to existing Powkiddy RGB30 device. Changes since V2: - Split "hold panel in reset" to a separate patch for the NV3051D. - Changed replaced common include to a new Powkiddy specific include to bett

[PATCH 4/4] drm/panel-elida-kd35t133: Drop prepare/unprepare logic

2023-11-15 Thread Chris Morgan
From: Chris Morgan Drop the prepare/unprepare logic, as this is now tracked elsewhere. Additionally, the driver shutdown is also duplicate as it calls drm_unprepare and drm_disable which are called anyway when associated drivers are shutdown/removed. Signed-off-by: Chris Morgan --- drivers

[PATCH 2/4] drm/panel-elida-kd35t133: hold panel in reset for unprepare

2023-11-15 Thread Chris Morgan
From: Chris Morgan For devices like the Anbernic RG351M and RG351P the panel is wired to an always on regulator. When the device suspends and wakes up, there are some slight artifacts on the screen that go away over time. If instead we hold the panel in reset status after it is unprepared, this

  1   2   3   4   >