diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h
index 49aab9cf98d3471fab3c84bd82d27e30946b5443..19e8b7a2a5aaf99c76b584930de926ac1576a7f3 100644
--- a/Marlin/Marlin.h
+++ b/Marlin/Marlin.h
@@ -394,11 +394,6 @@ extern uint8_t active_extruder;
 
 void calculate_volumetric_multipliers();
 
-// Buzzer
-#if HAS_BUZZER && DISABLED(LCD_USE_I2C_BUZZER)
-  #include "buzzer.h"
-#endif
-
 /**
  * Blocking movement and shorthand functions
  */
diff --git a/Marlin/Marlin_main.cpp b/Marlin/Marlin_main.cpp
index 14843d4b02bf9f489b312675028644b956a55058..59866cb33eb1d3457bd297233284202f6130d838 100755
--- a/Marlin/Marlin_main.cpp
+++ b/Marlin/Marlin_main.cpp
@@ -33,20 +33,6 @@
 
 #include "Marlin.h"
 
-#if HAS_ABL
-  #include "vector_3.h"
-#endif
-
-#if ENABLED(AUTO_BED_LEVELING_LINEAR)
-  #include "qr_solve.h"
-#elif ENABLED(MESH_BED_LEVELING)
-  #include "mesh_bed_leveling.h"
-#endif
-
-#if ENABLED(BEZIER_CURVE_SUPPORT)
-  #include "planner_bezier.h"
-#endif
-
 #include "ultralcd.h"
 #include "planner.h"
 #include "stepper.h"
@@ -61,6 +47,23 @@
 #include "duration_t.h"
 #include "types.h"
 
+#if HAS_ABL
+  #include "vector_3.h"
+  #if ENABLED(AUTO_BED_LEVELING_LINEAR)
+    #include "qr_solve.h"
+  #endif
+#elif ENABLED(MESH_BED_LEVELING)
+  #include "mesh_bed_leveling.h"
+#endif
+
+#if ENABLED(BEZIER_CURVE_SUPPORT)
+  #include "planner_bezier.h"
+#endif
+
+#if HAS_BUZZER && DISABLED(LCD_USE_I2C_BUZZER)
+  #include "buzzer.h"
+#endif
+
 #if ENABLED(USE_WATCHDOG)
   #include "watchdog.h"
 #endif
@@ -4560,7 +4563,9 @@ inline void gcode_M31() {
   SERIAL_ECHO_START;
   SERIAL_ECHOLNPAIR("Print time: ", buffer);
 
-  thermalManager.autotempShutdown();
+  #if ENABLED(AUTOTEMP)
+    thermalManager.autotempShutdown();
+  #endif
 }
 
 #if ENABLED(SDSUPPORT)
diff --git a/Marlin/cardreader.cpp b/Marlin/cardreader.cpp
index 319665aa6566f60da81ca5f3eb41fafe0413f1b9..67dd5371e597fafdf7d3843a98f1eecf669092ce 100644
--- a/Marlin/cardreader.cpp
+++ b/Marlin/cardreader.cpp
@@ -24,7 +24,6 @@
 
 #include "ultralcd.h"
 #include "stepper.h"
-#include "temperature.h"
 #include "language.h"
 
 #include "Marlin.h"
diff --git a/Marlin/planner.h b/Marlin/planner.h
index 785c6ac512ac3ded5917f806ec8e7944085e3d9e..d5746fa7545a10f2740b20c75de862a1f7b8b077 100644
--- a/Marlin/planner.h
+++ b/Marlin/planner.h
@@ -34,21 +34,12 @@
 
 #include "types.h"
 #include "enum.h"
-#include "MarlinConfig.h"
+#include "Marlin.h"
 
 #if HAS_ABL
   #include "vector_3.h"
 #endif
 
-class Planner;
-extern Planner planner;
-
-#if IS_KINEMATIC
-  // for inline buffer_line_kinematic
-  extern float delta[ABC];
-  void inverse_kinematics(const float logical[XYZ]);
-#endif
-
 /**
  * struct block_t
  *
@@ -402,4 +393,6 @@ class Planner {
 
 };
 
+extern Planner planner;
+
 #endif // PLANNER_H
diff --git a/Marlin/temperature.h b/Marlin/temperature.h
index 974e05d5e7dbb3f07011ad1ad7e886f7e44f1326..072364e2e3b5e5dcdd4d3e5f90f12db90aa7d2b8 100644
--- a/Marlin/temperature.h
+++ b/Marlin/temperature.h
@@ -372,15 +372,15 @@ class Temperature {
      */
     static void updatePID();
 
-    static void autotempShutdown() {
-      #if ENABLED(AUTOTEMP)
+    #if ENABLED(AUTOTEMP)
+      static void autotempShutdown() {
         if (planner.autotemp_enabled) {
           planner.autotemp_enabled = false;
           if (degTargetHotend(EXTRUDER_IDX) > planner.autotemp_min)
             setTargetHotend(0, EXTRUDER_IDX);
         }
-      #endif
-    }
+      }
+    #endif
 
     #if ENABLED(BABYSTEPPING)
 
diff --git a/Marlin/ultralcd.cpp b/Marlin/ultralcd.cpp
index b0b77e657d727496375cb576060e4747a91e5439..458e3a3f00e0a303895a0a24a68f988ee71d5ed7 100755
--- a/Marlin/ultralcd.cpp
+++ b/Marlin/ultralcd.cpp
@@ -30,6 +30,10 @@
 #include "configuration_store.h"
 #include "utility.h"
 
+#if HAS_BUZZER && DISABLED(LCD_USE_I2C_BUZZER)
+  #include "buzzer.h"
+#endif
+
 #if ENABLED(BLTOUCH)
   #include "endstops.h"
 #endif
@@ -581,7 +585,9 @@ void kill_screen(const char* lcd_msg) {
       clear_command_queue();
       quickstop_stepper();
       print_job_timer.stop();
-      thermalManager.autotempShutdown();
+      #if ENABLED(AUTOTEMP)
+        thermalManager.autotempShutdown();
+      #endif
       wait_for_heatup = false;
       lcd_setstatus(MSG_PRINT_ABORTED, true);
     }