[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250601153022.2027919-2-abd.masalkhi@gmail.com>
Date: Sun, 1 Jun 2025 15:30:19 +0000
From: Abd-Alrhman Masalkhi <abd.masalkhi@...il.com>
To: linux-kernel@...r.kernel.org,
devicetree@...r.kernel.org
Cc: arnd@...db.de,
gregkh@...uxfoundation.org,
robh@...nel.org,
krzk+dt@...nel.org,
conor+dt@...nel.org,
abd.masalkhi@...il.com
Subject: [PATCH v2 1/3] dt-bindings: eeprom: Add ST M24LR control interface
Add support for the control interface of STMicroelectronics M24LR
RFID/NFC EEPROM chips.
Signed-off-by: Abd-Alrhman Masalkhi <abd.masalkhi@...il.com>
---
.../devicetree/bindings/eeprom/st,m24lr.yaml | 72 +++++++++++++++++++
1 file changed, 72 insertions(+)
create mode 100644 Documentation/devicetree/bindings/eeprom/st,m24lr.yaml
diff --git a/Documentation/devicetree/bindings/eeprom/st,m24lr.yaml b/Documentation/devicetree/bindings/eeprom/st,m24lr.yaml
new file mode 100644
index 000000000000..6d72325865d6
--- /dev/null
+++ b/Documentation/devicetree/bindings/eeprom/st,m24lr.yaml
@@ -0,0 +1,72 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/eeprom/st,m24lr.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: STMicroelectronics M24LR Series NFC/RFID EEPROM Control Interface
+
+maintainers:
+ - Abd-Alrhman Masalkhi <abd.masalkhi@...il.com>
+
+description: |
+ STMicroelectronics M24LR series are dual-interface (RF + I2C)
+ EEPROM chips. These devices support I2C-based access to both
+ memory and a system area that controls authentication and configuration.
+ They expose two I2C addresses: one for EEPROM memory and one for the
+ system control area (e.g., UID, password management).
+
+allOf:
+ - $ref: ../i2c/i2c-mux.yaml#
+
+properties:
+ compatible:
+ enum:
+ - st,m24lr04e-r
+ - st,m24lr16e-r
+ - st,m24lr64e-r
+
+ reg:
+ maxItems: 1
+
+ pagesize:
+ enum: [1, 4, 8, 16, 32, 64, 128, 256]
+ default: 1
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description: >
+ Maximum number of bytes that can be written in one I2C transaction.
+ the default is 1.
+
+required:
+ - compatible
+ - reg
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ i2c {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ i2cmux@57 {
+ compatible = "st,m24lr04e-r";
+ reg = <0x57>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ i2c@0 {
+ reg = <0x0>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ eeprom@53 {
+ compatible = "atmel,24c04";
+ reg = <0x53>;
+ address-width = <16>;
+ pagesize = <4>;
+ };
+ };
+ };
+ };
+...
--
2.43.0
Powered by blists - more mailing lists