[1/2] dt-bindings: mtd: partitions: support marking root device partition

Message ID 20221019114855.31639-1-zajec5@gmail.com
State New
Headers
Series [1/2] dt-bindings: mtd: partitions: support marking root device partition |

Commit Message

Rafał Miłecki Oct. 19, 2022, 11:48 a.m. UTC
  From: Rafał Miłecki <rafal@milecki.pl>

Linux needs to know what to use as root device. On embedded devices with
flash the only common way to specify that is cmdline & root= parameter.

That solution works with U-Boot which is Linux & cmdline aware but isn't
available with all market bootloaders. Also that method is fragile:
1. Requires specific probing order on multi-flash devices
2. Uses hardcoded partitions indexes

A lot of devices use different partitioning methods. It may be
"fixed-partitions" or some dynamic partitioning (e.g. based on parts
table). For such cases allow "linux,root-device" property to mark
correct flash partition.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
---
 .../devicetree/bindings/mtd/partitions/fixed-partitions.yaml  | 1 +
 .../devicetree/bindings/mtd/partitions/partition.yaml         | 4 ++++
 2 files changed, 5 insertions(+)
  

Patch

diff --git a/Documentation/devicetree/bindings/mtd/partitions/fixed-partitions.yaml b/Documentation/devicetree/bindings/mtd/partitions/fixed-partitions.yaml
index ad3ccd250802..e627085df4fc 100644
--- a/Documentation/devicetree/bindings/mtd/partitions/fixed-partitions.yaml
+++ b/Documentation/devicetree/bindings/mtd/partitions/fixed-partitions.yaml
@@ -84,6 +84,7 @@  examples:
         partition@0 {
             label = "filesystem";
             reg = <0x00000000 0x1 0x00000000>;
+            linux,root-device;
         };
     };
 
diff --git a/Documentation/devicetree/bindings/mtd/partitions/partition.yaml b/Documentation/devicetree/bindings/mtd/partitions/partition.yaml
index f1a02d840b12..671906acf1bd 100644
--- a/Documentation/devicetree/bindings/mtd/partitions/partition.yaml
+++ b/Documentation/devicetree/bindings/mtd/partitions/partition.yaml
@@ -52,6 +52,10 @@  properties:
       immune to paired-pages corruptions
     type: boolean
 
+  linux,root-device:
+    description: Marks partition that is a root device with filesystem to mount
+      and boot user space from
+
 if:
   not:
     required: [ reg ]