summaryrefslogtreecommitdiffstats
path: root/0001-arm64-dts-sun50i-a64-pinephone-Enable-LCD-support-on.patch
diff options
context:
space:
mode:
authorJustin M. Forbes <jforbes@fedoraproject.org>2020-07-13 10:05:15 -0500
committerJustin M. Forbes <jforbes@fedoraproject.org>2020-07-13 10:05:15 -0500
commitaa5ab7f890a036ab6802c7a0c8cf8459a324e3c2 (patch)
treef637c079f5bb221193d2a33f5520f477a02bae0e /0001-arm64-dts-sun50i-a64-pinephone-Enable-LCD-support-on.patch
parentd8d578bfa82493a49b71c8665b2f48c3e6df3617 (diff)
downloadkernel-aa5ab7f890a036ab6802c7a0c8cf8459a324e3c2.tar.gz
kernel-aa5ab7f890a036ab6802c7a0c8cf8459a324e3c2.tar.xz
kernel-aa5ab7f890a036ab6802c7a0c8cf8459a324e3c2.zip
kernel-5.8.0-0.rc5.1
* Mon Jul 13 2020 Fedora Kernel Team <kernel-team@fedoraproject.org> [5.8.0-0.rc5.1] - v5.8-rc5 rebase - arm64: dts: sun50i-a64-pinephone: Add touchscreen support (Ondrej Jirman) - arm64: dts: sun50i-a64-pinephone: Enable LCD support on PinePhone (Icenowy Zheng) - drm/panel: st7703: Assert reset prior to powering down the regulators (Ondrej Jirman) - drm/panel: st7703: Enter sleep after display off (Ondrej Jirman) - drm/panel: st7703: Add support for Xingbangda XBD599 (Ondrej Jirman) - drm/panel: st7703: Move generic part of init sequence to enable callback (Ondrej Jirman) - drm/panel: st7703: Move code specific to jh057n closer together (Ondrej Jirman) - drm/panel: st7703: Prepare for supporting multiple panels (Ondrej Jirman) - drm/panel: st7703: Rename functions from jh057n prefix to st7703 (Ondrej Jirman) - drm/panel: rocktech-jh057n00900: Rename the driver to st7703 (Ondrej Jirman) - dt-bindings: panel: Add compatible for Xingbangda XBD599 panel (Ondrej Jirman) - dt-bindings: panel: Convert rocktech, jh057n00900 to yaml (Ondrej Jirman) - dt-bindings: vendor-prefixes: Add Xingbangda (Icenowy Zheng) - Revert "arm64: allwinner: dts: a64: add LCD-related device nodes for PinePhone" (Peter Robinson) - Revert "drm/sun4i: sun6i_mipi_dsi: fix horizontal timing calculation" (Peter Robinson) - Revert "drm: panel: add Xingbangda XBD599 panel" (Peter Robinson) - Revert "dt-bindings: panel: add binding for Xingbangda XBD599 panel" (Peter Robinson) - selinux: allow reading labels before policy is loaded (Jonathan Lebon) - Fixes "acpi: prefer booting with ACPI over DTS" to be RHEL only (Peter Robinson) - Update config for renamed panel driver. (Peter Robinson) - Enable SERIAL_SC16IS7XX for SPI interfaces (Peter Robinson) - Updated changelog for the release based on dcde237b9b0e (Fedora Kernel Team) Resolves: rhbz# Signed-off-by: Justin M. Forbes <jforbes@fedoraproject.org>
Diffstat (limited to '0001-arm64-dts-sun50i-a64-pinephone-Enable-LCD-support-on.patch')
-rw-r--r--0001-arm64-dts-sun50i-a64-pinephone-Enable-LCD-support-on.patch112
1 files changed, 112 insertions, 0 deletions
diff --git a/0001-arm64-dts-sun50i-a64-pinephone-Enable-LCD-support-on.patch b/0001-arm64-dts-sun50i-a64-pinephone-Enable-LCD-support-on.patch
new file mode 100644
index 000000000..a38cd7250
--- /dev/null
+++ b/0001-arm64-dts-sun50i-a64-pinephone-Enable-LCD-support-on.patch
@@ -0,0 +1,112 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Icenowy Zheng <icenowy@aosc.io>
+Date: Fri, 26 Jun 2020 02:56:00 +0200
+Subject: [PATCH] arm64: dts: sun50i-a64-pinephone: Enable LCD support on
+ PinePhone
+
+PinePhone uses PWM backlight and a XBD599 LCD panel over DSI for
+display.
+
+Backlight levels curve was optimized by Martijn Braam using a
+lux meter.
+
+Add its device nodes.
+
+Signed-off-by: Icenowy Zheng <icenowy@aosc.io>
+Signed-off-by: Martijn Braam <martijn@brixit.nl>
+Signed-off-by: Ondrej Jirman <megous@megous.com>
+---
+ .../allwinner/sun50i-a64-pinephone-1.1.dts | 19 ++++++++++
+ .../dts/allwinner/sun50i-a64-pinephone.dtsi | 35 +++++++++++++++++++
+ 2 files changed, 54 insertions(+)
+
+diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone-1.1.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone-1.1.dts
+index 06a775c41664..3e99a87e9ce5 100644
+--- a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone-1.1.dts
++++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone-1.1.dts
+@@ -9,3 +9,22 @@ / {
+ model = "Pine64 PinePhone Braveheart (1.1)";
+ compatible = "pine64,pinephone-1.1", "allwinner,sun50i-a64";
+ };
++
++&backlight {
++ power-supply = <&reg_ldo_io0>;
++ /*
++ * PWM backlight circuit on this PinePhone revision was changed since
++ * 1.0, and the lowest PWM duty cycle that doesn't lead to backlight
++ * being off is around 20%. Duty cycle for the lowest brightness level
++ * also varries quite a bit between individual boards, so the lowest
++ * value here was chosen as a safe default.
++ */
++ brightness-levels = <
++ 774 793 814 842
++ 882 935 1003 1088
++ 1192 1316 1462 1633
++ 1830 2054 2309 2596
++ 2916 3271 3664 4096>;
++ num-interpolated-steps = <50>;
++ default-brightness-level = <400>;
++};
+diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone.dtsi
+index cefda145c3c9..85a7aa5efd32 100644
+--- a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone.dtsi
++++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone.dtsi
+@@ -16,6 +16,13 @@ aliases {
+ serial0 = &uart0;
+ };
+
++ backlight: backlight {
++ compatible = "pwm-backlight";
++ pwms = <&r_pwm 0 50000 PWM_POLARITY_INVERTED>;
++ enable-gpios = <&pio 7 10 GPIO_ACTIVE_HIGH>; /* PH10 */
++ /* Backlight configuration differs per PinePhone revision. */
++ };
++
+ chosen {
+ stdout-path = "serial0:115200n8";
+ };
+@@ -84,6 +91,30 @@ &dai {
+ status = "okay";
+ };
+
++&de {
++ status = "okay";
++};
++
++&dphy {
++ status = "okay";
++};
++
++&dsi {
++ vcc-dsi-supply = <&reg_dldo1>;
++ #address-cells = <1>;
++ #size-cells = <0>;
++ status = "okay";
++
++ panel@0 {
++ compatible = "xingbangda,xbd599";
++ reg = <0>;
++ reset-gpios = <&pio 3 23 GPIO_ACTIVE_LOW>; /* PD23 */
++ iovcc-supply = <&reg_dldo2>;
++ vcc-supply = <&reg_ldo_io0>;
++ backlight = <&backlight>;
++ };
++};
++
+ &ehci0 {
+ status = "okay";
+ };
+@@ -188,6 +219,10 @@ &r_pio {
+ */
+ };
+
++&r_pwm {
++ status = "okay";
++};
++
+ &r_rsb {
+ status = "okay";
+
+--
+2.26.2
+