Explorar el Código

Remove attribute packed. It is not needed on 8-bit platform. Change of platform would be detected by static_assert (sizeof(M500_conf) == 188).

Marek Bel hace 6 años
padre
commit
4151e19781
Se han modificado 2 ficheros con 4 adiciones y 2 borrados
  1. 3 1
      Firmware/ConfigurationStore.cpp
  2. 1 1
      Firmware/ConfigurationStore.h

+ 3 - 1
Firmware/ConfigurationStore.cpp

@@ -181,7 +181,9 @@ static_assert (false, "zprobe_zoffset was not initialized in printers in field t
 #endif
 
 static_assert (sizeof(M500_conf) == 188, "sizeof(M500_conf) has changed, ensure that EEPROM_VERSION has been incremented, "
-        "or if you added members in the end of struct, ensure that historically uninitialized values will be initialized");
+        "or if you added members in the end of struct, ensure that historically uninitialized values will be initialized."
+        "If this is caused by change to more then 8bit processor, decide whether make this struct packed to save EEPROM,"
+        "leave as it is to keep fast code, or reorder struct members to pack more tightly.");
 
 static const M500_conf default_conf PROGMEM =
 {

+ 1 - 1
Firmware/ConfigurationStore.h

@@ -35,7 +35,7 @@ typedef struct
     float filament_size[1]; //!< cross-sectional area of filament (in millimeters), typically around 1.75 or 2.85, 0 disables the volumetric calculations for the extruder.
     float max_feedrate_silent[4]; //!< max speeds for silent mode
     unsigned long max_acceleration_units_per_sq_second_silent[4];
-} __attribute__ ((packed)) M500_conf;
+} M500_conf;
 
 extern M500_conf cs;