mirror of
https://github.com/archr-linux/Arch-R.git
synced 2026-07-12 18:19:42 -07:00
Add support for ROCKNIX overlays by binding to "rocknix,generic-dsi" compatible
This commit is contained in:
+31
@@ -0,0 +1,31 @@
|
||||
From: ArchR <noreply@archr-linux>
|
||||
Subject: [PATCH] archr-joypad: bind to "rocknix-joypad" compatible
|
||||
|
||||
ROCKNIX's overlay_server produces DTBOs whose MyMini joypad variant
|
||||
fragment sets:
|
||||
|
||||
compatible = "rocknix-joypad";
|
||||
|
||||
If a user flashes ArchR and applies a ROCKNIX-generated overlay, the
|
||||
joypad node fails to bind because ArchR's MyMini-style driver only
|
||||
registers under "archr-joypad" / "odroidgo3-joypad". The hardware is
|
||||
identical and the driver code is the same lineage, so we add the
|
||||
ROCKNIX compatible string to the match table — controls then come up
|
||||
with no further changes.
|
||||
|
||||
The arch-r.io overlay generator already emits both compatibles in a
|
||||
stringlist, so its DTBOs always worked on ArchR. This patch is for
|
||||
the third-party / ROCKNIX-site case where only "rocknix-joypad" is
|
||||
present.
|
||||
|
||||
--- a/archr-joypad.c
|
||||
+++ b/archr-joypad.c
|
||||
@@ -640,6 +640,7 @@
|
||||
static const struct of_device_id joypad_of_match[] = {
|
||||
{ .compatible = "archr-joypad", },
|
||||
{ .compatible = "odroidgo3-joypad", },
|
||||
+ { .compatible = "rocknix-joypad", },
|
||||
{},
|
||||
};
|
||||
|
||||
|
||||
@@ -669,6 +669,12 @@ static void generic_panel_remove(struct mipi_dsi_device *dsi)
|
||||
|
||||
static const struct of_device_id generic_panel_of_match[] = {
|
||||
{ .compatible = "archr,generic-dsi" },
|
||||
/* Also bind to overlays produced by ROCKNIX (overlay_server, nightly
|
||||
* builds, dtbo-overlay branch) so users can flash ArchR with a DTBO
|
||||
* generated upstream and have the panel come up. The init sequence
|
||||
* and panel_description format are identical between the two — only
|
||||
* the compatible string differs. */
|
||||
{ .compatible = "rocknix,generic-dsi" },
|
||||
{ /* sentinel */ }
|
||||
};
|
||||
MODULE_DEVICE_TABLE(of, generic_panel_of_match);
|
||||
|
||||
Reference in New Issue
Block a user