aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFlorian Eckert <fe@dev.tdt.de>2020-03-27 16:23:14 +0100
committerHauke Mehrtens <hauke@hauke-m.de>2020-06-26 20:54:53 +0200
commit5596452cd4c48e806d7060badb1a106102af57d6 (patch)
tree0dae5470e01948941b7c6d1517b6b28d0ed47f23
parentf3c5c09e5ad6671519c6a3b29f9c6adb7fff66cb (diff)
downloadupstream-5596452cd4c48e806d7060badb1a106102af57d6.tar.gz
upstream-5596452cd4c48e806d7060badb1a106102af57d6.tar.bz2
upstream-5596452cd4c48e806d7060badb1a106102af57d6.zip
target/hack-5.4: platform/x86/pcengines: revert led simswich compromise
With this change the LED subsystem is abused in the kernel to switch the simswap. This change will be reverted, so we could use again the gpio subsystem. Signed-off-by: Florian Eckert <fe@dev.tdt.de>
-rw-r--r--target/linux/generic/hack-5.4/991-platform-x86-pcengines-apuv2-revert-simswitch.patch56
1 files changed, 56 insertions, 0 deletions
diff --git a/target/linux/generic/hack-5.4/991-platform-x86-pcengines-apuv2-revert-simswitch.patch b/target/linux/generic/hack-5.4/991-platform-x86-pcengines-apuv2-revert-simswitch.patch
new file mode 100644
index 0000000000..84a4191157
--- /dev/null
+++ b/target/linux/generic/hack-5.4/991-platform-x86-pcengines-apuv2-revert-simswitch.patch
@@ -0,0 +1,56 @@
+From 8c9254d41881c81bea610193c6ac59c8cb8b79fe Mon Sep 17 00:00:00 2001
+From: Florian Eckert <fe@dev.tdt.de>
+Date: Fri, 27 Mar 2020 16:11:55 +0100
+Subject: [PATCH] Revert "platform/x86: pcengines-apuv2: wire up simswitch gpio
+ as led"
+
+This reverts commit 5037d4ddda31c2dbbb018109655f61054b1756dc.
+
+Commit message from linux:
+The APU3+ boards have two SIM sockets, while only one of them
+can be routed to the mpcie slots at a time. Selection is done
+via simswap gpio.
+
+We currently don't have a fitting subsystem for those cases yet,
+so just wire it up to a LED for the time being. While this isn't
+really semantically correct, it's a good compromise.
+
+Explanation why this does not work:
+This change connects the simswap to the LED subsystem of the kernel.
+From my point of view, it's nonsense. If we do it this way, then this
+can be switched relatively easily via the LED subsystem (trigger:
+none/default-on) and that is dangerous! If this is used, it would be
+unfavorable, since there is also another trigger (trigger: heartbeat/netdev).
+This LED also appears in the LuCI and can therefore be switched by the user.
+
+Therefore, this simswap GPIO should remain in the GPIO
+subsystem and be switched via it and not be connected to the LED
+subsystem. To avoid the problems mentioned above. The LED subsystem is
+not made for this and it is not a good compromise, but rather dangerous.
+
+Signed-off-by: Florian Eckert <fe@dev.tdt.de>
+---
+ drivers/platform/x86/pcengines-apuv2.c | 5 +----
+ 1 file changed, 1 insertion(+), 4 deletions(-)
+
+--- a/drivers/platform/x86/pcengines-apuv2.c
++++ b/drivers/platform/x86/pcengines-apuv2.c
+@@ -77,8 +77,7 @@ static const struct amd_fch_gpio_pdata b
+ static const struct gpio_led apu2_leds[] = {
+ { .name = "apu:green:1" },
+ { .name = "apu:green:2" },
+- { .name = "apu:green:3" },
+- { .name = "apu:simswap" },
++ { .name = "apu:green:3" }
+ };
+
+ static const struct gpio_led_platform_data apu2_leds_pdata = {
+@@ -95,8 +94,6 @@ static struct gpiod_lookup_table gpios_l
+ NULL, 1, GPIO_ACTIVE_LOW),
+ GPIO_LOOKUP_IDX(AMD_FCH_GPIO_DRIVER_NAME, APU2_GPIO_LINE_LED3,
+ NULL, 2, GPIO_ACTIVE_LOW),
+- GPIO_LOOKUP_IDX(AMD_FCH_GPIO_DRIVER_NAME, APU2_GPIO_LINE_SIMSWAP,
+- NULL, 3, GPIO_ACTIVE_LOW),
+ }
+ };
+