Clear SMFI regions and fix size of H2RAM window 1

This commit is contained in:
Jeremy Soller
2020-02-17 10:16:48 -07:00
parent cca405ae20
commit 4bfe981455

View File

@@ -1,5 +1,7 @@
#include <stdint.h> #include <stdint.h>
#include <common/macro.h>
volatile uint8_t __xdata __at(0x105A) HRAMWC; volatile uint8_t __xdata __at(0x105A) HRAMWC;
volatile uint8_t __xdata __at(0x105B) HRAMW0BA; volatile uint8_t __xdata __at(0x105B) HRAMW0BA;
volatile uint8_t __xdata __at(0x105C) HRAMW1BA; volatile uint8_t __xdata __at(0x105C) HRAMW1BA;
@@ -10,8 +12,18 @@ volatile uint8_t __xdata __at(0xC00) smfi_cmd[256];
volatile uint8_t __xdata __at(0xD00) smfi_dbg[256]; volatile uint8_t __xdata __at(0xD00) smfi_dbg[256];
void smfi_init(void) { void smfi_init(void) {
// Semaphore int i;
smfi_cmd[0] = 0x00;
// Clear command region
for (i = 0; i < ARRAY_SIZE(smfi_cmd); i++) {
smfi_cmd[i] = 0x00;
}
// Clear debug region
for (i = 0; i < ARRAY_SIZE(smfi_dbg); i++) {
smfi_dbg[i] = 0x00;
}
// Signature // Signature
smfi_cmd[1] = 0x76; smfi_cmd[1] = 0x76;
smfi_cmd[2] = 0xEC; smfi_cmd[2] = 0xEC;
@@ -24,7 +36,7 @@ void smfi_init(void) {
// H2RAM window 1 address 0xD00 - 0xDFF, read/write // H2RAM window 1 address 0xD00 - 0xDFF, read/write
HRAMW1BA = 0xD0; HRAMW1BA = 0xD0;
HRAMW0AAS = 0x04; HRAMW1AAS = 0x04;
// Enable H2RAM window 0 and 1 using LPC I/O // Enable H2RAM window 0 and 1 using LPC I/O
HRAMWC |= 0x13; HRAMWC |= 0x13;