blob: 099fc07dcffd3aaab6a85e5a0f157466d0540cf3 [file] [log] [blame]
// #include "stdint.h"
typedef unsigned int uint32_t;
typedef unsigned short uint16_t;
typedef unsigned char uint8_t;
typedef signed int int32_t;
#define AXI_ADDR 0x20000000
int main() {
int32_t magic_number;
magic_number = 0xdeadbeef;
*(volatile uint32_t*)(AXI_ADDR) = magic_number;
*(volatile uint32_t*)(AXI_ADDR+4) = magic_number;
*(volatile uint32_t*)(AXI_ADDR+8) = magic_number;
*(volatile uint32_t*)(AXI_ADDR+0xc) = magic_number;
// Read a new magic number
magic_number = *(volatile uint32_t*)(AXI_ADDR);
*(volatile uint8_t*)(AXI_ADDR) = magic_number;
*(volatile uint16_t*)(AXI_ADDR+2) = magic_number;
*(volatile uint32_t*)(AXI_ADDR+30) = magic_number;
//asm volatile(".word 0x08000073");
asm volatile("ebreak");
}