Skip to contentSkip to conversation

dt-bindings: regulator: add Samsung s2dos05 pmic

PATCH Superseded Dzmitry Sankouski 5 participants 17 messages Oct 24, 2023 – Oct 29, 2023 1 message not in the archive

Subsystems (5)

v2 of 17 Superseded Latest is v17 →

lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): [email protected]

#1 lore raw

PATCH v2 1/6 dt-bindings: regulator: add Samsung s2dos05 pmic

Add binding for the s2dos05 pmic found in the Samsung S9.

Cc Conor Dooley <[email protected]>
Cc Dzmitry Sankouski <[email protected]>
Cc Krzysztof Kozlowski <[email protected]>
Cc Liam Girdwood <[email protected]>
Cc Mark Brown <[email protected]>
Cc Rob Herring <[email protected]>

---

Changes in v2:
- hex to decimal in regulator values
- fix compatible value

 .../bindings/regulator/samsung,s2dos05.yaml   | 89 +++++++++++++++++++
 1 file changed, 89 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/regulator/samsung,s2dos05.yaml
Documentation/devicetree/bindings/regulator/samsung,s2dos05.yaml new file +89 -0
new file mode 100644
index 000000000000..690537738e67
@@ -0,0 +1,89 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/regulator/samsung,s2dos05.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Samsung s2dos05 regulator
+
+maintainers:
+  - Dzmitry Sankouski <[email protected]>
+
+description: |
+  The S2DOS05 is a companion power management IC for the smart phones.
+  Has 4 LDO and 1 BUCK regulators, and has capability to measure
+  current and power. Can detect short circuit on outputs.
+
+properties:
+  compatible:
+    const: samsung,s2dos05
+  reg:
+    maxItems: 1
+
+  regulators:
+    type: object
+    description: List of regulators and its properties
+
+    patternProperties:
+      "^s2dos05-buck1|s2dos05-ldo[1-4]$":
+        type: object
+        $ref: "regulator.yaml#"
+        unevaluatedProperties: false
+
+    additionalProperties: false
+
+required:
+  - compatible
+  - reg
+  - regulators
+
+additionalProperties: false
+
+examples:
+  - |
+    regulator@60 {
+    	compatible = "samsung,s2dos05";
+    	reg = <0x60>;
+    	pinctrl-names = "default";
+    	pinctrl-0 = <&s2dos05_irq>;
+    	s2dos05,s2dos05_int = <&tlmm 0x31 0x0>;
+
+    	regulators {
+    		s2dos05_ldo1: s2dos05-ldo1 {
+    			regulator-name = "s2dos05-ldo1";
+    			regulator-min-microvolt = <1500000>;
+    			regulator-max-microvolt = <2000000>;
+    			regulator-active-discharge = <0x1>;
+    		};
+
+    		s2dos05_ldo2: s2dos05-ldo2 {
+    			regulator-name = "s2dos05-ldo2";
+    			regulator-min-microvolt = <1800000>;
+    			regulator-max-microvolt = <1800000>;
+    			regulator-active-discharge = <0x1>;
+    			regulator-boot-on;
+    		};
+
+    		s2dos05_ldo3: s2dos05-ldo3 {
+    			regulator-name = "s2dos05-ldo3";
+    			regulator-min-microvolt = <3000000>;
+    			regulator-max-microvolt = <3000000>;
+    			regulator-active-discharge = <0x1>;
+    			regulator-boot-on;
+    		};
+
+    		s2dos05_ldo4: s2dos05-ldo4 {
+    			regulator-name = "s2dos05-ldo4";
+    			regulator-min-microvolt = <2700000>;
+    			regulator-max-microvolt = <3775000>;
+    			regulator-active-discharge = <0x1>;
+    		};
+
+    		s2dos05_buck1: s2dos05-buck1 {
+    			regulator-name = "s2dos05-buck1";
+    			regulator-min-microvolt = <850000>;
+    			regulator-max-microvolt = <2100000>;
+    			regulator-active-discharge = <0x1>;
+    		};
+    	};
+    };
Signature · 1 line
2.30.2
#2 lore raw
Quoted 27 lines · Dzmitry Sankouski

Add binding for the s2dos05 pmic found in the Samsung S9.

Cc Conor Dooley <[email protected]>
Cc Dzmitry Sankouski <[email protected]>
Cc Krzysztof Kozlowski <[email protected]>
Cc Liam Girdwood <[email protected]>
Cc Mark Brown <[email protected]>
Cc Rob Herring <[email protected]>

---

Changes in v2:
- hex to decimal in regulator values
- fix compatible value

 .../bindings/regulator/samsung,s2dos05.yaml   | 89 +++++++++++++++++++
 1 file changed, 89 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/regulator/samsung,s2dos05.yaml
Documentation/devicetree/bindings/regulator/samsung,s2dos05.yaml new file +0 -0
new file mode 100644
index 000000000000..690537738e67

Documentation/devicetree/bindings/regulator/samsung,s2dos05.yaml line 7

Quoted 7 lines
Documentation/devicetree/bindings/regulator/samsung,s2dos05.yaml new file +7 -0
@@ -0,0 +1,89 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/regulator/samsung,s2dos05.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Samsung s2dos05 regulator

Not a PMIC/MFD device? If not, then:
Samsung S2DOS05 Power Management IC

Otherwise, if this is only for regulators:
Samsung S2DOS05 Power Management IC Regulators

Documentation/devicetree/bindings/regulator/samsung,s2dos05.yaml line 12

Quoted 5 lines
Documentation/devicetree/bindings/regulator/samsung,s2dos05.yaml new file +5 -0
+
+maintainers:
+  - Dzmitry Sankouski <[email protected]>
+
+description: |

Do not need '|' unless you need to preserve formatting.

Documentation/devicetree/bindings/regulator/samsung,s2dos05.yaml line 19

Quoted 7 lines
Documentation/devicetree/bindings/regulator/samsung,s2dos05.yaml new file +7 -0
+  The S2DOS05 is a companion power management IC for the smart phones.
+  Has 4 LDO and 1 BUCK regulators, and has capability to measure
+  current and power. Can detect short circuit on outputs.
+
+properties:
+  compatible:
+    const: samsung,s2dos05

Blank line.

Documentation/devicetree/bindings/regulator/samsung,s2dos05.yaml line 28

Quoted 9 lines
Documentation/devicetree/bindings/regulator/samsung,s2dos05.yaml new file +9 -0
+  reg:
+    maxItems: 1
+
+  regulators:
+    type: object
+    description: List of regulators and its properties
+
+    patternProperties:
+      "^s2dos05-buck1|s2dos05-ldo[1-4]$":

^buck1|ldo[1-4]$

Documentation/devicetree/bindings/regulator/samsung,s2dos05.yaml line 30

Quoted 2 lines
Documentation/devicetree/bindings/regulator/samsung,s2dos05.yaml new file +2 -0
+        type: object
+        $ref: "regulator.yaml#"

Drop quotes.

It does not look like you tested the bindings, at least after quick look. Please run make dt_binding_check (see Documentation/devicetree/bindings/writing-schema.rst for instructions). Maybe you need to update your dtschema and yamllint.

Quoted 9 lines
Documentation/devicetree/bindings/regulator/samsung,s2dos05.yaml new file +9 -0
+        unevaluatedProperties: false
+
+    additionalProperties: false
+
+required:
+  - compatible
+  - reg
+  - regulators
+

Documentation/devicetree/bindings/regulator/samsung,s2dos05.yaml line 49

Quoted 10 lines
Documentation/devicetree/bindings/regulator/samsung,s2dos05.yaml new file +10 -0
+additionalProperties: false
+
+examples:
+  - |
+    regulator@60 {
+    	compatible = "samsung,s2dos05";
+    	reg = <0x60>;
+    	pinctrl-names = "default";
+    	pinctrl-0 = <&s2dos05_irq>;
+    	s2dos05,s2dos05_int = <&tlmm 0x31 0x0>;

Eh... No, please test before sending. Drop the property or explain what is it supposed to be.

Documentation/devicetree/bindings/regulator/samsung,s2dos05.yaml line 52

Quoted 3 lines
Documentation/devicetree/bindings/regulator/samsung,s2dos05.yaml new file +3 -0
+
+    	regulators {
+    		s2dos05_ldo1: s2dos05-ldo1 {

You have messed up indentation. Use 4 spaces for example indentation.

Documentation/devicetree/bindings/regulator/samsung,s2dos05.yaml line 56

Quoted 4 lines
Documentation/devicetree/bindings/regulator/samsung,s2dos05.yaml new file +4 -0
+    			regulator-name = "s2dos05-ldo1";
+    			regulator-min-microvolt = <1500000>;
+    			regulator-max-microvolt = <2000000>;
+    			regulator-active-discharge = <0x1>;

That's not a hex, but just decimal 1.

Best regards,
Krzysztof

#3 lore raw

вт, 24 окт. 2023 г. в 18:59, Krzysztof Kozlowski
<[email protected]>:
....

Quoted 8 lines
Quoted 1 line

+title: Samsung s2dos05 regulator

Not a PMIC/MFD device? If not, then:
Samsung S2DOS05 Power Management IC

Otherwise, if this is only for regulators:
Samsung S2DOS05 Power Management IC Regulators

AFAIU, PMIC/MFD would be a device, with more than one function. Analysing s2dos05 vendor code it's capable of generating interrupts and measure current(which I'm planning to implement as a hwmon module). There're regulators with interrupt functionality in linux. Since current measurement
feature would be in hwmon subsystem, can we consider s2dos05 NOT a PMIC/MFD device?

#4 lore raw
Quoted 11 lines · Dzmitry Sankouski

вт, 24 окт. 2023 г. в 18:59, Krzysztof Kozlowski
<[email protected]>:
....

Quoted 8 lines
Quoted 1 line

+title: Samsung s2dos05 regulator

Not a PMIC/MFD device? If not, then:
Samsung S2DOS05 Power Management IC

Otherwise, if this is only for regulators:
Samsung S2DOS05 Power Management IC Regulators

Quoted 7 lines

AFAIU, PMIC/MFD would be a device, with more than one function. Analysing s2dos05 vendor code it's capable of generating interrupts and measure current(which I'm planning to implement as a hwmon module). There're regulators with interrupt functionality in linux. Since current measurement
feature would be in hwmon subsystem, can we consider s2dos05 NOT a PMIC/MFD device?

These PMICs often have also RTC, USB connector, battery charger and/or fuel-gauge. If the main function is PMIC, keeping it in regulators seem fine. The bindings should be complete though (or at least ready for more features), so you should investigate hwmon or fuel-gauge now.

Best regards,
Krzysztof

#5 lore raw

сб, 28 окт. 2023 г. в 23:17, Krzysztof Kozlowski
<[email protected]>:

Quoted 21 lines · Dzmitry Sankouski
Quoted 11 lines

вт, 24 окт. 2023 г. в 18:59, Krzysztof Kozlowski
<[email protected]>:
....

Quoted 8 lines
Quoted 1 line

+title: Samsung s2dos05 regulator

Not a PMIC/MFD device? If not, then:
Samsung S2DOS05 Power Management IC

Otherwise, if this is only for regulators:
Samsung S2DOS05 Power Management IC Regulators

Quoted 7 lines

AFAIU, PMIC/MFD would be a device, with more than one function. Analysing s2dos05 vendor code it's capable of generating interrupts and measure current(which I'm planning to implement as a hwmon module). There're regulators with interrupt functionality in linux. Since current measurement
feature would be in hwmon subsystem, can we consider s2dos05 NOT a PMIC/MFD device?

Quoted 5 lines

These PMICs often have also RTC, USB connector, battery charger and/or fuel-gauge. If the main function is PMIC, keeping it in regulators seem fine. The bindings should be complete though (or at least ready for more features), so you should investigate hwmon or fuel-gauge now.

The right place for s2dos05 current measuring functionality is hwmon, because fuel gauge term is for ICs determining the current State of Charge of accumulators.
Hwmon modules doesn't rely on device tree binding, but on '.*_detect' functions, so the binding would be fine.

maintainer
#6 lore raw
In reply to Dzmitry Sankouski
Quoted 13 lines · Dzmitry Sankouski

Add binding for the s2dos05 pmic found in the Samsung S9.

Cc Conor Dooley <[email protected]>
Cc Dzmitry Sankouski <[email protected]>
Cc Krzysztof Kozlowski <[email protected]>
Cc Liam Girdwood <[email protected]>
Cc Mark Brown <[email protected]>
Cc Rob Herring <[email protected]>

---

Quoted 8 lines

Changes in v2:
- hex to decimal in regulator values
- fix compatible value

 .../bindings/regulator/samsung,s2dos05.yaml   | 89 +++++++++++++++++++
 1 file changed, 89 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/regulator/samsung,s2dos05.yaml

My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check' on your patch (DT_CHECKER_FLAGS is new in v5.13):

yamllint warnings/errors:
./Documentation/devicetree/bindings/regulator/samsung,s2dos05.yaml:30:15: [error] string value is redundantly quoted with any quotes (quoted-strings)

dtschema/dtc warnings/errors:
Documentation/devicetree/bindings/regulator/samsung,s2dos05.example.dts:20.10-23: Warning (reg_format): /example-0/regulator@60:reg: property has invalid length (4 bytes) (#address-cells == 1, #size-cells == 1)
Documentation/devicetree/bindings/regulator/samsung,s2dos05.example.dtb: Warning (pci_device_reg): Failed prerequisite 'reg_format'
Documentation/devicetree/bindings/regulator/samsung,s2dos05.example.dtb: Warning (pci_device_bus_num): Failed prerequisite 'reg_format'
Documentation/devicetree/bindings/regulator/samsung,s2dos05.example.dtb: Warning (simple_bus_reg): Failed prerequisite 'reg_format'
Documentation/devicetree/bindings/regulator/samsung,s2dos05.example.dtb: Warning (i2c_bus_reg): Failed prerequisite 'reg_format'
Documentation/devicetree/bindings/regulator/samsung,s2dos05.example.dtb: Warning (spi_bus_reg): Failed prerequisite 'reg_format'
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/regulator/samsung,s2dos05.example.dtb: regulator@60: 's2dos05,s2dos05_int' does not match any of the regexes: 'pinctrl-[0-9]+'
from schema $id: http://devicetree.org/schemas/regulator/samsung,s2dos05.yaml#
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/regulator/samsung,s2dos05.example.dtb: regulator@60: 's2dos05,s2dos05_int' does not match any of the regexes: '^#.*', '^(at25|bm|devbus|dmacap|dsa|exynos|fsi[ab]|gpio-fan|gpio-key|gpio|gpmc|hdmi|i2c-gpio),.*', '^(keypad|m25p|max8952|max8997|max8998|mpmc),.*', '^(pinctrl-single|#pinctrl-single|PowerPC),.*', '^(pl022|pxa-mmc|rcar_sound|rotary-encoder|s5m8767|sdhci),.*', '^(simple-audio-card|st-plgpio|st-spics|ts),.*', '^100ask,.*', '^70mai,.*', '^8dev,.*', '^GEFanuc,.*', '^ORCL,.*', '^SUNW,.*', '^[a-zA-Z0-9#_][a-zA-Z0-9+\\-._@]{0,63}$', '^[a-zA-Z0-9+\\-._]*@[0-9a-zA-Z,]*$', '^abb,.*', '^abilis,.*', '^abracon,.*', '^abt,.*', '^acbel,.*', '^acer,.*', '^acme,.*', '^actions,.*', '^active-semi,.*', '^ad,.*', '^adafruit,.*', '^adapteva,.*', '^adaptrum,.*', '^adh,.*', '^adi,.*', '^advantech,.*', '^aeroflexgaisler,.*', '^aesop,.*', '^airoha,.*', '^al,.*', '^alcatel,.*', '^aldec,.*', '^alfa-network,.*', '^allegro,.*', '^all
o,.*', '^allwinner,.*', '^alphascale,.*', '^alps,.*', '^alt,.*', '^altr,.*', '^amarula,.*', '^amazon,.*', '^amcc,.*', '^amd,.*', '^amediatech,.*', '^amlogic,.*', '^ampere,.*', '^ampire,.*', '^ams,.*', '^amstaos,.*', '^analogix,.*', '^anbernic,.*', '^andestech,.*', '^anvo,.*', '^apm,.*', '^apple,.*', '^aptina,.*', '^arasan,.*', '^archermind,.*', '^arctic,.*', '^arcx,.*', '^aries,.*', '^arm,.*', '^armadeus,.*', '^arrow,.*', '^artesyn,.*', '^asahi-kasei,.*', '^asc,.*', '^asix,.*', '^aspeed,.*', '^asrock,.*', '^asus,.*', '^atheros,.*', '^atlas,.*', '^atmel,.*', '^auo,.*', '^auvidea,.*', '^avago,.*', '^avia,.*', '^avic,.*', '^avnet,.*', '^awinic,.*', '^axentia,.*', '^axis,.*', '^azoteq,.*', '^azw,.*', '^baikal,.*', '^bananapi,.*', '^beacon,.*', '^beagle,.*', '^belling,.*', '^bhf,.*', '^bitmain,.*', '^blutek,.*', '^boe,.*', '^bosch,.*', '^boundary,.*', '^brcm,.*', '^broadmobi,.*', '^bsh,.*', '^bticino,.*', '^buffalo,.*', '^bur,.*', '^bytedance,.*', '^calamp,.*', '^calaosystems,.*', '^calx eda,.*', '^canaan,.*', '^caninos,.*', '^capella,.*', '^cascoda,.*', '^catalyst,.*', '^cavium,.*', '^cdns,.*', '^cdtech,.*', '^cellwise,.*', '^ceva,.*', '^chargebyte,.*', '^checkpoint,.*', '^chefree,.*', '^chipidea,.*', '^chipone,.*', '^chipspark,.*', '^chongzhou,.*', '^chrontel,.*', '^chrp,.*', '^chunghwa,.*', '^chuwi,.*', '^ciaa,.*', '^cirrus,.*', '^cisco,.*', '^clockwork,.*', '^cloos,.*', '^cloudengines,.*', '^cnm,.*', '^cnxt,.*', '^colorfly,.*', '^compulab,.*', '^congatec,.*', '^coreriver,.*', '^corpro,.*', '^cortina,.*', '^cosmic,.*', '^crane,.*', '^creative,.*', '^crystalfontz,.*', '^csky,.*', '^csq,.*', '^ctera,.*', '^ctu,.*', '^cubietech,.*', '^cui,.*', '^cypress,.*', '^cyx,.*', '^cznic,.*', '^dallas,.*', '^dataimage,.*', '^davicom,.*', '^dell,.*', '^delta,.*', '^densitron,.*', '^denx,.*', '^devantech,.*', '^dfi,.*', '^dh,.*', '^difrnce,.*', '^digi,.*', '^digilent,.*', '^diodes,.*', '^dioo,.*', '^dlc,.*', '^dlg,.*', '^dlink,.*', '^dmo,.*', '^domintech,.*', '^dongwoon,.*', '^d ptechnics,.*', '^dragino,.*', '^ds,.*', '^dserve,.*', '^dynaimage,.*', '^ea,.*', '^ebang,.*', '^ebbg,.*', '^ebs-systart,.*', '^ebv,.*', '^eckelmann,.*', '^edgeble,.*', '^edimax,.*', '^edt,.*', '^ees,.*', '^eeti,.*', '^einfochips,.*', '^eink,.*', '^elan,.*', '^element14,.*', '^elgin,.*', '^elida,.*', '^elimo,.*', '^elpida,.*', '^embedfire,.*', '^embest,.*', '^emlid,.*', '^emmicro,.*', '^empire-electronix,.*', '^emtrion,.*', '^enclustra,.*', '^endless,.*', '^ene,.*', '^energymicro,.*', '^engicam,.*', '^engleder,.*', '^epcos,.*', '^epfl,.*', '^epson,.*', '^esp,.*', '^est,.*', '^ettus,.*', '^eukrea,.*', '^everest,.*', '^everspin,.*', '^evervision,.*', '^exar,.*', '^excito,.*', '^exegin,.*', '^ezchip,.*', '^facebook,.*', '^fairphone,.*', '^faraday,.*', '^fastrax,.*', '^fcs,.*', '^feixin,.*', '^feiyang,.*', '^fii,.*', '^firefly,.*', '^focaltech,.*', '^forlinx,.*', '^frida,.*', '^friendlyarm,.*', '^fsl,.*', '^fujitsu,.*', '^fxtec,.*', '^gardena,.*', '^gateworks,.*', '^gcw,.*', '^ge,.*', '^ geekbuying,.*', '^gef,.*', '^gemei,.*', '^genesys,.*', '^geniatech,.*', '^giantec,.*', '^giantplus,.*', '^globalscale,.*', '^globaltop,.*', '^gmt,.*', '^goldelico,.*', '^goodix,.*', '^google,.*', '^gplus,.*', '^grinn,.*', '^grmn,.*', '^gumstix,.*', '^gw,.*', '^hannstar,.*', '^haochuangyi,.*', '^haoyu,.*', '^hardkernel,.*', '^hechuang,.*', '^hideep,.*', '^himax,.*', '^hirschmann,.*', '^hisi,.*', '^hisilicon,.*', '^hit,.*', '^hitex,.*', '^holt,.*', '^holtek,.*', '^honestar,.*', '^honeywell,.*', '^hoperun,.*', '^hp,.*', '^hpe,.*', '^hsg,.*', '^huawei,.*', '^hugsun,.*', '^hwacom,.*', '^hxt,.*', '^hycon,.*', '^hydis,.*', '^hynitron,.*', '^hynix,.*', '^hyundai,.*', '^i2se,.*', '^ibm,.*', '^icplus,.*', '^idt,.*', '^ifi,.*', '^ilitek,.*', '^imagis,.*', '^img,.*', '^imi,.*', '^inanbo,.*', '^incircuit,.*', '^indiedroid,.*', '^inet-tek,.*', '^infineon,.*', '^inforce,.*', '^ingenic,.*', '^ingrasys,.*', '^injoinic,.*', '^innocomm,.*', '^innolux,.*', '^inside-secure,.*', '^insignal,.*', '^inspur, .*', '^intel,.*', '^intercontrol,.*', '^invensense,.*', '^inventec,.*', '^inversepath,.*', '^iom,.*', '^irondevice,.*', '^isee,.*', '^isil,.*', '^issi,.*', '^ite,.*', '^itead,.*', '^itian,.*', '^ivo,.*', '^iwave,.*', '^jadard,.*', '^jasonic,.*', '^jdi,.*', '^jedec,.*', '^jesurun,.*', '^jethome,.*', '^jianda,.*', '^joz,.*', '^kam,.*', '^karo,.*', '^keithkoep,.*', '^keymile,.*', '^khadas,.*', '^kiebackpeter,.*', '^kinetic,.*', '^kingdisplay,.*', '^kingnovel,.*', '^kionix,.*', '^kobo,.*', '^kobol,.*', '^koe,.*', '^kontron,.*', '^kosagi,.*', '^kvg,.*', '^kyo,.*', '^lacie,.*', '^laird,.*', '^lamobo,.*', '^lantiq,.*', '^lattice,.*', '^lctech,.*', '^leadtek,.*', '^leez,.*', '^lego,.*', '^lemaker,.*', '^lenovo,.*', '^lg,.*', '^lgphilips,.*', '^libretech,.*', '^licheepi,.*', '^linaro,.*', '^lineartechnology,.*', '^linksprite,.*', '^linksys,.*', '^linutronix,.*', '^linux,.*', '^linx,.*', '^liteon,.*', '^litex,.*', '^lltc,.*', '^logicpd,.*', '^logictechno,.*', '^longcheer,.*', '^lontium,.*', ' ^loongmasses,.*', '^loongson,.*', '^lsi,.*', '^lunzn,.*', '^lwn,.*', '^lxa,.*', '^m5stack,.*', '^macnica,.*', '^mantix,.*', '^mapleboard,.*', '^marvell,.*', '^maxbotix,.*', '^maxim,.*', '^maxlinear,.*', '^mbvl,.*', '^mcube,.*', '^meas,.*', '^mecer,.*', '^mediatek,.*', '^megachips,.*', '^mele,.*', '^melexis,.*', '^melfas,.*', '^mellanox,.*', '^memsensing,.*', '^memsic,.*', '^menlo,.*', '^mentor,.*', '^meraki,.*', '^merrii,.*', '^methode,.*', '^micrel,.*', '^microchip,.*', '^microcrystal,.*', '^micron,.*', '^microsoft,.*', '^microsys,.*', '^mikroe,.*', '^mikrotik,.*', '^miniand,.*', '^minix,.*', '^miramems,.*', '^mitsubishi,.*', '^mixel,.*', '^miyoo,.*', '^mntre,.*', '^modtronix,.*', '^moortec,.*', '^mosaixtech,.*', '^motorcomm,.*', '^motorola,.*', '^moxa,.*', '^mpl,.*', '^mps,.*', '^mqmaker,.*', '^mrvl,.*', '^mscc,.*', '^msi,.*', '^mstar,.*', '^mti,.*', '^multi-inno,.*', '^mundoreader,.*', '^murata,.*', '^mxic,.*', '^mxicy,.*', '^myir,.*', '^national,.*', '^nec,.*', '^neonode,.*', '^ netgear,.*', '^netlogic,.*', '^netron-dy,.*', '^netronix,.*', '^netxeon,.*', '^neweast,.*', '^newhaven,.*', '^newvision,.*', '^nexbox,.*', '^nextthing,.*', '^ni,.*', '^nintendo,.*', '^nlt,.*', '^nokia,.*', '^nordic,.*', '^novatek,.*', '^novtech,.*', '^nutsboard,.*', '^nuvoton,.*', '^nvd,.*', '^nvidia,.*', '^nxp,.*', '^oceanic,.*', '^ocs,.*', '^oct,.*', '^okaya,.*', '^oki,.*', '^olimex,.*', '^olpc,.*', '^oneplus,.*', '^onie,.*', '^onion,.*', '^onnn,.*', '^ontat,.*', '^opalkelly,.*', '^openailab,.*', '^opencores,.*', '^openembed,.*', '^openpandora,.*', '^openrisc,.*', '^option,.*', '^oranth,.*', '^orisetech,.*', '^ortustech,.*', '^osddisplays,.*', '^osmc,.*', '^ouya,.*', '^overkiz,.*', '^ovti,.*', '^oxsemi,.*', '^ozzmaker,.*', '^panasonic,.*', '^parade,.*', '^parallax,.*', '^pda,.*', '^pericom,.*', '^pervasive,.*', '^phicomm,.*', '^phytec,.*', '^picochip,.*', '^pine64,.*', '^pineriver,.*', '^pixcir,.*', '^plantower,.*', '^plathome,.*', '^plda,.*', '^plx,.*', '^ply,.*', '^pni,.*', '^po cketbook,.*', '^polaroid,.*', '^polyhex,.*', '^portwell,.*', '^poslab,.*', '^pov,.*', '^powertip,.*', '^powervr,.*', '^primux,.*', '^probox2,.*', '^prt,.*', '^pulsedlight,.*', '^purism,.*', '^qca,.*', '^qcom,.*', '^qemu,.*', '^qi,.*', '^qiaodian,.*', '^qihua,.*', '^qishenglong,.*', '^qnap,.*', '^quanta,.*', '^radxa,.*', '^raidsonic,.*', '^ralink,.*', '^ramtron,.*', '^raspberrypi,.*', '^raydium,.*', '^rda,.*', '^realtek,.*', '^remarkable,.*', '^renesas,.*', '^rervision,.*', '^revotics,.*', '^rex,.*', '^richtek,.*', '^ricoh,.*', '^rikomagic,.*', '^riot,.*', '^riscv,.*', '^rockchip,.*', '^rocktech,.*', '^rohm,.*', '^ronbo,.*', '^roofull,.*', '^roseapplepi,.*', '^saef,.*', '^samsung,.*', '^samtec,.*', '^sancloud,.*', '^sandisk,.*', '^satoz,.*', '^sbs,.*', '^schindler,.*', '^seagate,.*', '^seeed,.*', '^seirobotics,.*', '^semtech,.*', '^senseair,.*', '^sensirion,.*', '^sensortek,.*', '^sercomm,.*', '^sff,.*', '^sgd,.*', '^sgmicro,.*', '^sgx,.*', '^sharp,.*', '^shift,.*', '^shimafuji,.*', '^shineworld,.*', '^shiratech,.*', '^si-en,.*', '^si-linux,.*', '^siemens,.*', '^sifive,.*', '^sigma,.*', '^sii,.*', '^sil,.*', '^silabs,.*', '^silan,.*', '^silead,.*', '^silergy,.*', '^silex-insight,.*', '^siliconfile,.*', '^siliconmitus,.*', '^silvaco,.*', '^simtek,.*', '^sinlinx,.*', '^sinovoip,.*', '^sinowealth,.*', '^sipeed,.*', '^sirf,.*', '^sis,.*', '^sitronix,.*', '^skov,.*', '^skyworks,.*', '^smartlabs,.*', '^smsc,.*', '^snps,.*', '^sochip,.*', '^socionext,.*', '^solidrun,.*', '^solomon,.*', '^sony,.*', '^sourceparts,.*', '^spansion,.*', '^sparkfun,.*', '^spinalhdl,.*', '^sprd,.*', '^square,.*', '^ssi,.*', '^sst,.*', '^sstar,.*', '^st,.*', '^st-ericsson,.*', '^starfive,.*', '^starry,.*', '^startek,.*', '^starterkit,.*', '^ste,.*', '^stericsson,.*', '^storlink,.*', '^storm,.*', '^storopack,.*', '^summit,.*', '^sunchip,.*', '^sundance,.*', '^sunplus,.*', '^supermicro,.*', '^swir,.*', '^syna,.*', '^synology,.*', '^synopsys,.*', '^tbs,.*', '^tbs-biometrics,.*', '^tcg,.*', '^tcl ,.*', '^tcs,.*', '^tdo,.*', '^team-source-display,.*', '^technexion,.*', '^technologic,.*', '^techstar,.*', '^teejet,.*', '^teltonika,.*', '^tempo,.*', '^terasic,.*', '^tesla,.*', '^tfc,.*', '^thead,.*', '^thine,.*', '^thingyjp,.*', '^thundercomm,.*', '^thwc,.*', '^ti,.*', '^tianma,.*', '^tlm,.*', '^tmt,.*', '^topeet,.*', '^topic,.*', '^toppoly,.*', '^topwise,.*', '^toradex,.*', '^toshiba,.*', '^toumaz,.*', '^tpk,.*', '^tplink,.*', '^tpo,.*', '^tq,.*', '^traverse,.*', '^tronfy,.*', '^tronsmart,.*', '^truly,.*', '^tsd,.*', '^tyan,.*', '^u-blox,.*', '^u-boot,.*', '^ubnt,.*', '^ucrobotics,.*', '^udoo,.*', '^ufispace,.*', '^ugoos,.*', '^uniwest,.*', '^upisemi,.*', '^urt,.*', '^usi,.*', '^utoo,.*', '^v3,.*', '^vaisala,.*', '^vamrs,.*', '^variscite,.*', '^vdl,.*', '^vertexcom,.*', '^via,.*', '^vialab,.*', '^vicor,.*', '^videostrong,.*', '^virtio,.*', '^virtual,.*', '^vishay,.*', '^visionox,.*', '^vitesse,.*', '^vivante,.*', '^vivax,.*', '^vocore,.*', '^voipac,.*', '^vot,.*', '^vxt,.*', '^ wanchanglong,.*', '^wand,.*', '^waveshare,.*', '^wd,.*', '^we,.*', '^welltech,.*', '^wetek,.*', '^wexler,.*', '^whwave,.*', '^wi2wi,.*', '^widora,.*', '^wiligear,.*', '^willsemi,.*', '^winbond,.*', '^wingtech,.*', '^winlink,.*', '^winstar,.*', '^wirelesstag,.*', '^wits,.*', '^wlf,.*', '^wm,.*', '^wobo,.*', '^x-powers,.*', '^xen,.*', '^xes,.*', '^xiaomi,.*', '^xillybus,.*', '^xingbangda,.*', '^xinpeng,.*', '^xiphera,.*', '^xlnx,.*', '^xnano,.*', '^xunlong,.*', '^xylon,.*', '^yadro,.*', '^yamaha,.*', '^yes-optoelectronics,.*', '^yic,.*', '^yiming,.*', '^ylm,.*', '^yna,.*', '^yones-toptech,.*', '^ys,.*', '^ysoft,.*', '^zarlink,.*', '^zealz,.*', '^zeitec,.*', '^zidoo,.*', '^zii,.*', '^zinitix,.*', '^zkmagic,.*', '^zte,.*', '^zyxel,.*', 'pinctrl-[0-9]+'
from schema $id: http://devicetree.org/schemas/vendor-prefixes.yaml#

doc reference errors (make refcheckdocs):

See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/[email protected]

The base for the series is generally the latest rc1. A different dependency should be noted in *this* patch.

If you already ran 'make dt_binding_check' and didn't see the above error(s), then make sure 'yamllint' is installed and dt-schema is up to date:

pip3 install dtschema --upgrade

Please check and re-submit after running the above command yourself. Note that DT_SCHEMA_FILES can be set to your schema file to speed up checking your schema. However, it must be unset to test all examples with your schema.

#7 lore raw

PATCH v2 3/6 arm64: dts: qcom: starqltechn: remove wifi

In reply to a message not in the archive

Starqltechn has broadcom chip for wifi, so sdm845 wifi part can be disabled.

Cc Andy Gross <[email protected]>
Cc Bjorn Andersson <[email protected]>
Cc Conor Dooley <[email protected]>
Cc Konrad Dybcio <[email protected]>
Cc Krzysztof Kozlowski <[email protected]>
Cc Rob Herring <[email protected]>

---

Changes in v2:
- none

 arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts | 8 --------
 1 file changed, 8 deletions(-)
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +0 -8
index d37a433130b9..6fc30fd1262b 100644
@@ -418,14 +418,6 @@ &usb_1_qmpphy {
 	status = "okay";
 };
 
-&wifi {
-	vdd-0.8-cx-mx-supply = <&vreg_l5a_0p8>;
-	vdd-1.8-xo-supply = <&vreg_l7a_1p8>;
-	vdd-1.3-rfa-supply = <&vreg_l17a_1p3>;
-	vdd-3.3-ch0-supply = <&vreg_l25a_3p3>;
-	status = "okay";
-};
-
 &tlmm {
 	gpio-reserved-ranges = <0 4>, <27 4>, <81 4>, <85 4>;
 
Signature · 1 line
2.30.2
Reviewed-by on v2 3/6
#8 lore raw

Re: [PATCH v2 3/6] arm64: dts: qcom: starqltechn: remove wifi

Quoted 30 lines · Dzmitry Sankouski

Starqltechn has broadcom chip for wifi, so sdm845 wifi part can be disabled.

Cc Andy Gross <[email protected]>
Cc Bjorn Andersson <[email protected]>
Cc Conor Dooley <[email protected]>
Cc Konrad Dybcio <[email protected]>
Cc Krzysztof Kozlowski <[email protected]>
Cc Rob Herring <[email protected]>

---

Changes in v2:
- none

  arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts | 8 --------
  1 file changed, 8 deletions(-)
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +0 -1
index d37a433130b9..6fc30fd1262b 100644
@@ -418,14 +418,6 @@ &usb_1_qmpphy {
  	status = "okay";
  };
 
-&wifi {

arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts &usb_1_qmpphy { · line 423

Quoted 10 lines
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +0 -7
-	vdd-0.8-cx-mx-supply = <&vreg_l5a_0p8>;
-	vdd-1.8-xo-supply = <&vreg_l7a_1p8>;
-	vdd-1.3-rfa-supply = <&vreg_l17a_1p3>;
-	vdd-3.3-ch0-supply = <&vreg_l25a_3p3>;
-	status = "okay";
-};
-
  &tlmm {
  	gpio-reserved-ranges = <0 4>, <27 4>, <81 4>, <85 4>;
 

A good candidate for a Fixes tag.

Fixes d711b22eee55 ("arm64: dts: qcom: starqltechn: add initial device tree for starqltechn")
#9 lore raw

Re: [PATCH v2 3/6] arm64: dts: qcom: starqltechn: remove wifi

In reply to Dzmitry Sankouski
Quoted 13 lines · Dzmitry Sankouski

Starqltechn has broadcom chip for wifi, so sdm845 wifi part can be disabled.

Cc Andy Gross <[email protected]>
Cc Bjorn Andersson <[email protected]>
Cc Conor Dooley <[email protected]>
Cc Konrad Dybcio <[email protected]>
Cc Krzysztof Kozlowski <[email protected]>
Cc Rob Herring <[email protected]>
Quoted 1 line

---

Fixes?

Konrad

#10 lore raw

PATCH v2 4/6 arm64: dts: qcom: starqltechn: enable more features

In reply to a message not in the archive

- enable usb 2.0
- enable debug uart (uart9)
- enable touchscreen
- enable ipa so that we can bring up mobile data

Cc Andy Gross <[email protected]>
Cc Bjorn Andersson <[email protected]>
Cc Conor Dooley <[email protected]>
Cc Konrad Dybcio <[email protected]>
Cc Krzysztof Kozlowski <[email protected]>
Cc Rob Herring <[email protected]>

---

Changes in v2:
- hex to decimal in regulator values
- fix dtb_check warnings

 .../dts/qcom/sdm845-samsung-starqltechn.dts   | 173 +++++++++++++++++-
 1 file changed, 171 insertions(+), 2 deletions(-)
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +171 -2
index 6fc30fd1262b..f2bc3c412a2f 100644
@@ -11,11 +11,17 @@
 #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
 #include "sdm845.dtsi"
 
+/delete-node/ &rmtfs_mem;
+
 / {
 	chassis-type = "handset";
 	model = "Samsung Galaxy S9 SM-G9600";
 	compatible = "samsung,starqltechn", "qcom,sdm845";
 
+	aliases {
+		serial0 = &uart9;
+	};
+
 	chosen {
 		#address-cells = <2>;
 		#size-cells = <2>;
@@ -68,6 +74,93 @@ memory@a1300000 {
 			ftrace-size = <0x40000>;
 			pmsg-size = <0x40000>;
 		};
+
+		/* The rmtfs_mem needs to be guarded due to "XPU limitations"
+		 * it is otherwise possible for an allocation adjacent to the
+		 * rmtfs_mem region to trigger an XPU violation, causing a crash.
+		 */
+		rmtfs_lower_guard: memory@fde00000 {
+			no-map;
+			reg = <0 0xfde00000 0 0x1000>;
+		};
+
+		rmtfs_mem: rmtfs-mem@fde01000 {
+			compatible = "qcom,rmtfs-mem";
+			reg = <0 0xfde01000 0 0x200000>;
+			no-map;
+
+			qcom,client-id = <1>;
+			qcom,vmid = <15>;
+		};
+
+		rmtfs_upper_guard: rmtfs-upper-guard@fe001000 {
+			no-map;
+			reg = <0 0xfe001000 0 0x1000>;
+		};
+
+		/*
+		 * It seems like reserving the old rmtfs_mem region is also needed to prevent
+		 * random crashes which are most likely modem related, more testing needed.
+		 */
+		removed_region: removed-region@88f00000 {
+			no-map;
+			reg = <0 0x88f00000 0 0x1c00000>;
+		};
+	};
+
+	i2c@21 {
+		compatible = "i2c-gpio";
+		sda-gpios = <&tlmm 127 0x0>;
+		scl-gpios = <&tlmm 128 0x0>;
+		i2c-gpio,delay-us = <0x2>;
+		#address-cells = <0x1>;
+		#size-cells = <0x0>;
+		pinctrl-names = "default";
+		pinctrl-0 = <&i2c21_sda_state &i2c21_scl_state>;
+
+		regulator@60 {
+			compatible = "samsung,s2dos05";
+			reg = <0x60>;
+
+			regulators {
+				s2dos05_ldo1: s2dos05-ldo1 {
+					regulator-name = "s2dos05-ldo1";
+					regulator-min-microvolt = <1500000>;
+					regulator-max-microvolt = <2000000>;
+					regulator-active-discharge = <0x1>;
+				};
+
+				s2dos05_ldo2: s2dos05-ldo2 {
+					regulator-name = "s2dos05-ldo2";
+					regulator-min-microvolt = <1800000>;
+					regulator-max-microvolt = <1800000>;
+					regulator-active-discharge = <0x1>;
+					regulator-boot-on;
+				};
+
+				s2dos05_ldo3: s2dos05-ldo3 {
+					regulator-name = "s2dos05-ldo3";
+					regulator-min-microvolt = <3000000>;
+					regulator-max-microvolt = <3000000>;
+					regulator-active-discharge = <0x1>;
+					regulator-boot-on;
+				};
+
+				s2dos05_ldo4: s2dos05-ldo4 {
+					regulator-name = "s2dos05-ldo4";
+					regulator-min-microvolt = <2700000>;
+					regulator-max-microvolt = <3775000>;
+					regulator-active-discharge = <0x1>;
+				};
+
+				s2dos05_buck1: s2dos05-buck1 {
+					regulator-name = "s2dos05-buck1";
+					regulator-min-microvolt = <850000>;
+					regulator-max-microvolt = <2100000>;
+					regulator-active-discharge = <0x1>;
+				};
+			};
+		};
 	};
 };
 
@@ -135,8 +228,6 @@ vdda_pll_cc_ebi23:
 		vdda_sp_sensor:
 		vdda_ufs1_core:
 		vdda_ufs2_core:
-		vdda_usb1_ss_core:
-		vdda_usb2_ss_core:
 		vreg_l1a_0p875: ldo1 {
 			regulator-min-microvolt = <880000>;
 			regulator-max-microvolt = <880000>;
@@ -157,6 +248,7 @@ vreg_l3a_1p0: ldo3 {
 			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
 		};
 
+		vdda_usb1_ss_core:
 		vdd_wcss_cx:
 		vdd_wcss_mx:
 		vdda_wcss_pll:
@@ -365,6 +457,10 @@ &qupv3_id_1 {
 	status = "okay";
 };
 
+&gpi_dma1 {
+	status = "okay";
+};
+
 &uart9 {
 	status = "okay";
 };
@@ -391,13 +487,50 @@ &sdhc_2 {
 	status = "okay";
 };
 
+&i2c11 {
+	status = "okay";
+	clock-frequency = <400000>;
+
+	touchscreen@48 {
+		compatible = "samsung,s6sy761";
+		reg = <0x48>;
+		interrupt-parent = <&tlmm>;
+		interrupts = <120 0x0>;
+		vdd-supply = <&s2dos05_ldo2>;
+		avdd-supply = <&s2dos05_ldo3>;
+
+		pinctrl-names = "default";
+		pinctrl-0 = <&touch_irq_state>;
+	};
+};
+
+/* Modem/wifi*/
+&mss_pil {
+	status = "okay";
+	firmware-name = "qcom/sdm845/starqltechn/mba.mbn", "qcom/sdm845/starqltechn/modem.mbn";
+};
+
+&ipa {
+	qcom,gsi-loader = "self";
+	memory-region = <&ipa_fw_mem>;
+	firmware-name = "qcom/sdm845/starqltechn/ipa_fws.mbn";
+	status = "okay";
+};
+
 &usb_1 {
 	status = "okay";
+	/*
+	 * disable USB3 clock requirement as the device only supports
+	 * USB2.
+	 */
+	qcom,select-utmi-as-pipe-clk;
 };
 
 &usb_1_dwc3 {
 	/* Until we have Type C hooked up we'll force this as peripheral. */
 	dr_mode = "peripheral";
+
+	maximum-speed = "high-speed";
 };
 
 &usb_1_hsphy {
@@ -449,4 +582,40 @@ sd_card_det_n_state: sd-card-det-n-state {
 		function = "gpio";
 		bias-pull-up;
 	};
+
+	i2c21_sda_state: i2c-sda-state {
+		pins = "gpio127";
+		function = "gpio";
+		drive-strength = <0x2>;
+		bias-disable;
+	};
+
+	i2c21_scl_state: i2c-scl-state {
+		pins = "gpio128";
+		function = "gpio";
+		drive-strength = <0x2>;
+		bias-disable;
+	};
+
+	touch_irq_state: touch-irq-state {
+		pins = "gpio120";
+		function = "gpio";
+		bias-disable;
+		output-disable;
+	};
+};
+
+&qup_uart9_tx {
+	drive-strength = <0x2>;
+	bias-pull-up;
+};
+
+&qup_uart9_rx {
+	drive-strength = <0x2>;
+	bias-pull-up;
+};
+
+&qup_i2c11_default {
+	drive-strength = <2>;
+	bias-disable;
 };
Signature · 1 line
2.30.2
#11 lore raw

Re: [PATCH v2 4/6] arm64: dts: qcom: starqltechn: enable more features

Quoted 77 lines · Dzmitry Sankouski

- enable usb 2.0
- enable debug uart (uart9)
- enable touchscreen
- enable ipa so that we can bring up mobile data

Cc Andy Gross <[email protected]>
Cc Bjorn Andersson <[email protected]>
Cc Conor Dooley <[email protected]>
Cc Konrad Dybcio <[email protected]>
Cc Krzysztof Kozlowski <[email protected]>
Cc Rob Herring <[email protected]>

---

Changes in v2:
- hex to decimal in regulator values
- fix dtb_check warnings

  .../dts/qcom/sdm845-samsung-starqltechn.dts   | 173 +++++++++++++++++-
  1 file changed, 171 insertions(+), 2 deletions(-)
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +33 -0
index 6fc30fd1262b..f2bc3c412a2f 100644
@@ -11,11 +11,17 @@
  #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
  #include "sdm845.dtsi"
 
+/delete-node/ &rmtfs_mem;
+
  / {
  	chassis-type = "handset";
  	model = "Samsung Galaxy S9 SM-G9600";
  	compatible = "samsung,starqltechn", "qcom,sdm845";
 
+	aliases {
+		serial0 = &uart9;
+	};
+
  	chosen {
  		#address-cells = <2>;
  		#size-cells = <2>;
@@ -68,6 +74,93 @@ memory@a1300000 {
  			ftrace-size = <0x40000>;
  			pmsg-size = <0x40000>;
  		};
+
+		/* The rmtfs_mem needs to be guarded due to "XPU limitations"
+		 * it is otherwise possible for an allocation adjacent to the
+		 * rmtfs_mem region to trigger an XPU violation, causing a crash.
+		 */
+		rmtfs_lower_guard: memory@fde00000 {
+			no-map;
+			reg = <0 0xfde00000 0 0x1000>;
+		};
+
+		rmtfs_mem: rmtfs-mem@fde01000 {
+			compatible = "qcom,rmtfs-mem";
+			reg = <0 0xfde01000 0 0x200000>;
+			no-map;
+
+			qcom,client-id = <1>;
+			qcom,vmid = <15>;
+		};
+
+		rmtfs_upper_guard: rmtfs-upper-guard@fe001000 {
+			no-map;
+			reg = <0 0xfe001000 0 0x1000>;
+		};
+
+		/*
+		 * It seems like reserving the old rmtfs_mem region is also needed to prevent
+		 * random crashes which are most likely modem related, more testing needed.

arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts memory@a1300000 { · line 113

Quoted 10 lines
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +10 -0
+		 */
+		removed_region: removed-region@88f00000 {
+			no-map;
+			reg = <0 0x88f00000 0 0x1c00000>;
+		};
+	};
+
+	i2c@21 {
+		compatible = "i2c-gpio";
+		sda-gpios = <&tlmm 127 0x0>;

GPIO_ACTIVE_HIGH

arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts memory@a1300000 { · line 114

Quoted 1 line
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +1 -0
+		scl-gpios = <&tlmm 128 0x0>;

GPIO_ACTIVE_HIGH

arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts memory@a1300000 { · line 116

Quoted 2 lines
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +2 -0
+		i2c-gpio,delay-us = <0x2>;
+		#address-cells = <0x1>;

1

arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts memory@a1300000 { · line 117

Quoted 1 line
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +1 -0
+		#size-cells = <0x0>;

0

arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts memory@a1300000 { · line 119

Quoted 2 lines
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +2 -0
+		pinctrl-names = "default";
+		pinctrl-0 = <&i2c21_sda_state &i2c21_scl_state>;

pinctrl-n
pinctrl-names

is prefered

and address/size-cells usually come as the last pair of properties

arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts memory@a1300000 { · line 130

Quoted 11 lines
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +11 -0
+
+		regulator@60 {
+			compatible = "samsung,s2dos05";
+			reg = <0x60>;
+
+			regulators {
+				s2dos05_ldo1: s2dos05-ldo1 {
+					regulator-name = "s2dos05-ldo1";
+					regulator-min-microvolt = <1500000>;
+					regulator-max-microvolt = <2000000>;
+					regulator-active-discharge = <0x1>;

1

arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts memory@a1300000 { · line 137

Quoted 7 lines
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +7 -0
+				};
+
+				s2dos05_ldo2: s2dos05-ldo2 {
+					regulator-name = "s2dos05-ldo2";
+					regulator-min-microvolt = <1800000>;
+					regulator-max-microvolt = <1800000>;
+					regulator-active-discharge = <0x1>;

1

arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts memory@a1300000 { · line 145

Quoted 8 lines
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +8 -0
+					regulator-boot-on;
+				};
+
+				s2dos05_ldo3: s2dos05-ldo3 {
+					regulator-name = "s2dos05-ldo3";
+					regulator-min-microvolt = <3000000>;
+					regulator-max-microvolt = <3000000>;
+					regulator-active-discharge = <0x1>;

1

arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts memory@a1300000 { · line 153

Quoted 8 lines
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +8 -0
+					regulator-boot-on;
+				};
+
+				s2dos05_ldo4: s2dos05-ldo4 {
+					regulator-name = "s2dos05-ldo4";
+					regulator-min-microvolt = <2700000>;
+					regulator-max-microvolt = <3775000>;
+					regulator-active-discharge = <0x1>;

1

arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts memory@a1300000 { · line 160

Quoted 7 lines
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +7 -0
+				};
+
+				s2dos05_buck1: s2dos05-buck1 {
+					regulator-name = "s2dos05-buck1";
+					regulator-min-microvolt = <850000>;
+					regulator-max-microvolt = <2100000>;
+					regulator-active-discharge = <0x1>;

1

Quoted 35 lines
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +8 -2
+				};
+			};
+		};
  	};
  };
 
@@ -135,8 +228,6 @@ vdda_pll_cc_ebi23:
  		vdda_sp_sensor:
  		vdda_ufs1_core:
  		vdda_ufs2_core:
-		vdda_usb1_ss_core:
-		vdda_usb2_ss_core:
  		vreg_l1a_0p875: ldo1 {
  			regulator-min-microvolt = <880000>;
  			regulator-max-microvolt = <880000>;
@@ -157,6 +248,7 @@ vreg_l3a_1p0: ldo3 {
  			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
  		};
 
+		vdda_usb1_ss_core:
  		vdd_wcss_cx:
  		vdd_wcss_mx:
  		vdda_wcss_pll:
@@ -365,6 +457,10 @@ &qupv3_id_1 {
  	status = "okay";
  };
 
+&gpi_dma1 {
+	status = "okay";
+};
+
  &uart9 {
  	status = "okay";
  };

arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts &sdhc_2 { · line 492

Quoted 6 lines
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +3 -0
@@ -391,13 +487,50 @@ &sdhc_2 {
  	status = "okay";
  };
 
+&i2c11 {
+	status = "okay";
+	clock-frequency = <400000>;

status is preferred to come last

arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts &sdhc_2 { · line 498

Quoted 6 lines
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +6 -0
+
+	touchscreen@48 {
+		compatible = "samsung,s6sy761";
+		reg = <0x48>;
+		interrupt-parent = <&tlmm>;
+		interrupts = <120 0x0>;

interrupts-extended with a fixed irq type (not _NONE)

arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts &sdhc_2 { · line 503

Quoted 5 lines
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +5 -0
+		vdd-supply = <&s2dos05_ldo2>;
+		avdd-supply = <&s2dos05_ldo3>;
+
+		pinctrl-names = "default";
+		pinctrl-0 = <&touch_irq_state>;

ditto

arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts &sdhc_2 { · line 507

Quoted 4 lines
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +4 -0
+	};
+};
+
+/* Modem/wifi*/

missing space before */

arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts &sdhc_2 { · line 510

Quoted 3 lines
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +3 -0
+&mss_pil {
+	status = "okay";
+	firmware-name = "qcom/sdm845/starqltechn/mba.mbn", "qcom/sdm845/starqltechn/modem.mbn";

Can you split these into two lines?

Quoted 5 lines
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +5 -0
+};
+
+&ipa {
+	qcom,gsi-loader = "self";
+	memory-region = <&ipa_fw_mem>;

arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts &sdhc_2 { · line 525

Quoted 10 lines
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +8 -0
+	firmware-name = "qcom/sdm845/starqltechn/ipa_fws.mbn";
+	status = "okay";
+};
+
  &usb_1 {
  	status = "okay";
+	/*
+	 * disable USB3 clock requirement as the device only supports
+	 * USB2.
+	 */

Can this comment fit into a /* single line */?

arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts &sdhc_2 { · line 526

Quoted 1 line
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +1 -0
+	qcom,select-utmi-as-pipe-clk;

status is supposed to be last

Quoted 11 lines
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +2 -0
  };
 
  &usb_1_dwc3 {
  	/* Until we have Type C hooked up we'll force this as peripheral. */
  	dr_mode = "peripheral";
+
+	maximum-speed = "high-speed";
  };
 
  &usb_1_hsphy {

arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts sd_card_det_n_state: sd-card-det-n-state { · line 589

Quoted 8 lines
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +5 -0
@@ -449,4 +582,40 @@ sd_card_det_n_state: sd-card-det-n-state {
  		function = "gpio";
  		bias-pull-up;
  	};
+
+	i2c21_sda_state: i2c-sda-state {
+		pins = "gpio127";
+		function = "gpio";
+		drive-strength = <0x2>;

2

arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts sd_card_det_n_state: sd-card-det-n-state { · line 596

Quoted 7 lines
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +7 -0
+		bias-disable;
+	};
+
+	i2c21_scl_state: i2c-scl-state {
+		pins = "gpio128";
+		function = "gpio";
+		drive-strength = <0x2>;

2

arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts sd_card_det_n_state: sd-card-det-n-state { · line 609

Quoted 13 lines
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +13 -0
+		bias-disable;
+	};
+
+	touch_irq_state: touch-irq-state {
+		pins = "gpio120";
+		function = "gpio";
+		bias-disable;
+		output-disable;
+	};
+};
+
+&qup_uart9_tx {
+	drive-strength = <0x2>;

2

arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts sd_card_det_n_state: sd-card-det-n-state { · line 614

Quoted 5 lines
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +5 -0
+	bias-pull-up;
+};
+
+&qup_uart9_rx {
+	drive-strength = <0x2>;

2

arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts sd_card_det_n_state: sd-card-det-n-state { · line 619

Quoted 5 lines
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +5 -0
+	bias-pull-up;
+};
+
+&qup_i2c11_default {
+	drive-strength = <2>;

like here

Konrad

#12 lore raw

Re: [PATCH v2 4/6] arm64: dts: qcom: starqltechn: enable more features

...

Quoted 8 lines

arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts &sdhc_2 { · line 498

Quoted 6 lines
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +6 -0
+
+     touchscreen@48 {
+             compatible = "samsung,s6sy761";
+             reg = <0x48>;
+             interrupt-parent = <&tlmm>;
+             interrupts = <120 0x0>;

interrupts-extended with a fixed irq type (not _NONE)

Can you please explain why not _NONE? Documentation/devicetree/bindings/input/touchscreen/samsung,s6sy761.txt example says it should be IRQ_TYPE_NONE.
AFAIU this 2 interrupt properties should be changed to one like:
'interrupts-extended = <&tlmm 120 IRQ_TYPE_NONE>;'

#13 lore raw

Re: [PATCH v2 4/6] arm64: dts: qcom: starqltechn: enable more features

Quoted 7 lines · Dzmitry Sankouski

...

Quoted 6 lines
Quoted 6 lines
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +6 -0
+
+     touchscreen@48 {
+             compatible = "samsung,s6sy761";
+             reg = <0x48>;
+             interrupt-parent = <&tlmm>;
+             interrupts = <120 0x0>;
Quoted 5 lines
Quoted 2 lines

interrupts-extended with a fixed irq type (not _NONE)

Can you please explain why not _NONE? Documentation/devicetree/bindings/input/touchscreen/samsung,s6sy761.txt example says it should be IRQ_TYPE_NONE.

I don't see the binding saying this And just to be clear: example, especially incorrect example, means nothing.

There are no hardware interrupts of type NONE. That's why you should not use it, It just does not exist.

Best regards,
Krzysztof

#14 lore raw

PATCH v2 5/6 arm64: dts: qcom: starqltechn: disable crypto

In reply to a message not in the archive

Disable the crypto block due to it causing an SError in qce_start() on the starqltechn, which happens upon every boot when cryptomanager tests are enabled.

Same problem is on Lenovo C630, see
commit 382e3e0eb6a8 ("arm64: dts: qcom: c630: disable crypto due to serror")

---

Changes in v2:
- none

 arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts | 5 +++++
 1 file changed, 5 insertions(+)
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +5 -0
index f2bc3c412a2f..0e2c7df2baa7 100644
@@ -504,6 +504,11 @@ touchscreen@48 {
 	};
 };
 
+&crypto {
+	/* FIXME: qce_start triggers an SError */
+	status = "disable";
+};
+
 /* Modem/wifi*/
 &mss_pil {
 	status = "okay";
Signature · 1 line
2.30.2
Reviewed-by on v2 5/6
#15 lore raw

Re: [PATCH v2 5/6] arm64: dts: qcom: starqltechn: disable crypto

Quoted 32 lines · Dzmitry Sankouski

Disable the crypto block due to it causing an SError in qce_start() on the starqltechn, which happens upon every boot when cryptomanager tests are enabled.

Same problem is on Lenovo C630, see
commit 382e3e0eb6a8 ("arm64: dts: qcom: c630: disable crypto due to serror")

---

Changes in v2:
- none

  arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts | 5 +++++
  1 file changed, 5 insertions(+)
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +0 -0
index f2bc3c412a2f..0e2c7df2baa7 100644
@@ -504,6 +504,11 @@ touchscreen@48 {
  	};

arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts touchscreen@48 { · line 514

Quoted 10 lines
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +5 -0
  };
 
+&crypto {
+	/* FIXME: qce_start triggers an SError */
+	status = "disable";
+};
+
  /* Modem/wifi*/
  &mss_pil {
  	status = "okay";

Probably another patch that should have Fixes.

BTW when you do "git send-email" please include a "[email protected]" your emails appear with a weird red box that declares "(no To-header on input)<>" in Thunderbird - I guess because you didn't do "git send-email --to="

For preference I do "--to=" for everybody who appears as a maintainer/supporter and "--cc=" to the named mailing lists with myself last.

---
bod

#16 lore raw

Re: [PATCH v2 5/6] arm64: dts: qcom: starqltechn: disable crypto

In reply to Dzmitry Sankouski
Quoted 6 lines · Dzmitry Sankouski

Disable the crypto block due to it causing an SError in qce_start() on the starqltechn, which happens upon every boot when cryptomanager tests are enabled.

Same problem is on Lenovo C630, see
commit 382e3e0eb6a8 ("arm64: dts: qcom: c630: disable crypto due to serror")

Would that still happen with this change:

drivers/interconnect/qcom/sdm845.c +1 -1
index b9243c0aa626..dd1a2b679098 100644
@@ -1805,7 +1805,7 @@ static struct platform_driver qnoc_driver = {
        .driver = {
                .name = "qnoc-sdm845",
                .of_match_table = qnoc_of_match,
-               .sync_state = icc_sync_state,
+//             .sync_state = icc_sync_state,
        },
 };
 module_platform_driver(qnoc_driver);

?

Konrad

#17 lore raw

PATCH v2 6/6 arm64: dts: qcom: starqltechn: add supply to framebuffer

In reply to a message not in the archive

This prevents framebuffer from shutting down.

Cc Andy Gross <[email protected]>
Cc Bjorn Andersson <[email protected]>
Cc Conor Dooley <[email protected]>
Cc Konrad Dybcio <[email protected]>
Cc Krzysztof Kozlowski <[email protected]>
Cc Rob Herring <[email protected]>

---

Changes in v2:
- none

 arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts | 3 +++
 1 file changed, 3 insertions(+)
arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts +3 -0
index 0e2c7df2baa7..59e770073666 100644
@@ -33,6 +33,9 @@ framebuffer: framebuffer@9d400000 {
 			height = <2960>;
 			stride = <(1440 * 4)>;
 			format = "a8r8g8b8";
+			vci-supply = <&s2dos05_ldo4>;
+			vddr-supply = <&s2dos05_buck1>;
+			vdd3-supply = <&s2dos05_ldo1>;
 		};
 	};
 
Signature · 1 line
2.30.2