diff mbox series

[v5,1/4] dt-bindings: platform: microsoft: Document surface xbl

Message ID 20220405210750.619511-2-jaschultzMS@gmail.com
State New
Headers show
Series platform: surface: Introduce Surface XBL Driver | expand

Commit Message

Jarrett Schultz April 5, 2022, 9:07 p.m. UTC
From: Jarrett Schultz <jaschultz@microsoft.com>

Introduce yaml for surface xbl driver.

Signed-off-by: Jarrett Schultz <jaschultz@microsoft.com>

---

Changed in v5:

 - Updated description
 - Added child node for imem
 - Simplified example

---

Changes in v4:
 - Addressed small formatting changes
 - Removed unnecessary lines

---

Changes in v3:
 - Updated description to only pertain to the hardware
 - Updated the required field to properly reflect the binding
 - Removed the first example
 - Fixed the size of the reg field in the second example

---

Changes in v2:
 - Removed json-schema dependence
 - Elaborated on description of driver
 - Updated example
---
 .../platform/microsoft/surface-xbl.yaml       | 70 +++++++++++++++++++
 MAINTAINERS                                   |  7 ++
 2 files changed, 77 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/platform/microsoft/surface-xbl.yaml

Comments

Rob Herring (Arm) April 13, 2022, 6:27 p.m. UTC | #1
On Tue, Apr 05, 2022 at 02:07:47PM -0700, Jarrett Schultz wrote:
> From: Jarrett Schultz <jaschultz@microsoft.com>
> 
> Introduce yaml for surface xbl driver.
Jarrett Schultz April 18, 2022, 10:53 p.m. UTC | #2
> From: Rob Herring <robh@kernel.org>
> On Wednesday, April 13, 2022 at 11:27 AM, Rob wrote:
> 
> On Tue, Apr 05, 2022 at 02:07:47PM -0700, Jarrett Schultz wrote:
> > From: Jarrett Schultz <jaschultz@microsoft.com>
> >
> > Introduce yaml for surface xbl driver.
> 
> From Bjorn's reply on v4, it sounds like the QCom folks need to work out how
> to describe 'imem' first. I'd think that would use 'mmio-sram'
> binding and then this could be a child of that. If it's DDR, then it belongs
> under /reserved-memory node. Either way, that's all kind of outside the
> scope of the binding unless there's something special about 'imem'.
> 
> >
> > Signed-off-by: Jarrett Schultz <jaschultz@microsoft.com>
> >

Hi Rajendra and Vinod,

I'm currently working with Felipe Balbi on submitting an XBL driver that reads from imem.
Could you help me properly describe the 'imem' binding for sm8150?

Thank you,
Jarrett Schultz
Jarrett Schultz April 21, 2022, 2:47 p.m. UTC | #3
> On Monday, April 18, 2022 3:53 PM, Jarrett Schultz wrote:
> From: Jarrett Schultz <jaschultz@microsoft.com>
>
> > From: Rob Herring <robh@kernel.org>
> > On Wednesday, April 13, 2022 at 11:27 AM, Rob wrote:
> >
> > On Tue, Apr 05, 2022 at 02:07:47PM -0700, Jarrett Schultz wrote:
> > > From: Jarrett Schultz <jaschultz@microsoft.com>
> > >
> > > Introduce yaml for surface xbl driver.
> >
> > From Bjorn's reply on v4, it sounds like the QCom folks need to work
> > out how to describe 'imem' first. I'd think that would use 'mmio-sram'
> > binding and then this could be a child of that. If it's DDR, then it
> > belongs under /reserved-memory node. Either way, that's all kind of
> > outside the scope of the binding unless there's something special about
> 'imem'.
> >
> > >
> > > Signed-off-by: Jarrett Schultz <jaschultz@microsoft.com>
> > >
> 
> Hi Rajendra and Vinod,
> 
> I'm currently working with Felipe Balbi on submitting an XBL driver that reads
> from imem.
> Could you help me properly describe the 'imem' binding for sm8150?
> 
> Thank you,
> Jarrett Schultz

Oops, forgot to CC in Vinod and Rejendra.

-Jarrett
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/platform/microsoft/surface-xbl.yaml b/Documentation/devicetree/bindings/platform/microsoft/surface-xbl.yaml
new file mode 100644
index 000000000000..648476670bbd
--- /dev/null
+++ b/Documentation/devicetree/bindings/platform/microsoft/surface-xbl.yaml
@@ -0,0 +1,70 @@ 
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/platform/microsoft/surface-xbl.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Surface Extensible Bootloader for Microsoft Surface Duo
+
+maintainers:
+  - Jarrett Schultz <jaschultz@microsoft.com>
+
+description: |
+  Defined to expose information that is used during production when
+  the device is in manufacturing mode. Some of the information included
+  in the imem section is -
+    * board_id
+    * battery_present
+    * hw_init_retries
+    * is_customer_mode
+    * is_act_mode
+    * pmic_reset_reason
+    * touch_fw_version
+    * ocp_error_location
+
+properties:
+  compatible:
+    const: simple-mfd
+
+  reg:
+    maxItems: 1
+
+  child-node:
+    description: A description of the xbl space within imem
+
+    type: object
+
+    properties:
+      compatible: 
+        const: microsoft,sm8150-surface-duo-xbl
+
+      reg:
+        maxItems: 1
+
+    required:
+      - compatible
+      - reg
+
+additionalProperties: false
+
+required:
+  - compatible
+  - reg
+  - ranges
+  - address-cells
+  - size-cells
+
+examples:
+  - |
+    imem@146bf000 {
+      compatible = "simple-mfd";
+      reg = <0x146bf000 0x1000>;
+      ranges = <0x0 0x146bf000 0x1000>;
+      #address-cells = <1>;
+      #size-cells = <1>;
+
+      xbl@a94 {
+        compatible = "microsoft,sm8150-surface-duo-xbl";
+        reg = <0xa94 0x100>;
+      };
+    };
diff --git a/MAINTAINERS b/MAINTAINERS
index 13f9a84a617e..5d0ca2a98b57 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -12649,6 +12649,13 @@  F:	Documentation/driver-api/surface_aggregator/clients/dtx.rst
 F:	drivers/platform/surface/surface_dtx.c
 F:	include/uapi/linux/surface_aggregator/dtx.h
 
+MICROSOFT SURFACE DUO XBL DRIVER
+M:	Jarrett Schultz <jaschultz@microsoft.com>
+L:	linux-arm-msm@vger.kernel.org
+L:	platform-driver-x86@vger.kernel.org
+S:	Supported
+F:	Documentation/devicetree/bindings/platform/microsoft/surface-xbl.yaml
+
 MICROSOFT SURFACE GPE LID SUPPORT DRIVER
 M:	Maximilian Luz <luzmaximilian@gmail.com>
 L:	platform-driver-x86@vger.kernel.org