From a521b0edbb27c86b344e20768147a157c98a3668 Mon Sep 17 00:00:00 2001
From: Scott Lahteine <github@thinkyhead.com>
Date: Wed, 29 Apr 2020 16:20:07 -0500
Subject: [PATCH] Strip never-used eeprom functions
---
Marlin/src/HAL/shared/eeprom_if.h | 2 --
Marlin/src/HAL/shared/eeprom_if_i2c.cpp | 46 -------------------------
Marlin/src/HAL/shared/eeprom_if_spi.cpp | 40 ---------------------
3 files changed, 88 deletions(-)
diff --git a/Marlin/src/HAL/shared/eeprom_if.h b/Marlin/src/HAL/shared/eeprom_if.h
index e6e7046011..1a6b0c97fb 100644
--- a/Marlin/src/HAL/shared/eeprom_if.h
+++ b/Marlin/src/HAL/shared/eeprom_if.h
@@ -26,5 +26,3 @@
//
void eeprom_write_byte(uint8_t *pos, unsigned char value);
uint8_t eeprom_read_byte(uint8_t *pos);
-void eeprom_read_block(void *__dst, const void *__src, size_t __n);
-void eeprom_update_block(const void *__src, void *__dst, size_t __n);
diff --git a/Marlin/src/HAL/shared/eeprom_if_i2c.cpp b/Marlin/src/HAL/shared/eeprom_if_i2c.cpp
index a4ad9763ba..e2435a7122 100644
--- a/Marlin/src/HAL/shared/eeprom_if_i2c.cpp
+++ b/Marlin/src/HAL/shared/eeprom_if_i2c.cpp
@@ -68,37 +68,6 @@ void eeprom_write_byte(uint8_t *pos, unsigned char value) {
delay(EEPROM_WRITE_DELAY);
}
-// WARNING: address is a page address, 6-bit end will wrap around
-// also, data can be maximum of about 30 bytes, because the Wire library has a buffer of 32 bytes
-void eeprom_update_block(const void *pos, void *__dst, size_t n) {
- const unsigned eeprom_address = (unsigned)__dst;
-
- eeprom_init();
-
- Wire.beginTransmission(eeprom_device_address);
- Wire.write(int(eeprom_address >> 8)); // MSB
- Wire.write(int(eeprom_address & 0xFF)); // LSB
- Wire.endTransmission();
-
- uint8_t *ptr = (uint8_t*)pos;
- uint8_t flag = 0;
- Wire.requestFrom(eeprom_device_address, (byte)n);
- for (byte c = 0; c < n && Wire.available(); c++)
- flag |= Wire.read() ^ ptr[c];
-
- if (flag) {
- Wire.beginTransmission(eeprom_device_address);
- Wire.write(int(eeprom_address >> 8)); // MSB
- Wire.write(int(eeprom_address & 0xFF)); // LSB
- Wire.write((uint8_t*)pos, n);
- Wire.endTransmission();
-
- // wait for write cycle to complete
- // this could be done more efficiently with "acknowledge polling"
- delay(EEPROM_WRITE_DELAY);
- }
-}
-
uint8_t eeprom_read_byte(uint8_t *pos) {
const unsigned eeprom_address = (unsigned)pos;
@@ -110,19 +79,4 @@ uint8_t eeprom_read_byte(uint8_t *pos) {
return Wire.available() ? Wire.read() : 0xFF;
}
-// Don't read more than 30..32 bytes at a time!
-void eeprom_read_block(void* pos, const void *__dst, size_t n) {
- const unsigned eeprom_address = (unsigned)__dst;
-
- eeprom_init();
-
- Wire.beginTransmission(eeprom_device_address);
- Wire.write(int(eeprom_address >> 8)); // MSB
- Wire.write(int(eeprom_address & 0xFF)); // LSB
- Wire.endTransmission();
- Wire.requestFrom(eeprom_device_address, (byte)n);
- for (byte c = 0; c < n; c++ )
- if (Wire.available()) *((uint8_t*)pos + c) = Wire.read();
-}
-
#endif // USE_SHARED_EEPROM && I2C_EEPROM
diff --git a/Marlin/src/HAL/shared/eeprom_if_spi.cpp b/Marlin/src/HAL/shared/eeprom_if_spi.cpp
index 4c3a92e020..6a3c5cc059 100644
--- a/Marlin/src/HAL/shared/eeprom_if_spi.cpp
+++ b/Marlin/src/HAL/shared/eeprom_if_spi.cpp
@@ -58,24 +58,6 @@ uint8_t eeprom_read_byte(uint8_t* pos) {
return v;
}
-void eeprom_read_block(void* dest, const void* eeprom_address, size_t n) {
- uint8_t eeprom_temp[3];
-
- // set read location
- // begin transmission from device
- eeprom_temp[0] = CMD_READ;
- eeprom_temp[1] = ((unsigned)eeprom_address>>8) & 0xFF; // addr High
- eeprom_temp[2] = (unsigned)eeprom_address& 0xFF; // addr Low
- WRITE(SPI_EEPROM1_CS, HIGH);
- WRITE(SPI_EEPROM1_CS, LOW);
- spiSend(SPI_CHAN_EEPROM1, eeprom_temp, 3);
-
- uint8_t *p_dest = (uint8_t *)dest;
- while (n--)
- *p_dest++ = spiRec(SPI_CHAN_EEPROM1);
- WRITE(SPI_EEPROM1_CS, HIGH);
-}
-
void eeprom_write_byte(uint8_t* pos, uint8_t value) {
uint8_t eeprom_temp[3];
@@ -98,26 +80,4 @@ void eeprom_write_byte(uint8_t* pos, uint8_t value) {
delay(EEPROM_WRITE_DELAY); // wait for page write to complete
}
-void eeprom_update_block(const void* src, void* eeprom_address, size_t n) {
- uint8_t eeprom_temp[3];
-
- /*write enable*/
- eeprom_temp[0] = CMD_WREN;
- WRITE(SPI_EEPROM1_CS, LOW);
- spiSend(SPI_CHAN_EEPROM1, eeprom_temp, 1);
- WRITE(SPI_EEPROM1_CS, HIGH);
- delay(1);
-
- /*write addr*/
- eeprom_temp[0] = CMD_WRITE;
- eeprom_temp[1] = ((unsigned)eeprom_address>>8) & 0xFF; //addr High
- eeprom_temp[2] = (unsigned)eeprom_address & 0xFF; //addr Low
- WRITE(SPI_EEPROM1_CS, LOW);
- spiSend(SPI_CHAN_EEPROM1, eeprom_temp, 3);
-
- spiSend(SPI_CHAN_EEPROM1, (const uint8_t*)src, n);
- WRITE(SPI_EEPROM1_CS, HIGH);
- delay(EEPROM_WRITE_DELAY); // wait for page write to complete
-}
-
#endif // USE_SHARED_EEPROM && I2C_EEPROM
--
GitLab