eeprom_custom.c-template (1856B)
1 /* Copyright 2019 Nick Brassel (tzarc) 2 * 3 * This program is free software: you can redistribute it and/or modify 4 * it under the terms of the GNU General Public License as published by 5 * the Free Software Foundation, either version 2 of the License, or 6 * (at your option) any later version. 7 * 8 * This program is distributed in the hope that it will be useful, 9 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 * GNU General Public License for more details. 12 * 13 * You should have received a copy of the GNU General Public License 14 * along with this program. If not, see <http://www.gnu.org/licenses/>. 15 */ 16 17 #include <stdint.h> 18 #include <string.h> 19 20 #include "eeprom_driver.h" 21 22 void eeprom_driver_init(void) { 23 /* Any initialisation code */ 24 } 25 26 void eeprom_driver_format(bool erase) { 27 /* If erase=false, then only do the absolute minimum initialisation necessary 28 to make sure that the eeprom driver is usable. It doesn't need to guarantee 29 that the content of the eeprom is reset to any particular value. For many 30 eeprom drivers this may be a no-op. 31 32 If erase=true, then in addition to making sure the eeprom driver is in a 33 usable state, also make sure that it is erased. 34 */ 35 } 36 37 void eeprom_driver_erase(void) { 38 /* Wipe out the EEPROM, setting values to zero */ 39 } 40 41 void eeprom_read_block(void *buf, const void *addr, size_t len) { 42 /* 43 Read a block of data: 44 buf: target buffer 45 addr: 0-based offset within the EEPROM 46 len: length to read 47 */ 48 } 49 50 void eeprom_write_block(const void *buf, void *addr, size_t len) { 51 /* 52 Write a block of data: 53 buf: target buffer 54 addr: 0-based offset within the EEPROM 55 len: length to write 56 */ 57 }