This series add support for the Topwise A721 tablet and it's display. It is an old tablet (around 2012) but it might be useful as reference as the devicetree is pretty complete.
Changes from v1: * Split into multiple patches * dt-binding: use yaml instead of txt * dt-binding: add Topwise A721 to sunxi.yaml * dt-binding: add Topwise to vendor-prefixes * drm: Add bus_format, bus_flags and connector_type * dts: Use SPDX license identifier instead of boilerplate license text * dts: Remove pinctrl leftovers
Pascal Roeleven (5): dt-bindings: panel: Add binding for Starry KR070PE2T drm: panel: Add Starry KR070PE2T dt-bindings: vendor-prefixes: Add Topwise dt-bindings: arm: Add Topwise A721 ARM: dts: sun4i: Add support for Topwise A721 tablet
.../devicetree/bindings/arm/sunxi.yaml | 5 + .../bindings/display/panel/panel-simple.yaml | 2 + .../devicetree/bindings/vendor-prefixes.yaml | 2 + arch/arm/boot/dts/Makefile | 3 +- arch/arm/boot/dts/sun4i-a10-topwise-a721.dts | 242 ++++++++++++++++++ drivers/gpu/drm/panel/panel-simple.c | 29 +++ 6 files changed, 282 insertions(+), 1 deletion(-) create mode 100644 arch/arm/boot/dts/sun4i-a10-topwise-a721.dts
Add the devicetree binding for Starry KR070PE2T
Signed-off-by: Pascal Roeleven dev@pascalroeleven.nl --- .../devicetree/bindings/display/panel/panel-simple.yaml | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/Documentation/devicetree/bindings/display/panel/panel-simple.yaml b/Documentation/devicetree/bindings/display/panel/panel-simple.yaml index 8fe60ee25..7cbace360 100644 --- a/Documentation/devicetree/bindings/display/panel/panel-simple.yaml +++ b/Documentation/devicetree/bindings/display/panel/panel-simple.yaml @@ -43,6 +43,8 @@ properties: - satoz,sat050at40h12r2 # Sharp LS020B1DD01D 2.0" HQVGA TFT LCD panel - sharp,ls020b1dd01d + # Starry KR070PE2T 7" WVGA TFT LCD panel + - starry,kr070pe2t
backlight: true enable-gpios: true
Hi Pascal.
On Fri, Mar 20, 2020 at 12:21:32PM +0100, Pascal Roeleven wrote:
Add the devicetree binding for Starry KR070PE2T
Signed-off-by: Pascal Roeleven dev@pascalroeleven.nl
.../devicetree/bindings/display/panel/panel-simple.yaml | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/Documentation/devicetree/bindings/display/panel/panel-simple.yaml b/Documentation/devicetree/bindings/display/panel/panel-simple.yaml index 8fe60ee25..7cbace360 100644 --- a/Documentation/devicetree/bindings/display/panel/panel-simple.yaml +++ b/Documentation/devicetree/bindings/display/panel/panel-simple.yaml @@ -43,6 +43,8 @@ properties: - satoz,sat050at40h12r2 # Sharp LS020B1DD01D 2.0" HQVGA TFT LCD panel - sharp,ls020b1dd01d
# Starry KR070PE2T 7" WVGA TFT LCD panel
- starry,kr070pe2t
Adapted to apply to drm-misc-next and applied.
Sam
backlight: true enable-gpios: true -- 2.20.1
The KR070PE2T is a 7" panel with a resolution of 800x480.
KR070PE2T is the marking present on the ribbon cable. As this panel is probably available under different brands, this marking will catch most devices.
As I can't find a datasheet for this panel, the bus_flags are instead from trial-and-error. The flags seem to be common for these kind of panels as well.
Signed-off-by: Pascal Roeleven dev@pascalroeleven.nl --- drivers/gpu/drm/panel/panel-simple.c | 29 ++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+)
diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c index e14c14ac6..b3d257257 100644 --- a/drivers/gpu/drm/panel/panel-simple.c +++ b/drivers/gpu/drm/panel/panel-simple.c @@ -2842,6 +2842,32 @@ static const struct panel_desc shelly_sca07010_bfn_lnn = { .bus_format = MEDIA_BUS_FMT_RGB666_1X18, };
+static const struct drm_display_mode starry_kr070pe2t_mode = { + .clock = 33000, + .hdisplay = 800, + .hsync_start = 800 + 209, + .hsync_end = 800 + 209 + 1, + .htotal = 800 + 209 + 1 + 45, + .vdisplay = 480, + .vsync_start = 480 + 22, + .vsync_end = 480 + 22 + 1, + .vtotal = 480 + 22 + 1 + 22, + .vrefresh = 60, +}; + +static const struct panel_desc starry_kr070pe2t = { + .modes = &starry_kr070pe2t_mode, + .num_modes = 1, + .bpc = 8, + .size = { + .width = 152, + .height = 86, + }, + .bus_format = MEDIA_BUS_FMT_RGB888_1X24, + .bus_flags = DRM_BUS_FLAG_DE_HIGH | DRM_BUS_FLAG_PIXDATA_DRIVE_NEGEDGE, + .connector_type = DRM_MODE_CONNECTOR_LVDS, +}; + static const struct drm_display_mode starry_kr122ea0sra_mode = { .clock = 147000, .hdisplay = 1920, @@ -3474,6 +3500,9 @@ static const struct of_device_id platform_of_match[] = { }, { .compatible = "shelly,sca07010-bfn-lnn", .data = &shelly_sca07010_bfn_lnn, + }, { + .compatible = "starry,kr070pe2t", + .data = &starry_kr070pe2t, }, { .compatible = "starry,kr122ea0sra", .data = &starry_kr122ea0sra,
On Fri, Mar 20, 2020 at 12:21:33PM +0100, Pascal Roeleven wrote:
The KR070PE2T is a 7" panel with a resolution of 800x480.
KR070PE2T is the marking present on the ribbon cable. As this panel is probably available under different brands, this marking will catch most devices.
As I can't find a datasheet for this panel, the bus_flags are instead from trial-and-error. The flags seem to be common for these kind of panels as well.
Signed-off-by: Pascal Roeleven dev@pascalroeleven.nl
Applied to drm-misc-next.
Sam
drivers/gpu/drm/panel/panel-simple.c | 29 ++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+)
diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c index e14c14ac6..b3d257257 100644 --- a/drivers/gpu/drm/panel/panel-simple.c +++ b/drivers/gpu/drm/panel/panel-simple.c @@ -2842,6 +2842,32 @@ static const struct panel_desc shelly_sca07010_bfn_lnn = { .bus_format = MEDIA_BUS_FMT_RGB666_1X18, };
+static const struct drm_display_mode starry_kr070pe2t_mode = {
- .clock = 33000,
- .hdisplay = 800,
- .hsync_start = 800 + 209,
- .hsync_end = 800 + 209 + 1,
- .htotal = 800 + 209 + 1 + 45,
- .vdisplay = 480,
- .vsync_start = 480 + 22,
- .vsync_end = 480 + 22 + 1,
- .vtotal = 480 + 22 + 1 + 22,
- .vrefresh = 60,
+};
+static const struct panel_desc starry_kr070pe2t = {
- .modes = &starry_kr070pe2t_mode,
- .num_modes = 1,
- .bpc = 8,
- .size = {
.width = 152,
.height = 86,
- },
- .bus_format = MEDIA_BUS_FMT_RGB888_1X24,
- .bus_flags = DRM_BUS_FLAG_DE_HIGH | DRM_BUS_FLAG_PIXDATA_DRIVE_NEGEDGE,
- .connector_type = DRM_MODE_CONNECTOR_LVDS,
+};
static const struct drm_display_mode starry_kr122ea0sra_mode = { .clock = 147000, .hdisplay = 1920, @@ -3474,6 +3500,9 @@ static const struct of_device_id platform_of_match[] = { }, { .compatible = "shelly,sca07010-bfn-lnn", .data = &shelly_sca07010_bfn_lnn,
- }, {
.compatible = "starry,kr070pe2t",
}, { .compatible = "starry,kr122ea0sra", .data = &starry_kr122ea0sra,.data = &starry_kr070pe2t,
-- 2.20.1
Hi Pascal,
On Fri, Mar 20, 2020 at 12:21:33PM +0100, Pascal Roeleven wrote:
The KR070PE2T is a 7" panel with a resolution of 800x480.
KR070PE2T is the marking present on the ribbon cable. As this panel is probably available under different brands, this marking will catch most devices.
As I can't find a datasheet for this panel, the bus_flags are instead from trial-and-error. The flags seem to be common for these kind of panels as well.
Signed-off-by: Pascal Roeleven dev@pascalroeleven.nl
drivers/gpu/drm/panel/panel-simple.c | 29 ++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+)
diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c index e14c14ac6..b3d257257 100644 --- a/drivers/gpu/drm/panel/panel-simple.c +++ b/drivers/gpu/drm/panel/panel-simple.c @@ -2842,6 +2842,32 @@ static const struct panel_desc shelly_sca07010_bfn_lnn = { .bus_format = MEDIA_BUS_FMT_RGB666_1X18, };
+static const struct drm_display_mode starry_kr070pe2t_mode = {
- .clock = 33000,
- .hdisplay = 800,
- .hsync_start = 800 + 209,
- .hsync_end = 800 + 209 + 1,
- .htotal = 800 + 209 + 1 + 45,
- .vdisplay = 480,
- .vsync_start = 480 + 22,
- .vsync_end = 480 + 22 + 1,
- .vtotal = 480 + 22 + 1 + 22,
- .vrefresh = 60,
+};
+static const struct panel_desc starry_kr070pe2t = {
- .modes = &starry_kr070pe2t_mode,
- .num_modes = 1,
- .bpc = 8,
- .size = {
.width = 152,
.height = 86,
- },
- .bus_format = MEDIA_BUS_FMT_RGB888_1X24,
- .bus_flags = DRM_BUS_FLAG_DE_HIGH | DRM_BUS_FLAG_PIXDATA_DRIVE_NEGEDGE,
- .connector_type = DRM_MODE_CONNECTOR_LVDS,
I'm trying to fix inconsistencies in the panel-simple driver, and this caught my eyes. MEDIA_BUS_FMT_RGB888_1X24 isn't a correct format for LVDS panels. MEDIA_BUS_FMT_RGB666_1X7X3_SPWG, MEDIA_BUS_FMT_RGB888_1X7X4_SPWG or MEDIA_BUS_FMT_RGB888_1X7X4_JEIDA should be used instead. As I couldn't find documentation for the panel, I can't tell which format is correct. Could you please help ?
+};
static const struct drm_display_mode starry_kr122ea0sra_mode = { .clock = 147000, .hdisplay = 1920, @@ -3474,6 +3500,9 @@ static const struct of_device_id platform_of_match[] = { }, { .compatible = "shelly,sca07010-bfn-lnn", .data = &shelly_sca07010_bfn_lnn,
- }, {
.compatible = "starry,kr070pe2t",
}, { .compatible = "starry,kr122ea0sra", .data = &starry_kr122ea0sra,.data = &starry_kr070pe2t,
Hi Laurent,
Good catch. It's actually the connector type which is wrong. The connector_type should be DRM_MODE_CONNECTOR_DPI. If you would include this in your patch series, you can have my acked-by.
Regards, Pascal
On 2020-06-28 09:28, Laurent Pinchart wrote:
Hi Pascal,
On Fri, Mar 20, 2020 at 12:21:33PM +0100, Pascal Roeleven wrote:
The KR070PE2T is a 7" panel with a resolution of 800x480.
KR070PE2T is the marking present on the ribbon cable. As this panel is probably available under different brands, this marking will catch most devices.
As I can't find a datasheet for this panel, the bus_flags are instead from trial-and-error. The flags seem to be common for these kind of panels as well.
Signed-off-by: Pascal Roeleven dev@pascalroeleven.nl
drivers/gpu/drm/panel/panel-simple.c | 29 ++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+)
diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c index e14c14ac6..b3d257257 100644 --- a/drivers/gpu/drm/panel/panel-simple.c +++ b/drivers/gpu/drm/panel/panel-simple.c @@ -2842,6 +2842,32 @@ static const struct panel_desc shelly_sca07010_bfn_lnn = { .bus_format = MEDIA_BUS_FMT_RGB666_1X18, };
+static const struct drm_display_mode starry_kr070pe2t_mode = {
- .clock = 33000,
- .hdisplay = 800,
- .hsync_start = 800 + 209,
- .hsync_end = 800 + 209 + 1,
- .htotal = 800 + 209 + 1 + 45,
- .vdisplay = 480,
- .vsync_start = 480 + 22,
- .vsync_end = 480 + 22 + 1,
- .vtotal = 480 + 22 + 1 + 22,
- .vrefresh = 60,
+};
+static const struct panel_desc starry_kr070pe2t = {
- .modes = &starry_kr070pe2t_mode,
- .num_modes = 1,
- .bpc = 8,
- .size = {
.width = 152,
.height = 86,
- },
- .bus_format = MEDIA_BUS_FMT_RGB888_1X24,
- .bus_flags = DRM_BUS_FLAG_DE_HIGH |
DRM_BUS_FLAG_PIXDATA_DRIVE_NEGEDGE,
- .connector_type = DRM_MODE_CONNECTOR_LVDS,
I'm trying to fix inconsistencies in the panel-simple driver, and this caught my eyes. MEDIA_BUS_FMT_RGB888_1X24 isn't a correct format for LVDS panels. MEDIA_BUS_FMT_RGB666_1X7X3_SPWG, MEDIA_BUS_FMT_RGB888_1X7X4_SPWG or MEDIA_BUS_FMT_RGB888_1X7X4_JEIDA should be used instead. As I couldn't find documentation for the panel, I can't tell which format is correct. Could you please help ?
+};
static const struct drm_display_mode starry_kr122ea0sra_mode = { .clock = 147000, .hdisplay = 1920, @@ -3474,6 +3500,9 @@ static const struct of_device_id platform_of_match[] = { }, { .compatible = "shelly,sca07010-bfn-lnn", .data = &shelly_sca07010_bfn_lnn,
- }, {
.compatible = "starry,kr070pe2t",
}, { .compatible = "starry,kr122ea0sra", .data = &starry_kr122ea0sra,.data = &starry_kr070pe2t,
-- Regards,
Laurent Pinchart
Topwise Communication Co,. Ltd. is a company based in Shenzhen. They manufacture all kind of products but seem to be focusing on POS nowadays.
Signed-off-by: Pascal Roeleven dev@pascalroeleven.nl --- Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml index 9e67944be..3c08370b7 100644 --- a/Documentation/devicetree/bindings/vendor-prefixes.yaml +++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml @@ -982,6 +982,8 @@ patternProperties: "^toppoly,.*": description: TPO (deprecated, use tpo) deprecated: true + "^topwise,.*": + description: Topwise Communication Co., Ltd. "^toradex,.*": description: Toradex AG "^toshiba,.*":
On Fri, Mar 20, 2020 at 12:21:34PM +0100, Pascal Roeleven wrote:
Topwise Communication Co,. Ltd. is a company based in Shenzhen. They manufacture all kind of products but seem to be focusing on POS nowadays.
Signed-off-by: Pascal Roeleven dev@pascalroeleven.nl
Acked-by: Sam Ravnborg sam@ravnborg.org
Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml index 9e67944be..3c08370b7 100644 --- a/Documentation/devicetree/bindings/vendor-prefixes.yaml +++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml @@ -982,6 +982,8 @@ patternProperties: "^toppoly,.*": description: TPO (deprecated, use tpo) deprecated: true
- "^topwise,.*":
- description: Topwise Communication Co., Ltd. "^toradex,.*": description: Toradex AG "^toshiba,.*":
-- 2.20.1
On Fri, 20 Mar 2020 12:21:34 +0100, Pascal Roeleven wrote:
Topwise Communication Co,. Ltd. is a company based in Shenzhen. They manufacture all kind of products but seem to be focusing on POS nowadays.
Signed-off-by: Pascal Roeleven dev@pascalroeleven.nl
Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++ 1 file changed, 2 insertions(+)
Applied, thanks.
Rob
Add the bindings for Topwise A721 tablet
Signed-off-by: Pascal Roeleven dev@pascalroeleven.nl --- Documentation/devicetree/bindings/arm/sunxi.yaml | 5 +++++ 1 file changed, 5 insertions(+)
diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml index abf2d97fb..3de8e85a4 100644 --- a/Documentation/devicetree/bindings/arm/sunxi.yaml +++ b/Documentation/devicetree/bindings/arm/sunxi.yaml @@ -744,6 +744,11 @@ properties: - const: tbs-biometrics,a711 - const: allwinner,sun8i-a83t
+ - description: Topwise A721 Tablet + items: + - const: topwise,a721 + - const: allwinner,sun4i-a10 + - description: Utoo P66 items: - const: utoo,p66
On Fri, 20 Mar 2020 12:21:35 +0100, Pascal Roeleven wrote:
Add the bindings for Topwise A721 tablet
Signed-off-by: Pascal Roeleven dev@pascalroeleven.nl
Documentation/devicetree/bindings/arm/sunxi.yaml | 5 +++++ 1 file changed, 5 insertions(+)
Acked-by: Rob Herring robh@kernel.org
The Topwise A721/LY-F1 tablet is a tablet sold around 2012 under different brands. The mainboard mentions A721 clearly, so this tablet is best known under this name.
Signed-off-by: Pascal Roeleven dev@pascalroeleven.nl --- arch/arm/boot/dts/Makefile | 3 +- arch/arm/boot/dts/sun4i-a10-topwise-a721.dts | 242 +++++++++++++++++++ 2 files changed, 244 insertions(+), 1 deletion(-) create mode 100644 arch/arm/boot/dts/sun4i-a10-topwise-a721.dts
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index 78f144e33..6e6141e00 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -1040,7 +1040,8 @@ dtb-$(CONFIG_MACH_SUN4I) += \ sun4i-a10-olinuxino-lime.dtb \ sun4i-a10-pcduino.dtb \ sun4i-a10-pcduino2.dtb \ - sun4i-a10-pov-protab2-ips9.dtb + sun4i-a10-pov-protab2-ips9.dtb \ + sun4i-a10-topwise-a721.dtb dtb-$(CONFIG_MACH_SUN5I) += \ sun5i-a10s-auxtek-t003.dtb \ sun5i-a10s-auxtek-t004.dtb \ diff --git a/arch/arm/boot/dts/sun4i-a10-topwise-a721.dts b/arch/arm/boot/dts/sun4i-a10-topwise-a721.dts new file mode 100644 index 000000000..936171d30 --- /dev/null +++ b/arch/arm/boot/dts/sun4i-a10-topwise-a721.dts @@ -0,0 +1,242 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * Copyright 2020 Pascal Roeleven dev@pascalroeleven.nl + */ + +/dts-v1/; +#include "sun4i-a10.dtsi" +#include "sunxi-common-regulators.dtsi" + +#include <dt-bindings/gpio/gpio.h> +#include <dt-bindings/input/input.h> +#include <dt-bindings/interrupt-controller/irq.h> +#include <dt-bindings/pwm/pwm.h> + +/ { + model = "Topwise A721"; + compatible = "topwise,a721", "allwinner,sun4i-a10"; + + aliases { + serial0 = &uart0; + }; + + backlight: backlight { + compatible = "pwm-backlight"; + pwms = <&pwm 0 100000 PWM_POLARITY_INVERTED>; + power-supply = <®_vbat>; + enable-gpios = <&pio 7 7 GPIO_ACTIVE_HIGH>; /* PH7 */ + brightness-levels = <0 30 40 50 60 70 80 90 100>; + default-brightness-level = <8>; + }; + + chosen { + stdout-path = "serial0:115200n8"; + }; + + panel: panel { + compatible = "starry,kr070pe2t"; + backlight = <&backlight>; + power-supply = <®_lcd_power>; + + port { + panel_input: endpoint { + remote-endpoint = <&tcon0_out_panel>; + }; + }; + }; + + reg_lcd_power: reg-lcd-power { + compatible = "regulator-fixed"; + regulator-name = "reg-lcd-power"; + gpio = <&pio 7 8 GPIO_ACTIVE_HIGH>; /* PH8 */ + enable-active-high; + }; + + reg_vbat: reg-vbat { + compatible = "regulator-fixed"; + regulator-name = "vbat"; + regulator-min-microvolt = <3700000>; + regulator-max-microvolt = <3700000>; + }; + +}; + +&codec { + status = "okay"; +}; + +&cpu0 { + cpu-supply = <®_dcdc2>; +}; + +&de { + status = "okay"; +}; + +&ehci0 { + status = "okay"; +}; + +&ehci1 { + status = "okay"; +}; + +&i2c0 { + status = "okay"; + + axp209: pmic@34 { + reg = <0x34>; + interrupts = <0>; + }; +}; + +#include "axp209.dtsi" + +&ac_power_supply { + status = "okay"; +}; + +&battery_power_supply { + status = "okay"; +}; + +&i2c1 { + status = "okay"; + + mma7660: accelerometer@4c { + compatible = "fsl,mma7660"; + reg = <0x4c>; + }; +}; + +&i2c2 { + status = "okay"; + + ft5406ee8: touchscreen@38 { + compatible = "edt,edt-ft5406"; + reg = <0x38>; + interrupt-parent = <&pio>; + interrupts = <7 21 IRQ_TYPE_EDGE_FALLING>; + touchscreen-size-x = <800>; + touchscreen-size-y = <480>; + vcc-supply = <®_vcc3v3>; + }; +}; + +&lradc { + vref-supply = <®_ldo2>; + status = "okay"; + + button-vol-down { + label = "Volume Down"; + linux,code = <KEY_VOLUMEDOWN>; + channel = <0>; + voltage = <761904>; + }; + + button-vol-up { + label = "Volume Up"; + linux,code = <KEY_VOLUMEUP>; + channel = <0>; + voltage = <571428>; + }; +}; + +&mmc0 { + vmmc-supply = <®_vcc3v3>; + bus-width = <4>; + cd-gpios = <&pio 7 1 GPIO_ACTIVE_LOW>; /* PH01 */ + status = "okay"; +}; + +&ohci0 { + status = "okay"; +}; + +&ohci1 { + status = "okay"; +}; + +&otg_sram { + status = "okay"; +}; + +&pio { + vcc-pb-supply = <®_vcc3v3>; + vcc-pf-supply = <®_vcc3v3>; + vcc-ph-supply = <®_vcc3v3>; +}; + +&pwm { + pinctrl-names = "default"; + pinctrl-0 = <&pwm0_pin>; + status = "okay"; +}; + +®_dcdc2 { + regulator-always-on; + regulator-min-microvolt = <1000000>; + regulator-max-microvolt = <1400000>; + regulator-name = "vdd-cpu"; +}; + +®_dcdc3 { + regulator-always-on; + regulator-min-microvolt = <1250000>; + regulator-max-microvolt = <1250000>; + regulator-name = "vdd-int-dll"; +}; + +®_ldo1 { + regulator-name = "vdd-rtc"; +}; + +®_ldo2 { + regulator-always-on; + regulator-min-microvolt = <3000000>; + regulator-max-microvolt = <3000000>; + regulator-name = "avcc"; +}; + +®_usb0_vbus { + status = "okay"; +}; + +®_usb1_vbus { + status = "okay"; +}; + +®_usb2_vbus { + status = "okay"; +}; + +&tcon0_out { + tcon0_out_panel: endpoint@0 { + reg = <0>; + remote-endpoint = <&panel_input>; + }; +}; + +&uart0 { + pinctrl-names = "default"; + pinctrl-0 = <&uart0_pb_pins>; + status = "okay"; +}; + +&usb_otg { + dr_mode = "otg"; + status = "okay"; +}; + +&usb_power_supply { + status = "okay"; +}; + +&usbphy { + usb0_id_det-gpios = <&pio 7 4 GPIO_ACTIVE_HIGH>; /* PH4 */ + usb0_vbus_det-gpios = <&pio 7 5 GPIO_ACTIVE_HIGH>; /* PH5 */ + usb0_vbus-supply = <®_usb0_vbus>; + usb1_vbus-supply = <®_usb1_vbus>; + usb2_vbus-supply = <®_usb2_vbus>; + status = "okay"; +};
Hi,
On Fri, Mar 20, 2020 at 12:21:31PM +0100, Pascal Roeleven wrote:
This series add support for the Topwise A721 tablet and it's display. It is an old tablet (around 2012) but it might be useful as reference as the devicetree is pretty complete.
It looks good to me for the last 2 patches, I'll wait for feedback from Thierry or Sam on the panel side.
Maxime
dri-devel@lists.freedesktop.org