public inbox for drm-ai-reviews@public-inbox.freedesktop.org
 help / color / mirror / Atom feed
* Claude review: Initial support for Samsung Galaxy Tab 2 series
  2026-02-19 21:03 [PATCH v6 0/8] " Mithil Bavishi
@ 2026-02-22 20:16 ` Claude Code Review Bot
  0 siblings, 0 replies; 20+ messages in thread
From: Claude Code Review Bot @ 2026-02-22 20:16 UTC (permalink / raw)
  To: dri-devel-reviews

Overall Series Review

Subject: Initial support for Samsung Galaxy Tab 2 series
Author: Mithil Bavishi <bavishimithil@gmail.com>
Patches: 10
Reviewed: 2026-02-23T06:16:27.647295

---

This is a v6 device tree series adding initial support for the Samsung Galaxy Tab 2 (7" and 10.1") series, codenamed "espresso7" and "espresso10." The series is well-structured: it first introduces a TWL6032 PMIC dtsi, then adds the necessary dt-bindings (vendor prefix, LVDS codec compatible, panel compatibles, board compatibles), defines a common dtsi with shared hardware, and finally adds variant-specific dts files for each screen size.

The overall architecture of splitting common and variant-specific device tree content is appropriate. Most of the dt-binding patches have already received Acked-by tags from Krzysztof Kozlowski. The TWL6032 dtsi mirrors the existing TWL6030 dtsi structure, and the board files follow established OMAP4 device tree patterns.

There are a few issues worth addressing. The most significant is an incorrect use of `interrupts` (instead of `interrupts-extended`) for the magnetometer node, which will produce incorrect DT parsing. The reserved memory framebuffer sizing in the common dtsi is hardcoded for the 7" resolution and will be too small for the 10" variant. There is also a typo in a pinctrl node name, commented-out code in the espresso10 dts, and the WAKEUP_EN flags remain despite the v6 changelog claiming they were removed (though Andreas Kemnade's review already noted that WAKEUP_EN is unnecessary for the always-on gpio1 controller).

---
Generated by Claude Code Patch Reviewer

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [PATCH v7 0/8] Initial support for Samsung Galaxy Tab 2 series
@ 2026-02-23  5:51 Mithil Bavishi
  2026-02-23  5:51 ` [PATCH v7 1/8] ARM: dts: twl6032: Add DTS file for TWL6032 PMIC Mithil Bavishi
                   ` (8 more replies)
  0 siblings, 9 replies; 20+ messages in thread
From: Mithil Bavishi @ 2026-02-23  5:51 UTC (permalink / raw)
  To: aaro.koskinen, airlied, andreas, conor+dt, jernej.skrabec, jonas,
	khilman, krzk+dt, laurent.pinchart, maarten.lankhorst, mripard,
	neil.armstrong, prabhakar.mahadev-lad.rj, jesszhan0024, rfoss,
	robh, rogerq, simona, thierry.reding, tony, tzimmermann,
	andrzej.hajda, bavishimithil
  Cc: devicetree, dri-devel, linux-kernel, linux-omap

This series adds initial support for the Samsung Galaxy Tab 2
(samsung-espresso7/10) series of devices. It adds support for 6 variants
(P3100, P3110, P3113, P5100, P5110, P5113). Downstream categorised them
based on 3G and WiFi, but since they use different panel, touch
controllers, batteries, I decided to categorise them based on screen
size as espresso7 and espresso10.

It adds basic functionality for both the models including panel, drm,
sdcard, touchscreen, mmc, wifi, bluetooth, keys, battery, fuel gauge,
pmic, sensors.

Signed-off-by: Mithil Bavishi <bavishimithil@gmail.com>
---
Changes in v7
- Removed prox_irq
- Changed commit message
- Link to v6: https://lore.kernel.org/linux-omap/20260219210408.5451-1-bavishimithil@gmail.com/
Changes in v6
- Remove references to WAKEUP_EN (drivers dont support interrupts-extended)
- Remove gp2a_irq, it was for bh1721fvc not gp2a
- Remove mount-matrix
- Link to v5: https://lore.kernel.org/linux-omap/20260129054709.3878-1-bavishimithil@gmail.com/
Changes in v5
- Commit message length < 75
- Squash commits
- Link to v4: https://lore.kernel.org/linux-omap/20260119033035.57538-1-bavishimithil@gmail.com/
Changes in v4
- Fixed syntax in doestek vendor
- Changed - to _ in node names
- Removed address/size-cells in chosen
- Added pinmux for i2c-gpio5,6,7, irled
- Allow sdcard to poweroff (reg_espresso_external)
- Changed power to key-power
- Order alphabetically in omap4_pmx_wkup and omap4_pmx_core
- Use generic node names
- Added TODO for future nodes
- Fix touchscreen values in espresso7 and espresso10
- Add dts to Makefile
- Commit message length under 75
- Link to v3: https://lore.kernel.org/linux-omap/20241108200440.7562-1-bavishimithil@gmail.com/
Changes in v3
- Use device tree from the correct branch
- Fix commit subjects to matching the subsystem
- Add Doestek vendor
- Add compatible for LVDS encoder
- Add compatibles for 7 and 10 inch panels
- Clean up device tree using "make CHECK_DTBS=y"
- Link to v2: https://lore.kernel.org/all/20241030211215.347710-1-bavishimithil@gmail.com/
Changes in v2
- Fix node names in common dtsi to have - instead of _
- Removed import for twl6030.dtsi
- Edited dts to completely use twl6032 nodes
- Fixed typo ldosb -> ldousb
- Link to v1: https://lore.kernel.org/all/20241030194136.297648-1-bavishimithil@gmail.com/
--

Mithil Bavishi (8):
  ARM: dts: twl6032: Add DTS file for TWL6032 PMIC
  dt-bindings: vendor-prefixes: Add Doestek
  dt-bindings: display: bridge: lvds-codec: add doestek,dtc34lm85am
  dt-bindings: display: panel-lvds: Add compatibles for Samsung
    LTN070NL01 and LTN101AL03 panels
  ARM: dts: ti: omap: espresso-common: Add common device tree for
    Samsung Galaxy Tab 2 series
  dt-bindings: omap: Add Samsung Galaxy Tab 2 7.0 and 10.1
  ARM: dts: ti: omap: samsung-espresso7: Add initial support for Galaxy
    Tab 2 7.0
  ARM: dts: ti: omap: samsung-espresso10: Add initial support for Galaxy
    Tab 2 10.1

 .../devicetree/bindings/arm/ti/omap.yaml      |   2 +
 .../bindings/display/bridge/lvds-codec.yaml   |   1 +
 .../bindings/display/panel/panel-lvds.yaml    |   4 +
 .../devicetree/bindings/vendor-prefixes.yaml  |   2 +
 arch/arm/boot/dts/ti/omap/Makefile            |   2 +
 .../omap/omap4-samsung-espresso-common.dtsi   | 744 ++++++++++++++++++
 .../dts/ti/omap/omap4-samsung-espresso10.dts  | 104 +++
 .../dts/ti/omap/omap4-samsung-espresso7.dts   |  70 ++
 arch/arm/boot/dts/ti/omap/twl6032.dtsi        |  77 ++
 9 files changed, 1006 insertions(+)
 create mode 100644 arch/arm/boot/dts/ti/omap/omap4-samsung-espresso-common.dtsi
 create mode 100644 arch/arm/boot/dts/ti/omap/omap4-samsung-espresso10.dts
 create mode 100644 arch/arm/boot/dts/ti/omap/omap4-samsung-espresso7.dts
 create mode 100644 arch/arm/boot/dts/ti/omap/twl6032.dtsi

-- 
2.43.0


^ permalink raw reply	[flat|nested] 20+ messages in thread

* [PATCH v7 1/8] ARM: dts: twl6032: Add DTS file for TWL6032 PMIC
  2026-02-23  5:51 [PATCH v7 0/8] Initial support for Samsung Galaxy Tab 2 series Mithil Bavishi
@ 2026-02-23  5:51 ` Mithil Bavishi
  2026-02-24  0:31   ` Claude review: " Claude Code Review Bot
  2026-02-23  5:51 ` [PATCH v7 2/8] dt-bindings: vendor-prefixes: Add Doestek Mithil Bavishi
                   ` (7 subsequent siblings)
  8 siblings, 1 reply; 20+ messages in thread
From: Mithil Bavishi @ 2026-02-23  5:51 UTC (permalink / raw)
  To: aaro.koskinen, airlied, andreas, conor+dt, jernej.skrabec, jonas,
	khilman, krzk+dt, laurent.pinchart, maarten.lankhorst, mripard,
	neil.armstrong, prabhakar.mahadev-lad.rj, jesszhan0024, rfoss,
	robh, rogerq, simona, thierry.reding, tony, tzimmermann,
	andrzej.hajda, bavishimithil
  Cc: devicetree, dri-devel, linux-kernel, linux-omap

Add a dedicated DTS file for the TWL6032 PMIC (Phoenix Lite). Already
has driver support with TWL6030 (Phoenix) since both of them are so
similar, some nodes can be reused from TWL6030 as well

This can be included in the board files like twl6030
Example:
...
&i2c1 {
    twl: twl@48 {
        reg = <0x48>;
        interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
        interrupt-controller;
        interrupt-parent = <&gic>;
    };
};

/include/ "twl6032.dtsi"
...

Used in devices like samsung-espresso, amazon-jem, epson-embt2ws etc

Signed-off-by: Mithil Bavishi <bavishimithil@gmail.com>
---
 arch/arm/boot/dts/ti/omap/twl6032.dtsi | 77 ++++++++++++++++++++++++++
 1 file changed, 77 insertions(+)
 create mode 100644 arch/arm/boot/dts/ti/omap/twl6032.dtsi

diff --git a/arch/arm/boot/dts/ti/omap/twl6032.dtsi b/arch/arm/boot/dts/ti/omap/twl6032.dtsi
new file mode 100644
index 000000000..d599a2ca6
--- /dev/null
+++ b/arch/arm/boot/dts/ti/omap/twl6032.dtsi
@@ -0,0 +1,77 @@
+// SPDX-License-Identifier: GPL-2.0-only
+/*
+ * Integrated Power Management Chip
+ * https://www.ti.com/lit/ds/symlink/twl6032.pdf
+ */
+
+&twl {
+	compatible = "ti,twl6032";
+	interrupt-controller;
+	#interrupt-cells = <1>;
+
+	rtc {
+		compatible = "ti,twl4030-rtc";
+		interrupts = <11>;
+	};
+
+	vio: regulator-vio {
+		compatible = "ti,twl6032-vio";
+	};
+
+	ldo1: regulator-ldo1 {
+		compatible = "ti,twl6032-ldo1";
+	};
+
+	ldo2: regulator-ldo2 {
+		compatible = "ti,twl6032-ldo2";
+	};
+
+	ldo3: regulator-ldo3 {
+		compatible = "ti,twl6032-ldo3";
+	};
+
+	ldo4: regulator-ldo4 {
+		compatible = "ti,twl6032-ldo4";
+	};
+
+	ldo5: regulator-ldo5 {
+		compatible = "ti,twl6032-ldo5";
+	};
+
+	ldo6: regulator-ldo6 {
+		compatible = "ti,twl6032-ldo6";
+	};
+
+	ldoln: regulator-ldoln {
+		compatible = "ti,twl6032-ldoln";
+	};
+
+	ldousb: regulator-ldousb {
+		compatible = "ti,twl6032-ldousb";
+	};
+
+	smps4: regulator-smps4 {
+		compatible = "ti,twl6032-smps4";
+	};
+
+	gpadc: gpadc {
+		compatible = "ti,twl6032-gpadc";
+		interrupts = <3>;
+		#io-channel-cells = <1>;
+	};
+
+	twl_usb_comparator: usb-comparator {
+		compatible = "ti,twl6030-usb";
+		interrupts = <4>, <10>;
+	};
+
+	twl_pwm: pwm {
+		compatible = "ti,twl6030-pwm";
+		#pwm-cells = <2>;
+	};
+
+	twl_pwmled: pwmled {
+		compatible = "ti,twl6030-pwmled";
+		#pwm-cells = <2>;
+	};
+};
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH v7 2/8] dt-bindings: vendor-prefixes: Add Doestek
  2026-02-23  5:51 [PATCH v7 0/8] Initial support for Samsung Galaxy Tab 2 series Mithil Bavishi
  2026-02-23  5:51 ` [PATCH v7 1/8] ARM: dts: twl6032: Add DTS file for TWL6032 PMIC Mithil Bavishi
@ 2026-02-23  5:51 ` Mithil Bavishi
  2026-02-24  0:31   ` Claude review: " Claude Code Review Bot
  2026-02-23  5:51 ` [PATCH v7 3/8] dt-bindings: display: bridge: lvds-codec: add doestek, dtc34lm85am Mithil Bavishi
                   ` (6 subsequent siblings)
  8 siblings, 1 reply; 20+ messages in thread
From: Mithil Bavishi @ 2026-02-23  5:51 UTC (permalink / raw)
  To: aaro.koskinen, airlied, andreas, conor+dt, jernej.skrabec, jonas,
	khilman, krzk+dt, laurent.pinchart, maarten.lankhorst, mripard,
	neil.armstrong, prabhakar.mahadev-lad.rj, jesszhan0024, rfoss,
	robh, rogerq, simona, thierry.reding, tony, tzimmermann,
	andrzej.hajda, bavishimithil
  Cc: devicetree, dri-devel, linux-kernel, linux-omap,
	Krzysztof Kozlowski

Add vendor prefix for Doestek Co., Ltd.
Link: http://www.doestek.co.kr/

Signed-off-by: Mithil Bavishi <bavishimithil@gmail.com>
Acked-by: Krzysztof Kozlowski <krzk@kernel.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 c7591b2ae..70a195fc6 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
+++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
@@ -437,6 +437,8 @@ patternProperties:
     description: D-Link Corporation
   "^dmo,.*":
     description: Data Modul AG
+  "^doestek,.*":
+    description: Doestek Co., Ltd.
   "^domintech,.*":
     description: Domintech Co., Ltd.
   "^dongwoon,.*":
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH v7 3/8] dt-bindings: display: bridge: lvds-codec: add doestek, dtc34lm85am
  2026-02-23  5:51 [PATCH v7 0/8] Initial support for Samsung Galaxy Tab 2 series Mithil Bavishi
  2026-02-23  5:51 ` [PATCH v7 1/8] ARM: dts: twl6032: Add DTS file for TWL6032 PMIC Mithil Bavishi
  2026-02-23  5:51 ` [PATCH v7 2/8] dt-bindings: vendor-prefixes: Add Doestek Mithil Bavishi
@ 2026-02-23  5:51 ` Mithil Bavishi
  2026-02-24  0:31   ` Claude review: " Claude Code Review Bot
  2026-02-23  5:51 ` [PATCH v7 4/8] dt-bindings: display: panel-lvds: Add compatibles for Samsung LTN070NL01 and LTN101AL03 panels Mithil Bavishi
                   ` (5 subsequent siblings)
  8 siblings, 1 reply; 20+ messages in thread
From: Mithil Bavishi @ 2026-02-23  5:51 UTC (permalink / raw)
  To: aaro.koskinen, airlied, andreas, conor+dt, jernej.skrabec, jonas,
	khilman, krzk+dt, laurent.pinchart, maarten.lankhorst, mripard,
	neil.armstrong, prabhakar.mahadev-lad.rj, jesszhan0024, rfoss,
	robh, rogerq, simona, thierry.reding, tony, tzimmermann,
	andrzej.hajda, bavishimithil
  Cc: devicetree, dri-devel, linux-kernel, linux-omap,
	Krzysztof Kozlowski

Add compatible strings for the Doestek DTC34LM85AM Flat Panel Display
Transmitter

Signed-off-by: Mithil Bavishi <bavishimithil@gmail.com>
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 Documentation/devicetree/bindings/display/bridge/lvds-codec.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/display/bridge/lvds-codec.yaml b/Documentation/devicetree/bindings/display/bridge/lvds-codec.yaml
index 4f7d3e9cf..3ad01645c 100644
--- a/Documentation/devicetree/bindings/display/bridge/lvds-codec.yaml
+++ b/Documentation/devicetree/bindings/display/bridge/lvds-codec.yaml
@@ -33,6 +33,7 @@ properties:
     oneOf:
       - items:
           - enum:
+              - doestek,dtc34lm85am # For the Doestek DTC34LM85AM Flat Panel Display (FPD) Transmitter
               - ti,ds90c185   # For the TI DS90C185 FPD-Link Serializer
               - ti,ds90c187   # For the TI DS90C187 FPD-Link Serializer
               - ti,sn75lvds83 # For the TI SN75LVDS83 FlatLink transmitter
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH v7 4/8] dt-bindings: display: panel-lvds: Add compatibles for Samsung LTN070NL01 and LTN101AL03 panels
  2026-02-23  5:51 [PATCH v7 0/8] Initial support for Samsung Galaxy Tab 2 series Mithil Bavishi
                   ` (2 preceding siblings ...)
  2026-02-23  5:51 ` [PATCH v7 3/8] dt-bindings: display: bridge: lvds-codec: add doestek, dtc34lm85am Mithil Bavishi
@ 2026-02-23  5:51 ` Mithil Bavishi
  2026-02-24  0:31   ` Claude review: " Claude Code Review Bot
  2026-02-23  5:51 ` [PATCH v7 5/8] ARM: dts: ti: omap: espresso-common: Add common device tree for Samsung Galaxy Tab 2 series Mithil Bavishi
                   ` (4 subsequent siblings)
  8 siblings, 1 reply; 20+ messages in thread
From: Mithil Bavishi @ 2026-02-23  5:51 UTC (permalink / raw)
  To: aaro.koskinen, airlied, andreas, conor+dt, jernej.skrabec, jonas,
	khilman, krzk+dt, laurent.pinchart, maarten.lankhorst, mripard,
	neil.armstrong, prabhakar.mahadev-lad.rj, jesszhan0024, rfoss,
	robh, rogerq, simona, thierry.reding, tony, tzimmermann,
	andrzej.hajda, bavishimithil
  Cc: devicetree, dri-devel, linux-kernel, linux-omap,
	Krzysztof Kozlowski

The LTN070NL01 is a 7.0 inch 1024x600, 24 bit, VESA Compatible, TFT
display panel
The LTN101AL03 is a 10.1 inch 800x1280, 24 bit, VESA Compatible, TFT
display panel

Signed-off-by: Mithil Bavishi <bavishimithil@gmail.com>
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 .../devicetree/bindings/display/panel/panel-lvds.yaml         | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/Documentation/devicetree/bindings/display/panel/panel-lvds.yaml b/Documentation/devicetree/bindings/display/panel/panel-lvds.yaml
index dbc01e640..b31c67bab 100644
--- a/Documentation/devicetree/bindings/display/panel/panel-lvds.yaml
+++ b/Documentation/devicetree/bindings/display/panel/panel-lvds.yaml
@@ -58,6 +58,10 @@ properties:
           - hydis,hv070wx2-1e0
           # Jenson Display BL-JT60050-01A 7" WSVGA (1024x600) color TFT LCD LVDS panel
           - jenson,bl-jt60050-01a
+          # Samsung LTN070NL01 7.0" WSVGA (1024x600) TFT LCD LVDS panel
+          - samsung,ltn070nl01
+          # Samsung LTN101AL03 10.1" WXGA (800x1280) TFT LCD LVDS panel
+          - samsung,ltn101al03
           - tbs,a711-panel
           # Winstar WF70A8SYJHLNGA 7" WSVGA (1024x600) color TFT LCD LVDS panel
           - winstar,wf70a8syjhlnga
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH v7 5/8] ARM: dts: ti: omap: espresso-common: Add common device tree for Samsung Galaxy Tab 2 series
  2026-02-23  5:51 [PATCH v7 0/8] Initial support for Samsung Galaxy Tab 2 series Mithil Bavishi
                   ` (3 preceding siblings ...)
  2026-02-23  5:51 ` [PATCH v7 4/8] dt-bindings: display: panel-lvds: Add compatibles for Samsung LTN070NL01 and LTN101AL03 panels Mithil Bavishi
@ 2026-02-23  5:51 ` Mithil Bavishi
  2026-02-24  0:31   ` Claude review: " Claude Code Review Bot
  2026-02-23  5:51 ` [PATCH v7 6/8] dt-bindings: omap: Add Samsung Galaxy Tab 2 7.0 and 10.1 Mithil Bavishi
                   ` (3 subsequent siblings)
  8 siblings, 1 reply; 20+ messages in thread
From: Mithil Bavishi @ 2026-02-23  5:51 UTC (permalink / raw)
  To: aaro.koskinen, airlied, andreas, conor+dt, jernej.skrabec, jonas,
	khilman, krzk+dt, laurent.pinchart, maarten.lankhorst, mripard,
	neil.armstrong, prabhakar.mahadev-lad.rj, jesszhan0024, rfoss,
	robh, rogerq, simona, thierry.reding, tony, tzimmermann,
	andrzej.hajda, bavishimithil
  Cc: devicetree, dri-devel, linux-kernel, linux-omap

Create common device tree for Samsung Espresso series devices

Create a shared device tree for all variants first.
Device-specific trees will be added later based on screen size.

Signed-off-by: Mithil Bavishi <bavishimithil@gmail.com>
---
 .../omap/omap4-samsung-espresso-common.dtsi   | 744 ++++++++++++++++++
 1 file changed, 744 insertions(+)
 create mode 100644 arch/arm/boot/dts/ti/omap/omap4-samsung-espresso-common.dtsi

diff --git a/arch/arm/boot/dts/ti/omap/omap4-samsung-espresso-common.dtsi b/arch/arm/boot/dts/ti/omap/omap4-samsung-espresso-common.dtsi
new file mode 100644
index 000000000..63dd192f2
--- /dev/null
+++ b/arch/arm/boot/dts/ti/omap/omap4-samsung-espresso-common.dtsi
@@ -0,0 +1,744 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+/dts-v1/;
+#include "dt-bindings/gpio/gpio.h"
+#include <dt-bindings/interrupt-controller/irq.h>
+#include <dt-bindings/input/input.h>
+#include "omap443x.dtsi"
+
+/ {
+	memory@80000000 {
+		device_type = "memory";
+		reg = <0x80000000 0x40000000>; /* 1 GB */
+	};
+
+	reserved-memory {
+		#address-cells = <1>;
+		#size-cells = <1>;
+		ranges;
+
+		continuous_splash: framebuffer@bef00000{
+			reg = <0xbef00000 (1024 * 600 * 4)>;
+			no-map;
+		};
+	};
+
+	chosen {
+		stdout-path = &uart3;
+		#address-cells = <1>;
+	};
+
+	i2c-gpio5 {
+		compatible = "i2c-gpio";
+		pinctrl-names = "default";
+		pinctrl-0 = <&i2c5_pins>;
+		sda-gpios = <&gpio4 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+		scl-gpios = <&gpio4 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+		i2c-gpio,delay-us = <10>;
+		#address-cells = <1>;
+		#size-cells = <0>;
+
+		/* TODO: SMB136 Charger for 7" variant at 0x4d */
+	};
+
+	i2c-gpio6 {
+		compatible = "i2c-gpio";
+		pinctrl-names = "default";
+		pinctrl-0 = <&i2c6_pins>;
+		sda-gpios = <&gpio3 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+		scl-gpios = <&gpio3 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+		i2c-gpio,delay-us = <10>;
+		#address-cells = <1>;
+		#size-cells = <0>;
+
+		/* TODO: STMPE811 ADC at 0x41 */
+	};
+
+	i2c-gpio7 {
+		compatible = "i2c-gpio";
+		pinctrl-names = "default";
+		pinctrl-0 = <&i2c7_pins>;
+		sda-gpios = <&gpio2 30 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+		scl-gpios = <&gpio2 29 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+		i2c-gpio,delay-us = <3>;
+		#address-cells = <1>;
+		#size-cells = <0>;
+
+		fuel-gauge@36 {
+			compatible = "maxim,max17042";
+			reg = <0x36>;
+			pinctrl-0 = <&fuel_alert_irq>;
+			pinctrl-names = "default";
+			interrupt-parent = <&gpio2>;
+			interrupts = <12 IRQ_TYPE_LEVEL_LOW>;
+			maxim,rsns-microohm = <10000>;
+			maxim,over-heat-temp = <500>;
+			maxim,dead-volt = <2500>;
+			maxim,over-volt = <4300>;
+		};
+	};
+
+	reg_espresso_wlan: regulator-espresso-wlan {
+		pinctrl-names = "default";
+		pinctrl-0 = <&wlanen_gpio>;
+		compatible = "regulator-fixed";
+		regulator-name = "espresso_wlan";
+		regulator-max-microvolt = <2000000>;
+		regulator-min-microvolt = <2000000>;
+		gpio = <&gpio4 8 GPIO_ACTIVE_HIGH>; /* GPIO_104 */
+		startup-delay-us = <70000>;
+		regulator-always-on;
+		enable-active-high;
+	};
+
+	wlan_pwrseq: wlan-pwrseq {
+		compatible = "mmc-pwrseq-simple";
+		clocks = <&twl 0>;
+		clock-names = "ext_clock";
+	};
+
+	reg_espresso_internal: regulator-espresso-internal {
+		compatible = "regulator-fixed";
+		regulator-name = "eMMC_LDO";
+		regulator-max-microvolt = <1800000>;
+		regulator-min-microvolt = <1800000>;
+		gpios = <&gpio2 21 GPIO_ACTIVE_HIGH>; /* GPIO_63 */
+		startup-delay-us = <100000>;
+		regulator-boot-on;
+		regulator-always-on;
+		enable-active-high;
+	};
+
+	reg_espresso_external: regulator-espresso-external {
+		compatible = "regulator-fixed";
+		regulator-name = "vmmc1";
+		regulator-max-microvolt = <2800000>;
+		regulator-min-microvolt = <2800000>;
+		gpios = <&gpio2 2 GPIO_ACTIVE_HIGH>; /* GPIO_34 */
+		enable-active-high;
+	};
+
+	reg_touch_ldo_en: regulator-touch-ldo-en  {
+		compatible = "regulator-fixed";
+		regulator-name = "touch_ldo_en";
+		regulator-max-microvolt = <2800000>;
+		regulator-min-microvolt = <2800000>;
+		gpios = <&gpio2 22 GPIO_ACTIVE_HIGH>; /* GPIO_54 */
+		regulator-always-on;
+		enable-active-high;
+	};
+
+	gpio-keys {
+		compatible = "gpio-keys";
+		pinctrl-names = "default";
+		pinctrl-0 = <&gpio_keys>;
+
+		key-power {
+			label = "power";
+
+			gpios = <&gpio1 3 GPIO_ACTIVE_HIGH>; /* GPIO_wk3 */
+			linux,code = <KEY_POWER>;
+			wakeup-source;
+		};
+
+		button-volup {
+			linux,code = <KEY_VOLUMEUP>;
+			label = "volume_up"; /* GPIO_wk30 */
+			gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
+		};
+
+		button-voldown {
+			linux,code = <KEY_VOLUMEDOWN>;
+			label = "volume_down"; /* GPIO_wk8 */
+			gpios = <&gpio1 8 GPIO_ACTIVE_LOW>;
+		};
+	};
+
+	reg_lcd: regulator-lcd	{
+		compatible = "regulator-fixed";
+		regulator-name = "lcd_en";
+		gpios = <&gpio5 7 GPIO_ACTIVE_HIGH>; /* GPIO_135 */
+		regulator-max-microvolt = <3300000>;
+		regulator-min-microvolt = <3300000>;
+		enable-active-high;
+		regulator-boot-on;
+	};
+
+	pwm10: pwm-10 {
+		pinctrl-names = "default";
+		pinctrl-0 = <&pwm10_default>;
+		compatible = "ti,omap-dmtimer-pwm";
+		#pwm-cells = <3>;
+		ti,timers = <&timer10>;
+		ti,clock-source = <0x00>;
+	};
+
+	lvds-encoder {
+		compatible = "doestek,dtc34lm85am", "lvds-encoder";
+		powerdown-gpios = <&gpio5 8 GPIO_ACTIVE_LOW>; /* GPIO_136 */
+		power-supply = <&reg_lcd>;
+		ports {
+			#address-cells = <1>;
+			#size-cells = <0>;
+
+			port@0 {
+				reg = <0>;
+				bridge_in: endpoint {
+					remote-endpoint = <&dpi_out>;
+				};
+			};
+
+			port@1 {
+				reg = <1>;
+				bridge_out: endpoint {
+					remote-endpoint = <&panel_in>;
+				};
+			};
+		};
+	};
+
+	vibrator {
+		compatible = "gpio-vibrator";
+		enable-gpios = <&gpio2 6 GPIO_ACTIVE_HIGH>; /* GPIO_38 */
+		pinctrl-names = "default";
+		pinctrl-0 = <&vibrator_default>;
+	};
+
+	gp2a_shunt: current-sense-shunt {
+		compatible = "current-sense-shunt";
+		io-channels = <&gpadc 4>;
+		shunt-resistor-micro-ohms = <24000000>; /* 24 ohms */
+		#io-channel-cells = <0>;
+	};
+
+	led-ir {
+		compatible = "gpio-ir-tx";
+		gpios = <&gpio2 27 GPIO_ACTIVE_HIGH>; /* GPIO_59 */
+		pinctrl-names = "default";
+		pinctrl-0 = <&ledir_pins>;
+	};
+};
+
+&omap4_pmx_wkup {
+	gpio_keys: gpio-keys-pins {
+		pinctrl-single,pins = <
+			OMAP4_IOPAD(0x046, WAKEUP_EN | PIN_INPUT | MUX_MODE3)
+			/* sim_cd.gpio_wk3 - EXT_WAKEUP */
+			OMAP4_IOPAD(0x056, WAKEUP_EN | PIN_INPUT | MUX_MODE3)
+			/* fref_clk3_req.gpio_wk30 - VOL_UP */
+			OMAP4_IOPAD(0x05C, WAKEUP_EN | PIN_INPUT | MUX_MODE3)
+			/* fref_clk4_out.gpio_wk8 - VOL_DN */
+		>;
+	};
+};
+
+&omap4_pmx_core {
+	backlight_pins: pinmux-backlight-pins {
+		pinctrl-single,pins = <
+			OMAP4_IOPAD(0X0D8, PIN_OUTPUT | PIN_OFF_OUTPUT_LOW | MUX_MODE3)
+			/* usbb1_ulpitll_dat7.gpio_95 - LED_BACKLIGHT_RESET */
+		>;
+	};
+
+	bluetooth_pins: pinmux-bluetooth-pins {
+		pinctrl-single,pins = <
+			OMAP4_IOPAD(0x094, PIN_OUTPUT | MUX_MODE3)
+			/* gpmc_ncs6.gpio_103 - BT_EN */
+			OMAP4_IOPAD(0x0be, PIN_OUTPUT | MUX_MODE3)
+			/* cam_strobe.gpio_82 - BT_nRST */
+			OMAP4_IOPAD(0x0c0, PIN_INPUT | MUX_MODE3)
+			/* cam_globalreset.gpio_83 - BT_HOST_WAKE */
+			OMAP4_IOPAD(0x0d4, PIN_OUTPUT | MUX_MODE3)
+			/* usbb1_ulpitll_dat5.gpio_93 - BT_WAKE */
+		>;
+	};
+
+	dss_dpi_pins: pinmux-dss-dpi-pins {
+		pinctrl-single,pins = <
+			OMAP4_IOPAD(0x162, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_data23 */
+			OMAP4_IOPAD(0x164, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_data22 */
+			OMAP4_IOPAD(0x166, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_data21 */
+			OMAP4_IOPAD(0x168, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_data20 */
+			OMAP4_IOPAD(0x16a, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_data19 */
+			OMAP4_IOPAD(0x16c, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_data18 */
+			OMAP4_IOPAD(0x16e, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_data15 */
+			OMAP4_IOPAD(0x170, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_data14 */
+			OMAP4_IOPAD(0x172, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_data13 */
+			OMAP4_IOPAD(0x174, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_data12 */
+			OMAP4_IOPAD(0x176, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_data11 */
+			OMAP4_IOPAD(0x1b4, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_data10 */
+			OMAP4_IOPAD(0x1b6, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_data9 */
+			OMAP4_IOPAD(0x1b8, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_data16 */
+			OMAP4_IOPAD(0x1ba, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_data17 */
+			OMAP4_IOPAD(0x1bc, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_hsync */
+			OMAP4_IOPAD(0x1be, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_pclk */
+			OMAP4_IOPAD(0x1c0, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_vsync */
+			OMAP4_IOPAD(0x1c2, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_de */
+			OMAP4_IOPAD(0x1c4, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_data8 */
+			OMAP4_IOPAD(0x1c6, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_data7 */
+			OMAP4_IOPAD(0x1c8, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_data6 */
+			OMAP4_IOPAD(0x1ca, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_data5 */
+			OMAP4_IOPAD(0x1cc, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_data4 */
+			OMAP4_IOPAD(0x1ce, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_data3 */
+
+			OMAP4_IOPAD(0x1d0, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_data2 */
+			OMAP4_IOPAD(0x1d2, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_data1 */
+			OMAP4_IOPAD(0x1d4, PIN_OFF_OUTPUT_LOW | MUX_MODE5)
+			/* dispc2_data0 */
+		>;
+	};
+
+	fuel_alert_irq: pinmux-fuel-alert-pins {
+		pinctrl-single,pins = <
+			OMAP4_IOPAD(0x068, PIN_INPUT_PULLUP | MUX_MODE3)
+			/* gpmc_a20.gpio_44 */
+		>;
+	};
+
+	i2c1_pins: pinmux-i2c1-pins {
+		pinctrl-single,pins = <
+			OMAP4_IOPAD(0x122, PIN_INPUT_PULLUP | MUX_MODE0)
+			/* i2c1_scl */
+			OMAP4_IOPAD(0x124, PIN_INPUT_PULLUP | MUX_MODE0)
+			/* i2c1_sda */
+		>;
+	};
+
+	i2c2_pins: pinmux-i2c2-pins {
+		pinctrl-single,pins = <
+			OMAP4_IOPAD(0x126, PIN_INPUT_PULLUP | MUX_MODE0)
+			/* i2c2_scl */
+			OMAP4_IOPAD(0x128, PIN_INPUT_PULLUP | MUX_MODE0)
+			/* i2c2_sda */
+		>;
+	};
+
+	i2c3_pins: pinmux-i2c3-pins {
+		pinctrl-single,pins = <
+			OMAP4_IOPAD(0x12a, PIN_INPUT_PULLUP | MUX_MODE0)
+			/* i2c3_scl */
+			OMAP4_IOPAD(0x12c, PIN_INPUT_PULLUP | MUX_MODE0)
+			/* i2c3_sda */
+		>;
+	};
+
+	i2c4_pins: pinmux-i2c4-pins {
+		pinctrl-single,pins = <
+			OMAP4_IOPAD(0x12e, PIN_INPUT_PULLUP | MUX_MODE0)
+			/* i2c4_scl */
+			OMAP4_IOPAD(0x130, PIN_INPUT_PULLUP | MUX_MODE0)
+			/* i2c4_sda */
+		>;
+	};
+
+	i2c5_pins: pinmux-i2c5-pins {
+		pinctrl-single,pins = <
+			OMAP4_IOPAD(0x0de, PIN_INPUT_PULLUP | MUX_MODE3)
+			/* usbc1_icusb_dp.gpio_98 */
+			OMAP4_IOPAD(0x0e0, PIN_INPUT_PULLUP | MUX_MODE3)
+			/* usbc1_icusb_dm.gpio_99 */
+		>;
+	};
+
+	i2c6_pins: pinmux-i2c6-pins {
+		pinctrl-single,pins = <
+			OMAP4_IOPAD(0x09c, PIN_INPUT_PULLUP | MUX_MODE3)
+			/* hdmi_ddc_scl.gpio_65 */
+			OMAP4_IOPAD(0x09e, PIN_INPUT_PULLUP | MUX_MODE3)
+			/* hdmi_ddc_sda.gpio_66 */
+		>;
+	};
+
+	i2c7_pins: pinmux-i2c7-pins {
+		pinctrl-single,pins = <
+			OMAP4_IOPAD(0x08a, PIN_INPUT_PULLUP | MUX_MODE3)
+			/* gpmc_wait0.gpio_61 */
+			OMAP4_IOPAD(0x08c, PIN_INPUT_PULLUP | MUX_MODE3)
+			/* gpmc_wait1.gpio_62 */
+		>;
+	};
+
+	ledir_pins: pimux-ledir-pins {
+		pinctrl-single,pins = <
+			OMAP4_IOPAD(0x086, PIN_INPUT_PULLDOWN | MUX_MODE7)
+			/* gpmc_nbe0_cle.gpio_59 */
+			OMAP4_IOPAD(0x156, PIN_INPUT_PULLDOWN | MUX_MODE7)
+			/* mcspi4_simo.gpio_152 */
+		>;
+	};
+
+	lvds_pins: pinmux-lvds-pins {
+		pinctrl-single,pins = <
+			OMAP4_IOPAD(0X136, PIN_OUTPUT | MUX_MODE3)
+			/* mcspi1_simo.gpio_136 - LVDS_nSHDN */
+		>;
+	};
+
+	mmc1_pins: pinmux-mmc1-pins {
+		pinctrl-single,pins = <
+			OMAP4_IOPAD(0x0e2, PIN_INPUT_PULLDOWN | MUX_MODE0)
+			/* sdmmc1_clk */
+			OMAP4_IOPAD(0x0e4, PIN_INPUT_PULLUP | MUX_MODE0)
+			/* sdmcc1_cmd */
+			OMAP4_IOPAD(0x0e6, PIN_INPUT_PULLUP | MUX_MODE0)
+			/* sdmcc1_dat0 */
+			OMAP4_IOPAD(0x0e8, PIN_INPUT_PULLUP | MUX_MODE0)
+			/* sdmmc1_dat1 */
+			OMAP4_IOPAD(0x0ea, PIN_INPUT_PULLUP | MUX_MODE0)
+			/* sdmmc1_dat2 */
+			OMAP4_IOPAD(0x0ec, PIN_INPUT_PULLUP | MUX_MODE0)
+			/* sdmmc1_dat3 */
+		>;
+	};
+
+	mmc2_pins: pinmux-mmc2-pins {
+		pinctrl-single,pins = <
+			OMAP4_IOPAD(0x040, PIN_INPUT_PULLUP | MUX_MODE1)
+			/* sdmmc2_dat0 */
+			OMAP4_IOPAD(0x042, PIN_INPUT_PULLUP | MUX_MODE1)
+			/* sdmmc2_dat1 */
+			OMAP4_IOPAD(0x044, PIN_INPUT_PULLUP | MUX_MODE1)
+			/* sdmmc2_dat2 */
+			OMAP4_IOPAD(0x046, PIN_INPUT_PULLUP | MUX_MODE1)
+			/* sdmmc2_dat3 */
+			OMAP4_IOPAD(0x048, PIN_INPUT_PULLUP | MUX_MODE1)
+			/* sdmmc2_dat4 */
+			OMAP4_IOPAD(0x04a, PIN_INPUT_PULLUP | MUX_MODE1)
+			/* sdmmc2_dat5 */
+			OMAP4_IOPAD(0x04c, PIN_INPUT_PULLUP | MUX_MODE1)
+			/* sdmmc2_dat6 */
+			OMAP4_IOPAD(0x04e, PIN_INPUT_PULLUP | MUX_MODE1)
+			/* sdmmc2_dat7 */
+			OMAP4_IOPAD(0x082, PIN_INPUT_PULLUP | MUX_MODE1)
+			/* sdmmc2_clk */
+			OMAP4_IOPAD(0x084, PIN_INPUT_PULLUP | MUX_MODE1)
+			/* sdmmc2_cmd */
+		>;
+	};
+
+	mmc5_pins: pinmux-mmc5-pins {
+		pinctrl-single,pins = <
+			OMAP4_IOPAD(0x148, PIN_INPUT_PULLDOWN | MUX_MODE0)
+			/* sdmmc5_clk.sdmmc5_clk */
+			OMAP4_IOPAD(0x14a, PIN_INPUT_PULLUP | MUX_MODE0)
+			/* sdmmc5_cmd.sdmmc5_cmd */
+			OMAP4_IOPAD(0x14c, PIN_INPUT_PULLUP | MUX_MODE0)
+			/* sdmmc5_dat0.sdmmc5_dat0 */
+			OMAP4_IOPAD(0x14e, PIN_INPUT_PULLUP | MUX_MODE0)
+			/* sdmmc5_dat1.sdmmc5_dat1 */
+			OMAP4_IOPAD(0x150, PIN_INPUT_PULLUP | MUX_MODE0)
+			/* sdmmc5_dat2.sdmmc5_dat2 */
+			OMAP4_IOPAD(0x152, PIN_INPUT_PULLUP | MUX_MODE0)
+			/* sdmmc5_dat3.sdmmc5_dat3 */
+		>;
+	};
+
+	pwm10_default: pinmux-pwm10-pins {
+		pinctrl-single,pins = <
+			OMAP4_IOPAD(0X0D6, PIN_OUTPUT | PIN_OFF_OUTPUT_LOW | MUX_MODE1)
+			/* usbb1_ulpitll_dat6.dmtimer10_pwm_evt - LED_BACKLIGHT_PWM */
+		>;
+	};
+
+	touch_pins: pinmux-touch-pins {
+		pinctrl-single,pins = <
+			OMAP4_IOPAD(0x06c, PIN_INPUT | MUX_MODE3)
+			/* gpmc_a22.gpio_46 - TSP_INT */
+		>;
+	};
+
+	uart2_pins: pinmux-uart2-pins {
+		pinctrl-single,pins = <
+			OMAP4_IOPAD(0x118, PIN_INPUT_PULLUP | MUX_MODE0)
+			/* uart2_cts.uart2_cts */
+			OMAP4_IOPAD(0x11a, PIN_INPUT_PULLUP | MUX_MODE0)
+			/* uart2_rts.uart2_rts */
+			OMAP4_IOPAD(0x11c, PIN_INPUT_PULLUP | MUX_MODE0)
+			/* uart2_rx.uart2_rx */
+			OMAP4_IOPAD(0x11e, PIN_INPUT_PULLUP | MUX_MODE0)
+			/* uart2_tx.uart2_tx */
+		>;
+	};
+
+	uart3_pins: pinmux-uart3-pins {
+		pinctrl-single,pins = <
+			OMAP4_IOPAD(0x144, PIN_INPUT | MUX_MODE0)
+			/* uart3_rx_irrx */
+			OMAP4_IOPAD(0x146, PIN_OUTPUT | MUX_MODE0)
+			/* uart3_tx_irtx */
+		>;
+	};
+
+	vibrator_default: pinmux-vibrator-pins {
+		pinctrl-single,pins = <
+			OMAP4_IOPAD(0x05c, PIN_INPUT_PULLDOWN | MUX_MODE3)
+			/* gpmc_ad14.gpio_38 - MOTOR_EN */
+		>;
+	};
+
+	wlanen_gpio: pinmux-wlanen-pins {
+		pinctrl-single,pins = <
+			OMAP4_IOPAD(0x096, PIN_OUTPUT | MUX_MODE3)
+			/* gpmc_ncs7.gpio_104 */
+		>;
+	};
+
+	wlan_host_wake: pinmux-wlan-host-wake-pins {
+		pinctrl-single,pins = <
+			OMAP4_IOPAD(0x0bc, PIN_INPUT | MUX_MODE3)
+			/* cam_shutter.gpio_81 - WLAN_HOST_WAKE */
+		>;
+	};
+};
+
+&uart3 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&uart3_pins>;
+
+	interrupts-extended = <&wakeupgen GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH
+				   &omap4_pmx_core OMAP4_UART3_RX>;
+};
+
+&i2c1 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&i2c1_pins>;
+
+	clock-frequency = <400000>;
+
+	twl: pmic@48 {
+		reg = <0x48>;
+		#clock-cells = <1>;
+
+		pinctrl-names = "default";
+		pinctrl-0 = <
+			&twl6030_pins
+			&twl6030_wkup_pins
+		>;
+
+		/* SPI = 0, IRQ# = 7, 4 = active high level-sensitive */
+		interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; /* IRQ_SYS_1N cascaded to gic */
+		interrupt-parent = <&gic>;
+		system-power-controller;
+	};
+};
+
+#include "twl6032.dtsi"
+#include "twl6030_omap4.dtsi"
+
+&ldo1 {
+	regulator-min-microvolt = <2800000>;
+	regulator-max-microvolt = <2800000>;
+	regulator-always-on;
+	regulator-state-mem {
+		regulator-off-in-suspend;
+	};
+};
+
+&ldo3 {
+	regulator-min-microvolt = <3300000>;
+	regulator-max-microvolt = <3300000>;
+	regulator-always-on;
+	regulator-state-mem {
+		regulator-off-in-suspend;
+	};
+};
+
+&ldo4 {
+	regulator-min-microvolt = <2800000>;
+	regulator-max-microvolt = <2800000>;
+	regulator-always-on;
+};
+
+&ldo5 {
+	regulator-min-microvolt = <1800000>;
+	regulator-max-microvolt = <1800000>;
+	regulator-always-on;
+};
+
+&ldo6 {
+	regulator-min-microvolt = <1800000>;
+	regulator-max-microvolt = <1800000>;
+	regulator-always-on;
+	regulator-state-mem {
+		regulator-off-in-suspend;
+	};
+};
+
+&smps4 {
+	regulator-min-microvolt = <1800000>;
+	regulator-max-microvolt = <1800000>;
+	regulator-always-on;
+};
+
+&ldousb {
+	regulator-min-microvolt = <3300000>;
+	regulator-max-microvolt = <3300000>;
+	regulator-always-on;
+};
+
+&i2c2 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&i2c2_pins>;
+};
+
+&i2c3 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&i2c3_pins>;
+};
+
+&i2c4 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&i2c4_pins>;
+
+	accelerometer@18 {
+		compatible = "bosch,bma254";
+		reg = <0x18>;
+		vdd-supply = <&ldo4>;
+		vddio-supply = <&ldo5>;
+		interrupt-parent = <&gpio4>;
+		interrupts = <25 (IRQ_TYPE_LEVEL_HIGH | IRQ_TYPE_EDGE_RISING)>,
+			<26 (IRQ_TYPE_LEVEL_HIGH | IRQ_TYPE_EDGE_RISING)>;
+	};
+
+	magnetometer@2e {
+		compatible = "yamaha,yas530";
+		reg = <0x2e>;
+		vdd-supply = <&ldo4>;
+		iovdd-supply = <&ldo5>;
+		reset-gpios = <&gpio5 29 GPIO_ACTIVE_LOW>;
+		interrupts = <&gpio6 10 IRQ_TYPE_EDGE_RISING>;
+	};
+
+	light-sensor@44 {
+		compatible = "sharp,gp2ap002a00f";
+		reg = <0x44>;
+		interrupt-parent = <&gpio1>;
+		interrupts = <1 IRQ_TYPE_EDGE_FALLING>;
+		vdd-supply = <&ldo4>;
+		vio-supply = <&ldo4>;
+		io-channels = <&gp2a_shunt>;
+		io-channel-names = "alsout";
+		sharp,proximity-far-hysteresis = /bits/ 8 <0x40>;
+		sharp,proximity-close-hysteresis = /bits/ 8 <0x20>;
+	};
+};
+
+&dss {
+	status = "okay";
+
+	pinctrl-names = "default";
+	pinctrl-0 = <&dss_dpi_pins>;
+
+	port {
+		dpi_out: endpoint {
+			remote-endpoint = <&bridge_in>;
+			data-lines = <24>;
+		};
+	};
+};
+
+&twl_usb_comparator {
+	usb-supply = <&ldousb>;
+};
+
+&usb_otg_hs {
+	interface-type = <1>;
+	mode = <3>;
+	power = <50>;
+};
+
+&mmc1 {
+	status = "okay";
+	pinctrl-names = "default";
+	pinctrl-0 = <&mmc1_pins>;
+
+	vmmc-supply = <&reg_espresso_external>;
+	bus-width = <4>;
+};
+
+&mmc2 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&mmc2_pins>;
+
+	vmmc-supply = <&reg_espresso_internal>;
+	ti,non-removable;
+	bus-width = <8>;
+};
+
+&mmc3 {
+	status = "disabled";
+};
+
+&mmc4 {
+	status = "disabled";
+};
+
+&mmc5 {
+	status = "okay";
+
+	#address-cells = <1>;
+	#size-cells = <0>;
+
+	non-removable;
+	bus-width = <4>;
+	vmmc-supply = <&reg_espresso_wlan>;
+	mmc-pwrseq = <&wlan_pwrseq>;
+
+	pinctrl-names = "default";
+	pinctrl-0 = <&mmc5_pins>;
+
+	brcmf: wifi@1 {
+		compatible = "brcm,bcm4330-fmac", "brcm,bcm4329-fmac";
+		reg = <1>;
+
+		interrupt-parent = <&gpio3>;
+		interrupts = <17 IRQ_TYPE_LEVEL_HIGH>;
+		interrupt-names = "host-wake";
+		pinctrl-names = "default";
+		pinctrl-0 = <&wlan_host_wake>;
+	};
+};
+
+&uart2 {
+	interrupts-extended = <&wakeupgen GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH
+				&omap4_pmx_core OMAP4_UART2_RX>;
+	pinctrl-names = "default";
+	pinctrl-0 = <&uart2_pins>;
+	bluetooth {
+		compatible = "brcm,bcm4330-bt";
+		pinctrl-names = "default";
+		pinctrl-0 = <&bluetooth_pins>;
+		shutdown-gpios = <&gpio4 7 GPIO_ACTIVE_HIGH>;
+		reset-gpios = <&gpio3 18 GPIO_ACTIVE_LOW>;
+		device-wakeup-gpios = <&gpio3 29 GPIO_ACTIVE_HIGH>;
+		interrupt-parent = <&gpio3>;
+		interrupts = <19 IRQ_TYPE_EDGE_FALLING>;
+		interrupt-names = "host-wakeup";
+	};
+};
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH v7 6/8] dt-bindings: omap: Add Samsung Galaxy Tab 2 7.0 and 10.1
  2026-02-23  5:51 [PATCH v7 0/8] Initial support for Samsung Galaxy Tab 2 series Mithil Bavishi
                   ` (4 preceding siblings ...)
  2026-02-23  5:51 ` [PATCH v7 5/8] ARM: dts: ti: omap: espresso-common: Add common device tree for Samsung Galaxy Tab 2 series Mithil Bavishi
@ 2026-02-23  5:51 ` Mithil Bavishi
  2026-02-24  0:31   ` Claude review: " Claude Code Review Bot
  2026-02-23  5:51 ` [PATCH v7 7/8] ARM: dts: ti: omap: samsung-espresso7: Add initial support for Galaxy Tab 2 7.0 Mithil Bavishi
                   ` (2 subsequent siblings)
  8 siblings, 1 reply; 20+ messages in thread
From: Mithil Bavishi @ 2026-02-23  5:51 UTC (permalink / raw)
  To: aaro.koskinen, airlied, andreas, conor+dt, jernej.skrabec, jonas,
	khilman, krzk+dt, laurent.pinchart, maarten.lankhorst, mripard,
	neil.armstrong, prabhakar.mahadev-lad.rj, jesszhan0024, rfoss,
	robh, rogerq, simona, thierry.reding, tony, tzimmermann,
	andrzej.hajda, bavishimithil
  Cc: devicetree, dri-devel, linux-kernel, linux-omap,
	Krzysztof Kozlowski

Add samsung-espresso7 codename for the 7 inch variant
Add samsung-espresso10 codename for the 10 inch variant

Signed-off-by: Mithil Bavishi <bavishimithil@gmail.com>
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
---
 Documentation/devicetree/bindings/arm/ti/omap.yaml | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/Documentation/devicetree/bindings/arm/ti/omap.yaml b/Documentation/devicetree/bindings/arm/ti/omap.yaml
index 14f1b9d8f..f694dcbf2 100644
--- a/Documentation/devicetree/bindings/arm/ti/omap.yaml
+++ b/Documentation/devicetree/bindings/arm/ti/omap.yaml
@@ -144,6 +144,8 @@ properties:
               - motorola,droid-bionic   # Motorola Droid Bionic XT875
               - motorola,xyboard-mz609
               - motorola,xyboard-mz617
+              - samsung,espresso7
+              - samsung,espresso10
               - ti,omap4-panda
               - ti,omap4-sdp
           - const: ti,omap4430
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH v7 7/8] ARM: dts: ti: omap: samsung-espresso7: Add initial support for Galaxy Tab 2 7.0
  2026-02-23  5:51 [PATCH v7 0/8] Initial support for Samsung Galaxy Tab 2 series Mithil Bavishi
                   ` (5 preceding siblings ...)
  2026-02-23  5:51 ` [PATCH v7 6/8] dt-bindings: omap: Add Samsung Galaxy Tab 2 7.0 and 10.1 Mithil Bavishi
@ 2026-02-23  5:51 ` Mithil Bavishi
  2026-02-24  0:31   ` Claude review: " Claude Code Review Bot
  2026-02-23  5:51 ` [PATCH v7 8/8] ARM: dts: ti: omap: samsung-espresso10: Add initial support for Galaxy Tab 2 10.1 Mithil Bavishi
  2026-02-24  0:31 ` Claude review: Initial support for Samsung Galaxy Tab 2 series Claude Code Review Bot
  8 siblings, 1 reply; 20+ messages in thread
From: Mithil Bavishi @ 2026-02-23  5:51 UTC (permalink / raw)
  To: aaro.koskinen, airlied, andreas, conor+dt, jernej.skrabec, jonas,
	khilman, krzk+dt, laurent.pinchart, maarten.lankhorst, mripard,
	neil.armstrong, prabhakar.mahadev-lad.rj, jesszhan0024, rfoss,
	robh, rogerq, simona, thierry.reding, tony, tzimmermann,
	andrzej.hajda, bavishimithil
  Cc: devicetree, dri-devel, linux-kernel, linux-omap

Create a device tree for the 7 inch variants (P3100, P3110, P3113)

Signed-off-by: Mithil Bavishi <bavishimithil@gmail.com>
---
 arch/arm/boot/dts/ti/omap/Makefile            |  1 +
 .../dts/ti/omap/omap4-samsung-espresso7.dts   | 70 +++++++++++++++++++
 2 files changed, 71 insertions(+)
 create mode 100644 arch/arm/boot/dts/ti/omap/omap4-samsung-espresso7.dts

diff --git a/arch/arm/boot/dts/ti/omap/Makefile b/arch/arm/boot/dts/ti/omap/Makefile
index 14e500846..d24f13efd 100644
--- a/arch/arm/boot/dts/ti/omap/Makefile
+++ b/arch/arm/boot/dts/ti/omap/Makefile
@@ -80,6 +80,7 @@ dtb-$(CONFIG_ARCH_OMAP4) += \
 	omap4-sdp-es23plus.dtb \
 	omap4-var-dvk-om44.dtb \
 	omap4-var-stk-om44.dtb \
+	omap4-samsung-espresso7.dtb \
 	omap4-xyboard-mz609.dtb \
 	omap4-xyboard-mz617.dtb
 dtb-$(CONFIG_SOC_AM33XX) += \
diff --git a/arch/arm/boot/dts/ti/omap/omap4-samsung-espresso7.dts b/arch/arm/boot/dts/ti/omap/omap4-samsung-espresso7.dts
new file mode 100644
index 000000000..cae37ff06
--- /dev/null
+++ b/arch/arm/boot/dts/ti/omap/omap4-samsung-espresso7.dts
@@ -0,0 +1,70 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+/dts-v1/;
+
+#include "omap4-samsung-espresso-common.dtsi"
+
+/ {
+	model = "Samsung Galaxy Tab 2 (7 inch)";
+	compatible = "samsung,espresso7", "ti,omap4430", "ti,omap4";
+
+	backlight: backlight {
+		compatible = "pwm-backlight";
+		pinctrl-names = "default";
+		pinctrl-0 = <&backlight_pins>;
+		pwms = <&pwm10 0 1200 0>;
+		power-supply = <&reg_lcd>;
+		enable-gpios = <&gpio3 31 GPIO_ACTIVE_HIGH>;
+		brightness-levels = <0 4 8 16 32 64 128 255>;
+		default-brightness-level = <2>;
+	};
+
+	panel {
+		compatible = "samsung,ltn070nl01", "panel-lvds";
+		power-supply = <&reg_lcd>;
+		width-mm = <154>;
+		height-mm = <90>;
+		data-mapping = "vesa-24";
+		backlight = <&backlight>;
+
+		panel-timing {
+			clock-frequency = <47255554>;
+
+			hback-porch = <210>;
+			hactive = <1024>;
+			hfront-porch = <186>;
+			hsync-len = <50>;
+
+			vback-porch = <11>;
+			vactive = <600>;
+			vfront-porch = <24>;
+			vsync-len = <10>;
+
+			hsync-active = <0>;
+			vsync-active = <0>;
+			de-active = <1>;
+			pixelclk-active = <1>;
+			syncclk-active = <0>;
+		};
+
+		port {
+			panel_in: endpoint {
+				remote-endpoint = <&bridge_out>;
+			};
+		};
+	};
+};
+
+&i2c3 {
+	touchscreen@48 {
+		compatible = "melfas,mms136";
+		reg = <0x48>;
+		interrupt-parent = <&gpio2>;
+		interrupts = <14 IRQ_TYPE_EDGE_FALLING>;
+		touchscreen-size-x = <1024>;
+		touchscreen-size-y = <600>;
+		pinctrl-names = "default";
+		pinctrl-0 = <&touch_pins>;
+		avdd-supply = <&reg_touch_ldo_en>;
+		vdd-supply = <&ldo6>;
+	};
+};
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH v7 8/8] ARM: dts: ti: omap: samsung-espresso10: Add initial support for Galaxy Tab 2 10.1
  2026-02-23  5:51 [PATCH v7 0/8] Initial support for Samsung Galaxy Tab 2 series Mithil Bavishi
                   ` (6 preceding siblings ...)
  2026-02-23  5:51 ` [PATCH v7 7/8] ARM: dts: ti: omap: samsung-espresso7: Add initial support for Galaxy Tab 2 7.0 Mithil Bavishi
@ 2026-02-23  5:51 ` Mithil Bavishi
  2026-02-24  0:31   ` Claude review: " Claude Code Review Bot
  2026-02-24  0:31 ` Claude review: Initial support for Samsung Galaxy Tab 2 series Claude Code Review Bot
  8 siblings, 1 reply; 20+ messages in thread
From: Mithil Bavishi @ 2026-02-23  5:51 UTC (permalink / raw)
  To: aaro.koskinen, airlied, andreas, conor+dt, jernej.skrabec, jonas,
	khilman, krzk+dt, laurent.pinchart, maarten.lankhorst, mripard,
	neil.armstrong, prabhakar.mahadev-lad.rj, jesszhan0024, rfoss,
	robh, rogerq, simona, thierry.reding, tony, tzimmermann,
	andrzej.hajda, bavishimithil
  Cc: devicetree, dri-devel, linux-kernel, linux-omap

Create a device tree for the 10 inch variants (P5100, P5110, P5113)

Signed-off-by: Mithil Bavishi <bavishimithil@gmail.com>
---
 arch/arm/boot/dts/ti/omap/Makefile            |   1 +
 .../dts/ti/omap/omap4-samsung-espresso10.dts  | 104 ++++++++++++++++++
 2 files changed, 105 insertions(+)
 create mode 100644 arch/arm/boot/dts/ti/omap/omap4-samsung-espresso10.dts

diff --git a/arch/arm/boot/dts/ti/omap/Makefile b/arch/arm/boot/dts/ti/omap/Makefile
index d24f13efd..140ac39b3 100644
--- a/arch/arm/boot/dts/ti/omap/Makefile
+++ b/arch/arm/boot/dts/ti/omap/Makefile
@@ -81,6 +81,7 @@ dtb-$(CONFIG_ARCH_OMAP4) += \
 	omap4-var-dvk-om44.dtb \
 	omap4-var-stk-om44.dtb \
 	omap4-samsung-espresso7.dtb \
+	omap4-samsung-espresso10.dtb \
 	omap4-xyboard-mz609.dtb \
 	omap4-xyboard-mz617.dtb
 dtb-$(CONFIG_SOC_AM33XX) += \
diff --git a/arch/arm/boot/dts/ti/omap/omap4-samsung-espresso10.dts b/arch/arm/boot/dts/ti/omap/omap4-samsung-espresso10.dts
new file mode 100644
index 000000000..5c00d67ac
--- /dev/null
+++ b/arch/arm/boot/dts/ti/omap/omap4-samsung-espresso10.dts
@@ -0,0 +1,104 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+/dts-v1/;
+
+#include "omap4-samsung-espresso-common.dtsi"
+#include <dt-bindings/power/summit,smb347-charger.h>
+/ {
+	model = "Samsung Galaxy Tab 2 (10 inch)";
+	compatible = "samsung,espresso10", "ti,omap4430", "ti,omap4";
+
+	i2c-gpio5 {
+		smb347: charger@6 {
+			compatible = "summit,smb347";
+			reg = <0x6>; // 0x0C >> 1
+			interrupt-parent = <&gpio2>;
+			interrupts = <0 IRQ_TYPE_EDGE_BOTH>;
+
+			summit,enable-usb-charging;
+			summit,enable-charge-control = <SMB3XX_CHG_ENABLE_SW>;
+			summit,chip-temperature-threshold-celsius = <120>;
+			summit,usb-current-limit-microamp = <1800000>;
+		};
+	};
+
+	backlight: backlight {
+		compatible = "pwm-backlight";
+		pinctrl-names = "default";
+		pinctrl-0 = <&backlight_pins>;
+		pwms = <&pwm10 0 1600 0>;
+		power-supply = <&reg_lcd>;
+		enable-gpios = <&gpio3 31 GPIO_ACTIVE_HIGH>;
+		brightness-levels = <0 4 8 16 32 64 128 255>;
+		default-brightness-level = <7>;
+	};
+
+	panel {
+		compatible = "samsung,ltn101al03", "panel-lvds";
+		power-supply = <&reg_lcd>;
+		width-mm = <223>;
+		height-mm = <125>;
+		data-mapping = "vesa-24";
+		backlight = <&backlight>;
+
+		panel-timing {
+			clock-frequency = <69818000>;
+
+			hback-porch = <64>;
+			hactive = <1280>;
+			hfront-porch = <16>;
+			hsync-len = <48>;
+
+			vback-porch = <11>;
+			vactive = <800>;
+			vfront-porch = <16>;
+			vsync-len = <3>;
+
+			hsync-active = <0>;
+			vsync-active = <0>;
+			de-active = <1>;
+			pixelclk-active = <1>;
+		};
+
+		port {
+			panel_in: endpoint {
+				remote-endpoint = <&bridge_out>;
+			};
+		};
+	};
+};
+
+&i2c3 {
+	touchscreen@20 {
+		compatible = "syna,rmi4-i2c";
+		reg = <0x20>;
+		#address-cells = <1>;
+		#size-cells = <0>;
+
+		interrupt-parent = <&gpio2>;
+		interrupts = <14 IRQ_TYPE_EDGE_FALLING>;
+
+		pinctrl-names = "default";
+		pinctrl-0 = <&touch_pins>;
+
+		//avdd-supply = <&reg_touch_ldo_en>;
+		vdd-supply = <&ldo6>;
+
+		syna,reset-delay-ms = <200>;
+		syna,startup-delay-ms = <200>;
+
+		touchscreen-size-x = <1280>;
+		touchscreen-size-y = <800>;
+
+		rmi4-f01@1 {
+			reg = <0x01>;
+			syna,nosleep-mode = <1>;
+		};
+
+		rmi4-f11@11 {
+			reg = <0x11>;
+			touchscreen-size-x = <1280>;
+			touchscreen-size-y = <800>;
+			syna,sensor-type = <1>;
+		};
+	};
+};
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* Claude review: Initial support for Samsung Galaxy Tab 2 series
  2026-02-23  5:51 [PATCH v7 0/8] Initial support for Samsung Galaxy Tab 2 series Mithil Bavishi
                   ` (7 preceding siblings ...)
  2026-02-23  5:51 ` [PATCH v7 8/8] ARM: dts: ti: omap: samsung-espresso10: Add initial support for Galaxy Tab 2 10.1 Mithil Bavishi
@ 2026-02-24  0:31 ` Claude Code Review Bot
  8 siblings, 0 replies; 20+ messages in thread
From: Claude Code Review Bot @ 2026-02-24  0:31 UTC (permalink / raw)
  To: dri-devel-reviews

Overall Series Review

Subject: Initial support for Samsung Galaxy Tab 2 series
Author: Mithil Bavishi <bavishimithil@gmail.com>
Patches: 9
Reviewed: 2026-02-24T10:31:40.878984

---

This is an 8-patch series adding initial device tree support for the Samsung Galaxy Tab 2 series (espresso7 and espresso10 variants) based on OMAP4430. The series is well structured: it starts with the TWL6032 PMIC dtsi (patch 1), adds devicetree binding entries (patches 2-4, 6), creates a shared common dtsi (patch 5), and then adds the per-variant DTS files (patches 7-8).

The architecture of splitting into a common dtsi with per-variant overrides is sensible given the two devices share most hardware and differ mainly in panel, touchscreen, charger, and backlight tuning. The DT bindings patches have appropriate acks from DT maintainers. The TWL6032 dtsi mirrors the existing TWL6030 dtsi structure nicely.

There are a few issues worth addressing. The most significant is a broken `interrupts` property on the magnetometer node that uses phandle syntax instead of the correct `interrupts-extended` property. The reserved framebuffer memory in the common dtsi is sized only for the 7" panel resolution, which will be too small for the 10" variant. There are also a handful of minor style issues (include syntax, a typo in a node name, commented-out code).

---
Generated by Claude Code Patch Reviewer

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Claude review: ARM: dts: twl6032: Add DTS file for TWL6032 PMIC
  2026-02-23  5:51 ` [PATCH v7 1/8] ARM: dts: twl6032: Add DTS file for TWL6032 PMIC Mithil Bavishi
@ 2026-02-24  0:31   ` Claude Code Review Bot
  0 siblings, 0 replies; 20+ messages in thread
From: Claude Code Review Bot @ 2026-02-24  0:31 UTC (permalink / raw)
  To: dri-devel-reviews

Patch Review

This adds a new `twl6032.dtsi` for the TWL6032 "Phoenix Lite" PMIC. The structure follows the existing `twl6030.dtsi` closely, substituting the TWL6032-specific regulator compatible strings and the TWL6032 regulator set (ldo1-6, ldoln, ldousb, smps4, vio) in place of the TWL6030 set (vaux1-3, vmmc, vpp, etc.). The shared peripherals (rtc, usb-comparator, pwm, pwmled, gpadc) use the same compatible strings where appropriate.

> +	gpadc: gpadc {
> +		compatible = "ti,twl6032-gpadc";

Note this uses `ti,twl6032-gpadc` while the TWL6030 file uses `ti,twl6030-gpadc`. That seems correct since the TWL6032 has a different GPADC configuration. The existing TWL6030 dtsi does not label its gpadc node, but this one adds a `gpadc:` label -- this is needed by the espresso-common dtsi to reference `&gpadc` from the current-sense-shunt node, so that's fine.

No issues found.

---
Generated by Claude Code Patch Reviewer

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Claude review: dt-bindings: vendor-prefixes: Add Doestek
  2026-02-23  5:51 ` [PATCH v7 2/8] dt-bindings: vendor-prefixes: Add Doestek Mithil Bavishi
@ 2026-02-24  0:31   ` Claude Code Review Bot
  0 siblings, 0 replies; 20+ messages in thread
From: Claude Code Review Bot @ 2026-02-24  0:31 UTC (permalink / raw)
  To: dri-devel-reviews

Patch Review

Straightforward addition of the Doestek vendor prefix. Already acked by the DT maintainer. No issues.

---
Generated by Claude Code Patch Reviewer

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Claude review: dt-bindings: display: bridge: lvds-codec: add doestek, dtc34lm85am
  2026-02-23  5:51 ` [PATCH v7 3/8] dt-bindings: display: bridge: lvds-codec: add doestek, dtc34lm85am Mithil Bavishi
@ 2026-02-24  0:31   ` Claude Code Review Bot
  0 siblings, 0 replies; 20+ messages in thread
From: Claude Code Review Bot @ 2026-02-24  0:31 UTC (permalink / raw)
  To: dri-devel-reviews

Patch Review

Adds the DTC34LM85AM compatible string to the lvds-codec binding under the `lvds-encoder` fallback compatible group. Already acked. No issues.

---
Generated by Claude Code Patch Reviewer

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Claude review: dt-bindings: display: panel-lvds: Add compatibles for Samsung LTN070NL01 and LTN101AL03 panels
  2026-02-23  5:51 ` [PATCH v7 4/8] dt-bindings: display: panel-lvds: Add compatibles for Samsung LTN070NL01 and LTN101AL03 panels Mithil Bavishi
@ 2026-02-24  0:31   ` Claude Code Review Bot
  0 siblings, 0 replies; 20+ messages in thread
From: Claude Code Review Bot @ 2026-02-24  0:31 UTC (permalink / raw)
  To: dri-devel-reviews

Patch Review

Adds two Samsung panel compatible strings with appropriate comments describing each panel. Already acked. No issues.

---
Generated by Claude Code Patch Reviewer

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Claude review: ARM: dts: ti: omap: espresso-common: Add common device tree for Samsung Galaxy Tab 2 series
  2026-02-23  5:51 ` [PATCH v7 5/8] ARM: dts: ti: omap: espresso-common: Add common device tree for Samsung Galaxy Tab 2 series Mithil Bavishi
@ 2026-02-24  0:31   ` Claude Code Review Bot
  0 siblings, 0 replies; 20+ messages in thread
From: Claude Code Review Bot @ 2026-02-24  0:31 UTC (permalink / raw)
  To: dri-devel-reviews

Patch Review

This is the largest patch, adding the shared common dtsi. Several items to note:

> +#include "dt-bindings/gpio/gpio.h"
> +#include <dt-bindings/interrupt-controller/irq.h>
> +#include <dt-bindings/input/input.h>

The first include uses quotes while the other two use angle brackets. Every other file in the OMAP DT directory uses angle brackets for dt-bindings includes. This should be `#include <dt-bindings/gpio/gpio.h>` for consistency.

> +		continuous_splash: framebuffer@bef00000{
> +			reg = <0xbef00000 (1024 * 600 * 4)>;
> +			no-map;
> +		};

Two issues here. First, there's a missing space before `{`. Second, and more substantively, this reserves `1024 * 600 * 4` bytes (about 2.4 MB), which is sized for the 7" panel. The espresso10 variant uses a 1280x800 panel, which would need `1280 * 800 * 4` bytes (about 3.9 MB). If the bootloader renders a splash screen at the native 10" resolution, this reservation is too small and the framebuffer would overlap with non-reserved memory. Should this size be overridden in the espresso10 DTS, or should the common dtsi use the larger of the two sizes?

> +	chosen {
> +		stdout-path = &uart3;
> +		#address-cells = <1>;
> +	};

The `#address-cells` property in `chosen` without a corresponding `#size-cells` seems like a leftover. The v4 changelog mentions "Removed address/size-cells in chosen" but `#address-cells` is still present. Does the `chosen` node actually need this?

> +	magnetometer@2e {
> +		compatible = "yamaha,yas530";
> +		reg = <0x2e>;
> +		vdd-supply = <&ldo4>;
> +		iovdd-supply = <&ldo5>;
> +		reset-gpios = <&gpio5 29 GPIO_ACTIVE_LOW>;
> +		interrupts = <&gpio6 10 IRQ_TYPE_EDGE_RISING>;
> +	};

The `interrupts` property does not accept phandle references -- it only takes interrupt specifier cells relative to the node's interrupt parent. This should be either `interrupts-extended = <&gpio6 10 IRQ_TYPE_EDGE_RISING>;` or split into `interrupt-parent = <&gpio6>;` plus `interrupts = <10 IRQ_TYPE_EDGE_RISING>;`. As written, dtc should flag this.

> +	ledir_pins: pimux-ledir-pins {

Typo: `pimux` should be `pinmux`.

> +	lvds_pins: pinmux-lvds-pins {
> +		pinctrl-single,pins = <
> +			OMAP4_IOPAD(0X136, PIN_OUTPUT | MUX_MODE3)

A few OMAP4_IOPAD calls use uppercase `0X` for the hex prefix (also `0X0D8`, `0X0D6` in other pin groups). The rest of the file and the tree generally use lowercase `0x`. Minor inconsistency.

> +	pinctrl-names = "default";
> +	pinctrl-0 = <
> +		&twl6030_pins
> +		&twl6030_wkup_pins
> +	>;

These pinctrl properties on the `twl` node are redundant since `twl6030_omap4.dtsi` (included a few lines later) sets the same properties on `&twl`. You could drop these from the inline node definition and rely on the include.

---
Generated by Claude Code Patch Reviewer

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Claude review: dt-bindings: omap: Add Samsung Galaxy Tab 2 7.0 and 10.1
  2026-02-23  5:51 ` [PATCH v7 6/8] dt-bindings: omap: Add Samsung Galaxy Tab 2 7.0 and 10.1 Mithil Bavishi
@ 2026-02-24  0:31   ` Claude Code Review Bot
  0 siblings, 0 replies; 20+ messages in thread
From: Claude Code Review Bot @ 2026-02-24  0:31 UTC (permalink / raw)
  To: dri-devel-reviews

Patch Review

Adds `samsung,espresso7` and `samsung,espresso10` compatible strings to the OMAP4430 board list. Already acked. No issues.

---
Generated by Claude Code Patch Reviewer

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Claude review: ARM: dts: ti: omap: samsung-espresso7: Add initial support for Galaxy Tab 2 7.0
  2026-02-23  5:51 ` [PATCH v7 7/8] ARM: dts: ti: omap: samsung-espresso7: Add initial support for Galaxy Tab 2 7.0 Mithil Bavishi
@ 2026-02-24  0:31   ` Claude Code Review Bot
  0 siblings, 0 replies; 20+ messages in thread
From: Claude Code Review Bot @ 2026-02-24  0:31 UTC (permalink / raw)
  To: dri-devel-reviews

Patch Review

This adds the 7" variant DTS, including the panel, backlight, and Melfas touchscreen. The panel timing and physical dimensions look reasonable for a 7" 1024x600 LVDS panel. No issues found beyond what is inherited from the common dtsi.

---
Generated by Claude Code Patch Reviewer

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Claude review: ARM: dts: ti: omap: samsung-espresso10: Add initial support for Galaxy Tab 2 10.1
  2026-02-23  5:51 ` [PATCH v7 8/8] ARM: dts: ti: omap: samsung-espresso10: Add initial support for Galaxy Tab 2 10.1 Mithil Bavishi
@ 2026-02-24  0:31   ` Claude Code Review Bot
  0 siblings, 0 replies; 20+ messages in thread
From: Claude Code Review Bot @ 2026-02-24  0:31 UTC (permalink / raw)
  To: dri-devel-reviews

Patch Review

This adds the 10" variant DTS with the SMB347 charger, panel, backlight, and Synaptics touchscreen.

> +		//avdd-supply = <&reg_touch_ldo_en>;
> +		vdd-supply = <&ldo6>;

Commented-out code should not be submitted. If `avdd-supply` is not needed for this touchscreen configuration, just remove the line. If it is needed but not yet working, add a TODO comment explaining the situation rather than leaving dead code.

---
Generated by Claude Code Patch Reviewer

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Claude review: Initial support for Samsung Galaxy Tab 2 series
  2026-03-03 20:30 [PATCH v9 0/8] " Mithil Bavishi
@ 2026-03-03 20:45 ` Claude Code Review Bot
  0 siblings, 0 replies; 20+ messages in thread
From: Claude Code Review Bot @ 2026-03-03 20:45 UTC (permalink / raw)
  To: dri-devel-reviews

Overall Series Review

Subject: Initial support for Samsung Galaxy Tab 2 series
Author: Mithil Bavishi <bavishimithil@gmail.com>
Patches: 9
Reviewed: 2026-03-04T06:45:49.204859

---

This is a v9 device tree series adding initial support for the Samsung Galaxy Tab 2 7" and 10.1" (codename "espresso") based on OMAP4430. The series is well-structured: TWL6032 PMIC dtsi, dt-bindings for new components, a common dtsi shared between variants, and per-variant dts files. The board support covers a good set of peripherals (display, touchscreen, sensors, WiFi, Bluetooth, storage, etc.).

However, there are several issues ranging from a correctness bug (magnetometer `interrupts` property) to style/ordering problems that should be addressed before merging.

---
Generated by Claude Code Patch Reviewer

^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2026-03-03 20:45 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-02-23  5:51 [PATCH v7 0/8] Initial support for Samsung Galaxy Tab 2 series Mithil Bavishi
2026-02-23  5:51 ` [PATCH v7 1/8] ARM: dts: twl6032: Add DTS file for TWL6032 PMIC Mithil Bavishi
2026-02-24  0:31   ` Claude review: " Claude Code Review Bot
2026-02-23  5:51 ` [PATCH v7 2/8] dt-bindings: vendor-prefixes: Add Doestek Mithil Bavishi
2026-02-24  0:31   ` Claude review: " Claude Code Review Bot
2026-02-23  5:51 ` [PATCH v7 3/8] dt-bindings: display: bridge: lvds-codec: add doestek, dtc34lm85am Mithil Bavishi
2026-02-24  0:31   ` Claude review: " Claude Code Review Bot
2026-02-23  5:51 ` [PATCH v7 4/8] dt-bindings: display: panel-lvds: Add compatibles for Samsung LTN070NL01 and LTN101AL03 panels Mithil Bavishi
2026-02-24  0:31   ` Claude review: " Claude Code Review Bot
2026-02-23  5:51 ` [PATCH v7 5/8] ARM: dts: ti: omap: espresso-common: Add common device tree for Samsung Galaxy Tab 2 series Mithil Bavishi
2026-02-24  0:31   ` Claude review: " Claude Code Review Bot
2026-02-23  5:51 ` [PATCH v7 6/8] dt-bindings: omap: Add Samsung Galaxy Tab 2 7.0 and 10.1 Mithil Bavishi
2026-02-24  0:31   ` Claude review: " Claude Code Review Bot
2026-02-23  5:51 ` [PATCH v7 7/8] ARM: dts: ti: omap: samsung-espresso7: Add initial support for Galaxy Tab 2 7.0 Mithil Bavishi
2026-02-24  0:31   ` Claude review: " Claude Code Review Bot
2026-02-23  5:51 ` [PATCH v7 8/8] ARM: dts: ti: omap: samsung-espresso10: Add initial support for Galaxy Tab 2 10.1 Mithil Bavishi
2026-02-24  0:31   ` Claude review: " Claude Code Review Bot
2026-02-24  0:31 ` Claude review: Initial support for Samsung Galaxy Tab 2 series Claude Code Review Bot
  -- strict thread matches above, loose matches on Subject: below --
2026-03-03 20:30 [PATCH v9 0/8] " Mithil Bavishi
2026-03-03 20:45 ` Claude review: " Claude Code Review Bot
2026-02-19 21:03 [PATCH v6 0/8] " Mithil Bavishi
2026-02-22 20:16 ` Claude review: " Claude Code Review Bot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox