#include #include #include #include #include #include int main(int argc, char **argv) { int fd; unsigned long addr; int debug=0; int pagesize; void *map; unsigned int *i1,*i2; pagesize=getpagesize(); addr=0x40e00000; if (debug) printf("ok addr=0x%lx\n",addr); fd=open("/dev/mem",O_RDWR); map=mmap(NULL, pagesize*4096, PROT_READ|PROT_WRITE, MAP_SHARED, fd, addr); close(fd); i1=map+0x1c; i2=map+0x28; *i2=0x4000000; usleep(10000); *i1=0x4000000; usleep(100000); *i2=0x4000000; usleep(10000); *i1=0x40000000; usleep(10000); *i2=0x8000000; usleep(10000); *i1=0x8000000; usleep(10000); *i2=0x8000000; return 0; }