]> Repositories - Adafruit_Blinka-hackapet.git/commitdiff
microcontroller/alias: Add new script for link aliased devices.
authorSteve Jeong <steve@how2flow.net>
Thu, 7 Dec 2023 02:53:15 +0000 (02:53 +0000)
committerSteve Jeong <steve@how2flow.net>
Thu, 7 Dec 2023 04:41:27 +0000 (04:41 +0000)
Signed-off-by: Steve Jeong <steve@how2flow.net>
src/adafruit_blinka/microcontroller/alias.py [new file with mode: 0644]

diff --git a/src/adafruit_blinka/microcontroller/alias.py b/src/adafruit_blinka/microcontroller/alias.py
new file mode 100644 (file)
index 0000000..7347242
--- /dev/null
@@ -0,0 +1,20 @@
+# SPDX-FileCopyrightText: 2023 Steve Jeong for Hardkernel
+#
+# SPDX-License-Identifier: MIT
+
+from typing import Optional
+import os
+import re
+
+def get_dts_alias(device: str) -> Optional[str]:
+    """Get the Device Tree Alias"""
+    uevent_path = "/sys/bus/platform/devices/" + device + "/uevent"
+    if os.path.exists(uevent_path):
+        with open(uevent_path, "r", encoding="utf-8") as fd:
+            pattern = r"^OF_ALIAS_0=(.*)$"
+            uevent = fd.read().split("\n")
+            for line in uevent:
+                match = re.search(pattern, line)
+                if match:
+                    return match.group(1).upper()
+    return None