summaryrefslogtreecommitdiffstats
path: root/tmk_core/common/chibios/eeprom_stm32.c
diff options
context:
space:
mode:
authorTakuya Urakawa <urkwtky@gmail.com>2018-10-19 06:33:23 +0200
committerJack Humbert <jack.humb@gmail.com>2018-10-19 06:33:23 +0200
commitf4094930a393ec3dc597e06e95cd3365e3f8cb97 (patch)
tree33d53e5b898bf645965dfc99f842cf1998b857d4 /tmk_core/common/chibios/eeprom_stm32.c
parent8efe8b498d344928fb55ea78a289d9eb32145e48 (diff)
downloadqmk_firmware-f4094930a393ec3dc597e06e95cd3365e3f8cb97.tar.gz
qmk_firmware-f4094930a393ec3dc597e06e95cd3365e3f8cb97.tar.xz
stm32f1xx EEPROM emulation (#3914)
* * Add stm32f1xx EEPROM emulation * Fix eeprom update compare bug Squashed commit of the following: commit b8f248ae08cec0cd81ecbb8854d9b39221d4d573 Author: hsgw <urkwtky@gmail.com> Date: Sat Sep 15 19:13:48 2018 +0900 fix EEPROM_update wrong compare commit d4ed4e6ea864e967a3e17f7edee4b0c3b4a25541 Author: hsgw <urkwtky@gmail.com> Date: Sat Sep 15 17:43:47 2018 +0900 eeprom fix initialization define commit b61aa7c04d70c64df3416d63e5da08b73b6053af Author: hsgw <urkwtky@gmail.com> Date: Sat Sep 15 16:33:40 2018 +0900 maybe working * Fix FLASH_KEY defines
Diffstat (limited to 'tmk_core/common/chibios/eeprom_stm32.c')
-rwxr-xr-xtmk_core/common/chibios/eeprom_stm32.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/tmk_core/common/chibios/eeprom_stm32.c b/tmk_core/common/chibios/eeprom_stm32.c
index 3c1945122..a86998550 100755
--- a/tmk_core/common/chibios/eeprom_stm32.c
+++ b/tmk_core/common/chibios/eeprom_stm32.c
@@ -10,7 +10,7 @@
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE.
*
- * This files are free to use from https://github.com/rogerclarkmelbourne/Arduino_STM32 and
+ * This files are free to use from https://github.com/rogerclarkmelbourne/Arduino_STM32 and
* https://github.com/leaflabs/libmaple
*
* Modifications for QMK and STM32F303 by Yiancar
@@ -274,7 +274,7 @@ uint16_t EE_VerifyPageFullWriteVariable(uint16_t Address, uint16_t Data)
// Check each active page address starting from begining
for (idx = pageBase + 4; idx < pageEnd; idx += 4)
- if ((*(__IO uint32_t*)idx) == 0xFFFFFFFF) // Verify if element
+ if ((*(__IO uint32_t*)idx) == 0xFFFFFFFF) // Verify if element
{ // contents are 0xFFFFFFFF
FlashStatus = FLASH_ProgramHalfWord(idx, Data); // Set variable data
if (FlashStatus != FLASH_COMPLETE)
@@ -517,7 +517,7 @@ uint16_t EEPROM_read(uint16_t Address, uint16_t *Data)
// Get the valid Page end Address
pageEnd = pageBase + ((uint32_t)(PageSize - 2));
-
+
// Check each active page address starting from end
for (pageBase += 6; pageEnd >= pageBase; pageEnd -= 4)
if ((*(__IO uint16_t*)pageEnd) == Address) // Compare the read address with the virtual address
@@ -574,7 +574,7 @@ uint16_t EEPROM_update(uint16_t Address, uint16_t Data)
{
uint16_t temp;
EEPROM_read(Address, &temp);
- if (Address == Data)
+ if (temp == Data)
return EEPROM_SAME_VALUE;
else
return EEPROM_write(Address, Data);