From 3a7534250885efb8f5060ae2879833e885b445e0 Mon Sep 17 00:00:00 2001
From: Ludy <Ludy87@users.noreply.github.com>
Date: Sun, 7 Jul 2019 04:25:48 +0200
Subject: [PATCH] Allow override of TMC_SW_* pins (#14528)

---
 Marlin/src/pins/pins_ARCHIM2.h               | 12 +++++++++---
 Marlin/src/pins/pins_BIGTREE_SKR_MINI_V1_1.h | 12 +++++++++---
 Marlin/src/pins/pins_BIGTREE_SKR_V1.3.h      | 12 +++++++++---
 Marlin/src/pins/pins_BIQU_B300_V1.0.h        | 12 +++++++++---
 Marlin/src/pins/pins_MKS_SGEN_L.h            | 12 +++++++++---
 Marlin/src/pins/pins_RAMPS_RE_ARM.h          | 12 +++++++++---
 6 files changed, 54 insertions(+), 18 deletions(-)

diff --git a/Marlin/src/pins/pins_ARCHIM2.h b/Marlin/src/pins/pins_ARCHIM2.h
index 69ea78715d..95200adb34 100644
--- a/Marlin/src/pins/pins_ARCHIM2.h
+++ b/Marlin/src/pins/pins_ARCHIM2.h
@@ -149,9 +149,15 @@
 // Required for the Archim2 board.
 //
 #if ENABLED(TMC_USE_SW_SPI)
-  #define TMC_SW_MOSI      28   // PD3
-  #define TMC_SW_MISO      26   // PD1
-  #define TMC_SW_SCK       27   // PD2
+  #ifndef TMC_SW_MOSI
+    #define TMC_SW_MOSI    28   // PD3
+  #endif
+  #ifndef TMC_SW_MISO
+    #define TMC_SW_MISO    26   // PD1
+  #endif
+  #ifndef TMC_SW_SCK
+    #define TMC_SW_SCK     27   // PD2
+  #endif
 #endif
 
 //
diff --git a/Marlin/src/pins/pins_BIGTREE_SKR_MINI_V1_1.h b/Marlin/src/pins/pins_BIGTREE_SKR_MINI_V1_1.h
index 35544950e1..19c7b4b67b 100644
--- a/Marlin/src/pins/pins_BIGTREE_SKR_MINI_V1_1.h
+++ b/Marlin/src/pins/pins_BIGTREE_SKR_MINI_V1_1.h
@@ -66,9 +66,15 @@
 #define E0_ENABLE_PIN      PC4
 
 #if ENABLED(TMC_USE_SW_SPI)
-  #define TMC_SW_SCK       PB3
-  #define TMC_SW_MISO      PB4
-  #define TMC_SW_MOSI      PB5
+  #ifndef TMC_SW_MOSI
+    #define TMC_SW_SCK     PB3
+  #endif
+  #ifndef TMC_SW_MISO
+    #define TMC_SW_MISO    PB4
+  #endif
+  #ifndef TMC_SW_SCK
+    #define TMC_SW_MOSI    PB5
+  #endif
 #endif
 
 //
diff --git a/Marlin/src/pins/pins_BIGTREE_SKR_V1.3.h b/Marlin/src/pins/pins_BIGTREE_SKR_V1.3.h
index c6e64f1654..87617fbd83 100644
--- a/Marlin/src/pins/pins_BIGTREE_SKR_V1.3.h
+++ b/Marlin/src/pins/pins_BIGTREE_SKR_V1.3.h
@@ -103,9 +103,15 @@
 // Software SPI pins for TMC2130 stepper drivers
 //
 #if ENABLED(TMC_USE_SW_SPI)
-  #define TMC_SW_MOSI      P4_28
-  #define TMC_SW_MISO      P0_05
-  #define TMC_SW_SCK       P0_04
+  #ifndef TMC_SW_MOSI
+    #define TMC_SW_MOSI    P4_28
+  #endif
+  #ifndef TMC_SW_MISO
+    #define TMC_SW_MISO    P0_05
+  #endif
+  #ifndef TMC_SW_SCK
+    #define TMC_SW_SCK     P0_04
+  #endif
 #endif
 
 #if HAS_DRIVER(TMC2208) || HAS_DRIVER(TMC2209)
diff --git a/Marlin/src/pins/pins_BIQU_B300_V1.0.h b/Marlin/src/pins/pins_BIQU_B300_V1.0.h
index a05ebd99f0..426a20653d 100644
--- a/Marlin/src/pins/pins_BIQU_B300_V1.0.h
+++ b/Marlin/src/pins/pins_BIQU_B300_V1.0.h
@@ -83,9 +83,15 @@
 // Software SPI pins for TMC2130 stepper drivers
 //
 #if ENABLED(TMC_USE_SW_SPI)
-  #define TMC_SW_MOSI      P0_18   // ETH
-  #define TMC_SW_MISO      P0_17   // ETH
-  #define TMC_SW_SCK       P0_15   // ETH
+  #ifndef TMC_SW_MOSI
+    #define TMC_SW_MOSI    P0_18   // ETH
+  #endif
+  #ifndef TMC_SW_MISO
+    #define TMC_SW_MISO    P0_17   // ETH
+  #endif
+  #ifndef TMC_SW_SCK
+    #define TMC_SW_SCK     P0_15   // ETH
+  #endif
 #endif
 
 //
diff --git a/Marlin/src/pins/pins_MKS_SGEN_L.h b/Marlin/src/pins/pins_MKS_SGEN_L.h
index d0ff839a07..9d20eb3be9 100644
--- a/Marlin/src/pins/pins_MKS_SGEN_L.h
+++ b/Marlin/src/pins/pins_MKS_SGEN_L.h
@@ -97,9 +97,15 @@
 // Software SPI pins for TMC2130 stepper drivers
 //
 #if ENABLED(TMC_USE_SW_SPI)
-  #define TMC_SW_MOSI      P4_28
-  #define TMC_SW_MISO      P0_05
-  #define TMC_SW_SCK       P0_04
+  #ifndef TMC_SW_MOSI
+    #define TMC_SW_MOSI    P4_28
+  #endif
+  #ifndef TMC_SW_MISO
+    #define TMC_SW_MISO    P0_05
+  #endif
+  #ifndef TMC_SW_SCK
+    #define TMC_SW_SCK     P0_04
+  #endif
 #endif
 
 #if HAS_DRIVER(TMC2208) || HAS_DRIVER(TMC2209)
diff --git a/Marlin/src/pins/pins_RAMPS_RE_ARM.h b/Marlin/src/pins/pins_RAMPS_RE_ARM.h
index 4181e3b64e..5ee4e1ad6f 100644
--- a/Marlin/src/pins/pins_RAMPS_RE_ARM.h
+++ b/Marlin/src/pins/pins_RAMPS_RE_ARM.h
@@ -102,9 +102,15 @@
 // Software SPI pins for TMC2130 stepper drivers
 //
 #if ENABLED(TMC_USE_SW_SPI)
-  #define TMC_SW_MOSI      P1_00   // ETH
-  #define TMC_SW_MISO      P1_08   // ETH
-  #define TMC_SW_SCK       P1_09   // ETH
+  #ifndef TMC_SW_MOSI
+    #define TMC_SW_MOSI    P1_00   // ETH
+  #endif
+  #ifndef TMC_SW_MISO
+    #define TMC_SW_MISO    P1_08   // ETH
+  #endif
+  #ifndef TMC_SW_SCK
+    #define TMC_SW_SCK     P1_09   // ETH
+  #endif
 #endif
 
 #if HAS_DRIVER(TMC2208) || HAS_DRIVER(TMC2209)
-- 
GitLab