Clear SMFI regions and fix size of H2RAM window 1
This commit is contained in:
		@@ -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;
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user