Add S922X dsi & panel driver

This commit is contained in:
mason 2023-08-22 23:58:00 +00:00
parent 64299dbe68
commit 688ba3afea
No known key found for this signature in database
GPG key ID: 84D9278A11FA112B
4 changed files with 3333 additions and 12154 deletions

View file

@ -1,6 +1,6 @@
diff -rupN linux.orig/arch/arm64/boot/dts/amlogic/Makefile linux/arch/arm64/boot/dts/amlogic/Makefile
--- linux.orig/arch/arm64/boot/dts/amlogic/Makefile 2023-08-08 13:18:07.105059931 +0000
+++ linux/arch/arm64/boot/dts/amlogic/Makefile 2023-08-10 21:51:43.405270822 +0000
--- linux.orig/arch/arm64/boot/dts/amlogic/Makefile 2023-08-11 10:08:27.000000000 +0000
+++ linux/arch/arm64/boot/dts/amlogic/Makefile 2023-08-22 22:58:55.698672090 +0000
@@ -12,8 +12,10 @@ dtb-$(CONFIG_ARCH_MESON) += meson-g12b-a
dtb-$(CONFIG_ARCH_MESON) += meson-g12b-gsking-x.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-g12b-gtking-pro.dtb
@ -13,8 +13,8 @@ diff -rupN linux.orig/arch/arm64/boot/dts/amlogic/Makefile linux/arch/arm64/boot
dtb-$(CONFIG_ARCH_MESON) += meson-g12b-ugoos-am6.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-gxbb-kii-pro.dtb
diff -rupN linux.orig/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi linux/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
--- linux.orig/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi 2023-08-08 13:18:07.105059931 +0000
+++ linux/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi 2023-08-10 21:51:43.405270822 +0000
--- linux.orig/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi 2023-08-11 10:08:27.000000000 +0000
+++ linux/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi 2023-08-22 22:58:55.698672090 +0000
@@ -61,18 +61,6 @@
gpu_opp_table: opp-table-gpu {
compatible = "operating-points-v2";
@ -77,8 +77,8 @@ diff -rupN linux.orig/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi linux/ar
operating-points-v2 = <&gpu_opp_table>;
#cooling-cells = <2>;
diff -rupN linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-a311d.dtsi linux/arch/arm64/boot/dts/amlogic/meson-g12b-a311d.dtsi
--- linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-a311d.dtsi 2023-08-08 13:18:07.105059931 +0000
+++ linux/arch/arm64/boot/dts/amlogic/meson-g12b-a311d.dtsi 2023-08-10 21:54:47.305322357 +0000
--- linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-a311d.dtsi 2023-08-11 10:08:27.000000000 +0000
+++ linux/arch/arm64/boot/dts/amlogic/meson-g12b-a311d.dtsi 2023-08-22 22:58:55.698672090 +0000
@@ -11,6 +11,11 @@
compatible = "operating-points-v2";
opp-shared;
@ -105,8 +105,8 @@ diff -rupN linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-a311d.dtsi linux/ar
opp-microvolt = <731000>;
diff -rupN linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts linux/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts
--- linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts 1970-01-01 00:00:00.000000000 +0000
+++ linux/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts 2023-08-10 21:55:45.162599007 +0000
@@ -0,0 +1,989 @@
+++ linux/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts 2023-08-22 23:01:52.052250995 +0000
@@ -0,0 +1,1008 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2022 Neil Armstrong <narmstrong@kernel.org>
@ -132,31 +132,6 @@ diff -rupN linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts
+ mmc1 = &sd_emmc_b;
+ };
+
+ reserved-memory {
+ cont_framebuffer_mem: memory@3d800000 {
+ reg = <0x0 0x3d800000 0 (480 * 854 * 4)>;
+ no-map;
+ };
+
+ };
+
+ framebuffer@3d800000 {
+ status = "okay";
+ compatible = "simple-framebuffer";
+ reg = <0 0x3d800000 0 (480 * 854 * 4)>;
+ width = <480>;
+ height = <854>;
+ stride = <(480 * 4)>;
+ format = "a8r8g8b8";
+ reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_HIGH>;
+ clocks = <&clkc CLKID_GP0_PLL>,
+ <&clkc CLKID_MIPI_DSI_PXCLK_SEL>,
+ <&clkc CLKID_MIPI_DSI_PXCLK>,
+ <&clkc CLKID_VCLK2_ENCL>,
+ <&clkc CLKID_VCLK2_VENCL>,
+ <&clkc CLKID_MIPI_DSI_PHY>;
+ };
+
+ panel_backlight: backlight {
+ compatible = "pwm-backlight";
+ pwms = <&pwm_ef 1 40000 0>;
@ -344,7 +319,6 @@ diff -rupN linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts
+ reset-gpios = <&gpio BOOT_12 GPIO_ACTIVE_LOW>;
+ };
+
+
+ leds {
+ compatible = "gpio-leds";
+
@ -574,7 +548,7 @@ diff -rupN linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts
+ interrupt-parent = <&gpio_intc>;
+ interrupts = <7 IRQ_TYPE_LEVEL_LOW>; /* GPIOAO_7 */
+ rockchip,system-power-controller;
+ wakeup-source;
+ clock-output-names = "rk808-clkout1", "rk808-clkout2";
+
+ vcc1-supply = <&vdd_sys>;
+ vcc2-supply = <&vdd_sys>;
@ -989,6 +963,56 @@ diff -rupN linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts
+ status = "okay";
+};
+
+&mipi_dsi {
+ status = "okay";
+
+ assigned-clocks = <&clkc CLKID_GP0_PLL>,
+ <&clkc CLKID_MIPI_DSI_PXCLK_SEL>,
+ <&clkc CLKID_MIPI_DSI_PXCLK>,
+ <&clkc CLKID_CTS_ENCL_SEL>,
+ <&clkc CLKID_VCLK2_SEL>;
+ assigned-clock-parents = <0>,
+ <&clkc CLKID_GP0_PLL>,
+ <0>,
+ <&clkc CLKID_VCLK2_DIV1>,
+ <&clkc CLKID_GP0_PLL>;
+ assigned-clock-rates = <330000000>,
+ <0>,
+ <330000000>,
+ <0>,
+ <0>;
+
+ panel@0 {
+ compatible = "elida,kd50t048a", "sitronix,st7701";
+ reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_HIGH>;
+ IOVCC-supply = <&vcc_lcd>;
+ VCC-supply = <&vcc_lcd>;
+ backlight = <&panel_backlight>;
+ rotation = <270>;
+ reg = <0>;
+
+ port {
+ mipi_in_panel: endpoint {
+ remote-endpoint = <&mipi_out_panel>;
+ };
+ };
+ };
+};
+
+&mipi_analog_dphy {
+ status = "okay";
+};
+
+&mipi_dphy {
+ status = "okay";
+};
+
+&mipi_dsi_panel_port {
+ mipi_out_panel: endpoint {
+ remote-endpoint = <&mipi_in_panel>;
+ };
+};
+
+&periphs_pinctrl {
+ keypad_gpio_pins: keypad-gpio {
+ mux {
@ -1002,11 +1026,6 @@ diff -rupN linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts
+ output-disable;
+ };
+ };
+ lcd_reset_gpio: lcd-reset-gpio {
+ pins = "GPIOH_4";
+ bias-pull-up;
+ output-enable;
+ };
+};
+
+&pwm_ef {
@ -1098,8 +1117,8 @@ diff -rupN linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts
+};
diff -rupN linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-powkiddy-rgb10-max-3.dts linux/arch/arm64/boot/dts/amlogic/meson-g12b-powkiddy-rgb10-max-3.dts
--- linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-powkiddy-rgb10-max-3.dts 1970-01-01 00:00:00.000000000 +0000
+++ linux/arch/arm64/boot/dts/amlogic/meson-g12b-powkiddy-rgb10-max-3.dts 2023-08-10 23:55:49.746062247 +0000
@@ -0,0 +1,975 @@
+++ linux/arch/arm64/boot/dts/amlogic/meson-g12b-powkiddy-rgb10-max-3.dts 2023-08-22 23:00:58.898569055 +0000
@@ -0,0 +1,995 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2022 Neil Armstrong <narmstrong@kernel.org>
@ -1126,31 +1145,6 @@ diff -rupN linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-powkiddy-rgb10-max-
+ mmc1 = &sd_emmc_b;
+ };
+
+ reserved-memory {
+ cont_framebuffer_mem: memory@3d800000 {
+ reg = <0x0 0x3d800000 0 (480 * 854 * 4)>;
+ no-map;
+ };
+
+ };
+
+ framebuffer@3d800000 {
+ status = "okay";
+ compatible = "simple-framebuffer";
+ reg = <0 0x3d800000 0 (480 * 854 * 4)>;
+ width = <480>;
+ height = <854>;
+ stride = <(480 * 4)>;
+ format = "a8r8g8b8";
+ reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_HIGH>;
+ clocks = <&clkc CLKID_GP0_PLL>,
+ <&clkc CLKID_MIPI_DSI_PXCLK_SEL>,
+ <&clkc CLKID_MIPI_DSI_PXCLK>,
+ <&clkc CLKID_VCLK2_ENCL>,
+ <&clkc CLKID_VCLK2_VENCL>,
+ <&clkc CLKID_MIPI_DSI_PHY>;
+ };
+
+ panel_backlight: backlight {
+ compatible = "pwm-backlight";
+ pwms = <&pwm_ef 1 40000 0>;
@ -1968,6 +1962,56 @@ diff -rupN linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-powkiddy-rgb10-max-
+ status = "okay";
+};
+
+&mipi_dsi {
+ status = "okay";
+
+ assigned-clocks = <&clkc CLKID_GP0_PLL>,
+ <&clkc CLKID_MIPI_DSI_PXCLK_SEL>,
+ <&clkc CLKID_MIPI_DSI_PXCLK>,
+ <&clkc CLKID_CTS_ENCL_SEL>,
+ <&clkc CLKID_VCLK2_SEL>;
+ assigned-clock-parents = <0>,
+ <&clkc CLKID_GP0_PLL>,
+ <0>,
+ <&clkc CLKID_VCLK2_DIV1>,
+ <&clkc CLKID_GP0_PLL>;
+ assigned-clock-rates = <330000000>,
+ <0>,
+ <330000000>,
+ <0>,
+ <0>;
+
+ panel@0 {
+ compatible = "elida,kd50t048a", "sitronix,st7701";
+ reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_HIGH>;
+ IOVCC-supply = <&vcc_lcd>;
+ VCC-supply = <&vcc_lcd>;
+ backlight = <&panel_backlight>;
+ rotation = <270>;
+ reg = <0>;
+
+ port {
+ mipi_in_panel: endpoint {
+ remote-endpoint = <&mipi_out_panel>;
+ };
+ };
+ };
+};
+
+&mipi_analog_dphy {
+ status = "okay";
+};
+
+&mipi_dphy {
+ status = "okay";
+};
+
+&mipi_dsi_panel_port {
+ mipi_out_panel: endpoint {
+ remote-endpoint = <&mipi_in_panel>;
+ };
+};
+
+&periphs_pinctrl {
+ keypad_gpio_pins: keypad-gpio {
+ mux {
@ -1981,11 +2025,6 @@ diff -rupN linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-powkiddy-rgb10-max-
+ output-disable;
+ };
+ };
+ lcd_reset_gpio: lcd-reset-gpio {
+ pins = "GPIOH_4";
+ bias-pull-up;
+ output-enable;
+ };
+};
+
+&pwm_ef {
@ -2076,8 +2115,8 @@ diff -rupN linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-powkiddy-rgb10-max-
+ phy-supply = <&usb_host>;
+};
diff -rupN linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-s922x.dtsi linux/arch/arm64/boot/dts/amlogic/meson-g12b-s922x.dtsi
--- linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-s922x.dtsi 2023-08-08 13:18:07.105059931 +0000
+++ linux/arch/arm64/boot/dts/amlogic/meson-g12b-s922x.dtsi 2023-08-10 21:56:24.115458940 +0000
--- linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-s922x.dtsi 2023-08-11 10:08:27.000000000 +0000
+++ linux/arch/arm64/boot/dts/amlogic/meson-g12b-s922x.dtsi 2023-08-22 22:58:55.698672090 +0000
@@ -11,6 +11,11 @@
compatible = "operating-points-v2";
opp-shared;
@ -2103,8 +2142,8 @@ diff -rupN linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-s922x.dtsi linux/ar
opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <771000>;
diff -rupN linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b.dtsi linux/arch/arm64/boot/dts/amlogic/meson-g12b.dtsi
--- linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b.dtsi 2023-08-08 13:18:07.105059931 +0000
+++ linux/arch/arm64/boot/dts/amlogic/meson-g12b.dtsi 2023-08-10 21:51:43.405270822 +0000
--- linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b.dtsi 2023-08-11 10:08:27.000000000 +0000
+++ linux/arch/arm64/boot/dts/amlogic/meson-g12b.dtsi 2023-08-22 22:58:55.698672090 +0000
@@ -105,6 +105,8 @@
l2: l2-cache0 {
@ -2123,8 +2162,8 @@ diff -rupN linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b.dtsi linux/arch/arm
+ power_policy = "always_on";
};
diff -rupN linux.orig/drivers/gpu/drm/drm_panel_orientation_quirks.c linux/drivers/gpu/drm/drm_panel_orientation_quirks.c
--- linux.orig/drivers/gpu/drm/drm_panel_orientation_quirks.c 2023-08-08 13:18:07.593071158 +0000
+++ linux/drivers/gpu/drm/drm_panel_orientation_quirks.c 2023-08-10 21:51:43.405270822 +0000
--- linux.orig/drivers/gpu/drm/drm_panel_orientation_quirks.c 2023-08-11 10:08:27.000000000 +0000
+++ linux/drivers/gpu/drm/drm_panel_orientation_quirks.c 2023-08-22 22:58:55.698672090 +0000
@@ -461,7 +461,7 @@ EXPORT_SYMBOL(drm_get_panel_orientation_
/* There are no quirks for non x86 devices yet */
int drm_get_panel_orientation_quirk(int width, int height)
@ -2135,8 +2174,8 @@ diff -rupN linux.orig/drivers/gpu/drm/drm_panel_orientation_quirks.c linux/drive
EXPORT_SYMBOL(drm_get_panel_orientation_quirk);
diff -rupN linux.orig/drivers/input/Kconfig linux/drivers/input/Kconfig
--- linux.orig/drivers/input/Kconfig 2023-08-08 13:18:07.697073551 +0000
+++ linux/drivers/input/Kconfig 2023-08-10 21:51:43.405270822 +0000
--- linux.orig/drivers/input/Kconfig 2023-08-11 10:08:27.000000000 +0000
+++ linux/drivers/input/Kconfig 2023-08-22 22:58:55.698672090 +0000
@@ -51,6 +51,19 @@ config INPUT_FF_MEMLESS
To compile this driver as a module, choose M here: the
module will be called ff-memless.
@ -2158,8 +2197,8 @@ diff -rupN linux.orig/drivers/input/Kconfig linux/drivers/input/Kconfig
tristate "Sparse keymap support library"
help
diff -rupN linux.orig/drivers/input/Makefile linux/drivers/input/Makefile
--- linux.orig/drivers/input/Makefile 2023-08-08 13:18:07.697073551 +0000
+++ linux/drivers/input/Makefile 2023-08-10 21:51:43.405270822 +0000
--- linux.orig/drivers/input/Makefile 2023-08-11 10:08:27.000000000 +0000
+++ linux/drivers/input/Makefile 2023-08-22 22:58:55.698672090 +0000
@@ -10,6 +10,7 @@ input-core-y := input.o input-compat.o i
input-core-y += touchscreen.o
@ -2170,7 +2209,7 @@ diff -rupN linux.orig/drivers/input/Makefile linux/drivers/input/Makefile
obj-$(CONFIG_INPUT_VIVALDIFMAP) += vivaldi-fmap.o
diff -rupN linux.orig/drivers/input/input-polldev.c linux/drivers/input/input-polldev.c
--- linux.orig/drivers/input/input-polldev.c 1970-01-01 00:00:00.000000000 +0000
+++ linux/drivers/input/input-polldev.c 2023-08-10 21:51:43.405270822 +0000
+++ linux/drivers/input/input-polldev.c 2023-08-22 22:58:55.698672090 +0000
@@ -0,0 +1,362 @@
+// SPDX-License-Identifier: GPL-2.0-only
+/*
@ -2535,8 +2574,8 @@ diff -rupN linux.orig/drivers/input/input-polldev.c linux/drivers/input/input-po
+}
+EXPORT_SYMBOL(input_unregister_polled_device);
diff -rupN linux.orig/drivers/input/joystick/Kconfig linux/drivers/input/joystick/Kconfig
--- linux.orig/drivers/input/joystick/Kconfig 2023-08-08 13:18:07.697073551 +0000
+++ linux/drivers/input/joystick/Kconfig 2023-08-10 21:51:43.405270822 +0000
--- linux.orig/drivers/input/joystick/Kconfig 2023-08-11 10:08:27.000000000 +0000
+++ linux/drivers/input/joystick/Kconfig 2023-08-22 22:58:55.698672090 +0000
@@ -344,6 +344,12 @@ config JOYSTICK_MAPLE
To compile this as a module choose M here: the module will be called
maplecontrol.
@ -2551,8 +2590,8 @@ diff -rupN linux.orig/drivers/input/joystick/Kconfig linux/drivers/input/joystic
tristate "PlayStation 1/2 joypads via SPI interface"
depends on SPI
diff -rupN linux.orig/drivers/input/joystick/Makefile linux/drivers/input/joystick/Makefile
--- linux.orig/drivers/input/joystick/Makefile 2023-08-08 13:18:07.697073551 +0000
+++ linux/drivers/input/joystick/Makefile 2023-08-10 21:51:43.405270822 +0000
--- linux.orig/drivers/input/joystick/Makefile 2023-08-11 10:08:27.000000000 +0000
+++ linux/drivers/input/joystick/Makefile 2023-08-22 22:58:55.698672090 +0000
@@ -25,6 +25,7 @@ obj-$(CONFIG_JOYSTICK_JOYDUMP) += joydu
obj-$(CONFIG_JOYSTICK_MAGELLAN) += magellan.o
obj-$(CONFIG_JOYSTICK_MAPLE) += maplecontrol.o
@ -2563,7 +2602,7 @@ diff -rupN linux.orig/drivers/input/joystick/Makefile linux/drivers/input/joysti
obj-$(CONFIG_JOYSTICK_QWIIC) += qwiic-joystick.o
diff -rupN linux.orig/drivers/input/joystick/amlogic-saradc.h linux/drivers/input/joystick/amlogic-saradc.h
--- linux.orig/drivers/input/joystick/amlogic-saradc.h 1970-01-01 00:00:00.000000000 +0000
+++ linux/drivers/input/joystick/amlogic-saradc.h 2023-08-10 21:51:43.405270822 +0000
+++ linux/drivers/input/joystick/amlogic-saradc.h 2023-08-22 22:58:55.698672090 +0000
@@ -0,0 +1,32 @@
+/*
+ * include/dt-bindings/iio/adc/amlogic-saradc.h
@ -2599,7 +2638,7 @@ diff -rupN linux.orig/drivers/input/joystick/amlogic-saradc.h linux/drivers/inpu
+#endif
diff -rupN linux.orig/drivers/input/joystick/odroid-gou-joypad.c linux/drivers/input/joystick/odroid-gou-joypad.c
--- linux.orig/drivers/input/joystick/odroid-gou-joypad.c 1970-01-01 00:00:00.000000000 +0000
+++ linux/drivers/input/joystick/odroid-gou-joypad.c 2023-08-10 21:51:43.405270822 +0000
+++ linux/drivers/input/joystick/odroid-gou-joypad.c 2023-08-22 22:58:55.698672090 +0000
@@ -0,0 +1,926 @@
+/*----------------------------------------------------------------------------*/
+#include <linux/kernel.h>
@ -3528,8 +3567,8 @@ diff -rupN linux.orig/drivers/input/joystick/odroid-gou-joypad.c linux/drivers/i
+
+/*----------------------------------------------------------------------------*/
diff -rupN linux.orig/drivers/mfd/rk808.c linux/drivers/mfd/rk808.c
--- linux.orig/drivers/mfd/rk808.c 2023-08-08 13:18:07.769075206 +0000
+++ linux/drivers/mfd/rk808.c 2023-08-10 21:51:43.405270822 +0000
--- linux.orig/drivers/mfd/rk808.c 2023-08-11 10:08:27.000000000 +0000
+++ linux/drivers/mfd/rk808.c 2023-08-22 22:58:55.698672090 +0000
@@ -81,12 +81,47 @@ static bool rk817_is_volatile_reg(struct
return false;
}
@ -3667,8 +3706,8 @@ diff -rupN linux.orig/drivers/mfd/rk808.c linux/drivers/mfd/rk808.c
static const struct regmap_irq rk805_irqs[] = {
diff -rupN linux.orig/drivers/power/reset/Kconfig linux/drivers/power/reset/Kconfig
--- linux.orig/drivers/power/reset/Kconfig 2023-08-08 13:18:07.957079532 +0000
+++ linux/drivers/power/reset/Kconfig 2023-08-10 21:51:43.405270822 +0000
--- linux.orig/drivers/power/reset/Kconfig 2023-08-11 10:08:27.000000000 +0000
+++ linux/drivers/power/reset/Kconfig 2023-08-22 22:58:55.698672090 +0000
@@ -141,6 +141,13 @@ config POWER_RESET_OCELOT_RESET
help
This driver supports restart for Microsemi Ocelot SoC and similar.
@ -3684,8 +3723,8 @@ diff -rupN linux.orig/drivers/power/reset/Kconfig linux/drivers/power/reset/Kcon
bool "OXNAS SoC restart driver"
depends on ARCH_OXNAS
diff -rupN linux.orig/drivers/power/reset/Makefile linux/drivers/power/reset/Makefile
--- linux.orig/drivers/power/reset/Makefile 2023-08-08 13:18:07.957079532 +0000
+++ linux/drivers/power/reset/Makefile 2023-08-10 21:51:43.405270822 +0000
--- linux.orig/drivers/power/reset/Makefile 2023-08-11 10:08:27.000000000 +0000
+++ linux/drivers/power/reset/Makefile 2023-08-22 22:58:55.698672090 +0000
@@ -17,6 +17,7 @@ obj-$(CONFIG_POWER_RESET_MT6323) += mt63
obj-$(CONFIG_POWER_RESET_OXNAS) += oxnas-restart.o
obj-$(CONFIG_POWER_RESET_QCOM_PON) += qcom-pon.o
@ -3696,7 +3735,7 @@ diff -rupN linux.orig/drivers/power/reset/Makefile linux/drivers/power/reset/Mak
obj-$(CONFIG_POWER_RESET_QNAP) += qnap-poweroff.o
diff -rupN linux.orig/drivers/power/reset/odroid-go-ultra-poweroff.c linux/drivers/power/reset/odroid-go-ultra-poweroff.c
--- linux.orig/drivers/power/reset/odroid-go-ultra-poweroff.c 1970-01-01 00:00:00.000000000 +0000
+++ linux/drivers/power/reset/odroid-go-ultra-poweroff.c 2023-08-10 21:51:43.405270822 +0000
+++ linux/drivers/power/reset/odroid-go-ultra-poweroff.c 2023-08-22 22:58:55.698672090 +0000
@@ -0,0 +1,177 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
@ -3876,8 +3915,8 @@ diff -rupN linux.orig/drivers/power/reset/odroid-go-ultra-poweroff.c linux/drive
+MODULE_DESCRIPTION("Odroid Go Ultra poweroff driver");
+MODULE_LICENSE("GPL");
diff -rupN linux.orig/drivers/power/supply/Kconfig linux/drivers/power/supply/Kconfig
--- linux.orig/drivers/power/supply/Kconfig 2023-08-08 13:18:07.957079532 +0000
+++ linux/drivers/power/supply/Kconfig 2023-08-10 21:51:43.405270822 +0000
--- linux.orig/drivers/power/supply/Kconfig 2023-08-11 10:08:27.000000000 +0000
+++ linux/drivers/power/supply/Kconfig 2023-08-22 22:58:55.698672090 +0000
@@ -918,4 +918,12 @@ config BATTERY_UG3105
device is off or suspended, the functionality of this driver is
limited to reporting capacity only.
@ -3892,8 +3931,8 @@ diff -rupN linux.orig/drivers/power/supply/Kconfig linux/drivers/power/supply/Kc
+
endif # POWER_SUPPLY
diff -rupN linux.orig/drivers/power/supply/Makefile linux/drivers/power/supply/Makefile
--- linux.orig/drivers/power/supply/Makefile 2023-08-08 13:18:07.957079532 +0000
+++ linux/drivers/power/supply/Makefile 2023-08-10 21:51:43.405270822 +0000
--- linux.orig/drivers/power/supply/Makefile 2023-08-11 10:08:27.000000000 +0000
+++ linux/drivers/power/supply/Makefile 2023-08-22 22:58:55.698672090 +0000
@@ -110,3 +110,4 @@ obj-$(CONFIG_BATTERY_ACER_A500) += acer_
obj-$(CONFIG_BATTERY_SURFACE) += surface_battery.o
obj-$(CONFIG_CHARGER_SURFACE) += surface_charger.o
@ -3901,7 +3940,7 @@ diff -rupN linux.orig/drivers/power/supply/Makefile linux/drivers/power/supply/M
+obj-$(CONFIG_CHARGER_RK818) += rk818_charger.o rk818_battery.o
diff -rupN linux.orig/drivers/power/supply/rk818_battery.c linux/drivers/power/supply/rk818_battery.c
--- linux.orig/drivers/power/supply/rk818_battery.c 1970-01-01 00:00:00.000000000 +0000
+++ linux/drivers/power/supply/rk818_battery.c 2023-08-10 21:51:43.405270822 +0000
+++ linux/drivers/power/supply/rk818_battery.c 2023-08-22 22:58:55.698672090 +0000
@@ -0,0 +1,3498 @@
+/*
+ * rk818 battery driver
@ -7403,7 +7442,7 @@ diff -rupN linux.orig/drivers/power/supply/rk818_battery.c linux/drivers/power/s
+MODULE_AUTHOR("chenjh<chenjh@rock-chips.com>");
diff -rupN linux.orig/drivers/power/supply/rk818_battery.h linux/drivers/power/supply/rk818_battery.h
--- linux.orig/drivers/power/supply/rk818_battery.h 1970-01-01 00:00:00.000000000 +0000
+++ linux/drivers/power/supply/rk818_battery.h 2023-08-10 21:51:43.405270822 +0000
+++ linux/drivers/power/supply/rk818_battery.h 2023-08-22 22:58:55.698672090 +0000
@@ -0,0 +1,168 @@
+/*
+ * rk818_battery.h: fuel gauge driver structures
@ -7575,7 +7614,7 @@ diff -rupN linux.orig/drivers/power/supply/rk818_battery.h linux/drivers/power/s
+#endif
diff -rupN linux.orig/drivers/power/supply/rk818_charger.c linux/drivers/power/supply/rk818_charger.c
--- linux.orig/drivers/power/supply/rk818_charger.c 1970-01-01 00:00:00.000000000 +0000
+++ linux/drivers/power/supply/rk818_charger.c 2023-08-10 21:51:43.405270822 +0000
+++ linux/drivers/power/supply/rk818_charger.c 2023-08-22 22:58:55.698672090 +0000
@@ -0,0 +1,726 @@
+// SPDX-License-Identifier: GPL-2.0-only
+/*
@ -8305,7 +8344,7 @@ diff -rupN linux.orig/drivers/power/supply/rk818_charger.c linux/drivers/power/s
+MODULE_AUTHOR("Ondřej Jirman <megi@xff.cz>");
diff -rupN linux.orig/include/linux/input-polldev.h linux/include/linux/input-polldev.h
--- linux.orig/include/linux/input-polldev.h 1970-01-01 00:00:00.000000000 +0000
+++ linux/include/linux/input-polldev.h 2023-08-10 21:51:43.405270822 +0000
+++ linux/include/linux/input-polldev.h 2023-08-22 22:58:55.698672090 +0000
@@ -0,0 +1,58 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef _INPUT_POLLDEV_H
@ -8366,8 +8405,8 @@ diff -rupN linux.orig/include/linux/input-polldev.h linux/include/linux/input-po
+
+#endif
diff -rupN linux.orig/include/linux/mfd/rk808.h linux/include/linux/mfd/rk808.h
--- linux.orig/include/linux/mfd/rk808.h 2023-08-08 13:18:08.173084504 +0000
+++ linux/include/linux/mfd/rk808.h 2023-08-10 21:51:43.405270822 +0000
--- linux.orig/include/linux/mfd/rk808.h 2023-08-11 10:08:27.000000000 +0000
+++ linux/include/linux/mfd/rk808.h 2023-08-22 22:58:55.698672090 +0000
@@ -138,6 +138,8 @@ enum rk818_reg {
RK818_ID_OTG_SWITCH,
};
@ -8479,8 +8518,8 @@ diff -rupN linux.orig/include/linux/mfd/rk808.h linux/include/linux/mfd/rk808.h
#define TEMP115C 0x0c
#define TEMP_HOTDIE_MSK 0x0c
diff -rupN linux.orig/sound/soc/meson/axg-card.c linux/sound/soc/meson/axg-card.c
--- linux.orig/sound/soc/meson/axg-card.c 2023-08-08 13:18:08.365088921 +0000
+++ linux/sound/soc/meson/axg-card.c 2023-08-10 21:51:43.405270822 +0000
--- linux.orig/sound/soc/meson/axg-card.c 2023-08-11 10:08:27.000000000 +0000
+++ linux/sound/soc/meson/axg-card.c 2023-08-22 22:58:55.698672090 +0000
@@ -59,6 +59,13 @@ static int axg_card_tdm_dai_init(struct
(struct axg_dai_link_tdm_data *)priv->link_data[rtd->num];
struct snd_soc_dai *codec_dai;

File diff suppressed because it is too large Load diff