Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
51 changes: 0 additions & 51 deletions Marlin/src/HAL/HAL_AVR/persistent_store_impl.cpp

This file was deleted.

3 changes: 1 addition & 2 deletions Marlin/src/HAL/HAL_DUE/Servo_Due.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@
#if HAS_SERVOS

#include <Arduino.h>
#include "../servo.h"
#include "../shared/servo.h"
#include "../shared/servo_private.h"

static volatile int8_t Channel[_Nbr_16timers]; // counter for the servo being pulsed for each timer (or -1 if refresh interval)
Expand Down Expand Up @@ -158,4 +158,3 @@ void finISR(timer16_Sequence_t timer) {
#endif // HAS_SERVOS

#endif // ARDUINO_ARCH_SAM

5 changes: 5 additions & 0 deletions Marlin/src/HAL/HAL_DUE/persistent_store_eeprom.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,13 @@

#if ENABLED(EEPROM_SETTINGS)

#include "../../inc/MarlinConfig.h"
#include "../shared/persistent_store_api.h"

#if DISABLED(I2C_EEPROM) && DISABLED(SPI_EEPROM)
#define E2END 0xFFF // Default to Flash emulated EEPROM size (EepromEmulation_Due.cpp)
#endif

extern void eeprom_flush(void);

bool PersistentStore::access_start() { return true; }
Expand Down
59 changes: 0 additions & 59 deletions Marlin/src/HAL/HAL_DUE/persistent_store_impl.cpp

This file was deleted.

13 changes: 6 additions & 7 deletions Marlin/src/HAL/HAL_LPC1768/persistent_store_flash.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@
#if ENABLED(EEPROM_SETTINGS)

#include "persistent_store_api.h"
#include "../../inc/MarlinConfig.h"

#if ENABLED(FLASH_EEPROM)

Expand All @@ -50,16 +51,12 @@ extern "C" {

#define SECTOR_START(sector) ((sector < 16) ? (sector * 0x1000) : ((sector - 14) * 0x8000))
#define EEPROM_SECTOR 29
#define EEPROM_SIZE (E2END+1)
#define EEPROM_SIZE (4096)
#define SECTOR_SIZE (32768)
#define EEPROM_SLOTS (SECTOR_SIZE/EEPROM_SIZE)
#define EEPROM_ERASE (0xff)
#define SLOT_ADDRESS(sector, slot) (((uint8_t *)SECTOR_START(sector)) + slot * EEPROM_SIZE)

#if EEPROM_SIZE != 4096
#error "EEPROM_SIZE must match flash write size"
#endif

static uint8_t ram_eeprom[EEPROM_SIZE];
static bool eeprom_dirty = false;
static int current_slot = 0;
Expand Down Expand Up @@ -118,22 +115,24 @@ bool PersistentStore::access_finish() {
return true;
}

bool PersistentStore::write_data(int &pos, const uint8_t *value, uint16_t size, uint16_t *crc) {
bool PersistentStore::write_data(int &pos, const uint8_t *value, size_t size, uint16_t *crc) {
for (int i = 0; i < size; i++) ram_eeprom[pos + i] = value[i];
eeprom_dirty = true;
crc16(crc, value, size);
pos += size;
return false; // return true for any error
}

bool PersistentStore::read_data(int &pos, uint8_t* value, uint16_t size, uint16_t *crc, const bool writing/*=true*/) {
bool PersistentStore::read_data(int &pos, uint8_t* value, size_t size, uint16_t *crc, const bool writing/*=true*/) {
const uint8_t * const buff = writing ? &value[0] : &ram_eeprom[pos];
if (writing) for (int i = 0; i < size; i++) value[i] = ram_eeprom[pos + i];
crc16(crc, buff, size);
pos += size;
return false; // return true for any error
}

size_t PersistentStore::capacity() { return EEPROM_SIZE; }

#endif // FLASH_EEPROM
#endif // EEPROM_SETTINGS
#endif // TARGET_LPC1768
7 changes: 4 additions & 3 deletions Marlin/src/HAL/HAL_LPC1768/persistent_store_sdcard.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@

#if ENABLED(EEPROM_SETTINGS)

#include "../../inc/MarlinConfig.h"
#include "persistent_store_api.h"

#if DISABLED(FLASH_EEPROM)
Expand Down Expand Up @@ -80,18 +81,18 @@ bool PersistentStore::access_finish() {
static void debug_rw(const bool write, int &pos, const uint8_t *value, const size_t size, const FRESULT s, const size_t total=0) {
const char * const rw_str = write ? PSTR("write") : PSTR("read");
SERIAL_PROTOCOLCHAR(' ');
serialprint_PGM(rw_str);
serialprintPGM(rw_str);
SERIAL_PROTOCOLPAIR("_data(", pos);
SERIAL_PROTOCOLPAIR(",", (int)value);
SERIAL_PROTOCOLPAIR(",", (int)size);
SERIAL_PROTOCOLLNPGM(", ...)");
if (total) {
SERIAL_PROTOCOLPGM(" f_");
serialprint_PGM(rw_str);
serialprintPGM(rw_str);
SERIAL_PROTOCOLPAIR("()=", (int)s);
SERIAL_PROTOCOLPAIR("\n size=", size);
SERIAL_PROTOCOLPGM("\n bytes_");
serialprint_PGM(write ? PSTR("written=") : PSTR("read="));
serialprintPGM(write ? PSTR("written=") : PSTR("read="));
SERIAL_PROTOCOLLN(total);
}
else
Expand Down
File renamed without changes.
3 changes: 1 addition & 2 deletions Marlin/src/HAL/shared/I2cEeprom.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@
// Includes
// --------------------------------------------------------------------------

#include HAL_PATH(., HAL.h)
#include HAL_PATH(.., HAL.h)
#include <Wire.h>

// --------------------------------------------------------------------------
Expand Down Expand Up @@ -157,4 +157,3 @@ void eeprom_read_block(void* pos, const void* eeprom_address, size_t n) {


#endif // ENABLED(I2C_EEPROM)

2 changes: 1 addition & 1 deletion Marlin/src/HAL/shared/SpiEeprom.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@

#if ENABLED(SPI_EEPROM)

#include HAL_PATH(., HAL.h)
#include HAL_PATH(.., HAL.h)

#define CMD_WREN 6 // WREN
#define CMD_READ 2 // WRITE
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,11 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
#include "../inc/MarlinConfigPre.h"
#include "../../inc/MarlinConfigPre.h"

#if ENABLED(EEPROM_SETTINGS)

#include "shared/persistent_store_api.h"
#include "persistent_store_api.h"
PersistentStore persistentStore;

#endif
2 changes: 1 addition & 1 deletion Marlin/src/inc/MarlinConfigPre.h
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
#ifndef _MARLIN_CONFIGPRE_H_
#define _MARLIN_CONFIGPRE_H_

#include "../HAL/shared/platforms.h"
#include "../HAL/platforms.h"
#include "../core/boards.h"
#include "../core/macros.h"
#include "../core/types.h"
Expand Down
4 changes: 2 additions & 2 deletions buildroot/share/tests/DUE_tests
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ set -e

restore_configs
opt_set MOTHERBOARD BOARD_RAMPS4DUE_EFB
opt_enable S_CURVE_ACCELERATION
opt_enable S_CURVE_ACCELERATION EEPROM_SETTINGS
opt_set E0_AUTO_FAN_PIN 8
opt_set EXTRUDER_AUTO_FAN_SPEED 100
exec_test $1 $2 "RAMPS4DUE_EFB S_CURVE_ACCELERATION"
exec_test $1 $2 "RAMPS4DUE_EFB S_CURVE_ACCELERATION EEPROM_SETTINGS"
4 changes: 2 additions & 2 deletions buildroot/share/tests/LPC1768_tests
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@ exec_test $1 $2 "VIKI2 and SDSUPPORT"

restore_configs
opt_set MOTHERBOARD BOARD_MKS_SBASE
opt_enable REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER SDSUPPORT
exec_test $1 $2 "MKS SBASE RRDFG SDSUPPORT"
opt_enable REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER SDSUPPORT EEPROM_SETTINGS
exec_test $1 $2 "MKS SBASE RRDFG SDSUPPORT EEPROM_SETTINGS"

#clean up
restore_configs