From 3ecea173ea0fc5641110daed50fca6d95312e66b Mon Sep 17 00:00:00 2001 From: Hauke Petersen <hauke.petersen@fu-berlin.de> Date: Tue, 7 Mar 2017 11:42:39 +0100 Subject: [PATCH] cpu/msp430|cc430: removed old flashrom driver --- cpu/cc430/flashrom.c | 74 ------------------------- cpu/msp430fxyz/flashrom.c | 110 -------------------------------------- 2 files changed, 184 deletions(-) delete mode 100644 cpu/cc430/flashrom.c delete mode 100644 cpu/msp430fxyz/flashrom.c diff --git a/cpu/cc430/flashrom.c b/cpu/cc430/flashrom.c deleted file mode 100644 index 9f65415de1..0000000000 --- a/cpu/cc430/flashrom.c +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Copyright (C) 2014 INRIA - * - * This file is subject to the terms and conditions of the GNU Lesser - * General Public License v2.1. See the file LICENSE in the top level - * directory for more details. - */ - -/** - * @ingroup cc430 - * @{ - */ - -/** - * @file - * @brief cc430 flashrom driver - * - * @author Kévin Roussel <Kevin.Roussel@inria.fr> - */ - -#include <stddef.h> -#include <stdint.h> -#include "cpu.h" -#include "irq.h" - -static inline uint8_t prepare(void); -static inline void finish(uint8_t istate); -static inline void busy_wait(void); - -/** - * @TODO implement this function - */ -uint8_t flashrom_erase(uint8_t *addr) -{ - (void) addr; - - return 0; -} - -/** - * @TODO implement this function - */ -uint8_t flashrom_write(uint8_t *dst, const uint8_t *src, size_t size) -{ - (void) dst; - (void) src; - (void) size; - - return 0; -} - -/** - * @TODO implement this function - */ -static inline uint8_t prepare(void) -{ - return 0; -} - -/** - * @TODO implement this function - */ -static inline void finish(uint8_t istate) -{ - (void) istate; -} - -static inline void busy_wait(void) -{ - /* Wait for BUSY = 0, not needed unless run from RAM */ - while (FCTL3 & 0x0001) { - nop(); - } -} diff --git a/cpu/msp430fxyz/flashrom.c b/cpu/msp430fxyz/flashrom.c deleted file mode 100644 index 8c56d5bb7c..0000000000 --- a/cpu/msp430fxyz/flashrom.c +++ /dev/null @@ -1,110 +0,0 @@ -/* - * Copyright (C) 2014 INRIA - * - * This file is subject to the terms and conditions of the GNU Lesser - * General Public License v2.1. See the file LICENSE in the top level - * directory for more details. - */ - -/** - * @ingroup cpu - * @{ - * - * @file - * @brief MSP430Fxyz flashrom functions - * - * @author Oliver Hahm <oliver.hahm@inria.fr> - * - * @} - */ - -#include "irq.h" -#include <stddef.h> -#include <stdint.h> -#include "cpu.h" -#include "irq.h" - -uint8_t ie1, ie2; - -static uint8_t prepare(void); -static void finish(uint8_t istate); -static inline void busy_wait(void); - -/*---------------------------------------------------------------------------*/ -uint8_t flashrom_erase(uint8_t *addr) -{ - uint8_t istate = prepare(); - - FCTL3 = FWKEY; /* Lock = 0 */ - busy_wait(); - FCTL1 = FWKEY | ERASE; - *addr = 0; /* erase Flash segment */ - busy_wait(); - FCTL1 = FWKEY; /* ERASE = 0 */ - FCTL3 = FWKEY | LOCK; - finish(istate); - return 1; -} - -uint8_t flashrom_write(uint8_t *dst, const uint8_t *src, size_t size) -{ - unsigned int i; - FCTL3 = FWKEY; /* Lock = 0 */ - busy_wait(); - - for (i = size; i > 0; i--) { - FCTL1 = FWKEY | WRT; - *(dst++) = *(src++); /* program Flash word */ - - while (!(FCTL3 & WAIT)) { - nop(); - } - } - - busy_wait(); - FCTL1 = FWKEY; /* WRT = 0 */ - FCTL3 = FWKEY | LOCK; /* Lock = 1 */ - return 1; -} - -/*---------------------------------------------------------------------------*/ -static uint8_t prepare(void) -{ - uint8_t istate; - - /* Disable all interrupts. */ - - /* Clear interrupt flag1. */ - IFG1 = 0; - - /* DCO(SMCLK) is 2,4576MHz, /6 = 409600 Hz - select SMCLK for flash timing, divider 4+1 */ - FCTL2 = FWKEY | FSSEL_3 | FN2 | FN0; - - /* disable all interrupts to protect CPU - during programming from system crash */ - istate = irq_disable(); - - /* disable all NMI-Interrupt sources */ - ie1 = IE1; - ie2 = IE2; - IE1 = 0x00; - IE2 = 0x00; - return istate; -} -/*---------------------------------------------------------------------------*/ -void finish(uint8_t istate) -{ - /* Enable interrupts. */ - IE1 = ie1; - IE2 = ie2; - irq_restore(istate); -} - -static inline void busy_wait(void) -{ - /* Wait for BUSY = 0, not needed unless run from RAM */ - while (FCTL3 & 0x0001) { - nop(); - } -} -- GitLab