Document the Samsung SOFEF01-M Display-Driver-IC and 1080x2520@60Hz
command-mode DSI panels found in many Sony phones:
- Sony Xperia 5 (kumano bahamut): amb609tc01
- Sony Xperia 10 II (seine pdx201): ams597ut01
- Sony Xperia 10 III (lena pdx213): ams597ut04
- Sony Xperia 10 IV (murray pdx225): ams597ut05
- Sony Xperia 10 V (zambezi pdx235): ams605dk01
- Sony Xperia 10 VI (columbia pdx246): ams605dk01
Signed-off-by: Marijn Suijten <marijn.suijten@somainline.org>
---
.../bindings/display/panel/samsung,sofef01-m.yaml | 120 +++++++++++++++++++++
MAINTAINERS | 5 +
2 files changed, 125 insertions(+)
diff --git a/Documentation/devicetree/bindings/display/panel/samsung,sofef01-m.yaml b/Documentation/devicetree/bindings/display/panel/samsung,sofef01-m.yaml
new file mode 100644
index 000000000000..a8ff5223677c
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/panel/samsung,sofef01-m.yaml
@@ -0,0 +1,120 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/display/panel/samsung,sofef01-m.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Samsung SOFEF01-M DDI for 1080x2520@60Hz 6.0"/6.1" OLED DSI panels
+
+maintainers:
+ - Marijn Suijten <marijn.suijten@somainline.org>
+
+description: |
+ Samsung SOFEF01-M Display-Driver-IC found in multiple Sony smartphones, paired with
+ the following panel:
+ - Sony Xperia 5 (kumano bahamut): amb609tc01
+ - Sony Xperia 10 II (seine pdx201): ams597ut01
+ - Sony Xperia 10 III (lena pdx213): ams597ut04
+ - Sony Xperia 10 IV (murray pdx225): ams597ut05
+ - Sony Xperia 10 V (zambezi pdx235): ams605dk01
+ - Sony Xperia 10 VI (columbia pdx246): ams605dk01
+
+ The assembly features a Samsung touchscreen compatible with
+ samsung,s6sy761.
+
+allOf:
+ - $ref: panel-common.yaml#
+
+ - if:
+ properties:
+ compatible:
+ const: samsung,sofef01-m-amb609tc01
+ then:
+ properties:
+ vci-supply:
+ description: DisplayIC Operation supply (3.0V)
+
+ required:
+ - vci-supply
+
+ else:
+ properties:
+ vci-supply: false
+
+properties:
+ compatible:
+ enum:
+ - samsung,sofef01-m-amb609tc01 # 6.1"
+ - samsung,sofef01-m-ams597ut01 # 6.0"
+ - samsung,sofef01-m-ams597ut04 # 6.0"
+ - samsung,sofef01-m-ams597ut05 # 6.0"
+ - samsung,sofef01-m-ams605dk01 # 6.1"
+
+ port: true
+
+ reg:
+ maxItems: 1
+ description: DSI virtual channel
+
+ reset-gpios: true
+
+ vddio-supply:
+ description: I/O voltage supply (1.8V)
+
+required:
+ - compatible
+ - port
+ - reg
+ - reset-gpios
+ - vddio-supply
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/gpio/gpio.h>
+
+ dsi {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ panel@0 {
+ compatible = "samsung,sofef01-m-amb609tc01";
+ reg = <0>;
+
+ reset-gpios = <&tlmm 6 GPIO_ACTIVE_LOW>;
+
+ vci-supply = <&vreg_l17a_3p0>;
+ vddio-supply = <&vreg_l14a_1p8>;
+
+ port {
+ endpoint {
+ remote-endpoint = <&dsi0_out>;
+ };
+ };
+ };
+ };
+
+ - |
+ #include <dt-bindings/gpio/gpio.h>
+
+ dsi {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ panel@0 {
+ compatible = "samsung,sofef01-m-ams597ut01";
+ reg = <0>;
+
+ reset-gpios = <&tlmm 90 GPIO_ACTIVE_LOW>;
+
+ vddio-supply = <&pm6125_l12>;
+
+ port {
+ endpoint {
+ remote-endpoint = <&dsi0_out>;
+ };
+ };
+ };
+ };
+
+...
+
diff --git a/MAINTAINERS b/MAINTAINERS
index fcd99a8f9c71..93468dde9df2 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -8194,6 +8194,11 @@ S: Maintained
F: Documentation/devicetree/bindings/display/panel/samsung,sofef00.yaml
F: drivers/gpu/drm/panel/panel-samsung-sofef00.c
+DRM DRIVER FOR SAMSUNG SOFEF01 DDIC
+M: Marijn Suijten <marijn.suijten@somainline.org>
+S: Maintained
+F: Documentation/devicetree/bindings/display/panel/samsung,sofef01-m.yaml
+
DRM DRIVER FOR SHARP MEMORY LCD
M: Alex Lanzano <lanzano.alex@gmail.com>
S: Maintained
--
2.52.0
On Mon, Dec 22, 2025 at 12:32:10AM +0100, Marijn Suijten wrote:
> Document the Samsung SOFEF01-M Display-Driver-IC and 1080x2520@60Hz
> command-mode DSI panels found in many Sony phones:
> - Sony Xperia 5 (kumano bahamut): amb609tc01
> - Sony Xperia 10 II (seine pdx201): ams597ut01
> - Sony Xperia 10 III (lena pdx213): ams597ut04
> - Sony Xperia 10 IV (murray pdx225): ams597ut05
> - Sony Xperia 10 V (zambezi pdx235): ams605dk01
> - Sony Xperia 10 VI (columbia pdx246): ams605dk01
>
> Signed-off-by: Marijn Suijten <marijn.suijten@somainline.org>
> ---
> .../bindings/display/panel/samsung,sofef01-m.yaml | 120 +++++++++++++++++++++
> MAINTAINERS | 5 +
> 2 files changed, 125 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/display/panel/samsung,sofef01-m.yaml b/Documentation/devicetree/bindings/display/panel/samsung,sofef01-m.yaml
> new file mode 100644
> index 000000000000..a8ff5223677c
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/panel/samsung,sofef01-m.yaml
> @@ -0,0 +1,120 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/display/panel/samsung,sofef01-m.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Samsung SOFEF01-M DDI for 1080x2520@60Hz 6.0"/6.1" OLED DSI panels
> +
> +maintainers:
> + - Marijn Suijten <marijn.suijten@somainline.org>
> +
> +description: |
> + Samsung SOFEF01-M Display-Driver-IC found in multiple Sony smartphones, paired with
> + the following panel:
> + - Sony Xperia 5 (kumano bahamut): amb609tc01
> + - Sony Xperia 10 II (seine pdx201): ams597ut01
> + - Sony Xperia 10 III (lena pdx213): ams597ut04
> + - Sony Xperia 10 IV (murray pdx225): ams597ut05
> + - Sony Xperia 10 V (zambezi pdx235): ams605dk01
> + - Sony Xperia 10 VI (columbia pdx246): ams605dk01
> +
> + The assembly features a Samsung touchscreen compatible with
> + samsung,s6sy761.
> +
> +allOf:
> + - $ref: panel-common.yaml#
> +
> + - if:
> + properties:
> + compatible:
> + const: samsung,sofef01-m-amb609tc01
> + then:
> + properties:
> + vci-supply:
> + description: DisplayIC Operation supply (3.0V)
The error reported is on the wrong patch. Not sure why, but the problem
is here. With 'additionalProperties: false', this property is not
factored in and is considered unknown. That can be fixed using
'unevaluatedProperties', but instead, move this to the top level
'properties'.
> +
> + required:
> + - vci-supply
> +
> + else:
> + properties:
> + vci-supply: false
> +
> +properties:
> + compatible:
> + enum:
> + - samsung,sofef01-m-amb609tc01 # 6.1"
> + - samsung,sofef01-m-ams597ut01 # 6.0"
> + - samsung,sofef01-m-ams597ut04 # 6.0"
> + - samsung,sofef01-m-ams597ut05 # 6.0"
> + - samsung,sofef01-m-ams605dk01 # 6.1"
> +
> + port: true
> +
> + reg:
> + maxItems: 1
> + description: DSI virtual channel
> +
> + reset-gpios: true
> +
> + vddio-supply:
> + description: I/O voltage supply (1.8V)
> +
> +required:
> + - compatible
> + - port
> + - reg
> + - reset-gpios
> + - vddio-supply
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + #include <dt-bindings/gpio/gpio.h>
> +
> + dsi {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + panel@0 {
> + compatible = "samsung,sofef01-m-amb609tc01";
> + reg = <0>;
> +
> + reset-gpios = <&tlmm 6 GPIO_ACTIVE_LOW>;
> +
> + vci-supply = <&vreg_l17a_3p0>;
> + vddio-supply = <&vreg_l14a_1p8>;
> +
> + port {
> + endpoint {
> + remote-endpoint = <&dsi0_out>;
> + };
> + };
> + };
> + };
> +
> + - |
> + #include <dt-bindings/gpio/gpio.h>
> +
> + dsi {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + panel@0 {
> + compatible = "samsung,sofef01-m-ams597ut01";
> + reg = <0>;
> +
> + reset-gpios = <&tlmm 90 GPIO_ACTIVE_LOW>;
> +
> + vddio-supply = <&pm6125_l12>;
> +
> + port {
> + endpoint {
> + remote-endpoint = <&dsi0_out>;
> + };
> + };
> + };
> + };
The first example is enough.
Hi Marijn, thanks for your patch! On Mon, Dec 22, 2025 at 12:32 AM Marijn Suijten <marijn.suijten@somainline.org> wrote: > Document the Samsung SOFEF01-M Display-Driver-IC and 1080x2520@60Hz > command-mode DSI panels found in many Sony phones: > - Sony Xperia 5 (kumano bahamut): amb609tc01 > - Sony Xperia 10 II (seine pdx201): ams597ut01 > - Sony Xperia 10 III (lena pdx213): ams597ut04 > - Sony Xperia 10 IV (murray pdx225): ams597ut05 > - Sony Xperia 10 V (zambezi pdx235): ams605dk01 > - Sony Xperia 10 VI (columbia pdx246): ams605dk01 > > Signed-off-by: Marijn Suijten <marijn.suijten@somainline.org> (...) > + - samsung,sofef01-m-amb609tc01 # 6.1" > + - samsung,sofef01-m-ams597ut01 # 6.0" > + - samsung,sofef01-m-ams597ut04 # 6.0" > + - samsung,sofef01-m-ams597ut05 # 6.0" > + - samsung,sofef01-m-ams605dk01 # 6.1" So is the assembled product really named like that? Samsung S0FEF01-M AMS605DK01? I would more expect the compatible strings to be excluding the DDIC name, like: samsung,ams605dk01 ...but it's not like the vendor is helping us here, so I'm practically fine either way. They are clearly using the S0FEF01-M display controller. Yours, Linus Walleij
On 2025-12-26 14:25:04, Linus Walleij wrote: > Hi Marijn, > > thanks for your patch! > > On Mon, Dec 22, 2025 at 12:32 AM Marijn Suijten > <marijn.suijten@somainline.org> wrote: > > > Document the Samsung SOFEF01-M Display-Driver-IC and 1080x2520@60Hz > > command-mode DSI panels found in many Sony phones: > > - Sony Xperia 5 (kumano bahamut): amb609tc01 > > - Sony Xperia 10 II (seine pdx201): ams597ut01 > > - Sony Xperia 10 III (lena pdx213): ams597ut04 > > - Sony Xperia 10 IV (murray pdx225): ams597ut05 > > - Sony Xperia 10 V (zambezi pdx235): ams605dk01 > > - Sony Xperia 10 VI (columbia pdx246): ams605dk01 > > > > Signed-off-by: Marijn Suijten <marijn.suijten@somainline.org> > (...) > > + - samsung,sofef01-m-amb609tc01 # 6.1" > > + - samsung,sofef01-m-ams597ut01 # 6.0" > > + - samsung,sofef01-m-ams597ut04 # 6.0" > > + - samsung,sofef01-m-ams597ut05 # 6.0" > > + - samsung,sofef01-m-ams605dk01 # 6.1" > > So is the assembled product really named like that? > > Samsung S0FEF01-M AMS605DK01? > > I would more expect the compatible strings to be excluding the DDIC > name, like: > > samsung,ams605dk01 > > ...but it's not like the vendor is helping us here, so I'm practically > fine either way. Unfortunately I'm not that familiar with display manufacturers and panel assemblies. Most of the what I presume to be panel names were gleaned from online screen replacement photos; those don't ever include the DDIC name. Those mostly come from the DTS though isn't mentioned exactly for every phone (only the first two in the DTS name). > They are clearly using the S0FEF01-M display controller. So you're implying or certain that these panel names here are always bundled with exactly the same controller (making the SOFEF01 part "redundant" in the compatible)? Also, divergence of the driver commands got significant with the last two panels / three phones, though that might be down to vendor configuration/calibration. - Marijn > Yours, > Linus Walleij
On Fri, Dec 26, 2025 at 2:48 PM Marijn Suijten <marijn.suijten@somainline.org> wrote: > On 2025-12-26 14:25:04, Linus Walleij wrote: > > They are clearly using the S0FEF01-M display controller. > > So you're implying or certain that these panel names here are always bundled > with exactly the same controller (making the SOFEF01 part "redundant" in the > compatible)? Yes that's what I suspect. See my comment in the driver that all s6e* panels are suspected to be some s0fef00/1 variant. > Also, divergence of the driver commands got significant with the last two panels > / three phones, though that might be down to vendor configuration/calibration. That's kind of normal. The defaults suffice for a while, then engineers want to start poking at different voltages to the display to improve and tweak things. Yours, Linus Walleij
On 2025-12-26 18:38:56, Linus Walleij wrote: > On Fri, Dec 26, 2025 at 2:48 PM Marijn Suijten > <marijn.suijten@somainline.org> wrote: > > On 2025-12-26 14:25:04, Linus Walleij wrote: > > > > They are clearly using the S0FEF01-M display controller. > > > > So you're implying or certain that these panel names here are always bundled > > with exactly the same controller (making the SOFEF01 part "redundant" in the > > compatible)? > > Yes that's what I suspect. Do you still want me to drop it from the compatible, but definitely keep it in the driver filename unless we unify all of the drivers (hopefully in a later patch)? > > Also, divergence of the driver commands got significant with the last two panels > > / three phones, though that might be down to vendor configuration/calibration. > > That's kind of normal. The defaults suffice for a while, then engineers > want to start poking at different voltages to the display to improve > and tweak things. Makes one wonder if the changes are down to the panel used, or vendor tuning when they started using these panels in their phones. To note, I think I booted all these phones on the "original" SOFEF01 driver without problems, before ultimately implementing all diverging commands because I don't know if they're defaults, related to color tuning, timings, thermals, manufacturer tolerances or anything else. - Marijn
On Mon, Dec 29, 2025 at 12:53 PM Marijn Suijten <marijn.suijten@somainline.org> wrote: > > Yes that's what I suspect. > > Do you still want me to drop it from the compatible, but definitely keep it in > the driver filename unless we unify all of the drivers (hopefully in a later > patch)? The compatible should be as precise as possible, so indicate the assembled display with display controller, typically samsung,ams605dk01 etc, then the Linux driver is basically a Linux intrinsic matter, but we would name that after the display controller so as to make the basis of code sharing obvious between the compatibles. > > > Also, divergence of the driver commands got significant with the last two panels > > > / three phones, though that might be down to vendor configuration/calibration. > > > > That's kind of normal. The defaults suffice for a while, then engineers > > want to start poking at different voltages to the display to improve > > and tweak things. > > Makes one wonder if the changes are down to the panel used, or vendor tuning > when they started using these panels in their phones. To note, I think I booted > all these phones on the "original" SOFEF01 driver without problems, before > ultimately implementing all diverging commands because I don't know if they're > defaults, related to color tuning, timings, thermals, manufacturer tolerances or > anything else. Yeah a datasheet would really help :/ Samsung, if you're reading this, you know what to do: give us the datasheets, pretty please with sugar on top. Yours, Linus Walleij
© 2016 - 2026 Red Hat, Inc.