Ejemplo n.º 1
0
void dumpit(unsigned long l1, unsigned long l2)
{
	outhex32(l1);
	puts("l1");
	outhex32(l2);
	puts("l2");
	while(1);
}
Ejemplo n.º 2
0
int main()
{
        extern unsigned long __data_rom_start;
        extern unsigned long __data_start;
        extern unsigned long __data_end;
        extern unsigned long __bss_start;
        extern unsigned long __bss_end;
 
        unsigned long *src;
        unsigned long *dest;
	unsigned long tmp;
 
	struct lregs *regs = (struct lregs *) 0x80000000;
#if 0     
        puts("Testing RAM\n");

        puts("Write...\n");
        for (dest = (unsigned long *)0x40000000; dest < (unsigned long *)0x40080000; dest++) {
                *dest = (unsigned long)0x5a5a5a5a ^ (unsigned long)dest;
        }
 
        puts("Read...\n");
        for (dest = (unsigned long *)0x40000000; dest < (unsigned long *)0x40080000; dest++) {
                tmp = (unsigned long)0x5a5a5a5a ^ (unsigned long)dest;
                if (*dest != tmp) {
                        puts("Failed.");
			outhex32((unsigned long)dest);
			puts("is");
			outhex32(*dest);
			puts("wrote");
			outhex32(tmp);
                        while(1);
                }
        }
#endif 
        puts("512k RAM\n");
        if (testvar == 0xdeadbeef) puts("Found my key\n");
        else puts("My keys are missing!\n");
#if 0 
        src = &__data_rom_start;
        dest = &__data_start;
        while (dest < &__data_end) *(dest++) = *(src++);
#endif
 
        dest = &__bss_start;
        while (dest < &__bss_end) *(dest++) = 0;
 
        puts("Moved .data\n");

        if (testvar == 0xdeadbeef) puts("Found my key\n");
        else puts("My keys are missing!\n");
 
        testvar = 0;

	start_kernel();
}
Ejemplo n.º 3
0
static void
run_hooks_backward(crt0_hook *list, const char *name)
{
  (void)name;
#ifdef DEBUG
  outstring("list (backward) ");
  outstring(name);
  outstring(" @ ");
  outhex32((unsigned)list);
  outchar('\n');
#endif
  list--;
  while (*list != (crt0_hook)~1UL)
    {
#ifdef DEBUG
      outstring("  calling ");
      outhex32((unsigned)*list);
      outchar('\n');
#endif
      (**list)();
      list--;
    }
}
Ejemplo n.º 4
0
void die_if_kernel(char *str, struct pt_regs *pregs)
{
	unsigned long pc;

	pc = pregs->pc;
	puts("");
	outhex32(pc);
	puts(" trapped to die_if_kernel");
	show_regs(pregs);
#if 0
	if(pregs->psr & PSR_SUPERVISOR)
		do_exit(SIGKILL);
	do_exit(SIGSEGV);
#endif
}