overlays: Add a sample hat_map
authorPhil Elwell <phil@raspberrypi.com>
Tue, 19 Sep 2023 19:31:34 +0000 (20:31 +0100)
committerDom Cobley <popcornmix@gmail.com>
Mon, 19 Feb 2024 11:33:40 +0000 (11:33 +0000)
The HAT map is way of associating named overlays with HATs whose
EEPROMs were programmed with the contents of the overlay.
Unfortunately, change in the DT and kernel drivers has meant that some
of these embedded overlays no longer function, or even don't apply.

The HAT map is a mapping from HAT UUIDs to overlay names. If a HAT with
a listed UUID is detected, the embedded overlay is ignored and the
overlay named in the mapping is loaded in its place.

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
arch/arm/boot/dts/overlays/Makefile
arch/arm/boot/dts/overlays/hat_map.dts [new file with mode: 0644]

index b4fbefe..09713ac 100644 (file)
@@ -1,6 +1,6 @@
 # Overlays for the Raspberry Pi platform
 
-dtb-$(CONFIG_ARCH_BCM2835) += overlay_map.dtb
+dtb-$(CONFIG_ARCH_BCM2835) += overlay_map.dtb hat_map.dtb
 
 dtbo-$(CONFIG_ARCH_BCM2835) += \
        act-led.dtbo \
diff --git a/arch/arm/boot/dts/overlays/hat_map.dts b/arch/arm/boot/dts/overlays/hat_map.dts
new file mode 100644 (file)
index 0000000..bf3a140
--- /dev/null
@@ -0,0 +1,13 @@
+/dts-v1/;
+
+/ {
+       iqaudio-pi-codecplus {
+               uuid = [ dc1c9594 c1ab 4c6c acda a88dc59a3c5b ];
+               overlay = "iqaudio-codec";
+       };
+
+       recalbox-rgbdual {
+               uuid = [ 1c955808 681f 4bbc a2ef b7ea47cd388e ];
+               overlay = "recalboxrgbdual";
+       };
+};